10 самых нужных команд vi

Дерзко копирую информацию со страницы solarisblog.ru/commands/10-samyx-nuzhnyx-komand-vi, но в силу того, что домен solarisblog.ru в настоящий момент продаётся, а в тела страниц сайта жёстко вписана реклама, имею подозрение, что блог более не принадлежит автору, как мне не принадлежит yushakov.ru 🙂

Итак, 10 самых нужных команд vi:

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

i – Переход в режим редактирования перед текущим символом (вставка, insert).
a - Переход в режим редактирования после текущего символа (добавление, append).
r – Замена одного символа в текущей позиции курсора (replace).
x - Удаление символа в текущей позиции курсора.
dd - Удаление всей строки, в которой находится курсор.
u – Отмена предыдущего изменения (undo).
/шаблон - Поиск шаблона в файле. Если шаблон встречается несколько раз, то можно использовать команды навигации: n – поиск вперед, N – поиск назад.
yy – Копирование текущей строки в буфер обмена (yank). Вставка – p.

Режим последней строки:

:wq! - Запись файла и выход из vi.
:q! – Выход из vi без записи текущих изменений.
Вот и все 10 самых необходимых команд vi. Ничего сложного, на мой взгляд.

Кроме этих команд, полезно помнить следующие модификаторы:

Регистр команды. Большинство команд работают как в верхнем, так и в нижнем регистре, но выполняют разные действия. Например, i выполняет переход в режим редактирования в текущей позиции курсора, а I – в начале строки. Поэкспериментировав с 10-ю описанными выше командами, Вы быстро найдете различия.
Числа. Действия многих команд можно модифицировать, набрав перед ними число. Например, команда 10dd выполняет удаление 10 строк. Если команда состоит из 2 букв, то число можно вставлять между ними, например y5y – копирование в буфер обмена 5 строк.

vi — это такой редактор в Линуксе, которым я раньше никогда не пользовался, а теперь, вот, понадобилось по работе.

ОБН
Для копирования отрезка текста: v, перемещение по тексту (он выделяется), y. Вставка - снова p.

Разбивка окна:
:split или :vsplit
Перемещение активности между подокнами - CTRL-W (у меня почему-то два раза W приходится щёлкать).

Можно открыть несколько файлов, перечисляя их при запуске vim или gvim (GUI-версия). Узнать какие открыты - :ar[gs]. Перемещение между ними: :next, :prev. Закрыть текущий - :close. Открыть новый - :new.

:pwd текущий каталог
:cd [path] перейти в другой каталог
:!команда выполнить команду - man, git, и так далее
стрелочками веерх и вниз можно автодополнять
команды и искать по истории
:set number включить нумерацию строк
:set nonumber отключить нумерацию строк

== Работа с вкладками (a.k.a табами) ==
:tabnew [fname] создать таб
:tabs вывести список табов
:tabn следующий таб
:tabp предыдущий таб
gt перейти на таб #n
gt следующий таб
gT предыдущий таб
:tabm +1 переместить таб вперед на одну позицию
:tabm -1 переместить таб назад на одну позицию
:tabm 2 переместить таб на заданную позицию
(нумерация начинается с нуля)
:close закрывает вкладку, если она не единственная

И вообще: шпаргалка по vim

Ещё.

Применение меток:
`. — если после редактирования текста, к примеру, был выполнен поиск, то с нового места нахождения курсора можно вернуться на позицию последнего изменения;
Также в тексте можно расставлять свои метки — позиции, куда можно в любой момент вернуться. Именем метки может быть любая (одна) буква. На примере метки с именем «a» посмотрим как это работает:
ma — создает метку a; a-z - локальные метки файла; A-Z - глобальные (можно переключаться между файлами); 0-9 - метки в закрытых файлах (можно смотреть последние файлы, с которыми работал);
`a — перемещает курсор на метку «a» (конкретное место);
‘a — перемещает курсор на начало строки, содержащей метку «a»;
Ctrl+o/Ctrl+i — перемещение к ранее посещенным меткам назад и вперед;
:marks — показать все определенные метки;

Из Клавиши и комбинации...

А тот solarisblog.ru действительно загнулся...

Запись опубликована в рубрике работа в Самсунге. Добавьте в закладки постоянную ссылку.

6 комментариев на «10 самых нужных команд vi»

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

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.