如何使用 Sublime Text 2 记录并运行多次查找/替换?

如何使用 Sublime Text 2 记录并运行多次查找/替换?

如何使用 Sublime Text 2 记录并运行多个查找/替换?我尝试录制宏,但 Sublime 似乎不会记录查找/替换,只会记录文本输入等。

答案1

是的,Reg Replace 是可以做到的。安装该包后,操作方法是:

  1. 编辑 <您的 Sublime Text 目录>/Packages/RegReplace/reg_replace.sublime-settings(您可以在 ST2 中的“首选项”>“包设置”>“Reg Replace”>“设置 – 默认”中访问它)。在“replacements”对象中创建新条目,每个条目都是一个正则表达式查找/替换。请注意,您必须对特殊字符进行双重转义。例如,
    {
    "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 目录>/RegReplace/Default.sublime-commands(首选项 > 包设置 > Reg Replace > 命令 – 默认)。添加类似以下内容:
[
    {
        "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/

答案2

你是对的,Sublime 不会记录查找/替换。

然而从这个帖子在 Stackoverflow 上,似乎你可以使用注册表替换

答案3

我们不需要插件。这是用“爱”替换“战争”的 Sublime Text 宏代码。

[
    {
        "args": {"to": "bof"}, "command": "move_to"
    },
    {
        "args": {"characters": "War"}, "command": "insert"
    },
    {
        "args": {"extend": true, "to": "bol"}, "command": "move_to"
    },
    {
        "command": "slurp_find_string"
    },
    {
        "args": {"characters": "Love"}, "command": "insert"
    },
    {
        "args": {"extend": true, "to": "bol"}, "command": "move_to"
    },
    {
        "command": "slurp_replace_string"
    },
    {
        "args": null, "command": "left_delete"
    },
    {
        "args": {"close_panel": true }, "command": "replace_all"
    },
]

相关内容