Автозаполнение, подобное Visual Studio, в Vim

#visual-studio #vim #autocomplete #vi #vim-plugin

#visual-studio #vim #автозаполнение #vi #vim-плагин

Вопрос:

Исходя из Visual Studio, я привык к автоматическому автозаполнению при вводе не буквенно-цифрового символа:

Автозаполнение в Visual Studio

На данный момент, если я нажму space (или ), ; и т.д.), Visual Studio предположит, что я хочу public , и вставит это за меня.

Я бы хотел, чтобы эта функциональность была в Vim. Автозаполнение по умолчанию — закрыть (нажатие Ctrl P в режиме вставки), но я бы хотел, чтобы выпадающий список автозаполнения открывался автоматически.

Я опробовал плагин AutoComplPop, который автоматически открывает выпадающий список параметров, но также требует, чтобы пользователь нажималEnter, чтобы фактически вставить выделение:

Автозаполнение AutoComplPop

Существует ли плагин, предоставляющий функциональность автозаполнения в стиле Visual Studio? Или есть способ настроить автозаполнение Vim по умолчанию таким образом, чтобы оно вело себя подобным образом?

Просто чтобы внести ясность, я спрашиваю не о предложениях, предоставляемых автозаполнением Vim (я нашел множество документации о добавлении пользовательских словарей), а скорее о механизме самого автозаполнения.

Ответ №1:

В отличие от <Down> и <Up> , которые перемещаются только вниз и вверх по всплывающему меню, <C-n> и <C-p> также вставляют выбранное предложение, чтобы вы могли просто продолжать вводить (a <space> , a . …) без необходимости нажимать <CR> .

Как бы то ни было, я раздвоил AutoComplPop, чтобы добавить поддержку PHP и JavaScript, и просто взломал поддержку для того типа взаимодействия, который вы хотите.

acp-разветвленный по сути

Ответ №2:

Не бойтесь, граждане, введите YouCompleteMe: наконец-то хороший, интеллектуальный плагин завершения кода для Vim. Это бесплатно, быстро и сэкономит вам много времени. Соедините YouCompleteMe с Supertab, и вы станете еще большим программистом, чем вы уже являетесь в Vim. Источник

https://github.com/Valloric/YouCompleteMe