Как мне записать и запустить множественный поиск / замену с Sublime Text 2?

16

Как мне записать и запустить множественный поиск / замену с Sublime Text 2? Я попытался записать макрос, но, похоже, Sublime не будет записывать поиск / замену, только ввод текста и т. Д.

Десмонд Хьюм
источник

Ответы:

13

Да, Reg Replace - это способ сделать это. После установки этого пакета, способ сделать это:

  1. Отредактируйте <ваш 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
    },
    ...
  1. Объедините эти отдельные замены в команду для палитры команд. Для этого отредактируйте файл <ваш 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
Я нашел способ редактировать Default.sublime-команды из меню. Настройки -> Настройки пакета -> Reg Replace
Kyle
Ага. Сообщение обновлено.
Джон Александр
@JohnAlexander, спасибо. Необходимость выяснить это самостоятельно - так же вероятно, как и получить степень хирургии мозга.
Mralexgray
@JohnAlexander, если RegReplace обновляется автоматически с помощью Package Control, настройки и команды останутся?
Эдвард
@ Эдвард да, я верю в это.
Джон Александр
1

Вы правы, Sublime не будет записывать поиск / замену.

Однако из этого поста о Stackoverflow, похоже, вы можете использовать RegReplace .

сойка
источник