vscode 中 ,workspace 的setting.json的配置 跟 use 的 setting.json的配置 有什么区别?

1,140 阅读2分钟

在 Visual Studio Code (VS Code) 中,settings.json 文件可以配置编辑器的各种设置。VS Code 允许在不同的级别上进行配置:用户级别和工作区级别。这两个级别的配置文件有不同的作用和优先级。

用户设置 (User settings)

用户设置适用于所有打开的工作区和项目。这些设置保存在用户目录下的 settings.json 文件中。

  • 路径:在 Windows 上通常是 %APPDATA%\Code\User\settings.json,在 macOS 上是 $HOME/Library/Application Support/Code/User/settings.json,在 Linux 上是 $HOME/.config/Code/User/settings.json
  • 作用范围:用户设置在所有项目中生效,除非在工作区设置中被覆盖。
  • 配置方式:可以通过 File > Preferences > Settings (Windows/Linux) 或 Code > Preferences > Settings (macOS) 打开设置,然后点击右上角的 {} 图标打开 settings.json 文件。

工作区设置 (Workspace settings)

工作区设置仅适用于当前打开的工作区或项目。它们保存在工作区文件夹中的 .vscode/settings.json 文件中。

  • 路径:工作区根目录下的 .vscode/settings.json
  • 作用范围:工作区设置只在当前工作区或项目中生效。它们可以覆盖用户设置。
  • 配置方式:可以通过 File > Preferences > Settings (Windows/Linux) 或 Code > Preferences > Settings (macOS) 打开设置,然后点击右上角的 {} 图标并选择 “Workspace” 选项卡来编辑 settings.json 文件。

配置的优先级

  1. 工作区设置:优先级最高,适用于当前工作区的配置,会覆盖用户设置。
  2. 用户设置:优先级低于工作区设置,适用于所有工作区的全局配置。

示例

用户设置 (User settings)

{
  "editor.fontSize": 14,
  "editor.formatOnSave": true,
  "eslint.enable": true
}

工作区设置 (Workspace settings)

{
  "editor.fontSize": 16,
  "editor.formatOnSave": false,
  "eslint.enable": true
}

在上述示例中:

  • editor.fontSize 在用户设置中为 14,但在工作区设置中为 16。因此,当你在这个工作区中打开文件时,字体大小将是 16。
  • editor.formatOnSave 在用户设置中为 true,但在工作区设置中为 false,因此在这个工作区中保存文件时将不会自动格式化。
  • eslint.enable 在两个设置文件中都为 true,所以在这个工作区中 ESLint 是启用的。

总结

  • 用户设置:适用于所有工作区和项目的全局设置。
  • 工作区设置:特定于当前工作区或项目的设置,优先级高于用户设置。

通过理解和利用这两种不同级别的设置,可以更好地管理和定制 VS Code,以满足全局和特定项目的需求。