Что такое Neovim?
Neovim — это форк Vim (который, в свою очередь, является потомком vi), начатый в 2014 году с целью модернизации кодовой базы, улучшения расширяемости и обеспечения лучшей интеграции с современными инструментами. Он полностью совместим с моделью редактирования Vim, но добавляет:
- Встроенный LSP-клиент (Language Server Protocol)
- Lua как первоклассный язык конфигурации и скриптов
- Асинхронное управление задачами (неблокирующие операции)
- Встроенный эмулятор терминала
- Архитектура удалённых плагинов (плагины могут работать как отдельные процессы)
- Интеграция с Tree-sitter для продвинутой подсветки синтаксиса и текстовых объектов
Neovim управляется полностью с клавиатуры. Мышь не требуется (хотя её поддержка есть). Основная идея в том, что руки всё время остаются на домашнем ряду клавиатуры, и любое действие — от перемещения курсора до рефакторинга кода — находится на расстоянии одного-двух нажатий.
Философия: модальное редактирование
В отличие от обычных редакторов (VS Code, Sublime и т.д.), где клавиши всегда вводят символы, Neovim модальный: одни и те же клавиши делают разные вещи в зависимости от текущего режима.
Представьте фотоаппарат:
- В нормальном режиме клавиши — это кнопки (как кнопки на камере).
- В режиме вставки клавиши печатают текст (как будто камера снимает).
Сначала это кажется странным, но именно в этом заключается сила Neovim. В нормальном режиме каждая клавиша на клавиатуре доступна как команда. Это означает, что у вас есть огромный словарь операций редактирования, не прибегая к сложным комбинациям вроде Ctrl+Shift+Alt+X.
Кривая обучения крутая в начале: первые несколько дней всё идёт медленно. После этого скорость редактирования резко возрастает, потому что вы комбинируете перемещения и правки как язык.