Ответы:
Вы можете использовать плагин, такой как AutoComplPop, чтобы получить автоматическое завершение кода при вводе.
Редактирование 2015: я лично использую YouCompleteMe сейчас.
Используйте Ctrl-, Nчтобы получить список предложений слов в режиме вставки. Введите, :help i_CTRL-N
чтобы увидеть документацию Vim по этой функции.
Вот пример импорта словаря Python в Vim.
Если вы используете VIM версии 8+, просто введите Ctrl + n
или Ctrl + p
.
Вы можете начать со встроенной omnifunc
настройки.
Просто поставьте:
filetype plugin on
au FileType php setl ofu=phpcomplete#CompletePHP
au FileType ruby,eruby setl ofu=rubycomplete#Complete
au FileType html,xhtml setl ofu=htmlcomplete#CompleteTags
au FileType c setl ofu=ccomplete#CompleteCpp
au FileType css setl ofu=csscomplete#CompleteCSS
в нижней части .vimrc
, а затем введите <Ctrl-X><Ctrl-O>
в режиме вставки.
Я всегда полагаюсь на это завершение CSS.
setl
значит? Спасибо.
:h buffers
говорит: буфер - это файл, загруженный в память для редактирования. Тем не менее, я только серьезно использовал Vim для 3 мес. и я, безусловно, открыт для исправления.
Существует также https://github.com/Valloric/YouCompleteMe, и он включает в себя такие вещи, как джедай, а также имеет нечеткое совпадение. До сих пор я обнаружил, что YCM самый быстрый из всех, что я пробовал.
Изменить: также существуют некоторые новые, такие как https://github.com/maralla/completor.vim
Недавно я обнаружил проект под названием OniVim , который является электронным интерфейсом для NeoVim, который поставляется с очень хорошим автозаполнением для нескольких языков из коробки, и, так как это в основном просто оболочка для NeoVim, у вас есть все возможности vim. в вашем распоряжении, если графический интерфейс не соответствует вашим потребностям. Он все еще находится на ранней стадии разработки, но он быстро улучшается, и вокруг него действительно активное сообщество. Я использую vim более 10 лет и начал тестировать Oni несколько недель назад, и, хотя у него есть кое-какие ошибки, он никак не мешает мне. Я настоятельно рекомендую это новым пользователям vim, которые все еще получают свои пальцы vim!
OniVim: https://www.onivim.io/
Я использовал neocomplcache около полугода. Это плагин, который собирает кэш слов во всех ваших буферах, а затем предоставляет их для автоматического заполнения.
На предыдущей ссылке на странице проекта есть множество скриншотов. Neocomplcache также имеет множество опций конфигурации, из которых также есть основные примеры на странице проекта.
Если вам нужно больше глубины, вы можете посмотреть соответствующий раздел в моем vimrc - просто найдите слово neocomplcache.
Вот ссылка ! для PHP.
нажмите клавиши Ctrl + x, а затем клавиши Ctrl + o при написании некоторых функций PHP.
Спасибо Oseems Solutions за учебник
Если вы хотите только автозаполнение из кеша ваших текущих буферов, supertab проще установить, чем neocomplete , он может работать на Mac с предустановленным vim без необходимости в MacVim.
Вы можете проверить другие альтернативы на Vim Awesome .
Для PHP, падаван с Deoplete большие решения , имеющие надежный PHP автозаполнения в Neovim. Я много чего перепробовал и падаван работает как шарм!
Для Vim вы можете использовать Neocomplete вместо Deoplete.
Я написал статью, как сделать Vim PHP IDE, если кому-то интересно. Конечно, падаван является частью этого.
Другой вариант - coc.nvim .
Это действительно быстро, и завершение отлично, так как использует intellisense то же самое автозаполнение, что и VScode. У этого также есть способности линтинга. Так что это показывает, что вы могли иметь ошибку. Он поддерживает множество языков.
Для установки и настройки может потребоваться некоторое время, но я считаю, что это лучший механизм автозаполнения для vim.