Yet another Vim IDE

26 Окт

1

Vim как среда разработки для JavaScript и PHP.

Чтобы превратить текстовый редактор в какое-то подобие среды разработки, добавим проверку синтаксиса, навигацию по проекту, навигацию по коду и некоторые вспомогательные фичи.

Основные утилиты и плагины:


JavaScript

Индексирование

Индексирование производится с помощью DoctorJS246. Установку можно выполнить по инструкции на github247. После установки станет доступна команда jsctags .

Теперь из каталога проекта можно выполнять команду индексирования:

или для рекурсивного индексирования проекта:

Проверка кода

Можно сделать с помощью jshint248 и специального плагина для vim249.

Для автоматической проверки файла при сохранении добавьте строчку в ваш ~/.vimrc :

Некоторым, как и мне, плагин jshint2.vim может показаться слишком избыточным и навязчивым. В этом случае подойдёт универсальный плагин syntastic рассмотренный ниже.

Сниппеты

Для использования сниппетов установите плагин snipMate. Далее можно увидеть мои сниппеты. Дополнительно к стандартным есть вспомогательные для создания документирующих комментариев в стиле JSDuck, дописывайте свои по мере необходимости.


PHP

Индексирование

Индексирование с помощью ctags-exuberant. Ищите в пакетах вашего дистрибутива или на официальной странице.

Теперь из каталога проекта можно выполнить команду:

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

Проверка кода

Php имеет встроенные средства для проверки кода. Для выполнения проверки из vim можно воспользоваться плагином PHP QA Tools. Валидация будет выполняться при сохранении и по команде :Php .

Для проверки только синтаксиса надо добавить в ваш  .vimrc  следующие строчки:

Улучшение поддержки формата

Настройки специфичные для формата содержатся в системном конфиге ftplugin/php.vim . Прежде чем вносить в него изменения, лучше скопировать в свой каталог ~/.vim .

Для упрощения работы с многострочными комментариями добавьте в свой  ftplugin/php.vim  следующие строчки:

Это было скопировано из конфига для форматов «javascript». Упрощает в оформлении документирующих комментариев. При начале новой строки в многострочном комментарии будет автоматически вставлен символ «*».


Управление проектами

Полезные плагины для работы с проектами:

  • NERD Tree — дерево файлов
  • bufexplorer — список буферов
  • TagBar — список свойств и методов классов

Для быстрого обращения к плагинам сделал привязки на клавиши F6, F7, F8:

Проверка синтаксиса

Для проверки синтаксиса можно использовать специальные плагины для конкретных языков (например, рассмотренные выше), либо универсальный плагин syntastic.

Syntastic выполняет проверку синтаксиса при сохранении файла. Строчки с ошибками выделяются в колонке с номерами строк. Список ошибок можно получить с помощью команды :Errors.

Syntastic поддерживается расширенной статусной строкой vim-airline, показывающей уведомление при наличии ошибок.

Использование нескольких индексных файлов

Например для файлов tags-php и tags-js в корне проекта

 

Добавить комментарий