如何重新映射<c - ;> </c - ;>

时间:2012-08-12 17:45:10

标签: vim vi macvim

我想使用以下代码快速进入插入模式 - &gt;命令模式。问题是它似乎没有注册我的密钥。我试过控制(没有任何反应),我也试过命令(D),它只是说拼写检查没有激活。

" Quick command mode from insert
imap <C-;> <esc>:   

我该怎么做呢?是否有一种我不知道的更容易的方式?

3 个答案:

答案 0 :(得分:6)

无法映射某些 Ctrl 和弦,包括 Ctrl - ;

this FAQ中提到了这一点,另请参阅Vim FAQ

  

20.4。我无法为<xxx>密钥创建映射。有什么问题?

     

首先确保密钥传递给Vim。在插入模式下,按 Ctrl - V   然后是所需的键。您应该看到对应的密钥代码   钥匙。如果您确实看到了键码,那么您可以为其创建映射   使用以下命令键:

:map <C-V><xxx> <your_command_to_be_mapped>
     

有关详细信息,请阅读

:help map-keys-fails
:help :map-special-keys
:help key-codes

如果您使用其他键组合遇到此问题,那么使用 Ctrl-V 尝试打印字符的提示是很好的。

答案 1 :(得分:1)

我尝试过,但它似乎不起作用,也像pb2q说的那样,它只是无法映射。但是还有其他方法可以使用Ctrl键组合进行转义。

例如,您还可以通过以下按键来转义插入模式:

  1. Ctrl-[
  2. Ctrl-c

答案 2 :(得分:0)

在OS X上(我认为Lion及以上版本),您可以在OS X输出上使用this method alt - ; 映射 alt - ; ç,你可以映射。

但是在MacBook上,我更喜欢使用PCKeyboardHack大写锁定映射到 esc 。或者在Windows上,使用tool I've created myself for that甚至Ctrl2Cap

修改

哦对不起,我以为你想切换到正常模式,这就是我讨论大写锁定映射的原因。