- PVSM.RU - https://www.pvsm.ru -
Расскажу о том, почему я использую Neovim как основной текстовый редактор, а также о том, как я им пользуюсь.
По сравнению с VS Code и другими IDE, Neovim очень минималистичный и простой. Единственное, что нужно знать – это то, какие клавиши за что отвечают.
После того как вы привыкаете к способу управления, появляется второе преимущество – удобство. После этого вам будет не хватать vim-раскладки в обычных редакторах.
Хоть vim-раскладка увеличивает скорость печати, это не главное, так как при 10 часах дебага она вам не поможет. Дело тут именно в удобстве.
|
Команда |
Действие |
|---|---|
|
|
перейти в NORMAL режим |
|
|
перемещение |
|
|
пол страницы вверх/вниз |
|
|
вверх/низ файла |
|
|
скопировать/вставить строчку |
|
|
вставить пустую строчку снизу |
|
|
переход в начало/конец строки |
|
|
сохранить (и выйти) |
|
|
выйти без сохранения |
По настройке Neovim очень много статей, инструкций и т.д. Я опишу только свою конфигурацию.
Как я уже сказал, я люблю минимализм.
Из плагинов использую Telescope для навигации по проекту, Treesitter для подсветки синтаксиса и LSP для автодополнения и аннотаций. В качестве темы использую Gruvbox.
GitHub с конфигурацией [1] если вам интересно.
Единственная сложность при знакомстве с Neovim – vim-раскладка.
В Neovim есть 5 режимов. Каждый из них нужен для выполнения какой-то отдельной задачи.
Основной режим. Для перехода в него нажмите либо Esc либо Ctrl-c.
h – влево
j – вниз
k – вверх
l – вправо
Ctrl-d – пол страницы вниз
Ctrl-u – пол страницы вверх
I – в начало строки
A – в конце строки
gg – в начало файла
G – в низ файла
Экран можно разделить на несколько частей. Для того чтобы разделить экран вертикально, напишите :vs, а для горизонтального разделения – :sp.
Для перемещения между окнами у меня настроены эти клавиши.
wh – перейти в окно слева
wj – перейти в окно снизу
wk – перейти в окно сверху
wl – перейти в окно справа
o – вставить пустую линию под текущей
O – вставить пустую линию над текущей
dd – удалить линию
yy – скопировать линию в буфер обмена
p – вставить скопированное
При удалении чего-либо, удаленный текст копируется в буфер обмена.
Позволяет выделять текст и манипулировать им.
Для того чтобы выделить текст, нажмите v в режиме NORMAL. Также, можно выделить всю линию, для этого нажмите V.
После выделения можно приступить к его редактированию.
d – удалить
u – перевести в нижний регистр
U – перевести в верхний регистр
y – скопировать в буфер обмена
p – вставить текст из буфера вместо выделенного текста.
Обычный режим для набора текста. Тоже что и в других редакторах.
Чтобы вернутся в NORMAL, нужно нажать Esc.
Перейти в него можно нажав : в NORMAL режиме. После каждой команды для выполнения нужно нажимать Enter.
w – сохранить файл
wq – сохранить и выйти
q! – выйти без сохранения
Находясь в VISUAL режиме, напечатайте :s/, впишите текст или регулярное выражение которое хотите заменить, потом / и текст на который хотите изменить.
Нажмите / и впишите то, что хотите найти. После этого нажмите Enter и перемещайтесь по найденным результатам с помощью n.
Помогает искать файлы по названию. Я долгое время использовал Nvimtree, но после того как установил Telescope нужда в нём пропала.
Live Grep – плагин, дополняющий Telescope, который помогает искать код по всей кодовой базе с молниеносной скоростью.
Для вызова напишите :te. В этом же окне откроется терминал, с возможностью использования vim-раскладки.
При открытии больших файлов редактор можно запускать в чистом виде без плагинов, затормаживающих открытие и редактирование.
nvim --clean
Иногда использую GUI версию Neovim под названием Neovide [2]. Люблю его из-за очень красивой анимации перемещения курсора и того что он написан на Rust.
Если вам нужно выйти из редактора, просто наберите :q!.
Надеюсь статья была полезной. Больше статей в моём блоге [3].
Автор: georgiyozhegov
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/vim/410414
Ссылки в тексте:
[1] GitHub с конфигурацией: https://github.com/georgiyozhegov/configuration/blob/master/nvim
[2] Neovide: https://github.com/neovide/neovide
[3] моём блоге: https://t.me/thegblog
[4] Источник: https://habr.com/ru/articles/881396/?utm_source=habrahabr&utm_medium=rss&utm_campaign=881396
Нажмите здесь для печати.