nnoremap <C-=> : echo "Hello" <CR>
但是似乎未触发映射。
关于我可能在做什么的任何建议错误?我正在使用macvim。
#1 楼
不幸的是,没有可靠的Ctrl- =映射方式。由于
ctrl+key
和弦与终端交互并在内部表示的方式,保证Vim能够检测到的唯一Ctrl-映射是ASCII标准中定义的。这是此类ctrl+key
组合的完整列表,每个字节代表一个字节。 Ctrl-@ 0x00 NUL
Ctrl-A to Ctrl-Z 0x01 to 0x1A
Ctrl-a to Ctrl-z 0x01 to 0x1A
Ctrl-[ 0x1B ESC
Ctrl-\ 0x1C
Ctrl-] 0x1D
Ctrl-^ 0x1E
Ctrl-_ 0x1F
Ctrl-? 0x7F DEL
但是,请注意,大多数这些功能在Vim中已经具有功能,并且某些功能与其他按键基本相同/无法区分。例如
CTRL-M
具有与Enter
相同的键码,因此,如果您映射任何一个,则也不可避免地映射了另一个。通过将终端配置为发送一定的字节序列以进行映射来避免上述限制,就像在此堆栈溢出线程中那样,但这肯定很痛苦。就我个人而言,我宁愿选择一个不同的映射。这最终可能会得到解决,但是不太可能,因为Vim依赖于运行的终端。但是,很有可能在Vim中运行Neovim。我不知道现在是否行得通。
评论
很好,将来我会与人们联系起来。
– Tumbler41
16年7月19日在18:19
评论
常见问题解答20.4和20.5似乎这种问题越来越常见:VIM如何映射组合键:ctrl + shift + w +,
@mMontu是的,这是一个很常见的问题。我想问一下关于vim的内部字符,术语代码以及vim可以/不可以映射的内容的规范文章是否是个好主意。