Как показать список автозаполнения omnicomplete без автозаполнения текущего текста
Я учусь VIM с полным набором. Мне интересно, смогу ли я показать список неполного заполнения без автозаполнения текущего текста. Например,
Если я наберу "str.c", а затем вызову omnicomplete, он покажет список, содержащий возможные слова, начинающиеся с "c", и автоматически завершит текущий текст, скажем "capitalize".
Если, например, метод, который я ищу, это count, мне нужно прокрутить весь список вниз, чтобы найти его, или удалить часть "apitalize", а затем набрать o и т. Д. Можно ли просто показать list, так что, если я вызову его после c, он покажет список без автозаполнения, чтобы использовать заглавные буквы? Например, что-то вроде ниже, где я все еще могу набрать o, чтобы быстро перейти к подсчету
3 ответа
Благодаря комментарию @romainl я посмотрел completeopt и обнаружил, что всплывающее меню завершения выполнения Vim работает так же, как в IDE. У него есть куча других связанных советов. Чтобы сделать поведение, как описано в вопросе,
:set completeopt=longest,menuone
Кроме того, вы можете нажать <C-P>
сразу после <C-X><C-O>
чтобы вернуться к тому, что вы ввели, оставив меню завершения открытым.
Проверять, выписываться :h ins-completion-menu
для дополнительной информации.
Вы также можете просто придерживаться базовой функциональности vim и использовать C-e
в процессе завершения vim удалите список и вернитесь к точке, в которой вы инициировали завершение.
Я думаю, что изначально проблема заключалась в отсутствии
noinsert
в
completeopt
вариант.