是否可以使用 tab 在缓冲区之间移动,同时保持 Ctrl+i CRY-i 作为步进 "forward" 的方式?
Is it possible to use tab to move between buffers whilst keeping Ctrl+i CR-i as a way to step "forward"?
有没有办法
noremap <tab> <c-w><c-w>
in vim 不会破坏 Ctrl+i 以在先前打开的文件中向前遍历,但 "stepped back from" 使用 Ctrl+o?
我今天了解到,显然“Ctrl+i 和 tab 在 vimrc 中被认为是相同的?
是否可以将 Ctrl+i 的行为与按 Tab 键的行为分开?
感觉好像我在某处遗漏了一些明显的东西。
//vim 菜鸟
<C-i>
和 <Tab>
对于 Vim 和大多数(如果不是全部)终端仿真器来说是无法区分的。因此,将任何内容映射到 <Tab>
也会将其映射到 <C-i>
,反之亦然。
请注意,您不应使用 noremap
。使用 nnoremap
用于非递归正常模式映射,inoremap
用于非递归插入模式映射,等等
由于键盘输入的内部处理方式,不幸的是,即使在 GVIM 中,这在今天通常也是不可能的。某些组合键,如 Ctrl + 非字母不能映射,以及 Ctrl + 字母与 Ctrl + Shift + 无法区分字母。 (除非您的终端为它发送一个不同的 termcap 代码,大多数情况下不会。)在插入或命令行模式下,尝试键入组合键。如果没有任何反应/插入,则不能使用该组合键。这也适用于 <Tab>
/ <C-I>
、<CR>
/ <C-M>
/ <Esc>
/ <C-[>
等(唯一的例外是 <BS>
/ <C-H>
.) 这是一个已知的痛点,也是 vim_dev 和 #vim IRC 频道上各种讨论的主题。
有些人(最重要的是 Paul LeoNerd Evans)想要解决这个问题(甚至对于支持此功能的终端中的控制台 Vim),并提出了各种建议,cp。 http://groups.google.com/group/vim_dev/browse_thread/thread/626e83fa4588b32a/bfbcb22f37a8a1f8
但截至今天,还没有补丁或志愿者提出,尽管许多人表示希望在未来的 Vim 版本中有这个。
有没有办法
noremap <tab> <c-w><c-w>
in vim 不会破坏 Ctrl+i 以在先前打开的文件中向前遍历,但 "stepped back from" 使用 Ctrl+o?
我今天了解到,显然“Ctrl+i 和 tab 在 vimrc 中被认为是相同的?
是否可以将 Ctrl+i 的行为与按 Tab 键的行为分开? 感觉好像我在某处遗漏了一些明显的东西。
//vim 菜鸟
<C-i>
和 <Tab>
对于 Vim 和大多数(如果不是全部)终端仿真器来说是无法区分的。因此,将任何内容映射到 <Tab>
也会将其映射到 <C-i>
,反之亦然。
请注意,您不应使用 noremap
。使用 nnoremap
用于非递归正常模式映射,inoremap
用于非递归插入模式映射,等等
由于键盘输入的内部处理方式,不幸的是,即使在 GVIM 中,这在今天通常也是不可能的。某些组合键,如 Ctrl + 非字母不能映射,以及 Ctrl + 字母与 Ctrl + Shift + 无法区分字母。 (除非您的终端为它发送一个不同的 termcap 代码,大多数情况下不会。)在插入或命令行模式下,尝试键入组合键。如果没有任何反应/插入,则不能使用该组合键。这也适用于 <Tab>
/ <C-I>
、<CR>
/ <C-M>
/ <Esc>
/ <C-[>
等(唯一的例外是 <BS>
/ <C-H>
.) 这是一个已知的痛点,也是 vim_dev 和 #vim IRC 频道上各种讨论的主题。
有些人(最重要的是 Paul LeoNerd Evans)想要解决这个问题(甚至对于支持此功能的终端中的控制台 Vim),并提出了各种建议,cp。 http://groups.google.com/group/vim_dev/browse_thread/thread/626e83fa4588b32a/bfbcb22f37a8a1f8
但截至今天,还没有补丁或志愿者提出,尽管许多人表示希望在未来的 Vim 版本中有这个。