如何将键绑定映射到命令?

时间:2014-09-08 12:46:22

标签: vim

我目前正在从intellij尝试Clion,但我不是键绑定的忠实粉丝,但它提供了vim支持。例如,Clion有一个键绑定ctrl + shift + n来打开模糊搜索。

是否可以将键绑定绑定到vim中的自定义命令?

这样的东西
command :fuzzy <C-N>

2 个答案:

答案 0 :(得分:3)

IdeaVim不是Vim。没有任何理由期望在Vim中像Idea一样在IdeaVim中工作,反之亦然......所以......你想让这个映射在Vim或IdeaVim中工作吗?如果您的问题与Vim有关,那么您的CLion解释和标签完全无关紧要。

在Vim中,您可以将此行放在~/.vimrc

nnoremap <key> :Command<CR>

:help key-notation查看<key>,并注意到Vim在<C-N><C-n>之间没有区别。

现在,Vim没有&#34;模糊&#34;功能本身,所以你需要一个第三方插件。

答案 1 :(得分:0)

我没有看到你如何享受Vim而不喜欢(快速和高效)键绑定,但这肯定是可能的,如果有些奇怪的话。通常,为自定义命令定义键绑定(反之亦然),以加速常用命令。

相反,您必须考虑模式:(自定义)命令采用 Ex命令,而键绑定通常处于正常模式。幸运的是,内置的:normal命令可以在两者之间建立桥接。要使用特殊密钥代码(例如<C-N>),您需要:execute

:command FuzzySearch execute "normal \<C-N>"

请注意,这可能仅适用于Vim本身,而不适用于仿真(如Eclipse或IntelliJ IDEA),因为它们通常只提供完整Vim功能的子集。