【发布时间】:2014-01-30 15:25:16
【问题描述】:
我一直在尝试创建在 vim 中打开窗口拆分之间切换的快捷方式,而不是必须使用 ctrl+w+[箭头键] 我宁愿只能够使用 ctrl+[箭头键]。
这是我目前在 vimrc 中的内容:
map <silent> <C-v> <c-w>v
map <silent> <C-Left> <c-w>h
map <silent> <C-Down> <c-w>j
map <silent> <C-Up> <c-w>k
map <silent> <C-Right> <c-w>l
执行 vsplit 的第一个快捷方式可以正常工作,但是其他的都不起作用。我已经尝试了几种变体,但它们都没有做任何事情。
我在 KDE 中使用标准 debian wheezy,vim 从 konsole 运行,我安装的唯一插件是 NERDTree 和 Airline。
我希望有人可以帮助提供解决方案,因为我已经在网上搜索了几个小时并尝试了数百个选项,但似乎没有任何区别。
编辑 快捷方式的逐字插入根本不输出任何内容,无论是在 shell 还是在 vim 中。
【问题讨论】:
-
确保 KDE 和终端模拟器没有
<c-arrow>的快捷方式 -
我都检查过了,都没有使用我试图在 vim 中使用的 c 箭头快捷方式。
-
我认为 Ctrl+Arrow 并未在所有终端模拟器中注册。在 xterm 以及通过按 Ctrl+Alt+F1 获得的控制台中尝试它并报告回来。否则,请考虑使用前导键而不是 Ctrl。我有
h 表示“向左移动”等等,它更符合 Vi 原则。 -
我尝试将您的配置选项复制到我的 .vimrc 中,但我的操作系统已经有键盘快捷键覆盖它。我正在使用带有 XFCE 的 Ubuntu。我稍微更改了命令,它们现在可以使用 Ctrl-(hjkl)。这不是您想要的,但也许这会对您的搜索有所帮助:
nmap <silent> <C-v> <c-w>v nmap <silent> <C-h> <c-w>h nmap <silent> <C-j> <c-w>j nmap <silent> <C-k> <c-w>k nmap <silent> <C-l> <c-w>l
标签: vim shortcuts arrow-keys