2013-04-06 103 views
9

我在.vimrc中映射控制鍵+ 1,2,3 ..切換選項卡的映射。我在Ubuntu 11.10中使用gnome終端,控制鍵映射似乎不起作用。任何人都可以告訴我做錯了什麼。.vimrc映射控制鍵不工作

VIM - 六改良版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 
+0

檢查Gnome終端中的Edit> Keyboard shortucts,如果這些組合已經映射到某個東西。我認爲他們是默認的tab切換... – plesiv 2013-04-06 10:13:33

回答

15

首先確保您的終端仿真器(Gnome終端)不吞下自己的功能鍵組合默認Ctrl +數字開關選項卡。但恐怕你仍然無法使用所有這些組合......

由於鍵盤輸入在內部處理的方式,這種情況在今天通常是不可能的。一些組合鍵,像按Ctrl +非字母不能被映射,並按Ctrl +信與按Ctrl ++信無法區分。 (除非你的終端發送了一個明確的termcap代碼,但大部分都沒有。)在插入或命令行模式下,嘗試輸入組合鍵。如果沒有任何事情發生/插入,則不能使用該組合鍵。這也適用於<Tab>/<C-I><CR>/<C-M>/<Esc>/<C-[>等(僅例外是<BS>/<C-H>)。這是一個已知的痛點,並在vim_dev各種討論和#vim IRC頻道的主題。

有些人(最重要的是保LeoNerd埃文斯)要解決這個問題(即使控制檯Vim的支持此終端),並已飄然various proposals

但截至今日,尚未有補丁或志願者出現,儘管許多人表示希望在未來的Vim 8主要版本中擁有此功能。