我一直在尝试创建一个在vim中打开窗口分割之间切换的快捷方式,而不是必须使用ctrl + w + [arrowkey]我宁愿只能使用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的第一个快捷方式可以正常工作,但其他任何工作都没有。我已经尝试了几种变体,但它们都没有做任何事情。
我正在使用标准的debian wheezy和KDE,vim是从konsole运行的,我安装的唯一插件是NERDTree和Airline。
我希望有人可以帮助提供解决方案,因为我已经在线搜索了几个小时并尝试了数百个选项,似乎没有任何差别。
EDIT 快捷方式的逐字插入根本不输出任何内容,无论是shell还是vim。
答案 0 :(得分:1)
首先,确保<C-Left>
未处理konsole
。重新开始并使用cat
:
$ cat
^[[1;5D
它应该如何适用于<C-Left>
。与其他箭头相似。如果<C-Left>
无法以这种方式运作,请在"\e[1;5D": ...
和/etc/inputrc
中搜索~/.inputrc
并对其进行评论。您可能必须注销并登录才能实现这些更改。
接下来,使用
:verbose map
vim
中的显示所有映射的快捷方式及其来源。您应该在此列表中看到您的绑定。您的绑定是正确的,并且都适用于我的情况。
答案 1 :(得分:0)
试试这个:
nnoremap <C-DOWN> <C-W><C-J>
nnoremap <C-UP> <C-W><C-K>
nnoremap <C-RIGHT> <C-W><C-L>
nnoremap <C-LEFT> <C-W><C-H>