Как мне записать и запустить множественный поиск / замену с Sublime Text 2? Я попытался записать макрос, но, похоже, Sublime не будет записывать поиск / замену, только ввод текста и т.д.
2 ответа
13
Да, Reg Replace - это способ сделать это. После установки этого пакета способ сделать это:
- Отредактируйте <ваш Sublime Text Directory>/Packages/RegReplace/reg_replace.sublime-settings (вы можете получить доступ к этому в ST2 в Предпочтения> Настройки пакета> Reg Replace> Настройки - По умолчанию). Создайте новые записи в объекте "замены", каждая из которых представляет собой одно регулярное выражение «найти / заменить». Обратите внимание, что вы должны вдвойне избегать специальных символов. Например,
{ "replacements": { "do_something_1": { "find": "\\s*\\t\\s*", "replace": "\\t", "greedy": true, "case": false }, "do_something_2": { "find": "\\n\\n+", "replace": "\\n", "greedy": true, "case": false }, ...
- Объедините эти отдельные замены в команду для палитры команд. Для этого отредактируйте файл <ваш Sublime Text Directory>/RegReplace/Default.sublime-commands (Настройки> Параметры пакета> Reg Replace> Commands - Default). Добавьте что-то вроде этого:
[ { "caption": "Reg Replace: My RegEx Macro", "command": "reg_replace", "args": { "replacements": [ "do_something_1", "do_something_2" ] } }, ...
Затем все, что вам нужно сделать, это вызвать палитру команд, нажав Ctrl+Shift+P и перейти к вновь созданной команде.
Для справки, в моей установке Windows 7 каталог Sublime Text находится по адресу C:/Users//AppData/Roaming/Sublime Text 2/
1
Вы правы, Sublime не будет записывать поиск / замену.
Однако из этого поста о Stackoverflow, похоже, вы можете использовать RegReplace.