Видео ролики бесплатно онлайн

Смотреть просто видео

Официальный сайт ufa-check 24/7/365

Смотреть видео бесплатно

h0rr0rr_drag0n 09.03.2009 00:42

VimМакросы в Vim'е

Да, да в виме тоже есть макросы, как и в Microsoft Word. По крайней мере их использование и запись чем-то схожи...



Для начала пару слов о регистрах. Все то, что мы копируем\вырезаем в виме заносится в регистр по умолчанию - регистр №0. Кроме него используются другие цифровые регистры, буквенные (их мы и будем использовать) и ряд служебных. Зная имя регистра (например v), можно в него копировать "vyy и вставлять из него же "vp.

Для записи макроса достаточно ввести одну короткую команду - qимя_регистра, например qv. С этого момента все производимые вами действия будут записываться в макрос (кроме тех, что вы производите не в виме). Остановить запись можно, нажав клавишу q (естественно в командном режиме). Воспроизводится макрос после ввода команды @имя_регистра. Запустить еще раз последний использованный макрос можно командой @@.

Потренируемся. Возмем следующие строки:



echo "1"

echo "2"

echo "3"

echo "4"

echo "5"

echo "666"



Чтобы в конец каждой строки добавить перенаправление stdout в файл /tmp/tempfile, используем следующую "команду" (мы на первой строке):

<Esc>qvA >> /tmp/tempfile<Esc>jq5@v

Мы перешли в командный режим, начали запись макроса в регистр v. Затем мы перешли в режим редактирования на конце строки, добавили что нужно, вышли в командный режим. Потом перешли на строчку ниже и закончили запись макроса. Применили макрос 5 раз (по числу оставшихся строк).

Все.

Теперь самое интересное! Каждый макрос записан в соответствующем регистре и его можно оттуда вставить в редактор ("vp), подправить и послать обратно в регистр(<Esc>0"vy$). К примеру, наш макрос в регистре выглядит так:

A >> /tmp/tempfile^

Если вы хотите только дописать некие действия в макрос, оставив остальное его содержимое целым, то можно проделать это, использовав заглавную букву при указании регистра для записи макрса. Дальше все как обычно. Допишем наш макрос так, чтобы при переходе на новую строку он еще и вставлял пустую строку над курсором:

<Esc>qVO<Esc>jq

Вот и вся магия.


Тэги: vim
+ 7 -
Похожие Поделиться

aonick 02.06.2009 23:55 #
+ 0 -
Очень полезно - спасибо
enot 06.08.2010 23:54 #
+ 0 -
в виме тоже есть макросы, как и в Microsoft Word.

как только язык повернулся
нефанатично

В хорошем качестве hd видео

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн