Как использовать Vim: руководство по основам
Vim – самый мощный и универсальный редактор кода, доступный для Unix-подобных систем. Это расширение редактора Vi, разработанное Биллом Джоем. Vim доступен по умолчанию в большинстве систем Linux и BSD.
Таким образом, вы можете использовать один и тот же редактор на всех ваших системах и удаленных машинах. Строгий словарный запас Vim также делает его чрезвычайно эффективным и выразительным.
Как работает Vim?
Vim отличается от традиционных текстовых редакторов Linux . Он поддерживает философию Unix: делать одно и делать все правильно. Основная идея состоит в том, что как программисты мы тратим большую часть времени на редактирование кода, а не на его написание.
Vim предоставляет несколько режимов для решения этой проблемы. Каждый режим делает что-то свое и управляется нажатием клавиш. Основные режимы vim – это нормальный режим, визуальный режим, режим вставки и командный режим.
Мы используем обычный режим для просмотра кода и выполнения быстрых операций. Визуальный режим используется для выделения текстовых разделов, а режим вставки – для добавления текста. Вы будете использовать командный режим для ввода различных команд vim.
Как использовать Vim в режиме вставки
Когда вы открываете vim, он запускается в обычном режиме. Вы можете переключиться в режим вставки, нажав клавишу i . Это вызывает режим вставки в позиции курсора. Вы должны увидеть индикацию в нижнем левом углу.
Теперь вы можете ввести любой текст, и vim скопирует его в буфер. Чтобы сохранить прогресс, вернитесь в нормальный режим, нажав клавишу выхода <ESC> . Теперь введите следующую команду vim.
:w
Есть и другие способы перейти в режим вставки. Например, вы можете вставить текст прямо под текущей строкой, нажав o в обычном режиме. Используйте O, чтобы вставить текст над текущей строкой.
Используйте I для вставки текста в начало текущей строки. Вы можете использовать клавишу a для добавления текста сразу после курсора. Используйте A для добавления текста в конец строки.
Чтобы сохранить текущий файл и выйти из него, переключитесь в командный режим и введите следующее.
:wq
Как использовать Vim в нормальном режиме
Пользователи Vim большую часть времени проводят в обычном режиме. Здесь вы можете перемещаться по текстам и выполнять быстрое редактирование. Нажатие клавиши выхода <ESC> из любого режима вернет вас в нормальный режим.
Вместо стандартных клавиш со стрелками vim использует hjkl ( h для левого, j для вниз, k для вверх и l для правого) для навигации. Поначалу это может показаться контрпродуктивным. Но vim делает это, чтобы сэкономить время, необходимое пользователям для нажатия клавиш со стрелками на клавиатуре.
Кроме того, как и многие консольные редакторы, vim рекомендует пользователям держаться подальше от мыши. Однако вы можете настроить vim для включения поддержки мыши.
Вы также можете перемещаться по тексту пословно. Например, нажатие w в обычном режиме перемещает курсор в начало следующего слова. Вы можете перейти к началу текущего слова с помощью b и закончить с помощью e .
Используйте 0 для перехода к началу строки и $ для перехода к концу. Нажатие H перемещает курсор в верхнюю часть экрана, M – в середину, а L – в нижнюю часть. Вы можете прокручивать вверх и вниз, используя Ctrl + u и Ctrl + d . Если вы нажмете gg в обычном режиме, vim переместит курсор наверх. Введите G, чтобы перейти в конец.
Вы можете изучить команды редактирования vim, как только почувствуете себя комфортно в обычном режиме. Используйте x для удаления символа, s для замены. Вы удаляете тексты с помощью оператора d . В качестве аргумента он принимает движение. Синтаксис для этого показан ниже.
d{motion}
Движение может быть любым. Например, нажатие dw в обычном режиме удаляет текущее слово. Если вы наберете d $ , vim удалит все до конца строки. Аналогичным образом, ввод d0 удаляет до начала строки. Используйте dd для удаления всей строки.
Однако вам не нужно что-то удалять и переходить в режим замены для внесения изменений. Оператор c позволяет нам вносить изменения в движение vim прямо из нормального режима.
c{motion}
Итак, когда вы нажимаете cw , vim удаляет текущее слово и переводит вас в режим вставки. Курсор должен находиться в начале слова, поскольку vim удалит его из текущей позиции. Используйте ciw, чтобы обойти это. Это вносит изменения в текущее слово. Используйте cc для изменения всей строки.
Используйте y для копирования движений и p для их вставки. Итак, yw копирует текущее слово, а yy копирует всю строку. Вы можете повторить предыдущую команду, используя точку . , отмените изменения с помощью u и повторите их с помощью Ctrl + r .
Если вы хотите найти что-то в своем коде, используйте следующую команду vim в Linux.
/{regex}
Здесь regex – это регулярное выражение. Нажмите n, чтобы перейти к следующему совпадению, и N, чтобы перейти к предыдущему совпадению.
Как использовать Vim в визуальном режиме
Использование vim в визуальном режиме позволяет нам выделять блоки текста с помощью клавиш перемещения. Вот как опытные пользователи перемещают блоки кода в vim. Введите v в обычном режиме, чтобы переключиться в визуальный режим.
Теперь вы можете выделять фрагменты текста или кода с помощью навигационных клавиш hjkl . Используйте Ctrl + v для переключения в режим визуального блока. Здесь вы можете выделить блоки текста. Вы можете выделить линии, перейдя в режим визуальных линий. Используйте V для выбора режима визуальной линии.
Это позволяет нам вносить изменения в блок текста сразу. Например, вы можете выбрать текстовый блок и нажать y, чтобы скопировать текст в буфер vim.
Как использовать командный режим Vim
Мы можем получить доступ к командному режиму, набрав : в нормальном режиме. Курсор переместится в нижнюю часть экрана, за которым следует двоеточие. Ниже приведены некоторые из наиболее полезных команд vim в Linux.
- : w сохранить изменения в файл
- : wq сохранить и выйти
- : saveas ФАЙЛ сохранить текущий файл как ФАЙЛ
- : q выйти из vim
- : q! выйти и отменить изменения
- : e ФАЙЛ открыть ФАЙЛ для редактирования
- : help открыть справку
Добавьте закладку на эту шпаргалку по vim, чтобы получить быстрый доступ к полезным командам vim.
Освоение основ Vim
Vim – надежный редактор, устраняющий разрыв между мышлением и редактированием. Написание кода становится гораздо более увлекательным, когда вы разбираетесь в vim. Хотя вам потребуются годы практики, чтобы по-настоящему овладеть им, понимание основ vim должно помочь вам встать на верный путь.