Vim уменьшает задержку после выполнения команды

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

вариант использования: у меня 10 открытых приложений, и я в MacVim. Быстрее выдавать <Leader>sc, который подключен к map <Leader>sc :silent !open /Applications/Google Chrome.app<CR>, чем Command+Tab несколько раз, чтобы добраться до приложения Chrome.

однако, есть задержка vim с момента выпуска <Leader>sc для выполнения действия.

как я могу уменьшить эту задержку только для этого отображения?
Я хотел бы это быть таким же мгновенным, как бег open /Applications/Google Chrome.app из командной строки, однако vim вводит небольшую задержку перед выполнением этой команды.

Edit: я заметил, что есть timeoutlen установка, однако, что является глобальным. Я бы что-то подобное только для этих отображений.

8
задан Jey Balachandran
18.03.2023 3:50 Количество просмотров материала 3651
Распечатать страницу

2 ответа

это скорее всего потому что у тебя другое сопоставление, которое начинается с <Leader>sc и Vim ждет, чтобы увидеть, если вы просто набираете более короткое отображение, или намерены ввести другой, более длинное отображение.

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

введите ":map <leader>sc " и нажатие enter должно показать вам все отображения, которые начинаются с этой последовательности.

3
отвечен Heptite 2023-03-19 11:38

вы не можете отрегулировать timeoutlen для определенных команд / отображений в Vim. Вероятно, вы могли бы сделать это для определенного буфера/окна/вкладки, но это все равно будет одно и то же значение для любой команды/отображения в этом конкретном контексте.

но я думаю, что задержка вызвана использованием open здесь.

Почему бы вам не использовать Quicksilver? Я использовал его в течение многих лет: он обеспечивает тот же механизм, в каком бы контексте я ни находился. Будь я в Vim, в iTunes, Outlook или предварительного просмотра, я могу введите точно такую же последовательность клавиш, чтобы переключиться на Chrome. Только эта вездесущность делает его обязательным для меня. Это и скорость <C-Space>c<CR>.

в вашей системе вы теоретически можете сэкономить время при выполнении Vim > Chrome, но как вы делаете Chrome > Vim? AFAIK вы не можете использовать <leader>sv в Chrome, так что вы должны прибегать к другому механизму. Это по крайней мере две системы для настройки и обслуживания или, по крайней мере, пользовательская очень эффективная и менее эффективная по умолчанию.

0
отвечен romainl 2023-03-19 13:55

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх