Разберитесь с режимами NeoVim один раз и используйте их как профессионал — вот как

Разберитесь с режимами NeoVim один раз и используйте их как профессионал — вот как

4 февраля 2023 г.

Режимы Neovim похожи на повседневную рутину человека — как только вы во всем разобрались, он бросает вызов и неожиданно переводит вас в режим вставки. Это все равно, что пытаться почистить зубы во время приготовления завтрака и внезапно начать спонтанный интерпретирующий танец — это не всегда красиво, но выполняет свою работу. Так что да, режимы Neovim могут быть ошеломляющими и запутанными для неподготовленных. Но как только вы ознакомитесь с документацией, вы сможете ориентироваться в Neovim как профессионал и никогда не оглядываться назад.

Итак, сколько режимов у Neovim?

Чтобы другие текстовые редакторы и IDE даже близко не приблизились к его возможностям, Neovim использует в общей сложности четыре режима:

  1. Обычный режим. Это режим "орлиного глаза", позволяющий быстро перемещаться по коду, легко удалять, редактировать, копировать и вставлять его.
  2. Режим вставки. В этом режиме вы пишете текст или код. Это может показаться медленным и неуклюжим, но выполнить работу необходимо.
  3. Визуальный режим: позволяет выделять текст и выполнять различные действия. Возможности безграничны и подробно описаны в документации.
  4. Режим командной строки: позволяет запускать в редакторе команды, такие как поиск и замена текста.

В заключение отметим, что режимы Neovim предназначены для того, чтобы сделать процесс редактирования более эффективным и упорядоченным. Немного поучившись и попрактиковавшись, вы сможете в полной мере воспользоваться возможностями Neovim и сделать процесс написания кода более приятным.

И со всеми этими режимами вы можете плавно переключаться с одного на другой. Это как очарование! Что касается проверки текущего режима, он обычно отображается в нижнем левом углу окна редактора.

Для чего нужны режимы?

Подумайте об этом, как об использовании разных инструментов для разных задач. Например, мы используем гаечный ключ для затягивания болтов, молоток для забивания гвоздей и дрель для проделывания отверстий в стене. Мы не используем один инструмент для всего, потому что это было бы неэффективно или действенно. Например, дрель с прикрепленным к ней молотком не подойдет профессиональным строителям.

Nvim использует режимы для разделения логики редактора. Мы привыкли к тому, что текстовые редакторы представляют собой единую среду, в которой мы печатаем, редактируем и выделяем, не задумываясь о различной логике и сценариях, которые требуются для каждого действия. Но зачем их всех объединять?

Расширенный редактор Neovim работает как профессионал. Это побуждает пользователей использовать определенные инструменты для конкретных задач. Каждый режим — это свой инструмент.

Обычный режим

Это режим по умолчанию в Neovim. Он используется для быстрой навигации, удаления, редактирования текста и многого другого. Вы всегда можете переключиться в любой другой режим из Обычного режима, и вы почти всегда будете возвращаться в Обычный режим после завершения задачи.

Как переключиться?

Чтобы перейти в Обычный режим, вы можете использовать следующие команды, в зависимости от раскладки клавиатуры: <ESC>, CTRL+[ , или комбинацию CTRL+C, Caps Lock или даже комбинацию jk, что очень удобно, потому что указательный и средний пальцы уже находятся на этих клавишах!

Мне нравится думать об обычном режиме как о «режиме орла». Этот режим позволяет увидеть всю картину целиком, как орла, парящего высоко над головой. Когда вам нужно набрать текст, это похоже на то, как орел ныряет вниз, чтобы схватить мышь, набирает текст, а затем снова летит вверх.

Важно не прыгать как голубь, так как он медленный и ничего не видно. Вместо этого приучите себя автоматически возвращаться в нормальный режим после любого действия. Этот режим позволяет вам работать быстро, точно и эффективно, позволяя использовать все волшебные возможности Neovim.

Режим вставки

Режим вставки предназначен только для ввода текста.

* Все редактирование и манипуляции выполняются в Обычном режиме. * Это включает удаление, копирование и вставку. Конечно, вы можете использовать клавишу Backspace для удаления символов в режиме вставки, но для более сложного редактирования лучше переключиться в обычный режим. * Даже навигация по тексту затруднена в режиме вставки, поэтому для этих задач более эффективно переключаться в обычный режим.

Это разделение связано с тем, что большинство программистов тратят больше времени на просмотр, чтение и редактирование кода, чем на написание нового кода. Поэтому у нас есть отдельный режим для написания кода. Думайте об этом как о пишущей машинке — вы можете печатать, но не можете легко редактировать или удалять свою работу. Режим вставки таков: вы переключаетесь на него, печатаете, а затем снова переключаетесь в Обычный режим для редактирования.

Когда вы входите в режим вставки, курсор меняется с квадрата на линию. Режим в нижнем левом углу также изменится на Insert. В результате многие «магические» команды Nvim станут недоступны, и станут доступны новые возможности, характерные для режима вставки.

Как переключиться?

Когда мы пролетаем над ландшафтом в обычном режиме, мы переключаемся в режим вставки, если нам нужно добавить код. Это команды для использования (с различными вариантами, разделенными косой чертой).

* i / a Чтобы начать ввод до или после курсора, используйте команду вставки или добавления. Его легко запомнить, потому что «i» означает вставку, а «a» — добавление. * I / A Чтобы начать ввод в начале или конце текущей строки, используйте команду «I» (верхний регистр) или «A» (верхний регистр). Он похож на предыдущий вариант, но более мощный. * o / O Чтобы начать печатать с новой строки ниже или выше курсора, используйте команду 'o' или 'O'. «o» для новой строки под курсором, «O» для новой строки над курсором. * s Команда «4s» удалит указанное количество символов, в данном случае 4, и перейдет в режим вставки. * S Полностью очистить строку и переключиться в режим вставки. * r Команда «r» заменяет символ под курсором. Просто нажмите 'r', чтобы ввести нужный символ для его замены. Вы останетесь в обычном режиме. Это полезно, когда вам нужно исправить только один символ, но вы хотите остаться в нормальном режиме.

Командная строка

Как переключиться?

Чтобы попасть в этот режим, нам нужно ввести символ :. Затем слева внизу появится двоеточие, после которого мы вводим нашу команду.

Я не очень давно знаком с Nvim, поэтому я не изучил все функции командной строки. Но я расскажу вам о двух основных областях, где я начал использовать командную строку.

Сохранение и выход из файла

  • :w Сохранить (или написать)
  • :wq Сохранить и выйти (выйти) из него, также :x может дать тот же эффект
  • :q Выйти (вас спросят, не сохранен ли файл):q! принудительно выйти без сохранения
  • :new <file> Создает новый файл
  • :edit <file> Немедленно открывает файл в Nvim для редактирования.

Поиск

Обратите внимание, что в Nvim поиск выполняется с использованием символа / или ? вместо символа :.

* /{pattern} — Поиск указанного шаблона справа от курсора. Это поддерживает регулярные выражения. * ?{pattern} - Поиск указанного шаблона слева от курсора. Это также поддерживает регулярные выражения. * Enter — перейти к первому совпадению шаблона. * n — перейти к следующему вхождению шаблона. * N — Перейти к предыдущему вхождению шаблона. * :nohlsearch – убрать постоянное выделение шаблона поиска.

Визуальный режим

Визуальный режим отлично подходит для задач, требующих точности и аккуратности. Например, мы уже знакомы с командой 4s, которая удаляет четыре символа и переходит в режим вставки. Но что, если мы хотим удалить около 12 символов? Подсчет каждого символа, глядя на экран, может быть утомительным и может привести к ошибкам.

Nvim предлагает множество инструментов для более точных операций, и Визуальный режим — один из них. Этот режим позволяет легко выбирать текст и управлять им с большей точностью, делая задачи, которые в противном случае были бы утомительными и подверженными ошибкам, намного проще и эффективнее.

Как переключиться?

Чтобы войти в режим выбора, нажмите клавишу v. Находясь в этом режиме, вы можете использовать клавиши со стрелками для выбора текста посимвольно. Вы можете скопировать выделенный текст в буфер обмена, нажав y, или удалить его, нажав d. Почти все действия, которые можно выполнять в других режимах, также можно выполнять в визуальном режиме.

Но знаете ли вы, что визуальный режим разделен на три подрежима? К ним относятся:

  • Выбор одного символа
  • Построчный выбор
  • И выделение блоков (что отлично подходит для работы с таблицами) с помощью Ctrl+V

Попробуйте и поэкспериментируйте с каждым из этих подрежимов, используя клавиши со стрелками. Вы быстро увидите разницу между ними.


Вот вам небольшой трюк Nvim. Находясь в обычном режиме, поместите курсор в любое место внутри абзаца и введите vip. Эта команда означает «Визуальный режим — внутренний абзац» и позволяет вам выбирать и работать с текстом на более высоком уровне абстракции.

Это один из самых мощных аспектов Nvim. Вы можете выполнять различные задачи, комбинируя несколько команд и режимов с командами движения. Мы углубимся в навигацию и команды управления движением в следующей части нашего обсуждения.


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE