为什么要用工作区 链接到标题
VSCode 作为一个轻量的编辑器,对比 IDE 很多功能并非集成。如果想打造成一个 IDE,那么就需要安装很多扩展,然而扩展越多,管理起来也越发困难,VSCode 也就越发“笨重”,例如,当我进行 cpp
开发的时候,python
与 go
的相关插件就不需要了,然而其默认也是开启的,我们当然可以手动关闭,有需要的时候再打开。然而,随着这样的扩展越来越多,手动控制扩展的开启与关闭就变得非常麻烦。
我认为 VSCode 的工作区(Work Space)诞生的一大重要原因就是扩展的管理。事实上,当我们打开 VSCode 的时候,其实就位于默认的工作区中。
工作区的创建 链接到标题
假设我只会在 ~/code/blog/zwyb_blog
目录下用 VSCode 写博客,那么我用 VSCode 打开 ~/code/python
目录,我就可以点击 File
-> Save Workspace as
,保存为 blog.code-workspace
。
目前,其内容如下:
{
"folders": [
{
"path": "."
},
],
"settings": {}
}
可以看到,内容分为了 folders
与 settings
两大类,folders
表示处于该工作空间的文件夹所在目录,我们可以点击 File
-> Add Folder to Workspace
来添加其他项目文件夹目录到该工作区,例如我添加了 ~/code/blog/papermod
目录,添加后内容修改为如下:
{
"folders": [
{
"path": "."
},
{
"path": "../papermod"
},
],
"settings": {}
}
遗憾的是,VSCode 中不支持在配置文件中直接设置扩展的激活与否,需要手动在 VSCode 的扩展视图中点击齿轮按钮,设置 Disable(Workspace)
。
可以先直接禁用所有的扩展,然后按需选择是仅在工作空间启用还是所有工作空间都启用,如下图所示:
工作区的配置 链接到标题
VSCode 的配置文件的级别可以分为 User
、Workspace
与 Folder
三个级别,其中 Folder
级别表示文件夹下的 .vscode
文件夹中的 settings.json
文件。
配置文件的优先级为 Folder
> Workspace
> User
,对于一个配置项,如果在更高优先级的配置文件中被设置了,那么该配置项会被覆盖。
例如,假设 ~/code/blog/zwyb_blog
目录下存在 .vscode/settings.json
文件,其内容为设置字体大小为 14
,blog.code-workspace
中的 settings
部分设置字体大小为 13
,用户配置文件中设置字体大小为 12
,则打开 blog.code-workspace
工作区,打开 zwyb_blog
目录下的文件,字体大小显示为 14
,对于非 zwyb_blog
目录下的文件,例如 papermod
目录下的文件,则字体大小为 13
。
这里要注意的是,blog.code-workspace
中的设置内容,必须在你打开该工作空间时才会生效,例如 ~/code/blog/papermod
虽然位于 blog.code-workspace
中,但是 VSCode 直接打开该文件夹,blog.code-workspace
中的设置不会生效,该文件夹中的文件的字体仍为 12
。
此外,使用 VSCode Remote 也能打开远程机器上的工作空间,与本地机器的工作空间区别不大,具体效果留待读者探索了。