我从emacs迁移到vim的原因之一是为了避免笨拙的键绑定,比如Ctrl+N和Ctrl+P用于向上和向下。我更喜欢更符合人体工程学的按键,比如hjkl。然而,我没有找到一种不使用箭头键或Ctrl+N/P在Omnicomplete框中导航的方法。
vim是否为up和down提供了其他键?

发布于 2014-02-20 15:25:36
在插入模式完成弹出窗口中,任何可打印的字符都用于进一步限制匹配列表,因此只有<C-N> / <C-P>键可以选择不同的菜单项。
如果您可以忍受丢失一些完成键,则可以定义以下映射:
:inoremap <expr> j pumvisible() ? '<C-n>' : 'j'
:inoremap <expr> k pumvisible() ? '<C-p>' : 'k'发布于 2014-02-20 15:40:58
我有以下映射,我对此非常满意:
" Move up and down in autocomplete with <c-j> and <c-k>
inoremap <expr> <c-j> ("\<C-n>")
inoremap <expr> <c-k> ("\<C-p>")如果你正在使用一个插件(比如Neocomplete,它的老兄弟Neocomplcache,或YouCompleteMe),只要有需要完成的东西,就会弹出自动完成对话框,这一点尤其有用。
https://stackoverflow.com/questions/21900031
复制相似问题