.vimrc映射控制键不工作



我有以下映射在我的.vimrc映射控制键+ 1,2,3 ..用于切换选项卡。我在ubuntu 11.10中使用gnome终端,控制键映射似乎不起作用。有谁能指出我做错了什么吗?

VIM - Vi改进版7.3.154

map <C-S-]> gt
map <C-S-[> gT
map <C-1> 1gt
map <C-2> 2gt
map <C-3> 3gt
map <C-4> 4gt
map <C-5> 5gt
map <C-6> 6gt
map <C-7> 7gt
map <C-8> 8gt
map <C-9> 9gt
map <C-0> :tablast<CR>
syntax on
set shiftwidth=2

首先确保你的终端模拟器(Gnome terminal )不会为了自己的功能而吞下键组合;默认Ctrl +数字切换选项卡。但恐怕你还是不能使用所有这些组合…

由于键盘输入的内部处理方式,不幸的是,这在今天通常是不可能的。有些键组合,如Ctrl +非字母不能被映射,Ctrl +字母与Ctrl + Shift +字母不能被区分。(除非您的终端为它发送一个不同的termcap代码,而大多数情况下都不会。)在插入或命令行模式下,尝试键入组合键。如果没有发生/插入,则不能使用该组合键。这也适用于<Tab>/<C-I>, <CR>/<C-M>/<Esc>/<C-[>等(唯一例外是<BS>/<C-H>)。这是一个已知的痛点,也是vim_dev和#vim IRC频道上各种讨论的主题。

一些人(最重要的是Paul LeoNerd Evans)想要修复这个问题(即使是支持这个的终端中的控制台Vim),并且提出了各种建议。

但是截至今天,还没有补丁或志愿者提出,尽管许多人表示希望在未来的Vim 8主版本中包含此功能。

最新更新