2016-03-02 5 views
0

Я использую vim с Omnicomplete. Прямо сейчас, когда я печатаю что-то, я получаю список допустимых параметров, как показано на картинке. Vim Working WIth OmnicompleteVim Omnicomplete Autocomplete item selection issue

Однако, как вы можете видеть, ни один из параметров не отображается в раскрывающемся меню по умолчанию. Я должен вручную использовать кнопку со стрелкой, чтобы выбрать элемент, а затем нажмите CTRL-Y, чтобы закончить выбор. То, что я хотел бы сделать, автоматически выделяет элемент, который точно соответствует слову, который я печатаю, поэтому мне нужно только нажимать CTRL-Y без использования клавиш со стрелками каждый раз, если это не необходимо. Также как я могу избежать добавления новой строки при нажатии enter, чтобы выбрать элемент из выпадающего списка? Спасибо.

Редактировать: Следует отметить, что мое выпадающее меню появляется автоматически без ручного нажатия CTRL-N. Итак, я думаю, как я могу обнаружить, что pumvisible() активен, и если он активен, я имитирую кнопку < Down>. Что-то вроде

autocmd if pumvisible() then \<Down> 

Я не знаю точного синтаксиса, но что-то в этом направлении должно работать? Я буду признателен за любые рекомендации относительно этого.

+0

«Я должен упомянуть, что мой выпадающее меню появляется автоматически» вы должны отметить, что раньше. Это означает, что вы используете плагин и что весь механизм завершения, вероятно, захвачен этим плагином ..., что делает практически невозможным вам помочь. Кроме того, '' не связан с omnicompletion. – romainl

ответ

0

Вот отображение я использую, чтобы получить именно ваше желаемое поведение:

inoremap ,, <C-x><C-o><C-r>=pumvisible() ? "\<lt>Down>\<lt>C-p>\<lt>Down>" : ""<CR> 
+0

Спасибо за ваш ответ и он похож на то, что упоминается в [link] (http://vim.wikia.com/wiki/Make_Vim_completion_popup_menu_work_just_like_in_an_IDE). Однако это не сработало для меня. Я добавляю команду в .vimrc как строку. Я делаю что-то неправильно в том, как я добавляю его в .vimrc. Еще раз спасибо за ответ. – hellfragger

 Смежные вопросы

  • Нет связанных вопросов^_^