Перейти к содержанию

Vim

Материал из Antidote'z wiki

Описание

Vim — это популярный текстовый редактор для терминала.

Режимы работы Vim

Vim работает в нескольких режимах:

  • Normal (обычный режим) — по умолчанию, используется для навигации и команд.
  • Insert (режим вставки) — ввод текста (i, a, o и т. д.).
  • Visual (визуальный режим) — выделение текста (v, V, Ctrl+v).
  • Command-line (командный режим) — ввод команд (:).

Основные команды

Переход между режимами

  • i — вставка перед курсором
  • a — вставка после курсора
  • o — новая строка ниже
  • Esc — выход в нормальный режим

Навигация

  • h — влево
  • l — вправо
  • k — вверх
  • j — вниз
  • w — к началу следующего слова
  • e — к концу слова
  • 0 — в начало строки
  • $ — в конец строки
  • gg — в начало файла
  • G — в конец файла

Редактирование

  • x — удалить символ
  • dd — удалить строку
  • yy — скопировать строку
  • p — вставить после курсора
  • u — отмена (undo)
  • Ctrl+r — повтор действия (redo)

Поиск и замена

  • /слово — поиск слова вперёд
  • ?слово — поиск назад
  • n — повтор поиска вперёд
  • N — повтор поиска назад
  • :%s/старое/новое/g — замена по всему файлу

Работа с файлами

  • :w — сохранить
  • :q — выйти
  • :wq — сохранить и выйти
  • :q! — выйти без сохранения
  • :e имя — открыть файл
  • :set number — показать номера строк

Полезные приёмы

  • Команды можно умножать числом: 3dd — удалить 3 строки, 5yy — скопировать 5 строк.
  • Макросы: q<буква> — начать запись макроса, q — закончить, @<буква> — выполнить.
  • Визуальный режим (v, V, Ctrl+v) удобен для выделения и массовых изменений.

Работа с окнами

Создание окон

  • :split или :sp — горизонтальное разделение
  • :vsplit или :vsp — вертикальное разделение
  • :split файл — открыть файл в новом горизонтальном окне
  • :vsplit файл — открыть файл в новом вертикальном окне

Переключение между окнами

  • Ctrl-w h — влево
  • Ctrl-w l — вправо
  • Ctrl-w j — вниз
  • Ctrl-w k — вверх
  • Ctrl-w w — по кругу между окнами
  • Ctrl-w p — в предыдущее окно

Изменение размеров

  • Ctrl-w = — выровнять все окна
  • Ctrl-w _ — максимальная высота текущего окна
  • Ctrl-w | — максимальная ширина текущего окна
  • :resize N — задать высоту окна
  • :vertical resize N — задать ширину окна
  • Ctrl-w + — увеличить высоту
  • Ctrl-w - — уменьшить высоту
  • Ctrl-w > — увеличить ширину
  • Ctrl-w < — уменьшить ширину

Закрытие окон

  • :q — закрыть текущее окно
  • :close — закрыть окно (но не весь Vim)
  • Ctrl-w c — то же самое, что :close
  • Ctrl-w o — закрыть все остальные окна, оставить текущее

Вкладки

  • :tabnew или :tabnew файл — новая вкладка
  • :tabn / :tabnext — следующая вкладка
  • :tabp / :tabprev — предыдущая вкладка
  • :tabfirst — первая вкладка
  • :tablast — последняя вкладка
  • :tabclose — закрыть вкладку
  • :tabonly — оставить только текущую вкладку