Vim omnicompletion для Java - PullRequest
       35

Vim omnicompletion для Java

11 голосов
/ 21 октября 2009

Я прочитал кучу блогов о якобы большом умении Вима, и все же, что бы я ни делал, я не могу заставить его работать удовлетворительно. Мне потребовалось много времени, чтобы понять, что версия ctags, предустановленная в моей системе, была emacs, и у нее не было опции --recurse, но теперь, когда я запустил ctags-exuberant на своей копии OpenJDK Если исходники пытаются запустить какое-то завершение кода, Vim зависает всякий раз, когда я пытаюсь вызвать его с помощью [Cn] или [Cp].

Все, что мне действительно нужно, это что-то вроде завершения кода в Eclipse; Мне нравится Vim в качестве редактора, но в Eclipse есть только те дополнительные функции, из-за которых Vim, похоже, не работает. Затмение с плагином vi-mode не было особенно полезным для меня, и это слишком много памяти и процессора, чтобы быть полезным; eclim тоже не очень любит меня.

Кто-нибудь может предложить более простой способ заставить работать какое-то завершение кода в Vim, которое действительно работает?

Ответы [ 4 ]

8 голосов
/ 23 октября 2009

Вот функция "JDE" для vim: http://www.vim.org/scripts/script.php?script_id=1213 Одной из перечисленных функций является "Завершение кода (работает для java и jsp, taglib, html, xml, xsl, xsd) (VIM) 7.0 требуется) "

А вот сценарий автозаполнения Java: http://vim.sourceforge.net/scripts/script.php?script_id=1785

Это не Java, но я обнаружил, что это довольно ясно и понятно; возможно, это стоило бы прочитать. Вот рецепт по настройке автозаполнения для Drupal. Пользовательский скрипт AWK создает словарь автозаполнения для vim. http://www.thingy -ma-jig.co.uk / блог / 18.08.2009 / друпал-автозаполнения-ВИМ

Удачи.

5 голосов
/ 29 октября 2009

Я пошел с eclim:

http://eclim.sourceforge.net/

Некоторое время назад он в основном запускает eclipse в фоновом режиме, а затем предоставляет плагин vim, который позволяет вам использовать все функции eclipse внутри vim. Таким образом, вы можете выполнять рефакторинг, доработку и т. Д. Кажется, это работает довольно хорошо, если вы не возражаете против запуска огромного процесса затмения в фоновом режиме в вашей системе.

У меня есть завершающая работа, довольно хорошо работающая на C ++ (лучше, чем Vis Stud), но мне никогда не повезло с Java. В эти дни я обычно использую eclipse, но в eclipse я настроил gvim --remote как внешнюю команду, чтобы я мог просто стереть текущий буфер в vim в любое время.

1 голос
/ 18 октября 2012

Я искал это так же, как и планирую перейти от затмения к vim. Лучшее решение, которое я нашел на данный момент, - заставить vim затмить врапра (http://vrapper.sourceforge.net/). Он предоставляет множество функций vim для редактора Eclipse, и вы все еще можете использовать автозаполнение и все другие функции Eclipse.

Я по-прежнему заинтересован в том, чтобы полностью перейти, но кажется, что преодолеть затмение для среды разработки java сложно. (просто ненавижу накладные расходы на затмение!)

1 голос
/ 25 октября 2009

Имелось такое же желание, выполнил его, используя eclim . Работает действительно очень хорошо.

...