【发布时间】:2011-02-10 19:41:54
【问题描述】:
我想将 ctrl-tab 映射到 :tabn,并将 ctrl-shift-tab 映射到 :tabp。
我让它在 Windows XP 中为 gVim 工作,但在 Ubuntu 9.10 中将它移到我的 .vimrc 并且它不起作用(vim 7.2)。
这是我的 .vimrc 的相关部分:
nmap <C-Tab> :tabn<CR>
nmap <C-S-Tab> :tabp<CR>
nmap <C-t> :tabnew<CR>
<C-t> 工作正常,因此映射 ctrl 键似乎不是问题。我真的不知道从哪里开始!考虑到它在 Windows 下运行良好,这里可能出了什么问题?
更多信息:我正在运行 Ubuntu 9.10 服务器,上面安装了 xorg 和 fluxbox。我使用xterm 作为我的终端。
Ctrl-tab 映射在fluxbox 中工作:我可以在我的窗口管理器中成功映射 ctrl-tab 和 ctrl-shift-tab;如果我开始标记我的 xterm,我可以按预期循环浏览这些选项卡。我不确定这意味着什么,但我认为这个问题不是一个窗口管理器/xorg 问题。
这些键似乎没有映射到其他东西,可以一起成功识别。
答案:这是一个xterm 问题 - 它不会拦截和发送ctrl-tab 的唯一键码。有关详细信息,请参阅下面的完整答案。
【问题讨论】:
-
C-Tab 可能对你的终端有特殊意义吗?
-
可能...我会调查的。我正在运行 xterm。
-
有关消除 Ctrl-I、Tab、Ctrl-Tab 等歧义的详细 Xterm 解决方案,请查看unix.stackexchange.com/q/631241
标签: vim keyboard-shortcuts keymapping