Подтвердить что ты не робот

Какие хорошие плагины для разработки Java в VIM?

Я обожаю vim, но не имея таких вещей, как IntelliSense/Code завершение от Eclipse, это довольно сложно. Я знаю, я знаю, я должен иметь возможность смотреть на сигнатуры методов и java-документы для API, который меня интересует. Мне бы очень хотелось, но я хотел бы, чтобы это было доступно из моих кончиков пальцев, вместо того, чтобы просматривать исходное дерево вручную или иметь ссылку на JDK.

Какие плагины сделают это проще?

4b9b3361

Ответ 1

Я попробовал eclim некоторое время. Это было очень хорошо, в основном он использует eclipse в фоновом режиме как своего рода движок и предоставляет плагин, позволяющий вам использовать все преимущества затмений через vim.

http://eclim.org/

Ответ 2

Не пишите Java в Vim - поставьте Vim внутри Java IDE:

Мне нравится Vim, но использование IDE для Java - единственный способ оставаться в здравом уме. Достойная Java IDE будет:

  • Показать недопустимые ошибки синтаксиса или типа
  • Показать отсутствующий JavaDoc
  • Управлять import операторами для вас
  • Выделите неиспользуемые методы и переменные
  • Безопасное выполнение мощных рефакторингов, таких как методы перемещения или переименование классов - (нет, поиск и замена не сокращают его, я обещаю)
  • Преобразуйте свой код автоматически или по запросу

Vim не может сделать выше, но вы можете использовать все комбинации клавиш Vim в программе, которая делает.

Ответ 3

Ознакомьтесь с JDE-плагином для Vim. Он обеспечивает Java omni-завершение и средство просмотра документации (между прочим).

Ответ 4

Я использую плагин javacomplete.vim для omni-завершения для java. Это очень приятный script: он также показывает сигнатуры метода поверх omni-завершения. Недостатком является то, что он немного медленный, но он работал отлично для меня в противном случае. Eclim может быть лучше, я еще не пробовал, поэтому я не могу прокомментировать его.

Я также использовал плагин jcommenter.vim для генерации комментариев javadoc. Он может анализировать сигнатуры методов и автоматически добавлять соответствующие поля @param foo и т.д.

Для поиска API я хотел бы предложить переопределить ключ K в обычном режиме. Он ищет man-страницы для ключевого слова под курсором, но поведение можно переопределить, установив переменную keywordprg. См. этот поток для примера.

Другие сценарии, которые я нашел очень полезными (не специфичными для разработки Java): NERDCommenter, AutoClose, snipMate, Выровнять.

Ответ 5

Я использую Eclipse + Vrapper. Включает редактирование дуального режима vi, которое все мы знаем и любим. < & ESC, GT;

Полностью свободный и легкий. Цель состоит в том, чтобы иметь комфорт и удобство, которые сочетаются с различными режимами, сложными командами и комбинациями count/operator/motion, которые являются основными функциями редактирования с помощью Vim, при сохранении мощных функций различных текстовых редакторов Eclipse, таких как генерация кода и рефакторинг.

В то время как eclim - еще одна альтернатива, я чувствую, что eclim берет на себя Eclipse, и vrapper этого не делает.

Ответ 7

Vim не является заменой среды разработки. Но очень конкретный дополнительный инструмент. С Vim вы должны делать небольшие изменения, в то время как основная разработка идет под Netbeans/Eclipse/IDEA.

Еще раз. Плохая плохая идея превратить Vim в полную IDE. Зачем? Это будет не так быстро. И, таким образом, это не будет так красиво.

Вот сценарий. Вы открыли Eclipse или что-то еще, чтобы изменить текущую задачу. И через 10 минут вам нужно переключиться на другую Задачу, которая является срочной. Задача состоит в том, чтобы немного настроить maven или конструкцию ant script и/или некоторые сценарии развертывания perl/python/groovy.

Сколько времени потребуется для перезагрузки Eclipse для работы над новой задачей за 5 минут и возврата?
Но если вы Vim гуру, вы можете справиться с этим через несколько секунд. Вы можете изменить один файл и запустить Ant/Mvn в Vim.

И это сила Вима. Вы можете изменить и проверить один файл за один раз независимо от того, какое расширение оно имеет: java, groovy, С++, makefile, bash, С# и т.д.

Ответ 8

Это будет тяжелая битва. Существует столько знаний о вашей программе, встроенной в Eclipse, что я ожидаю, что вам в конечном итоге придется полностью реализовать все, чтобы быть счастливым.

Любая конкретная причина, по которой вы не можете просто решить, что вам нравится встроенный редактор в Eclipse?