Встановлення Neovim
Вступ до Neovim¶
Neovim є одним із найкращих редакторів коду завдяки своїй швидкості, простоті налаштування та конфігурації.
Neovim є відгалуженням редактора Vim
. Він народився в 2014 році, в основному через відсутність на той час підтримки асинхронних завдань у Vim. Написаний мовою Lua з метою модулярізації коду, щоб зробити його більш керованим, Neovim був розроблений з урахуванням сучасного користувача. Як зазначено на офіційному веб-сайті, «Neovim створено для користувачів, яким потрібні найкращі частини Vim та інше».
Розробники Neovim обрали Lua, оскільки вона ідеально підходить для вбудовування, швидко використовує LuaJIT і має простий синтаксис, орієнтований на сценарії.
Починаючи з версії 0.5 Neovim включає Treesitter (інструмент генератора парсерів) і підтримує протокол мовного сервера (LSP). Це зменшує кількість плагінів, необхідних для досягнення розширених функцій редагування. Це покращує продуктивність таких операцій, як завершення коду та лінтування.
Однією з його сильних сторін є можливість налаштування. Усі його конфігурації містяться в одному файлі, який можна розповсюджувати на різні інсталяції через системи контролю версій (Git або інші), щоб вони завжди були синхронізовані.
Спільнота розробників¶
Хоча Vim і Neovim є проектами з відкритим вихідним кодом і розміщені на GitHub, існує значна різниця між способами розробки. Neovim має більш відкритий розвиток спільноти, тоді як розвиток Vim більше прив’язаний до вибору його творця. База користувачів і розробників Neovim досить мала порівняно з Vim, але це проект, який постійно зростає.
Ключові особливості¶
- Продуктивність: дуже швидко.
- Можливість налаштування: широка екосистема плагінів і тем
- Підсвічування синтаксису: інтегровано з Treesitter і LSP, але вимагає певної конфігурації
Як і у випадку з Vim, Neovim вимагає базових знань про його команди та параметри. Ви можете отримати огляд його можливостей за допомогою команди :Tutor
, яка викликає файл, який ви можете прочитати та потренуватися використовувати його. Навчання займає більше часу, ніж повна графічна IDE, але як тільки ви вивчите ярлики команд і включені функції, ви зможете дуже легко редагувати документи.
Інсталяція Neovim¶
Інсталяція з EPEL¶
Перш ніж перейти до встановлення NvChad, нам потрібно переконатися, що у нас є доступна інсталяція Neovim. Якщо він ще не встановлений, ви можете встановити його з репозиторію EPEL. Репозиторій EPEL надає мінімальну версію, необхідну для NvChad (наразі 0.7.2). Якщо ви хочете використовувати новішу версію, ми рекомендуємо інсталяцію з попередньо скомпільованого пакета або з джерела.
Щоб установити випуск Neovim, наданий EPEL, вам потрібно буде встановити сам репозиторій, якщо ви цього ще не зробили.
dnf install epel-release
Введіть таку команду, щоб інсталювати програму:
dnf install neovim
Інсталяція з попередньо скомпільованого пакета¶
Встановлення з попередньо скомпільованого пакета дозволяє тестувати версії розробки Neovim (0.8 і новіші). Дві версії (інсталяції) можуть співіснувати в одній системі, оскільки версія з попередньо скомпільованого пакета залишається повністю обмеженою на рівні користувача.
Щоб використовувати всі функції нової версії, ми все ще повинні задовольнити залежності, які вимагає Neovim, ми повинні надати наш nvim
із залежностями вручну. Необхідні пакети можна встановити за допомогою:
dnf install compat-lua-libs libtermkey libtree-sitter libvterm luajit luajit2.1-luv msgpack unibilium xsel
Далі ми завантажуємо стислий архів для нашої архітектури (linux64) за цією адресою:
https://github.com/neovim/neovim/releases
Файл, який потрібно завантажити, це nvim-linux64.tar.gz
. Щоб перевірити цілісність архіву, нам також потрібно завантажити файл nvim-linux64.tar.gz.sha256sum
. Після завантаження нам потрібно перевірити його цілісність і розпакувати його десь у нашому домашньому каталозі
. Пропоноване рішення полягає в тому, щоб розпакувати його в ~/.local/share/
. Припустимо, що ми завантажили його в /home/user/downloads/, нам потрібно буде виконати такі команди:
sha256sum -c /home/user/downloads/nvim-linux64.tar.gz.sha256sum
nvim-linux64.tar.gz: OK
tar xvzf /home/user/downloads/nvim-linux64.tar.gz
mv /home/user/downloads/nvim-linux64 ~/.local/share/nvim-linux64
Все, що залишилося на цьому етапі, це створити символічне посилання в ~/.local/bin/
для нашого nvim.
cd ~/.local/bin/
ln -sf ~/.local/share/nvim-linux64/bin/nvim nvim
Тепер переконайтеся, що ви маєте правильну версію за допомогою команди nvim -v
, яка має відобразити:
nvim -v
NVIM v0.8.3
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
Інсталяція з вихідного коду¶
Встановлення з попередньо скомпільованого пакета, як зазначено вище, надає nvim
лише для користувача, який його запускає. Якщо ви хочете зробити Neovim доступним для всіх користувачів системи, вам доведеться виконати установку з початкового коду. Збірка Neovim не є особливо складною і складається з наступних кроків.
Спочатку ми встановлюємо пакети, необхідні для компіляції:
dnf install ninja-build libtool autoconf automake cmake gcc gcc-c++ make pkgconfig unzip patch gettext curl git
Після того, як ми встановили необхідні пакунки, нам потрібно створити папку для збірки neovim і перейти в неї:
Клон Neovim за замовчуванням синхронізовано з гілкою розробки Neovim (на момент написання цієї статті версія 8.0). Щоб скомпілювати стабільну версію, нам доведеться перейти до відповідної гілки перед клонуванням за допомогою:
mkdir ~/lab/build
cd ~/lab/build
Тепер клонуйте репозиторій:
git clone https://github.com/neovim/neovim
Після завершення операції ми матимемо папку під назвою neovim, яка містить усі необхідні файли. Наступним кроком є перевірка стабільної гілки, а потім налаштування та компіляція джерел за допомогою команди make
.
cd ~/lab/build/neovim/
git checkout stable
make CMAKE_BUILD_TYPE=RelWithDebInfo
Ми вибрали тип RelWithDebInfo
, оскільки він забезпечує не лише оптимізацію, але й корисний рівень налагодження для подальших налаштувань. Ви також можете використати тип Release
, якщо бажаєте отримати максимальну продуктивність.
Цей процес передбачає налаштування та компіляцію файлів, які потрібно розмістити в нашій системі. Ці файли зберігаються в neovim/build
. Щоб установити їх, ми використаємо команду make install:
make install
Оскільки ця команда збирається змінити файлову систему, її потрібно запускати як суперкористувач, або за допомогою sudo
, або безпосередньо користувачем root.
Після завершення встановлення ми можемо перевірити, чи все пройшло добре, перевіривши шлях до Neovim:
whereis nvim
nvim: /usr/local/bin/nvim
Та перевірити версію:
nvim --version
NVIM v0.8.3
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
....
Як ви можете бачити з фрагмента команди вище, тут було виконано встановлення стабільної версії. Обидві версії, як стабільна, так і для розробки, ідеально працюють із NvChad на Rocky Linux 9.
Видалення¶
У випадку, якщо нам потрібно видалити інсталяцію, наприклад, щоб перейти до іншої версії, нам доведеться повернутися до папки збірки та використати target
cmake, наданий самим Neovim. Щоб виконати видалення, потрібно виконати наступну команду:
cmake --build build/ --target uninstall
Ця команда також вимагає привілеїв суперкористувача або запуску від імені користувача root.
Крім того, ви можете скористатися ручним методом, видаливши виконуваний файл і бібліотеки за допомогою:
rm /usr/local/bin/nvim
rm -r /usr/local/share/nvim/
Знову ж таки, вам потрібно виконувати ці команди з правами суперкористувача.
Neovim Basic¶
Як ви можете бачити на знімку екрана, базова інсталяція Neovim надає редактор, який ще не можна порівняти з IDE.
Тепер, коли у нас є базовий редактор, настав час перетворити його на щось більш розширене завдяки конфігурації, наданій NvChad.
Author: Franco Colussi
Contributors: Steven Spencer, Ganna Zhyrnova