在Vim </s-left> </c-left>中映射<c-left>和<s-left>

时间:2015-03-30 11:24:19

标签: vim

我一直试图让Vim表现得像ACE一样无济于事。

特别是,我一直试图让Vim在insert模式下接受 CTRL + LEFT 作为 ESC,v,B的映射 SHIFT + LEFT visual模式下作为 B 的映射,例如:

" in my ~/.vimrc:
inoremap <C-LEFT> <ESC> v B
vnoremap <S-LEFT> B

但这些绑定似乎失败了。要清楚,我收到一个错误

E388: Couldn't find definition

当我尝试 CTRL + LEFT 映射时:

C-LEFT error

我做错了什么?

1 个答案:

答案 0 :(得分:2)

您需要删除各个键之间的空格;空白只将左手边与右手边分开:

:inoremap <C-LEFT> <ESC>vB
正常模式下的

<Space>是一个将光标向右移动的命令;这将干扰映射。

您需要检查以后没有其他配置/插件重新映射左侧:

:verbose imap <C-LEFT>
:verbose vmap <S-LEFT>

另请注意,在终端内部,修改键的组合(如 Shift Ctrl )和其他键可能无效;不过,这不应该成为GVIM的问题。