15

Я пытаюсь создать макрос в Notepad++, который позволяет мне выполнять несколько стандартных операций поиска и замены. Я могу заставить макрос делать все (добавлять строки, добавлять символы), кроме поиска и замены.

Я не могу найти файлы для редактирования макроса вручную.

Кому-нибудь удалось создать макрос в Notepad++, который выполняет поиск и замену? Как?

PS: меня не интересуют другие инструменты, которые могут это выполнять - я знаю, как обходиться с Perl, vi(m), UltraEdit, sed, awk, - мне просто интересно, может ли Notepad++ сделать это.

3 ответа3

11

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

Я не эксперт в Notepad++ Macros, но, наверное, вы ... Я открыл случайный файл и создал макрос с именем test. Он искал слово под названием "отрывок" и заменил его на "бла".

Открытие файла shortcuts.xml после закрытия Notepad++ открывает этот новый макрос:

<Macro name="test" Ctrl="no" Alt="no" Shift="no" Key="0">
    <Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
    <Action type="3" message="1601" wParam="0" lParam="0" sParam="snip" />
    <Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
    <Action type="3" message="1602" wParam="0" lParam="0" sParam="blaa" />
    <Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
    <Action type="3" message="1701" wParam="0" lParam="1608" sParam="" />
</Macro>

Это проверено и работает на моем компьютере, я могу вручную изменить этот файл, и изменения будут отражены и работать в Notepad++.

Обратите внимание, однако, что файл shortcuts.xml (находится в папке Appdata) загружается и сохраняется только при открытии / выходе из Notepad++.

5

Ранее я обнаружил, что это не работает для меня тоже. Но потом я обновился с Notepad++ 5.6.x до 5.9.8, и теперь я могу записывать поиск и замену просто отлично. Очень хорошо!

Конечно, ручное редактирование shortcuts.xml после записи неизбежно, потому что нет редактора макросов, и вам нужна сверхчеловеческая концентрация для безупречной записи огромного макроса. (Убедитесь, что все экземпляры Notepad++ закрыты перед редактированием этого файла.)

1

Я тоже не нашел никакого редактора макросов (для манипулирования текстом) на Notepad++ (хотя Notepad++ предоставляет мало встроенных функций). Но теперь есть плагин для создания макросов на Notepad++. Этот плагин называется « Python Script » (с хорошей документацией и примерами), с помощью которого вы можете писать любые макросы, поскольку с этим плагином вы почти имеете полный контроль над редактором и самим Notepad++. Если у вас есть некоторые базовые знания по Python, вы можете начать писать макросы с помощью этого плагина (документация этого плагина сама описывает некоторый базовый синтаксис Python для начинающих).

С помощью этого плагина вы можете искать, заменять и выполнять практически любые операции в качестве макроса.

Вот ссылка для получения дополнительной информации:http://npppythonscript.sourceforge.net/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .