Подтвердить что ты не робот

Vim и GVim: ключевой ключ не работает

У меня установлены некоторые плагины, включая NERDCommenter и NERDTree. Тем не менее, я не могу заставить ключ-лидер работать для них. Это настройки по умолчанию, когда я набираю :map

v  \c<Space>     <Plug>NERDCommenterToggle
n  \c<Space>     <Plug>NERDCommenterToggle
v  \cc           <Plug>NERDCommenterComment
n  \cc           <Plug>NERDCommenterComment

\c<space> просто работает, как нажатие c<space>. Я попытался переназначить ключ-лидер со следующим в моем .vimrc в моем домашнем каталоге:

let mapleader = ","

Это отражается, когда я перезапускаю vim и набираю :map

v  ,c<Space>     <Plug>NERDCommenterToggle
n  ,c<Space>     <Plug>NERDCommenterToggle
v  ,cc           <Plug>NERDCommenterComment
n  ,cc           <Plug>NERDCommenterComment

Но все же ,c<space> ведет себя так, как будто я нажимаю c<space>. Что происходит и как это исправить?

Изменить: проверено это в VIM также с тем же поведением.

4b9b3361

Ответ 1

Отображения кажутся смешными, я ожидал бы

v  <Leader>c<Space>     <Plug>NERDCommenterToggle
n  <Leader>c<Space>     <Plug>NERDCommenterToggle
v  <Leader>cc           <Plug>NERDCommenterComment
n  <Leader>cc           <Plug>NERDCommenterComment

для их работы. Я подозреваю, что вы устанавливаете Mapleader после загрузки плагинов

Ответ 2

Определите ключи mapleader и maplocalleader до загрузки любого из плагинов.

Прямо поверх вашего .vimrc!

Ответ 3

Возможно, вы установили свой тайм-аут на ноль. В этом случае vim не будет ждать ключа после маркера.

:set timeout timeoutlen=0 ttimeoutlen=0

Ответ 4

Это, скорее всего, не будет ответом для большинства, но может помочь небольшим...

Я запускаю debian distro (PureOS в моем случае, хотя конкретный вкус может не иметь большого значения), а ключевой ключ \ по умолчанию отображается на < из коробки.

Для меня переопределение key code было исправлением:

sudo setkeycodes 56 43