После долгого "обучения" я, наконец, перешел на Vim; но у меня есть некоторые проблемы с автозаполнением. Как я могу получить предложение кода во время ввода?
Я обычно разрабатываю PHP, Ruby, HTML, C и CSS.
После долгого "обучения" я, наконец, перешел на Vim; но у меня есть некоторые проблемы с автозаполнением. Как я могу получить предложение кода во время ввода?
Я обычно разрабатываю PHP, Ruby, HTML, C и CSS.
Вы можете использовать плагин, например AutoComplPop, чтобы получить автоматическое завершение кода при вводе.
2015 Edit: Я лично использую YouCompleteMe.
Используйте Ctrl - N, чтобы получить список предложений слов в режиме вставки. Введите :help i_CTRL-N
, чтобы увидеть документацию Vim по этой функции.
Здесь приведен пример импорта словаря Python в Vim.
Вы можете начать со встроенного параметра 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.
Существует также https://github.com/Valloric/YouCompleteMe, и он включает такие вещи, как джедай, а также имеет нечеткое совпадение. До сих пор я считал YCM самым быстрым среди того, что я пробовал.
Изменить: существуют также такие новые, как https://github.com/maralla/completor.vim
Я использовал neocomplcache в течение примерно полугода. Это плагин, который собирает кеш слов во всех ваших буферах, а затем предоставляет их для автоматического завершения.
В предыдущей ссылке есть массив скриншотов на странице проекта. В Neocomplcache также есть тонна опций конфигурации, из которых также есть основные примеры на странице проекта.
Если вам нужна дополнительная глубина, вы можете посмотреть соответствующий раздел в vimrc - просто найдите слово neocomplcache.
Недавно я обнаружил проект под названием OniVim, который является электронным интерфейсом для NeoVim, который поставляется с очень красивой автозаполнением для нескольких языков из коробки, и поскольку это в основном просто обертка вокруг NeoVim, у вас есть полная сила vim в вашем распоряжении, если графический интерфейс не отвечает вашим потребностям. Он все еще находится на раннем этапе развития, но он быстро улучшается, и вокруг него действительно активно работает сообщество. Я использую vim более 10 лет и начал давать Oni тест-драйв несколько недель назад, и хотя у него есть некоторые ошибки здесь и там, он не мешал мне. Я бы настоятельно рекомендовал его новым пользователям vim, которые все еще получают свои vim-пальцы!
OniVim: https://www.onivim.io/
Вот ссылка . для PHP.
нажмите Ctrl + x, а затем клавиши Ctrl + o, при написании некоторых функций PHP.
Благодаря Oseems Solutions для учебника
Если вы хотите только автозаполнение из кеша ваших текущих буферов, supertab проще установить, чем neocomplete, может работать на Mac предварительно установленном vim из коробки без необходимости использования MacVim.
Вы можете проверить другие альтернативы на vim awesome.
Для PHP, Padawan с Deoplete - отличные решения для надежной автозаполнения PHP в Neovim. Я пробовал много вещей, и падаван работал как шарм!
Для Vim вы можете использовать Neocomplete вместо Deoplete.
Я написал статью о том, как сделать Vim PHP IDE, если кому-то это интересно. Конечно, Падаван является его частью.