#vim #neovim
#vim #neovim
Вопрос:
По-видимому <c-space>
, я делаю что-то по умолчанию в vim, но я не могу найти способ проверить, что он делает.
:imap <c-space>
> No mapping found
:h <c-space>
> Sorry, no help for <c-space>
Комментарии:
1. Рассмотрите возможность использования Vi и Vim Stack Exchange для вопросов по Vim.
Ответ №1:
Здесь немного сложно дать полностью общий ответ, и иногда ваша конкретная платформа или эмулятор терминала могут повлиять на то, как Vim видит конкретные ключи.
Один из способов попытаться выяснить, какой код ключа отображается Vim, — это перейти в режим вставки, а затем нажать Ctrl V, за которым следует ваш конкретный ключ. (Смотрите :help i_CTRL-V
, который скажет вам, что Vim вставит следующий символ буквально.)
В моем случае ввод Ctrl V, за которым следует Ctrl Space, в режиме вставки показывает мне ^@
, что символизирует последовательность Ctrl @ , которая показывает мне, как Vim видит эту последовательность клавиш.
(Я считаю, что это в основном универсально, и Ctrl Space всегда будет генерировать Ctrl @ везде, но, как я уже упоминал, существуют различия в платформах, поэтому я не могу гарантировать, что это работает так везде, но вы должны иметь возможность использовать тот же Ctrl V трюк, чтобы выяснить, одинаковый он или нет в вашем случае.)
Следуя этому выводу, вы можете посмотреть :help i_CTRL-@
, чтобы увидеть, что последовательность Ctrl @ (которая должна быть эквивалентна Ctrl Space) «вставит ранее вставленный текст и остановит вставку».
Комментарии:
1. Кроме того, встроенные команды Vim и сопоставления пользовательских областей обрабатываются двумя отдельными механизмами, поэтому
:map
or:imap
не может использоваться для определения того, что делает данная встроенная команда в любом случае. Для этого нужно сделать то, что вы предложили ::help <cmd>
.