Поиск по сайту:

Полезные плагины редактора Vim для разработчиков программного обеспечения - часть 1


На этой странице

  1. Настройка установки плагина
  2. Плагин Vim Tagbar
  3. Подключаемый модуль Vim delimitMate
  4. Заключение

Улучшенная версия Vi, Vim – бесспорно один из самых популярных текстовых редакторов на основе командной строки в Linux. Помимо многофункционального текстового редактора, Vim также используется в качестве IDE (интегрированной среды разработки) разработчиками программного обеспечения по всему миру.

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

Специально для разработчиков программного обеспечения, которые плохо знакомы с Vim и используют редактор для целей разработки, в этом руководстве мы обсудим некоторые полезные плагины Vim вместе с примерами.

Обратите внимание, что все примеры, команды и инструкции, упомянутые в этом руководстве, были протестированы на Ubuntu 16.04, а используемая нами версия Vim — 7.4.

Настройка установки плагина

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

  • Создайте каталог .vim в своем домашнем каталоге, а затем создайте два подкаталога с именами autoload и bundle.
  • Затем в каталоге autoload вам нужно поместить файл с указанным здесь именем.
  • Наконец, создайте файл с именем .vimrc в своем домашнем каталоге и добавьте в него следующие две строки:

call pathogen#infect() 
call pathogen#helptags()

Вот и все. Теперь вы готовы установить плагины Vim.

Примечание. Здесь мы обсудили управление плагинами Vim с помощью Pathogen. Также доступны другие менеджеры плагинов — чтобы начать, посетите эту ветку.

Теперь, когда все готово, давайте обсудим пару полезных плагинов Vim.

Плагин Vim Tagbar

Прежде всего, это плагин Tagbar. Этот плагин дает вам обзор структуры исходного файла, позволяя просматривать содержащиеся в нем теги. «Он делает это, создавая боковую панель, которая отображает сгенерированные ctags теги текущего файла, упорядоченные по их области действия», — говорится на официальном сайте плагинов. \Это означает, что, например, методы в C++ отображаются в классе, в котором они определены\.

Звучит круто, правда? Теперь давайте посмотрим, как вы можете установить его.

Установка Tagbars довольно проста — все, что вам нужно сделать, это выполнить следующие две команды:

cd ~/.vim/bundle/
git clone git://github.com/majutsushi/tagbar

После установки плагин готов к использованию. Вы можете проверить это, открыв файл .cpp в Vim, войдя в командный режим и выполнив команду :TagbarOpen. Ниже приведен пример снимка экрана, показывающий боковую панель (справа), которая появляется при выполнении команды :TagbarOpen Vim:

Чтобы закрыть боковую панель, используйте команду :TagbarClose. Здесь стоит упомянуть, что вы можете использовать команду :TagbarOpen fj, чтобы открыть боковую панель, а также передать ей управление. Таким образом, вы можете легко просматривать содержащиеся в нем теги — нажатие клавиши Enter на теге вызывает (и передает управление) соответствующую функцию в окне исходного кода слева.

Если вы хотите многократно открывать и закрывать боковую панель, вы можете использовать команду :TagbarToggle вместо использования :TagbarOpen и :TagbarClose соответственно.

Если ввод этих команд кажется вам трудоемким, вы можете создать ярлык для команды :TagbarToggle. Например, если вы поместите следующую строку в файл .vimrc:

nmap <F8> :TagbarToggle<CR>

затем вы можете использовать клавишу F8 для переключения окна плагина Tagbar.

Двигаясь дальше, иногда вы заметите, что перед некоторыми тегами стоят символы +, - или #. Например, на следующем снимке экрана (взятом с официального сайта плагинов) показаны некоторые теги с префиксом +.

Эти символы в основном отображают информацию о видимости для конкретного тега. В частности, + указывает, что элемент является общедоступным, а - указывает на закрытый элемент. С другой стороны, символ # указывает, что элемент защищен.

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

  • На веб-сайте подключаемого модуля четко указано, что «Панель тегов не является универсальным инструментом для управления файлами tags. Он только создает необходимые теги «на лету» в памяти, не создавая никаких файлы. tags управление файлами обеспечивается другими подключаемыми модулями.\
  • Версии Vim < 7.0.167 имеют проблемы совместимости с панелью тегов. \Если вас это затронет, используйте эту альтернативную загрузку панели тегов: zip\, - говорится на веб-сайте. \Она соответствует версии 2.2, но, вероятно, не будет обновляться после нее из-за количества требуемых изменений\.
  • Если вы столкнулись с ошибкой Tagbar: Exuberant ctags not found! при запуске плагина, вы можете исправить ее, загрузив и установив ctags отсюда.
  • Дополнительную информацию о панели тегов см. здесь.

Плагин Vim delimitMate

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

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

Установка этого плагина аналогична тому, как мы устанавливали предыдущий:

cd ~/.vim/bundle/
git clone git://github.com/Raimondi/delimitMate.git

После того, как плагин успешно установлен (это означает, что приведенные выше команды выполнены успешно), вам больше ничего не нужно делать — он загружается автоматически при запуске редактора Vim.

Теперь всякий раз, когда в Vim вы вводите двойную кавычку, одинарную кавычку, фигурную скобку, круглые скобки или квадратную скобку, они будут автоматически завершены.

Плагин delimitMate настраивается. Например, вы можете расширить список поддерживаемых символов, запретить автоматическую загрузку плагина, отключить плагин для определенных типов файлов и т. д. Чтобы узнать, как настроить delimitMate для выполнения всего этого (и многого другого), просмотрите подробную документацию по подключаемым модулям, доступ к которой можно получить, выполнив команду :help delimitMate.

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

Заключение

Из двух плагинов, упомянутых в этой статье, Tagbar — вы, вероятно, согласитесь — требует сравнительно больше времени, чтобы привыкнуть. Но как только он настроен правильно (это означает, что у вас есть такие вещи, как клавиши быстрого запуска), его легко использовать. delimitMate, с другой стороны, не требует, чтобы вы что-либо запоминали.

Учебник дал бы вам представление о том, насколько полезными могут быть плагины Vim. Помимо обсуждаемых здесь, существует множество других плагинов, доступных для разработчиков программного обеспечения. Что ж, обсудим выбранную связку в следующей части. Между тем, оставьте комментарий, если вы используете крутой плагин Vim, связанный с разработкой, и хотите, чтобы другие знали о нем.

Во второй части этой серии руководств я расскажу о плагине подсветки синтаксиса Syntastic.