Огляд¶
Вступ¶
Спеціальна конфігурація, створена розробниками NvChad, дозволяє мати інтегроване середовище з багатьма функціями графічної IDE. Ці функції вбудовані в конфігурацію Neovim за допомогою плагінів. Ті, які вибрали для NvChad розробники, мають функцію налаштування редактора для загального використання.
Однак екосистема плагінів для Neovim набагато ширша, і завдяки їхньому використанню ви можете розширити редактор, щоб зосередитися на власних потребах.
Сценарій, який розглядається в цьому розділі, — це створення документації для Rocky Linux, тому будуть пояснені плагіни для написання коду Markdown, керування сховищами Git та інших завдань, пов’язаних із цією метою.
Вимоги¶
- NvChad правильно встановлено в системі
- Володіння командним рядком
- Активне підключення до Інтернету
Загальні поради щодо плагінів¶
Конфігурація NvChad передбачає вставлення плагінів користувача з папки lua/plugins
. Усередині нього спочатку знаходиться файл init.lua з інсталяцією плагіна conform.nvim і деякими прикладами для налаштування функціональності системи.
Хоча ви можете розмістити власні плагіни у файлі, бажано використовувати окремі файли для конфігурацій користувача. Таким чином, ви можете використовувати початковий файл для будь-яких замін базових плагінів, у той час як ви можете організовувати свої плагіни в незалежних файлах відповідно до ваших уподобань.
Вставити плагіни¶
Конфігурація запитує папку plugins
, і всі файли .lua в ній завантажуються. Це дозволяє об’єднати декілька файлів конфігурації під час завантаження з редактора.
Щоб правильно вставити, додаткові файли повинні містити конфігурації плагінів у lua tables:
return {
{ -- lua table
-- your plugin here
}, -- end lua table
}
Також надається папка configs
, куди можна ввести особливо довгі налаштування деяких плагінів або змінюваних користувачем частин, наприклад у випадку conform.nvim.
Переходячи до практичного прикладу, припустімо, що ми хочемо включити до функціональних можливостей редактора плагін karb94/neoscroll.nvim, який дозволяє покращити прокручування дуже довгих файлів.
Для його створення ми можемо створити файл plugins/editor.lua
, куди ми розмістимо всі плагіни, пов’язані з використанням редактора, або файл plugins/neoscroll.lua
та зберігайте всі додаткові плагіни окремо.
У цьому прикладі ми будемо використовувати перший варіант, тому давайте створимо файл у папці plugins
:
touch ~/.config/nvim/lua/plugins/editor.lua
І слідуючи інформації на сторінці проекту, ми вставляємо в неї наступний блок коду:
return {
{
"karb94/neoscroll.nvim",
keys = { "<C-d>", "<C-u>" },
opts = { mappings = {
"<C-u>",
"<C-d>",
} },
},
}
Після збереження він буде розпізнаний конфігурацією NvChad, яка подбає про його вставлення за допомогою функцій, запропонованих обробником lazy.nvim.
Neovim, на якому базується конфігурація NvChad, не інтегрує механізм автоматичного оновлення конфігурації з запущеним редактором. Це означає, що кожного разу, коли файл плагінів змінюється, необхідно зупинити nvim
, а потім знову відкрити його, щоб отримати повну функціональність плагіна.
Висновки та заключні думки¶
Існує велика екосистема плагінів для Neovim, які можна інтегрувати в NvChad. Для їхнього дослідження можна скористатися підтримкою сайту Dotfyle, який надає інформацію про плагіни та конфігурації для Neovim, або Neovimcraft, який фокусується лише на доступних плагінах. Обидва надають чудову загальну інформацію про плагіни та посилання на відповідні проекти на GitHub.
Введення нової функції пошуку плагінів, яка була присутня з версії 2.5, дає змогу впорядковувати плагіни користувачів дуже ефективним способом із можливістю налаштування. У складній конфігурації це дозволяє окремо керувати плагінами, які потребують спеціальних конфігурацій (код lua або autocmds), що значно спрощує керування ними.
Author: Franco Colussi
Contributors: Steven Spencer, Ganna Zhyrnova