Автоматическое завершение кода в VIM? - PullRequest
12 голосов
/ 18 января 2010

Может ли VIM автоматически завершать код, как это делает Eclipse? Обычно я подключаюсь к своему Linux-серверу разработки через Putty с моего ноутбука с Windows. Итак, я надеюсь, что смогу найти плагин для VIM, который может сделать выпадающее меню, например, автозаполнение, когда я могу вводить имена переменных в Putty, это возможно?

Спасибо!

Ответы [ 4 ]

15 голосов
/ 18 января 2010

Да, в некотором смысле - Vim имеет Завершение команды, которые могут помочь вам автоматически найти текст завершения для частичных имен переменных.

В двух словах введите частичное имя переменной и затемнажмите Ctrl P , чтобы найти подходящее имя.

3 голосов
/ 18 января 2010

Да, это возможно. В Vim уже есть встроенный общий стиль дополнения кода под названием Omni завершение.

Установка по умолчанию не допускает автоматического вызова, но если вы установите этот сценарий , то это произойдет.

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

2 голосов
/ 04 февраля 2010

Попробуйте использовать http://eclim.org/ - используя ядро ​​Eclipse с VIM через плагины.

Чтобы не запускать полное ядро ​​ecplise, но иметь завершение члена C / C ++, попробуйте http://www.vim.org/scripts/script.php?script_id=1520

-   Complete namespaces, classes, structs and union members. 
-   Complete inherited members for classes and structs
(single and multiple inheritance). 
-   Complete attribute members eg: myObject->_child->_child etc...
0 голосов
/ 08 октября 2016

В настоящее время vim не имеет плагинов для функции автоматического завершения кода, я использую плагин youcompleteme в сочетании с vim-snippets , ultisnips и supertab плагины. Вы можете завершить код, используя фрагменты (небольшой текст, который можно развернуть для полного кода), и поддерживается большое количество языков.

Для простых текстовых файлов также имеется выпадающее меню для слов, которые вы ввели ранее.

...