Продолжаем цикл статей, посвященных превращению консольного текстового редактора в Neovim в IDE (интегрированную среду разработки) для работы с языком программирования Python. В прошлой заметке я показал как установить и базово настроить Neovim. Сегодня мы дополним функционал редактора путем установки плагинов. Если вы не читали первые статьи из цикла, то оставлю ссылку на них ниже.
Устанавливаем vim-plug
Чтобы использовать плагины в редакторе Neovim необходимо установить помощник по работе с ними. Этих помощников, на самом деле огромное множество, но я выбрал vim-plug и продолжаю его использовать. Чтобы в Neovim появилась поддержка плагинов, вначале нужно установить этот помощник. Чтобы это сделать переходим на страницу vim-plug в GitHub и находим раздел со способами установки.
Нас интересует пункт, посвященный Neovim, поэтому открываем терминал и вставляем туда скопированную со страницы команду:
sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
На этом установка vim-plug завершена. Правда, просто?
Включаем поддержку vim-plug в конфигурационном файле Neovim
Теперь нужно дать понять Neovim, что мы собираемся использовать плагины. Для этого откроем конфигурационный файл для редактирования:
nvim $HOME/.config/nvim/init.vim
И вставим в него две строки:
call plug#begin()
call plug#end()
Эти строки показывают начало и конец процедуры по вызову и подключению плагинов. Neovim теперь будет знать, что все, что расположено между двумя этими строками - есть плагины.
Подключаем нужные плагины
Процедура подключения проста донельзя и заключается в том, чтобы использовать ключевое слово Plug и после в кавычках указать адрес на GitHub репозиторий, где хранится плагин:
Plug 'адрес репозитория плагина'
Можно указывать как полный адрес (с https), так и просто текст, состоящий из имени автора и названия плагина, разделенных косой чертой (/). Ниже я покажу то, какие плагины подключены у меня и расскажу за что они отвечают.
- vim-airline и vim-airline-themes - добавляет внизу редактора информативную и красивую строку состояния, второй плагин позволяет устанавливать для этой строки темы
- nerdtree - добавляет в Neovim окно с менеджером файлов.
- vim-css-color - выделяет шестнадцатеричный код в тот цвет, который этот код обозначает (например, текст #000000 будет выделен черным цветом)
- awesome-vim-colorshemes - плагин для цветовых тем оформления уже самого Neovim
- vim-devicons - добавляет иконки, которые красиво смотрятся вместе с nerdtree
После добавления нужных плагинов, сохраняем изменения путем использования комбинации :wq и выходим из редактора. Затем нужно в него снова войти, чтобы конфиг перезагрузился.
Установка плагинов
После рестарта конфига нажимаем двоеточие и пишем в строке PlugInstall. Можно не дописывать слово до конца, а набрав первые буквы, нажать клавишу Tab и откроются все возможные варианты, которые начинаются на введенные символы. Нажимая всю ту же клавишу Tab можно выбирать между несколькими вариантами.
Нажимаем Enter и открывается окно vim-plug, в котором можно наблюдать процесс скачивания и установки плагинов.
Сразу после установки можно заметить, что заработал vim-airlines, так как внизу появилась строка состояния. Выйти из окна vim-plug можно также, как и из Neovim - :q. Также лучше после этого выйти из самого редактора и войти в него вновь, чтобы установленные плагины нормально прогрузились. После перезапуска Neovim стал выглядеть совсем иначе.
Настройка плагинов
Не все установленные плагины начинают работать сразу. Некоторые необходимо настроить. Таким в моем перечне является плагин nerdtree, для которого нужно задать настройки горячих клавиш для открытия и закрытия менеджера файлов. Чаще всего необходимые команды указаны на странице плагина в GitHub. В случае с nerdtree в конфиг Neovim нужно добавить следующую строку:
nnoremap <C-t> :NERDTreeToggle<CR>
Эта строка говорит, что мы будем использовать сочетание клавиш Ctrl + T чтобы открывать и закрывать менеджер. После сохраняем изменения, выходим из редактора и заходим вновь. Если нажать теперь нужное сочетание, то откроется окно с файлами.
Оно похоже на то, что можно наблюдать в таких редакторах кода, как Visual Studio Code или Pycharm. Но если присмотритесь, то увидите, что иконки выглядят как-то не очень. Это потому, что в дистрибутиве не установлен специальный шрифт под названием Nerd. Он используется для отображения иконок. Чтобы все смотрелось красиво, нужно установить шрифт. Про то, как это можно сделать я рассказывал в отдельной статье на канале, ссылку размещу ниже. Там как раз-таки происходит установка Nerd-шрифта от Jetbrains.
После установки шрифта файловый менеджер выглядит нормально.
Теперь установим темы оформления Neovim, которые предоставлены плагином awesome-vim-colorschemes. По сути, при установке в определенную папку добавилось большое количество тем, из которых можно выбрать понравившуюся. То, как выглядит каждая тема, вы можете посмотреть на GitHub-странице плагина.
Я выбрал тему Iceberg, для ее установки в конфигурационном файле указываю следующую строку:
source /home/jc/.local/share/nvim/plugged/awesome-vim-colorschemes/colors/iceberg.vim
Часть адреса /home/jc - это моя домашняя директория, у вас там будет что-то другое. Как видим, все темы расположены в папке .local/share/nvim/plugged/awesome-vim-colorschemes/colors. После внесения изменения, сохраняем их и перезапускаем редактор, чтобы посмотреть на примененную тему.
Подведем итоги
Естественно, что на данном этапе Neovim не имеет ничего общего с IDE. Но теперь мы научились устанавливать и настраивать плагины, это знание пригодится в следующих статьях, где начнется настройка Neovim для работы с Python. Как раз-таки, используя плагины мы добавим автодополнение кода, подсветку его синтаксиса, работы с GIT, запуск Python-программ напрямую из редактора и многое другое.
Поэтому, чтобы не пропустить новые статьи из этого цикла и другие полезные материалы, рекомендую подписаться на канал, если вы еще этого не сделали.