【问题标题】:Visual Studio Code Run On Save Extension not runningVisual Studio Code Run On Save Extension 未运行
【发布时间】:2017-09-14 11:54:20
【问题描述】:

我为 VS Code 安装了 Run On Save 扩展。我为它做了一个工作区设置,如果我更改一个文件然后重新保存,它似乎没有运行。 “我为所有文件运行”不会出现在控制台或终端中。

当我选择在我的工作区设置中编辑命令配置时,它会自动编辑带有注释“将您的设置放在此文件中以覆盖默认和用户设置”的文件。所以它看起来像这样:

// Place your settings in this file to overwrite default and user settings.
{
    "editor.mouseWheelZoom": false,
    "emeraldwalk.runonsave": {
        "commands": [
            {
                "match": ".*",
                "isAsync": true,
                "cmd": "echo 'I run for all files'"
            }
        ]
    }
}

我是配置工作区设置的新手,所以我不确定这是否可以。我通过在命令面板上选择它来确保启用保存时运行。

这里是扩展的站点:https://marketplace.visualstudio.com/items?itemName=emeraldwalk.RunOnSave

【问题讨论】:

    标签: visual-studio-code save workspace


    【解决方案1】:

    一个相关的:

    之前我用RunOnSave,这次我用CodeRun

    CodeRun - https://marketplace.visualstudio.com/items?itemName=formulahendry.code-runner

    以下是我使用的设置:

    文件:%AppData%\Code\User\keybindings.json

    {
        {
            "key": "ctrl+s",
            "command": "code-runner.run"
        }
    }
    

    文件:.vscode\settings.json

    {
        "code-runner.saveFileBeforeRun": true,
        "editor.codeActionsOnSave": [
            "code-runner.executorMap"
        ]
        "code-runner.executorMap": {
            "javascript": "node a.js"
        },
    }
    

    如果可能,您可以将 CodeRun 与上述设置一起使用,或者对 RunOnSave 使用与上述设置类似的设置。

    请注意,RunOnSave 有自己的选项卡,切换到另一个选项卡非常耗时。

    使用 CodeRun,我可以在“输出”选项卡本身中看到输出,这是一件非常好的事情,可以节省时间。

    【讨论】:

      【解决方案2】:

      要让扩展在 Workspace 上运行,您必须将 emeraldwalk.runonsave 放入设置中:

          {
              "settings": {
                  "emeraldwalk.runonsave": {
                      "commands": [
                          {
                               "match": ".*",
                               "isAsync": true,
                               "cmd": "echo 'I run for all files'"
                          }
                      ]
                  }
              }
          }
      

      【讨论】:

      • 您可以将code block 用于code section,这将使问题/答案更具可读性和更好。有关更多信息,请查看此link
      【解决方案3】:

      除了我们亲爱的@bingles,我偶然发现命令应该添加到.vscode/settings.json文件而不是.vscode/emeraldwalk.runonsave中所说的plugin documentation

      将其添加到settings.json,一切都会按预期工作。

      【讨论】:

        【解决方案4】:

        要查看控制台输出,您必须在Output 选项卡中并在下拉列表中选择Run On Save 选项。该扩展是在集成终端存在之前创建的,并且有一段时间没有看到重大更新。

        关于添加到您的配置中的评论:

        // 将您的设置放在此文件中以覆盖默认值和用户 设置。

        与此特定扩展无关。这只是vscode 让您知道工作区级别配置的目的。它允许您覆盖更多全局用户/默认设置的子集。这允许您保留合理的默认首选项,但可以自定义任何给定工作区中的某些特定内容。

        关于原来的RunOnSave 扩展,如果您有任何疑问或问题,请随时在此处https://github.com/emeraldwalk/vscode-runonsave/issues 提出问题。如果有人感兴趣,我也欢迎拉取请求。

        【讨论】:

          【解决方案5】:

          我遇到了完全相同的问题。我删除了那个扩展并改用这个:

          https://marketplace.visualstudio.com/items?itemName=wk-j.save-and-run

          它是一个基于 RunOnSave 的 fork。当我在我的用户设置中设置它的配置然后运行命令“保存并运行:启用”时,这个对我有用。

          这个使用内置的 powershell 终端。

          HTH

          【讨论】:

          • 谢谢,我最终做了同样的事情。它与 Run On Save 的顺序相反,但我让它在大多数情况下都能正常工作。
          猜你喜欢
          • 1970-01-01
          • 2021-09-19
          • 2022-12-02
          • 2019-01-14
          • 1970-01-01
          • 2021-04-28
          • 1970-01-01
          • 2020-03-30
          • 2021-12-15
          相关资源
          最近更新 更多