Введение
Neovim — это современный, расширяемый редактор кода, основанный на Vim. Он предлагает улучшенную производительность, встроенную поддержку Lua и активное сообщество. Настройка Neovim позволяет адаптировать редактор под ваши нужды: от внешнего вида до функциональности через плагины. В этом руководстве вы научитесь настраивать Neovim в Linux с нуля — от установки до создания индивидуальной конфигурации.
Требования
Перед началом убедитесь, что:
- У вас есть доступ к терминалу и базовые навыки работы с командной строкой.
- Установлен Neovim (если нет — установите по инструкции ниже).
- Вы знакомы с базовыми командами Vim (не обязательно, но полезно).
Пошаговая инструкция
Шаг 1: Установка Neovim
Если Neovim ещё не установлен, установите его через менеджер пакетов вашего дистрибутива.
Для Ubuntu/Debian:
sudo apt update
sudo apt install neovim
Для Fedora:
sudo dnf install neovim
Для Arch Linux:
sudo pacman -S neovim
После установки проверьте версию:
nvim --version
Рекомендуется использовать Neovim 0.9 или новее.
Шаг 2: Создание конфигурационной директории
Neovim ищет конфигурационные файлы в директории ~/.config/nvim. Создайте её, если она отсутствует:
mkdir -p ~/.config/nvim
Шаг 3: Создание основного конфигурационного файла
Внутри этой директории создайте файл init.vim (для Vimscript) или init.lua (для Lua). В этом руководстве мы используем Vimscript для простоты, но принципы аналогичны.
Создайте файл:
touch ~/.config/nvim/init.vim
Если предпочитаете Lua:
touch ~/.config/nvim/init.lua
Шаг 4: Добавление базовых настроек
Откройте init.vim в любом редакторе и добавьте базовые настройки. Вот пример минимального конфига:
" Включаем номера строк
set number
" Включаем подсветку синтаксиса
syntax on
" Настройка отступов
set tabstop=4 " Ширина табуляции
set shiftwidth=4 " Ширина отступа при >> и <<
set expandtab " Замена табов на пробелы
" Включаем подсветку текущей строки
set cursorline
" Тема оформления (если установлена)
colorscheme desert
Если используете Lua (init.lua), синтаксис будет другим. Пример:
-- Включаем номера строк
vim.opt.number = true
-- Подсветка синтаксиса
vim.cmd('syntax on')
-- Настройка отступов
vim.opt.tabstop = 4
vim.opt.shiftwidth = 4
vim.opt.expandtab = true
-- Подсветка текущей строки
vim.opt.cursorline = true
-- Тема
vim.cmd('colorscheme desert')
Сохраните файл.
Шаг 5: Установка менеджера плагинов
Для расширения функциональности Neovim используйте менеджер плагинов. Один из самых популярных — vim-plug. Установите его:
Скачайте скрипт установки:
curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
Теперь добавьте в init.vim блок для плагинов:
" Начало блока плагинов
call plug#begin('~/.local/share/nvim/plugged')
" Пример плагина: nvim-tree (файловый менеджер)
Plug 'nvim-tree/nvim-web-devicons' " опционально, для иконок
Plug 'nvim-tree/nvim-tree.lua'
" Другие плагины можно добавить здесь
call plug#end()
Для Lua-конфига (init.lua) используйте:
-- Убедитесь, что vim-plug установлен (автозагрузка уже настроена)
-- Затем в init.lua:
vim.call('plug#begin', '~/.local/share/nvim/plugged')
vim.call('plug#', 'nvim-tree/nvim-web-devicons')
vim.call('plug#', 'nvim-tree/nvim-tree.lua')
vim.call('plug#end')
Более современные менеджеры (lazy.nvim, packer.nvim) имеют другой синтаксис, но принцип похож.
Шаг 6: Установка плагинов и финальная настройка
После добавления плагинов в конфиг, запустите Neovim и выполните команду установки:
:PlugInstall
Для vim-plug. Для других менеджеров команды отличаются.
Также можно добавить дополнительные настройки для плагинов. Например, для nvim-tree:
" Включение nvim-tree при запуске Neovim (опционально)
autocmd vimenter * NvimTreeOpen
Или на Lua:
-- Настройка nvim-tree (пример)
require('nvim-tree').setup {
view = {
width = 30,
side = 'left'
}
}
После добавления всех настроек сохраните файл и перезапустите Neovim.
Проверка результата
Запустите Neovim:
nvim
Убедитесь, что:
- Номера строк отображаются.
- Тема оформления применена.
- Плагины загрузились (например, nvim-tree доступен по
:NvimTreeToggle). - Отступы работают корректно (нажмите
Tab— должны появиться 4 пробела).
Если что-то не работает, проверьте конфигурационный файл на синтаксические ошибки. Neovim выводит сообщения при загрузке.
Возможные проблемы
- Ошибка "E117: Unknown function: plug#begin" — менеджер плагинов не установлен. Убедитесь, что вы скачали
plug.vimв правильную директорию. - Плагины не загружаются — проверьте, что вы выполнили
:PlugInstallпосле добавления их в конфиг. - Конфиг не применяется — проверьте путь к файлу:
~/.config/nvim/init.vim(илиinit.lua). Убедитесь, что файл имеет правильные права. - Конфликты между плагинами — если после добавления нового плагина возникают ошибки, попробуйте временно убрать его и перезапустить Neovim.
- Проблемы с Lua-конфигом — если используете
init.lua, убедитесь, что синтаксис корректен. Можно проверить черезluac -p init.lua.
Если проблема не решена, попробуйте временно переименовать папку ~/.config/nvim и создать минимальный конфиг заново.