如何找到 vim 默认键绑定的作用?

How to find what vim default key binds does?

显然 <c-space> 在 vim 中默认做一些事情,但我想不出一种方法来检查它在做什么。

:imap <c-space>
> No mapping found

:h <c-space>
> Sorry, no help for <c-space>

在这里给出一个完全通用的答案有点困难,有时您的特定平台或终端仿真器可能会影响 Vim 看到特定键的方式。

尝试找出哪个键码被 Vim 看到的一种方法是进入插入模式,然后按 Ctrl+V 后跟您的特定密钥。 (请参阅 :help i_CTRL-V,它会告诉您 Vim 将逐字插入下一个符号。)

在我的例子中,输入 Ctrl+V 然后输入 Ctrl+Space 在插入模式下显示 ^@,它表示 Ctrl+@ 序列,这向我展示了 Vim 如何看待这个键序列。

(我相信这主要是通用的,Ctrl+Space 将始终生成 Ctrl +@ 无处不在,但正如我所提到的,存在平台差异,所以我不能保证它在任何地方都能以这种方式工作,但你应该能够使用相同的 Ctrl+V 技巧来确定它是否与您的情况相同。)

根据该发现,您可以查看 :help i_CTRL-@ 以查看 Ctrl+@ 序列(应该相当于 Ctrl+Space) 将“插入先前插入的文本并停止插入。”