0

在使用 AutoComplPop 多次崩溃后,我切换到了 neocomplete。我已经找到了let g:neocomplete#enable_auto_select = 1当你点击返回时选择 neocomplete 的第一个建议的选项,就像 AutoComplPop 一样。

但我不知道如何执行以下操作:

  1. 假设我想选择第三个建议,所以我<C-n>两次突出显示它。使用 AutoComplPop,我现在可以按回车键并选择当前突出显示的建议,并关闭建议窗口,而无需插入换行符。使用 neocomplete,插入换行符。我意识到我可以点击空格并继续输入,但<CR>无论我选择第一个建议还是其他建议,我都希望行为保持一致。否则肌肉记忆会导致错误。

  2. 如何从所有缓冲区中获取建议,而不仅仅是当前缓冲区?

  3. 我可以将 neocomplete 与 vim-ruby 等智能感知插件一起使用,以便String对象的补全仅显示字符串方法吗?

  4. 我希望将每个完成添加为撤消历史记录中的单独条目,以便我可以u撤消完成。这可能吗?

4

1 回答 1

0

我相信你想要的问题 #1 是这样的:

function! s:close_popup_and_complete()
  return pumvisible() ? neocomplete#close_popup() : "\<CR>"
endfunction

" <CR>: close popup and save indent.
inoremap <silent> <CR> <C-r>=<SID>close_popup_and_complete()<CR>

对于问题 #2,我认为该行为是一个错误,并且已被修复。

于 2016-02-24T01:50:47.857 回答