мой vim переходит к следующему слову довольно медленно, что я делаю не так? - PullRequest
4 голосов
/ 15 марта 2012

В моем файле .vimrc у меня есть следующие сопоставления:

nnoremap \ *
nnoremap \| #

для команд перехода к следующему слову и перехода к последнему слову.

ДляПо какой-то причине моя команда перехода к следующему слову является медленной, порядка 1 секунды, прежде чем кажется, что команда выполнена, в то время как ярлык перехода к последнему слову в порядке (без заметной задержки).Я попытался сопоставить разные ключи с командой, и только в некоторых случаях есть эта задержка.

Кто-нибудь знает причину такого поведения?

Ответы [ 3 ]

4 голосов
/ 15 марта 2012

Поскольку vim ожидает больше клавиши после ввода \

Вы можете изменить время ожидания (по умолчанию 1 секунда) на:

:set timeout timeoutlen=100 ttimeoutlen=100

(времяпосле сопоставления 0.1 секунда, тайм-аут для кодов клавиш после 0.1 секунды).

0 голосов
/ 26 мая 2016

У меня была похожая проблема, но не относящаяся к кленовщику.Оказалось, что были некоторые другие команды, которые использовали мою клавишу «перейти к следующему слову» в качестве префикса (в моем случае это было y).Вот что я сделал:

  1. Выполните команду :nmap, чтобы получить список всех сопоставлений.
  2. Отметьте те, которые начинаются с вашей клавиши «перейти к следующему слову».В моем случае это были yo и yO.
  3. Unmap это команды в вашем .vimrc.В моем случае это были unmap yo и unmap yO.
  4. Перезагрузите ваш .vimrc с :so $MYVIMRC, чтобы изменения вступили в силу.
0 голосов
/ 16 марта 2012

Если вы намеревались отобразить обратную косую черту с помощью первой команды, я бы предложил добавить что-то вроде

let mapleader='_'
let maplocalleader='_'

в ваш vimrc (замените подчеркивание любой последовательностью символов, с которой вам удобно), потому что многие плагины создают отображения,{lhs} начинается с <Leader> и, следовательно, vim ожидает следующего ключа, чтобы определить, были ли это какие-то сопоставления плагинов, как правильно указал @kev.Если вы поместите вышеупомянутые строки в vimrc, то те плагины, которые используют *map <Leader>..., теперь будут создавать сопоставления, которые начинаются с подчеркивания, а не с обратной косой черты.Если это не помогает, проверьте verbose map \ и прочитайте документацию по плагинам, чтобы определить, существует ли официальный способ заставить их генерировать сопоставления с другим лидером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...