ker*_*ger 10 vim tab-completion
在vim中,我在插入模式下使用Ctrl-n来完成单词.如果有多个可能的匹配,我会得到一个下拉列表,我可以使用箭头键从中选择一个可能的匹配项.
但是,我不想使用箭头键; 我想使用'j'和'k'键.但是当我输入'j'或'k'时,它会插入字母,而不是在下拉列表中上下移动.有没有办法我可以按照我想要的方式配置vim?
Pi *_*ort 17
见:h
popupmenu-keys
.
弹出菜单子模式没有特殊的映射集,但您可以进行条件插入模式映射:
inoremap <expr> j pumvisible() ? "\<C-N>" : "j"
inoremap <expr> k pumvisible() ? "\<C-P>" : "k"
Run Code Online (Sandbox Code Playgroud)
这使得弹出菜单j
/ k
导航如<C-N>
/ <C-P>
,同时它是可见的.
附录:如果你希望能够在控制,以存放在您键入j
和k
,你可以替换他们<C-J>
和<C-K>
分别.(参见mwcz对此答案的评论.)
我不知道如何用j和k做到这一点.你处于插入模式,它们不起作用.
但是,我有另一种方式,Ctrl+ N与Tab相同,你可以使用Shift- Tab从列表中下来,然后选项卡上去.它比使用箭头键更容易.但不如j和k那么好.
或者你可以使用Ctrl+ N和Ctrl+P