Почему "map! <C-q>: q <CR>" не работает в vim? - PullRequest
9 голосов
/ 25 октября 2011

Я ввожу :map! <C-q> :q <CR> в режиме командной строки, затем возвращаюсь в обычный режим и нажимаю ctrl-q, но vim не завершает работу.Почему?

Ответы [ 2 ]

14 голосов
/ 25 октября 2011

Как предложил Johnsyweb, Ctrl - Q не достигает Vim с самого начала. Это относится и к популярным Ctrl - S . И то и другое можно исправить, добавив

silent !stty -ixon > /dev/null 2>/dev/null

на ваш .vimrc, поскольку он заставляет эти управляющие последовательности достигать приложения.

9 голосов
/ 25 октября 2011

Почему кто-то захочет добавить еще один способ выхода из Vim к множеству , которое уже доступно , мне неведомо. Однако ...

В Fedora 15 Ctrl - Q , вероятно, воспринимается вашим терминалом как XON ( resume ) и, следовательно, не достигает Vim, чтобы выйти из приложения.

Вы можете проверить, есть ли ошибка в вашем отображении или конфликт:

:verbose map! <C-Q>

:map! предназначен для задания отображений в режимах insert и command-line.

normal-mode Отображения (обычно) определены так:

:nmap <C-Q> :q<CR>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...