![swap][1]
_Обмен значений. Исходный текст и текст после 1-го, 2-го и 3-го выполнения макроса. Далее будут примеры посложнее._
Идея приспособить макрос для примитивного программирования появлялась у меня несколько раз. То есть, сделать так, чтобы макрос при запуске "читал" строчку с операцией, интерпретировал ее, что-то делал с данными и переходил к следующей строчке.
На всякий случай напомню: макрос в Notepad++ и в других текстовых редакторах – записанная последовательность действий пользователя над текстом. Макрос можно запускать многократно для быстрого выполнения рутинных операций. Макрос "запоминает" нажатия клавиш и может воспроизводить, например, такие действия:
* Ввод и удаление символов
* Перемещение курсора
* Копирование и вставка
* Поиск в тексте
Сначала это казалось невозможным, ведь макрос слишком "глуп" и прямолинеен:
* Нельзя менять последовательность действий во время выполнения макроса.
* Искомая строка фиксирована — никакой вставки из буфера обмена.
* Нельзя выполнить действие переменное количество раз, а также пропустить действие в зависимости от какого-либо условия.[Читать дальше →][2]
[1]:
https://habrastorage.org/files/683/224/06a/68322406acab4e3cab1f8577203f0d2e.png
[2]:
https://habrahabr.ru/post/324314/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut