VIM

Как выйти из Vim и не только

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

Моё тесное знакомство с миром программирования началось с удивительного стартапа, где в течение двухнедельной вводной адаптации я смогла изучить все мелкие инструменты, необходимые для эффективной повседневной работы. Один из этих дней был посвящен изучению азов и нюансов редактора VIM. В университете я считала, что этот инструмент используют многие разработчики повсеместно.

Но, как позже оказалось, многие из моих коллег сторонились его только потому, что они не знали, как из него выйти. Даже на Stack Overflow есть пост, посвященный этой теме. Я же думаю, что бояться VIM стыдно и недальновидно. На деле навык работы в этом редакторе стал существенной частью моей карьеры программиста. Я истинно верю, что после всего нескольких раз обращения к подсказкам, вы уже выработаете мышечную память. Так что дерзайте!

Первое: страхи прочь! Или как выйти из текстового редактора VIM?

  • Хотите сохранить изменения и выйти? Очень просто — нажмите последовательно двоеточие, w, q, получится :wq. Либо :ZZ.
  • Хотите выйти без сохранения? Наберите :q!.

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

Хотите создать новый файл? Легко! Наберите в терминале vim text.txt. Если же вы хотите просмотреть или отредактировать уже существующий файл, то используйте ту же команду.

Сразу после создания файла вы оказываетесь в режиме команд.

Создан новый файл.

Перемещение по файлу

Как я отметила ранее, в VIM существует более одного способа осуществления любой операции. Вы вольны выбирать, какой из них наиболее подходящий.

Навигация по файлу может осуществляться либо стрелочными клавишами (большинство современных версий это поддерживают) либо базовыми клавишами текстового блока, а именно a-s-d-f и h-j-k-l.

Эти клавиши соответствуют клавишам направления для правой и левой частей.

  • l курсор вправо.
  • h курсор влево.
  • k курсор вверх.
  • j курсор вниз.

Если же вы осуществляете навигацию по крупному файлу, то можно еще сделать так:

  • Нажатие gg перемещает курсор на первую строку документа.
  • Нажатие G перемещает его на последнюю (⇧+g).

Перемещение курсора внутри строки

Вам также вряд ли понравится многократно давить на l, поэтому:

  • Используйте $, чтобы переместиться в конец строки.
  • Используйте 0, чтобы переместиться в начало строки.

Хорошо. Со знаковой навигацией и навигацией внутри строк мы разобрались, но что же насчет перемещения между словами?

Горячие клавиши для навигации

  • w перемещает на одно слово вперед.
  • b перемещает на слово назад.

Редактирование файла

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

Замена слов

Переместите курсор к слову, которое хотите заменить, нажмите c, затем w. После этого наберите нужное слово.

Удаление текста

Вы можете удалить слово одной командой, используя клавиши d и w.

  • Для удаления целой строки используйте dd.

Существует также очень удобная возможность стереть несколько строк за раз. Например, я хочу удалить 3 последующие строки.

  • Сделать это можно, нажав цифру 3, а затем dd.

Если вы допустите какие-либо ошибки в режиме команд или ввода, то в VIM есть удобная возможность отмены действия или его повторения.

  • Клавиша u совершает отмену действия.
  • Комбинация ctrl+r повтор.

Просмотр и редактирование нескольких файлов

Вы можете открыть несколько файлов во вкладках с помощью команды vim и перечисления нужных файлов:

vim text.txt text2.txt

Навигация по нескольким файлам

Сохранить текущие изменения и перейти к следующему файлу можно с помощью :wnext или, чтобы перейти к предыдущему, :wprev.

Если вы хотите увидеть, в какой части списка файлов вы находитесь, введите :args и в кавычках покажется файл.

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

Читайте также:


Перевод статьи Yaara Dawn Shoham: Chase Your VIM Demons Away