VS Code 的设置

VS Code 的设置共分为五层,其权重由小到大依次为

默认设置 < 用户设置<远程设置< 工作区设置<文件夹设置

  • 默认设置:VS Code的默认值不可编辑修改,当没有提供其它设置的值时候或者提供的是无效值的时候,VS Code提供的默认设置生效;
  • 用户设置:此设置对所有项目生效,如果提供了有效设置会覆盖比它权重低的设置
  • 远程设置:如果使用了VS Code的远程开发功能将会显示此Tab,此设置对该远程机器生效,如果提供了有效设置会覆盖比它权重低的设置
  • 工作区设置:默认情况下每打开一个文件夹就是一个工作区,如果提供了有效设置会覆盖比它权重低的设置
  • 文件夹设置:如果启用了多根工作区就会展示此设置,可以为工作区下面的每个文件夹添加独立设置,如果提供了有效设置会覆盖比它权重低的设置,这个设置也是权限最高的设置因为就在当前文件夹下。

在这里插入图片描述

设置的生效问题

  大多数时候我们并没有没有打开 “远程开发” 也没有使用 “多根工作区” ,默认的设置页面是这样的:
在这里插入图片描述
这里只有“用户”和“工作区”,因为每打开一个文件夹VS Code都会创建一个默认的工作区,此时一个工作区里面只有一个文件夹,所以此处并不需要文件夹设置,工作区设置就是文件夹设置。

我们以编辑器中的字体大小(Font Size)设置项,来说说设置项如何生效的问题。

Font Size 选项的默认值为14,我们将其修改为24,此时设置项目前面会显示蓝色的竖条,表示这个设置项目被修改了。从右侧可以看到字体的确变大了。
此时操作文件是会自动保存的。
然后我们转到工作区设置看看,可以看到显示的值居然还是默认值14,但是右上角显示了一个修改于:用户
在这里插入图片描述
  设置项左侧没有蓝色竖条说明工作区没有修改Font Size设置,点击蓝色框中的图标会打开工作区的settings.json文件会发现是空的,此时生效的设置是用户设置中的Font Size

接下来将工作区中的Font Size设置为16,我们可以看到右侧字体大小变小了(也就是16px)。同时设置项目右上角显示了同时修改于:用户,左侧也显示了蓝色线。
在这里插入图片描述

总结一下:

  1. 当我们没有修改任何设置的时候,此时是默认设置生效,
  2. 当我们只修改了其中一层设置的时候,例如只修改了用户设置,那么此时生效的设置就是用户设置,比它权重更大的工作区设置并没有提供有效设置,所以也就没有生效。(这也是我刚开始使用vscode的时候最迷惑我的部分,总是搞不清楚到底那个设置生效)。
  3. 如果修改了多层设置,那么就会按照权重顺序,权重最高的生效。

例如下图同时修改了多层,此时生效的就是工作区中的设置。如果当前层(文件夹设置)也做了修改,提示语会提示同时修改于:工作区,远程,用户 此时生效的就是文件夹设置了。

这也是为什么在说到优先级的时候,要强调如果提供了有效设置会覆盖比它权重低的设置了。
在这里插入图片描述

PS
可以通过右上角的,显示已修改设置来查看当前层级修改了那些设置。
在这里插入图片描述

关于工作区(workspace)

  我将其理解一个特定的设置以及插件集合,我们可以建立一个Java开发的工作区,启用Java相关的设置以及插件同时禁用和Java无关的插件,这样可以提高VS Code 的启动和运行速度。例如在Java的工作区中禁用Go语言相关插件,那么在VS Code打开Java工作区的时候Go语言插件就不会启动了。

  还可以将插件添加到工作区建议,当别人打开这个工作区的时候,如果他的VS Code 没有安装或者启用建议列表中的插件,VS Code就会弹窗建议他安装相关的插件。

  同理也可以建立一个JavaScript相关开发的工作区。

PS : 在工作区中启用和禁用的插件由VS Code 内部保存相关状态,并不会保存在VS Code的工作区设置文件中,所以目前并不能共享,这点和 工作区建议 是不同的。工作区建议是存储在工作区的设置中,是可以共享的。

在这里插入图片描述

单根工作区

  默认情况下,我们打开一个文件夹就会生成一个单根工作区,此时单根工作区相关的设置文件就存储在项目根目录下的.vscode 文件夹中,包括设置,代码片段,调试命令,任务等等等。

例如:
在这里插入图片描述

提交代码的时候将此文件夹提交,其它人用VS Code打开就能共享到相关的设置了。

相关设置文件

  • launch.json 运行和调试中使用的命令;
  • settings.json 工作区相关设置;
  • xxx.code-snippets 代码片段;
  • extensions.json 工作区建议安装的扩展列表;
  • tasks.json 保存相关任务,可以在launch.json中调用它们,例如C语言运行调试运行之前需要编译,可以将编译部分写成一个单独的任务,作为调试运行任务的前置任务调用,其它还不是很了解;

目前接触到了这些设置文件,碰到其它的再添加。

多根工作区

  多根工作区目前看来并不太适用于共享,更适用的场景是本地使用,比如建立一个Java的工作区,在写Java相关项目的时候,只需要把项目的根文件夹通过文件>>将文件夹添加到工作区添加到工作区中,就可以使用Java多根工作区中的设置了。

添加的每一个项目都可以视为一个单根工作区,所以可以给每个项目添加单独的设置再覆盖多根工作区中的设置,这也是上面说到的文件夹设置了。

  默认情况下多根工作区的设置文件存储在 VS Code的安装文件夹下的 Code\Workspaces 文件夹中,通过文件>>工作区另存为可以指定多根工作区的配置文件的存储位置。然后下次就可以通过 文件>>通过文件打开工作区(Open Workspace from file) 打开这个工作区了。

例如:多根工作区(JavaScript)
在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐