Редакторы vi и Vim

Март 11, 2018

Редакторы vi или Vim(vi improved) по сути являются одним и тем же редактором, и однозначно самым крутым редактором командной строки, а так же редактором которого все почему-то боятся. Первое что следует запомнить — у редактора 4 режима: обычный режим, режим вставки, режим команд и визуальный режим.

Alt+i — режим вставки (если редактор в этом режиме слева внизу будет — INSERT — )
нажатие i — текст вставляется перед символом, на котором находится курсор
нажатие a — текст вставляется после символа, на котором находится курсор
нажатие o — начать ввод со следующей строки
Shift+: — командный режим (если редактор в этом режиме слева внизу после : будет мигать курсор)
Esc+Esc — выход из любого режима в обычный режим

Команды обычного режима

/ — поиск вперёд, n — перейти к следующему результату поиска, N — к предыдущему
? — поиск назад
o — перевод на новую пустую строку и включение режима вставки
yy — скопировать строку
3yy — скопировать 3 строки от текущей
p — вставить под тек строку
P — вставить над тек. строкой
dd — удалить строку (5dd удалит следующие 5 строк)
x — удалить символ (хотя в сегодняшних редакторах с этим прекрасно справляется клавиша delete)
u — отменить последнее действие (undo)
. — повторить последнее действие

Команды командного режима

:8 — перейти на 8 строку
:j — склеить две следующие строки от курсора
:%s/no/yes/g — искать и заменять no на yes во всём документе
:1,5s/no/yes/g — искать и заменять no на yes c 1 по 5 строки
:5,$s/no/yes/g — искать и заменять no на yes c 5 строки и до конца файла
:q — выход из vi
:q! — выйти без изменений
:w — сохранить
:w file1 — сохранить как file1
:r file2 — открыть file2 (если уже какой-то файл открыт то вставит в на следующей строке от курсора)
:wq — сохр. и выйти (аналогично shift + ZZ или :x)
:wq! — принудительно сохр. и выйти
:!ls — выполнить команду ls на bash

Перемещение

l — крайняя справа, перемещает курсор вправо (5l — переместит на 5 символов вправо).
h — крайняя слева, перемещает курсор влево.
j — похожа на стрелку, направленную вниз, перемещает курсор вниз.
k — перемещает курсор вверх (5k — переместит на 5 строк вверх).
Также можно использовать стрелочки на клавиатуре, но не везде работает.
Page Up — на страницу вверх, не везде работает.
Page Down — на страницу вниз, не везде работает.

Этих команд вполне хватит чтобы комфортно чувствовать себя в редакторе vi или vim. Но если вам показалось мало, то могу предложить:

Дополнительные команды

w — на слово вперед
b — на слово назад
Ctrl+G — вывод информации в нижней части — имя файла, общее количество строк, % положения курсора от начала, номер текущей строки, символа
v+hjkl или v+стрелочки — визуальный режим, выделение текста
Shift+v — выделить строку
Shift+y — копирует выделенный текст
Vu — Перевести строку в нижний регистр
VU — Перевести строку в верхний регистр

:set number — включить нумерацию строк
:set nonumber — отключить нумерацию строк
:tabnew имя — создать новую вкладку
:tabs — вывести список вкладок
:tabn — следующяя вкладка
:tabp — предыдущяя вкладка

На последок не могу не  порекомендовать vimtutor — интерактивный гайд по vim, он очень поможет в изучении vim.

Теги статьи:
· · ·
Категории статьи
Linux · New

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *