繁体   English   中英

如何将 Ctrl-TAB 映射到 Vim 中的某些内容?

[英]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-tabctrl-a+ns-ctrl-tab的作用与ctrl-a+p相同。在我看来,最后一种行为非常方便。检查

使用_Ctrl+Tab_to_switch_session_in_GNU_Screen

git-bash(薄荷味)

首先,禁用Options > Keys中的Switch window选项。 然后,您可以使用以下地图。

注意:您不能简单地将这些复制并粘贴到您的.vimrc中。 相反,在^[[1;6I所在的位置,您需要在插入模式下按Ctrl-V ,然后键入Ctrl-Shift-Tab ^[[1;5ICtrl-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重新映射键。 以下是您可以分步执行的方法:

  1. 打开 Karabiner 首选项 > 杂项和卸载选项卡,单击“打开 private.xml”以在选择的编辑器中打开它
  2. <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>
  3. 保存 xml 文件后,返回 Karabiner 首选项,这次是“更改密钥”选项卡,按下“重新加载 XML”按钮,并检查新创建的选项。 现在你的控制选项卡应该变成了移位选项卡!

第三步截图

这在 MacVim 中对我有用

:map <C-Tab> gt

它在命令模式下工作。 不在编辑模式下。
它在我的终端中的 vim 中不起作用。

我用 Konsole 19.12.3 得到了这个。 就是这样:

  1. 菜单栏 -> 设置 -> 配置键盘快捷键
  2. 通过将 Ctrl+Shift+Tab 和 Ctrl+Tab 绑定到“无”来删除现有的键绑定
  3. 菜单栏 -> 设置 -> 配置文件 -> 编辑 -> 键盘 -> 编辑
  4. Backtab+Ctrl+Ansi (或者如果您有非 ANSI 键盘,可能只是 Backtab+Ctrl-Ansi)绑定到\E[27;6;9~ 使用测试区确认绑定是否正常; 它应该与上面的顺序相呼应。 删除任何与之冲突的绑定。
  5. Tab+Ctrl+Ansi (或非 ANSI 等效项)绑定到\E[27;5;9~
  6. 在您的 .vimrc 中添加以下形式的绑定: nnoremap <C-Tab> :tabn<CR>nnoremap <CS-Tab> :tabp<CR>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM