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

Vim

Немного про Vim#

Режимы#

Обычный режим (Normal)#

  • Режим, в который Vim попадает сразу после запуска
  • Выполняются команды редактирования, навигации и копирования

нажать Esc

Выйти в обычный режим можно нажатием Esc

Режим вставки (Insert mode)#

  • Режим, который позволяет вводить текст как в обычных текстовых редакторах (Выход из режима - нажатие Esc)

Режим команд (Command mode)#

  • Для выполнения команд: сохранение, выход, поиск и замена (Выход - нажатие Esc)

Режим визуального выделения (Visual mode)#

  • Для выделения текста для копирования, удаления или редактирования (Выход - нажатие Esc)

Есть ещё режимы, но мне неизвестны сценарии, в которых они могут быть полезны.

Шорткаты#

Нормальный режим -> режим вставки#

  • i - вставка перед курсором
  • I - втсавка в начало строки
  • A - вставка в конец строки
  • o - создаст новую строку ПОД курсором, переместит на неё фокус
  • O - создаст новую строку НАД курсором, переместит на неё фокус

Нормальный режим#

  • G - перейти в конец файла
  • gg - перейти в начало файла
  • 0 - переместиться в начало строки
  • ^ - переместиться к первому непробельному символу в начале строки
  • $ - переместиться в конец строки
  • w - перейти в начало следующего слова
  • b - перейти в начало предыдущего слова
  • x - удалить символ под курсором
  • daw - удалит слово включая пробел
  • ciw - удалить текущее слово и перейти в режим вставки
  • dd - удалить строку
  • d$ - удалить все, что после курсора
  • dG - удалить все, что под курсором до конца файла
  • d<n>j - удалить n строк вниз
  • u - отменить дейтсвие
  • ctrl r - вернуть действие
  • yy - копировать строку
  • p - вставить после курсора
  • = - автоформатирование кода
  • ctrl u - подняться на пол страницы вверх
  • ctrl d - опуститься на пол страницы вниз
  • 3j - вниз на 3 строки
  • 3k - вверх на 3 строки
  • 3dd - удалить на 3 строки вниз
  • 3yy - копировать 3 строки

Буферы Vim

В Vim буферы (buffers) не связаны напрямую с системным буфером обмена (clipboard)

Режим визульного выделения#

Чтобы перейти в него, нажать:

  • V - выделение строками (чаще всего использую)
  • v - выделение посимвольно
  • ctrl + v - выделение блоками (колонками)

  • y - копировать выделенный текст
  • d - вырезать выделенное
  • x - удалить выделенное
  • u - сделать выделенный текст строчными буквами
  • U - сделать выделенный текст заглавными буквами
  • > < - сдвиг текста вправо, влево

Режим команд#

Чтобы перейти в режим команд, нажать shift :

:

В режиме команд каждая команда начинается с :

  • wq - сохранить и выйти
  • q! - выйти без сохранения
  • w <filename> - сохранить файл с именем <filename>
  • e <filename> - открыть файл с именем <filename>
  • r <filename> - вставить содержимое <filename>
  • saveas <filename> - сохранить файл с новым именем <filename>
  • bn - переход к следующему буферу
  • bp - переход к предыдущему буферу
  • n - перейти к строке n
  • set number - показать номера строк
  • set nonumber - скрыть номера строк
  • %d_ - удалить содержимое файла без копирования в буфер

Чтобы поменять кодировку файла в Vim, выполнить следующие действия:

  • перейти в Режим команд, нажать shift + :
  • set fileencoding? - кодировка текущего файла
  • e ++enc=utf-8 - переоткроет файл в нужной кодировке
  • set fileencoding=utf-8 - устанавливает кодировку файла для сохранения
  • wq- сохранить и выйти
Поиск#
  • /word - найти word вперёд
  • ?word - найти word назад

Далее, нажать enter

  • n - перейти к следующему вхождению
  • N - перейти к предыдущему вхождению
  • * - поиск слова на котором курсор ниже по тексту (переходы по вхождениям аналогично)
  • # - поиск слова на котором курсор выше по тексту

mc (Midnight Commander)#

  • Esc Esc - отмена
  • + - выделение
  • - - снять выделение
  • alt enter - имя файла на котором фокус появиться в терминале mc
  • alt a - полный путь к текущей директории появится в треминале mc
  • alt p - вставить предыдущую команду в терминал mc
  • alt t - меняем отображение файлов в mc
  • alt h - история команд в терминале mc
  • alt e - изменить кодировку файла
  • ctrl r - обновить данные в панели mc (если новые файлы добавляются)
  • ctrl s - поиск в панели mc
  • ctrl \ - панель быстрого доступа для каталогов
  • ctrl x + i - информация о файле
  • ctrl x + q - быстрый просмотр файла (файл откроется на чтение в правом окне)
  • ctrl t - выделить файл

Режим просмотра (F3 или alt+3)#

  • space - в режиме просмотра пролистать на страницу вниз
  • b - в режиме просмотра пролистать на страницу вверх
  • PgUp - пролистать на пол страницы вверх
  • PgGd - пролистать на пол страницы вниз
  • ctrl shift f - просмотр лога в реальном времени в режме просмотра
  • g - перейти в начало файла
  • G -перейти в конец файла
Поиск#

/ - поиск в файле n - перейти к следующему вхождению shift n - перейти к предыдущему вхождению