У Vim два основных режима: командный режим и режим редактирования. Основной режим — командный. Для перехода в режим редактирования текста, нужно нажать «i», для возврата в командный — «esc».
Небольшое уточнение: везде в тексте, где встречается символ «+», он не относится к командам, а обозначает исключительно конкатенацию!
vim NAME_DOCUMENT — открыть документ в редакторе Vim.
Базовые команды Vim:
:q NEW_NAME_DOCUMENT — создает документ с именем NEW_NAME_DOCUMENT.
:q — выход из документа, если изменения предварительно сохранены.
:q! — выход без сохранения.
:wq — сохранение и выход.
Команды перемещения курсора в Vim
hjkl или стрелки курсора — перемещение курсора по тексту.
h — перемещение курсора влево.
j — перемещение курсора вниз.
k — перемещение курсора вверх.
l — перемещение курсора вправо.
a — ввод текста в текущей позиции курсора.
A — перевод курсора в конец строчки и ввод текста.
o — создает новую строчку под курсором и начинает ввод теста на ней.
O — создает строку над текущей строкой и начинает ввод текста.
gg — перевод курсора в начало файла.
G — перевод курсора в конец файла.
w — переход курсора в начало следующего слова.
b — перевод курсор в начало предыдущего слова.
e — перевод курсора в конец следующего слова.
Команды поиска в документе
f+ТЕКСТ — поиск ТЕКСТа в строке
/+ТЕКСТ — поиск ТЕКСТа в документе, ниже курсора. Если найдено вхождение, для поиска следующего вхождения используется команда n
?+ТЕКСТ — поиск ТЕКСТа в документе, выше курсора. Также для поиска следующего вхождения, используется команда n.
Маркеры Vim
m+НАЗВАНИЕ_МАРКЕРА — на текущей строчке создается маркер с названием — НАЗВАНИЕ_МАРКЕРА.
‘+ НАЗВАНИЕ_МАРКЕРА — перемещает курсор к ранее созданному маркеру — НАЗВАНИЕ_МАРКЕРА.
Визуальный режим форматирования в VIM
v — переход в визуальный режим, стрелочками курсора можно выделять слова и строки.
x — вырезать выделенный текст, с помещением его в буфер обмена.
d — полное удаление текста, без помещения его в буфер обмена.
p — вставка текста из буфера обмена, вставка справа от курсора.
P — вставка текста из буфера обмена, слева от курсора.
dw — удаление текущего слова.
u — отмена удаления.
dd — удаление текущей сроки.
cw — замена текущего слова.
С — замена строки начиная от курсора и до конца строки.
D — удаление строки, начиная от курсора и до конца строки.
V — выделение строки.
Макросы Vim
q+НАЗВАНИЕ_МАКРОСА — старт записи макроса.
q — окончание записи макроса
@+ НАЗВАНИЕ_МАКРОСА — вызов макроса.
Многократный запуск команды
Для многократного запуска команды, нужно указать число (сколько раз должна выполниться команда) и за числом указать команду.
Формат: ЧИСЛО+КОМАНДА.
Пример: 5dw — пять раз удалит текущее слово.