Visual Studio Code (VSCode) 如何根据当前工作区推荐安装扩展?

bri*_*ght 7 visual-studio-code vscode-extensions

VSCode 根据当前加载和/或编辑的文件推荐语言和相关扩展,例如 C# 扩展。

它似乎对我的需求有相当深入的了解,所以我很好奇这些建议是如何发挥作用的。

这是扩展可以动态影响的东西(可能在云中的清单中),还是 VSCode 使用一组静态规则(例如文件类型)来匹配潜在的扩展?

我查看了Extension API,但找不到任何相关信息。

小智 3

Visual Studio Code 文档中有一个关于推荐扩展的部分

它还说明了一些关于更改建议之类的内容。

更新:

也许可以回答您关于更改建议的问题部分(来自文档):

工作区推荐的扩展

一组好的扩展可以使使用特定工作区或编程语言更加高效,并且您经常希望与您的团队或同事共享此列表。您可以使用扩展:配置推荐扩展(工作区)命令为工作区创建推荐的扩展列表。

在单个文件夹工作区中,该命令会在工作区 .vscode 文件夹中创建一个 extensions.json 文件,您可以在其中添加扩展标识符列表 ({publisherName}.{extensionName})。

在多根工作区中,该命令将打开 .code-workspace 文件,您可以在其中列出 extensions.recommendations 下的扩展。您仍然可以使用扩展:配置推荐扩展(工作区文件夹)命令将扩展推荐添加到多根工作区中的各个文件夹。

Extensions.json 的示例可以是:

{   
  "recommendations": [ 
    "ms-vscode.vscode-typescript-tslint-plugin",
    "dbaeumer.vscode-eslint",
    "msjsdiag.debugger-for-chrome"
  ]
} 
Run Code Online (Sandbox Code Playgroud)

其中推荐了两个 linter 扩展:TSLint 和 ESLint,以及 Chrome 调试器扩展。