[英]How can I map Ctrl-TAB to something in Vim?
我想将Ctrl-TAB
映射到 Vim 中的gt
以便我可以一键切换选项卡。
我试过了...
nmap <C-T> gt
nmap <C-Tab> gt
nmap <C-TAB> gt
那没有用。 Vimese 中的“tab 键”怎么说?
它可以在 gvim 中映射,但终端看不到<Tab>
和<C-Tab>
之间的区别。
你不能。 Tab 已经是一个控制键<Ci>
。
它适用于 gVim。 只需在 ~/.gvimrc 文件的末尾添加:
" Add keyboard shortcuts
map <C-Tab> gt
map <C-S-Tab> gT
我在cygwin
中使用mintty
终端。 此终端可以选择使用ctrl-tab
在 cygwing 的各个实例之间循环,或者,您可以使用转到下一个或上一个screen
窗口(因此ctrl-tab
与ctrl-a+n
和s-ctrl-tab
的作用与ctrl-a+p
相同。在我看来,最后一种行为非常方便。检查
首先,禁用Options > Keys中的Switch window选项。 然后,您可以使用以下地图。
注意:您不能简单地将这些复制并粘贴到您的.vimrc
中。 相反,在^[[1;6I
所在的位置,您需要在插入模式下按Ctrl-V
,然后键入Ctrl-Shift-Tab
。 ^[[1;5I
和Ctrl-Tab
也是如此。
nnoremap ^[[1;6I :tabprevious<CR>
nnoremap ^[[1;5I :tabnext<CR>
inoremap ^[[1;6I <Esc>:tabprevious<CR>
inoremap ^[[1;5I <Esc>:tabnext<CR>
如果您使用的是 Mac,那么您可以使用Karabiner重新映射键。 以下是您可以分步执行的方法:
在<root>
节点内添加以下配置
<item> <name>c-tab to s-tab LEFT</name> <identifier>private.ctabtostabl</identifier> <autogen> __KeyToKey__ KeyCode::TAB, ModifierFlag::CONTROL_L, KeyCode::TAB, ModifierFlag::SHIFT_L </autogen> </item> <item> <name>c-tab to s-tab RIGHT</name> <identifier>private.ctabtostabr</identifier> <autogen> __KeyToKey__ KeyCode::TAB, ModifierFlag::CONTROL_R, KeyCode::TAB, ModifierFlag::SHIFT_R </autogen> </item>
保存 xml 文件后,返回 Karabiner 首选项,这次是“更改密钥”选项卡,按下“重新加载 XML”按钮,并检查新创建的选项。 现在你的控制选项卡应该变成了移位选项卡!
这在 MacVim 中对我有用
:map <C-Tab> gt
它在命令模式下工作。 不在编辑模式下。
它在我的终端中的 vim 中不起作用。
我用 Konsole 19.12.3 得到了这个。 就是这样:
Backtab+Ctrl+Ansi
(或者如果您有非 ANSI 键盘,可能只是 Backtab+Ctrl-Ansi)绑定到\E[27;6;9~
。 使用测试区确认绑定是否正常; 它应该与上面的顺序相呼应。 删除任何与之冲突的绑定。Tab+Ctrl+Ansi
(或非 ANSI 等效项)绑定到\E[27;5;9~
。nnoremap <C-Tab> :tabn<CR>
和nnoremap <CS-Tab> :tabp<CR>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.