vim 无法映射到:选项卡下一个
我的 .vimrc 中有以下映射:
map <C-S-Tab> :tabprevious<CR>
nmap <C-S-Tab> :tabprevious<CR>
imap <C-S-Tab> <Esc>:tabprevious<CR>i
map <C-Tab> :tabnext<CR>
nmap <C-Tab> :tabnext<CR>
imap <C-Tab> <Esc>:tabnext<CR>i
我想用 Strg+Tab 向前切换选项卡,用 Strg+Shift+Tab 向后切换选项卡。为什么这个映射不起作用?
I have the following mappings in my .vimrc:
map <C-S-Tab> :tabprevious<CR>
nmap <C-S-Tab> :tabprevious<CR>
imap <C-S-Tab> <Esc>:tabprevious<CR>i
map <C-Tab> :tabnext<CR>
nmap <C-Tab> :tabnext<CR>
imap <C-Tab> <Esc>:tabnext<CR>i
I want to switch the tabs with Strg+Tab forward and with Strg+Shift+Tab backward. Why does this mapping not work?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您使用的是 xterm 吗?如果是这样,您就无法在不进行大量黑客操作的情况下映射 ctrl-tab 。
xterm
和许多其他终端模拟器无法识别ctrl-tab
,而只是发送tab
字符。有关更多详细信息,请参阅我的答案: 映射;我的 vimrc 在 Ubuntu 中失败了
或者你可以使用
gvim
如果合适的话 - 它应该可以正常工作而无需任何处理。Are you using
xterm
? If so, you can't mapctrl-tab
without a lot of hackery.xterm
and many other terminal emulators don't recognisectrl-tab
and simply send atab
character.See my answer here for more details: Mapping <C-Tab> in my vimrc fails in Ubuntu
Or you can just use
gvim
if that is suitable - it should work without any mucking around.可能有什么东西阻止了 vim 查看 C-Tab。这可能是您的终端或窗口管理器。
在某些操作系统/WM 上,您可以对窗口管理器快捷方式设置例外,但是不同 WM 之间的操作方式差异很大。
我不确定如果您的终端阻止按键,是否有解决方案。
Something is probably blocking vim from seeing the C-Tab. This could be your terminal or your window manager.
On some OSes/WMs you can set exceptions to the window manager shortcuts, but how you do this varies crazily between the WMs.
I'm not sure if there is a solution if it is your terminal blocking the key presses.
哦……需要贴图吗?只需使用这个预定义的组合:
gt: == :tabnext
gT: == :tabprevious
[n] gt: == 跳转到 N 个 tab ,例如 1gt 、 3gt
定义很多快捷键很容易,但是你怎么能记住所有的快捷键呢?不要将它们与“ctrl + tab”、“alt + tab”(大多数操作系统中常见的快捷键)混淆,
请查看此页面以获取更多详细信息:http://vim.wikia.com/wiki/Alternative_tab_navigation
oh ... is it need to be mapped? just use this predefined combos:
gt: == :tabnext
gT: == :tabprevious
[n]gt: == jump to N tab , e.g. 1gt , 3gt
defining to many short keys is easy, but how can you remember all of them and don't mixing them up with 'ctrl + tab' , 'alt + tab' ( common and usual short keys in most OS )
check this page for more details : http://vim.wikia.com/wiki/Alternative_tab_navigation
您所需要的只是
xterm
。将其放入您的
.Xresources
文件中(在本例中您可以复制粘贴):然后执行
cd ; xrdb .Xresources
并重新启动 xterm。将其放入您的
.vimrc
中:!!重要 - 您必须输入 CTRL-V,然后输入 Esc,而不是 XXXX 或 复制粘贴整个文本并运行
%s/\(设置=\)XXXX/\=submatch(1) 。 “\33”/g
可复制粘贴(使用+
插入)。并重新启动vim。
完毕。
All you need is
xterm
.Put this in your
.Xresources
file (you can copy-paste in this case):Then do
cd ; xrdb .Xresources
and restart xterm.Put this in your
.vimrc
:!! Important - instead of XXXX you must type CTRL-V and then Esc OR copy-paste the whole text and run
%s/\(set <F1[34]>=\)XXXX/\=submatch(1) . "\33"/g
which is copy-pastable (insert it with<CTRL-R> +
).And restart vim.
Done.