从午夜指挥官调用Vim时,Ctrl-O让我陷入Midnight Commander面板视图

时间:2012-12-17 12:02:13

标签: keyboard-shortcuts debian vim mc

默认情况下,Midnight Commander中的Ctrl-O用于显示控制台输出。在/etc/mc/mc.keymap我已将ShowCommandLine设置为另一个键盘快捷键,现在MC不会对Ctrl-O做出反应。

同样,默认情况下,Vim中的Ctrl-O用于循环访问以前访问过的文件。在我的~/.vimrc中,我添加了map <C-o> <nop>,以及imap <C-o> <nop>。现在,如果直接从终端或xterm调用,Vim也不会对Ctrl-O做出反应。

尽管如此,如果我从Midnight Commander提示符中调用Vim,然后按Ctrl-O,我最终进入午夜指挥官的标准双面板模式,我可以't Ctrl-O (也不是Ctrl-I)其中

当然,如果我尝试从MC启动一个新的Vim任务,它现在告诉我“shell已经在运行一个命令”,如果我只是想从MC中取出F10,它会说“shell仍然是无论如何,退出了?“,如果我这样做了,当然,它会杀死Vim。

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

这里发生的事情是Vim默认捕获 Ctrl + O ,以便在跳转列表中导航回来。执行:map <C-o> <nop>时,Vim仍会捕获 Ctrl + O 键序列;它只是没有做任何事情。就午夜指挥官而言,你从未按过那些钥匙; Vim首先捕获了输入。我不知道如何让Vim停止捕获默认的密钥序列。