Date: 2024-09-15-01:27:17
Author: ControlCoreX
欢迎关注该专栏, 我会持续分享关于嵌入式软件开发中VSCode的配置方式和使用技巧!
欢迎关注我的B站账号ControlCoreX
VSCode中的Workspace
VSCode中的Workspace机制可以实现隔离, 各个项目的环境相互独立, 互不影响!
使用VSCode打开一个文件夹, VSCode就自动将这个文件夹视为是一个Workspace, 你可以在这个文件夹的根目录里建一个名为.vscode
的文件夹, 然后里面放上settings.json
(用于Workspace进行设置, 详见下文), 还可以放上task.json
(用于配置VSCode中的任务)和launch.json
(用于配置调试)
那么存放于.vscode
目录下的配置就会只在当前Workspace里生效, 也就是只在当前项目里生效!
那么你再打开一个项目, 即又打开一个文件夹, 你依然可以在它的根目录里建一个.vscode
文件夹, 里面放针对这个项目的配置文件.
另外, VSCode中有很多插件, 你甚至可以选择哪些插件在当前打开的Workspace中生效. 比如你不想某个插件在当前Workspace中生效, 你就可以Disable它, 像下图这样.
总的来说, 我个人认为, VSCode中的Workspace是一个非常有用的功能, 当你打开一个Workspace时, 就像是又拥有了一个全新的VSCode一样!
这种直接打开一个文件夹就可以作为一个Workspace的比较简单.
VSCode中还有另外一种Workspace, 称为Multi-root workspace, 就是这种Workspace有多个根目录. 这种需要一个名为xxx.code-workspace
文件, 在该文件中指定了哪些文件夹是这个Workspace的根目录. 另外对于这个Workspace的setting也可以直接写到这个文件里, 它也是json格式的.
VSCode中的设置
设置的方式
VSCode给用户提供了两种设置方式:
- 通过UI界面进行设置. 这就跟大多数编辑器或IDE一样, 就给提供了一个UI界面, 里面有很多下拉框什么的, 通过鼠标点点选选就可以设置, 其效果如下图所示. 这种设置方式的进入方式为: 点击界面左下角的齿轮图标, 然后选择"Settings"即可.
- 通过
settings.json
进行设置. 这个是VSCode不同于其他编辑器的地方, 它可以通过一个json文件来对VSCode进行设置. 下面是一个settings.json
的示例.
这种设置方式比较偏极客. 但是其实也不难, 因为VSCode对于{ "workbench.colorTheme": "Default Dark Modern", "editor.fontSize": 17, "cmake.options.statusBarVisibility": "visible", "cmake.pinnedCommands": [ "workbench.action.tasks.configureTaskRunner", "workbench.action.tasks.runTask" ], "cmake.showOptionsMovedNotification": false, "cmake.cmakePath": "D:/Developer_Tools/CMake/bin/cmake.exe", "scm.providerCountBadge": "visible", "cmake.configureOnOpen": true, "testing.coverageBarThresholds": { "red": 0, "yellow": 60, "green": 90 }, "todo-tree.highlights.useColourScheme": true, "clangd.detectExtensionConflicts": false }
settings.json
文件有智能提示, 当你输入一些配置项的前几个字母时, 它就会提示你可配置的选项有哪些以及可设置的值有什么, 实际体验下来还是很不错的! 我个人感觉是比使用UI设置界面要方便.
其实UI设置界面也是对应了一个setting.json
文件的, 它的位置一般在C:/User/Admin/AppData/Roaming/Code/User/settings.json
, 可以在VSCode中按快捷键Ctrl+Shift+P
, 然后选择Preferences: Open User Settings(JSON)
, 就可以打开UI设置界面对应的json文件.
就是虽然这是两种设置方式, 但是它们是同步的, 你通过UI设置界面修改了设置, 也会同步体现到json文件中. 你修改了json文件, 它也会同步到UI设置界面中.
个人觉得, 掌握使用json文件对VSCode进行配置还是很有必要的!
设置的级别
VSCode中的设置可以分为下面两个级别: User Settings级别和Workspace Settings级别.
将设置分级别主要是为了方便管理. 就是它可以实现你对于不同的项目使用不同的设置, 而是不是所有项目都用同一套设置.
前面说到VSCode中可以通过json文件来设置, 那么如果我打开一个项目, 然后里面就有一个针对这个项目的json文件, 那如果VSCode能直接读取这个文件中的设置, 那岂不是很方便!
在VSCode中打开设置界面, 你也能看到它的UI设置界面中也将设置分为两个级别.
User Settings
这些设置就是当你没有使用Workspace Settings的时候使用的设置. 也可以理解为是全局的设置或默认设置, 你打开任意文件, 它就默认使用这里面的设置.
这种设置的级别较低, 当同时有User Setings和Workspace Settings, 且二者冲突时, 以Workspace Settings中的为准.
Workspace Settings
这种设置就是针对某个Workspace的设置, 它只会在当前Workspace起作用.
现在假设你使用VSCode打开了一个文件夹, 然后在该文件夹的根目录里有一个.vscode
文件夹, 里面又有一个settings.json
文件, 那么VSCode就认为它就是这个Workspace的设置文件.
或者你打开了一个没有.vscode
的文件夹, 然后你可以直接到UI设置界面, 选到Workspace, 对里面的设置项进行了一些修改, 那么VSCode就会自动在你打开的文件夹里生成一个.vscode
文件夹, 而且里面有一个settings.json
文件, 里面也存了你刚才在UI设置界面进行的修改.