При вызове Vim из Midnight Commander, Ctrl-O застревает в представлении панели Midnight Commander.

По умолчанию Ctrl-O в Midnight Commander используется для отображения вывода консоли. В /etc/mc/mc.keymap Я поставил ShowCommandLine на другую комбинацию клавиш, и теперь MC не реагирует на Ctrl-O.

Опять же, по умолчанию Ctrl-O в Vim используется для циклического перемещения по ранее доступным файлам. В моем ~/.vimrc, Я добавил map <C-o> <nop> и, на всякий случай, imap <C-o> <nop>, Теперь, если вызывается напрямую из терминала или xterm, Vim также не реагирует на Ctrl-O.

Несмотря на это, если я вызываю Vim из командной строки Midnight Commander, а затем нажимаю Ctrl-O, я оказываюсь в стандартном двухпанельном режиме Midnight Commander и не могу выйти из Ctrl-O (или Ctrl-I) из это

Естественно, если я пытаюсь запустить новую задачу Vim из MC, она теперь сообщает мне, что "оболочка уже выполняет команду", а если я просто хочу вывести F10 из MC, она говорит, что "оболочка все еще активна. во всяком случае?", и если я сделаю это, это, конечно, убивает Vim в процессе.

Как мне решить эту проблему?

1 ответ

Решение

Здесь происходит то, что Vim по умолчанию захватывает Ctrl+O для перехода обратно в список переходов. Когда вы делаете :map <C-o> <nop>, Vim по-прежнему фиксирует последовательность клавиш Ctrl+O; это просто ничего не делает с этим. Что касается Midnight Commander, вы никогда не нажимали эти клавиши; Вим сначала захватил ввод. Я не знаю, как заставить Vim прекратить захват последовательностей клавиш по умолчанию.

Другие вопросы по тегам