Visual Studio Code 中的配置文件
Visual Studio Code 有数百个设置、数千个扩展以及无数种调整 UI 布局来自定义编辑器的方法。VS Code 配置文件可让你创建自定义设置集,并快速地在它们之间切换或与他人共享。本主题说明了如何使用配置文件编辑器来创建、修改、导出和导入配置文件。
访问配置文件编辑器
配置文件编辑器使你能够在一个地方创建和管理 VS Code 中的配置文件。
你可以通过以下任一方式访问配置文件编辑器:
-
通过菜单项 文件 > 首选项 > 配置文件
-
通过活动栏底部的管理齿轮按钮。
创建配置文件
VS Code 将你当前的配置视为默认配置文件。当你修改设置、安装扩展或通过移动视图来更改 UI 布局时,这些自定义项都会在默认配置文件中被跟踪。
要创建新的配置文件,请打开配置文件编辑器并选择新建配置文件按钮。这将打开“新建配置文件”表单,你可以在其中输入配置文件名称、选择一个图标,并配置新配置文件中包含的内容。
你可以选择通过从配置文件模板或现有配置文件中复制内容来创建新配置文件,或者创建一个空配置文件。空配置文件不包含任何用户自定义项,如设置、扩展、代码片段等。
你可以将新的配置文件限制为仅包含一部分配置(设置、键盘快捷方式、MCP 服务器、代码片段、任务和扩展),而其余配置则使用默认配置文件的。例如,你可以创建一个包含除键盘快捷方式外的所有配置的配置文件,当此配置文件激活时,VS Code 将应用默认配置文件的键盘快捷方式。
你可以在内容部分浏览你正在复制的模板或配置文件的内容。每个部分旁边都有一个打开按钮,你可以选择它来查看其内容。
通过选择预览按钮,在创建新配置文件之前进行预览。这会打开一个新的 VS Code 窗口,并应用了新的配置文件。一旦你对预览满意,就可以选择创建按钮来创建新的配置文件。
检查当前配置文件
你可以在 VS Code UI 的多个位置找到当前 VS Code 窗口正在使用的配置文件:
-
在 VS Code 标题栏中
-
将鼠标悬停在活动栏中的管理按钮上时,会在悬停文本中显示
如果你为配置文件配置了一个图标,该图标将用作活动栏中的管理按钮。请注意在下面的截图中,“管理”按钮现在有一个麦克风图标,表示一个配置文件处于活动状态。
如果你没有配置图标,那么管理齿轮按钮会显示一个带有活动配置文件前两个字母的徽章,这样你就可以快速检查正在运行哪个配置文件。
-
在配置文件编辑器中
注意:如果你正在使用默认配置文件,则不会显示任何配置文件名称。
配置配置文件
你可以像更改任何 VS Code 配置一样配置配置文件。你可以安装/卸载/禁用扩展、更改设置以及调整编辑器的 UI 布局(例如,移动和隐藏视图)。当你应用这些更改时,它们将被存储在你当前活动的配置文件中。
文件夹和工作区关联
当你创建或选择一个配置文件时,它会与当前的文件夹或工作区相关联。每当你打开该文件夹时,该工作区的配置文件就会被激活。如果你打开另一个文件夹,配置文件会更改为另一个文件夹的配置文件(如果已设置)。
你可以在配置文件编辑器的文件夹和工作区部分查看与配置文件关联的文件夹列表。
管理配置文件
切换配置文件
你可以通过命令面板中的 配置文件: 切换配置文件 命令快速切换配置文件,该命令会显示一个包含你可用配置文件的下拉列表。
你也可以在配置文件编辑器中切换配置文件,方法是选择你想要切换到的配置文件旁边的在当前窗口使用此配置文件按钮。
编辑配置文件
你可以在配置文件编辑器中编辑现有配置文件的名称、图标和其他配置。
删除配置文件
你可以从配置文件编辑器中删除配置文件,方法是选择要删除的配置文件的溢出操作中的删除配置文件按钮。
你也可以通过删除配置文件命令来删除配置文件。删除配置文件下拉列表允许你选择要删除的配置文件。
使用配置文件打开新窗口
你可以通过在配置文件编辑器的配置文件内容视图中使用用于新窗口选项,来选择打开新 VS Code 窗口时使用的配置文件。
你可以通过使用 文件 > 使用配置文件新建窗口 菜单,并选择你想要使用的配置文件,来直接为特定配置文件打开一个新的 VS Code 窗口。
将设置应用于所有配置文件
要将一个设置应用于你所有的配置文件,请在设置编辑器中使用将设置应用于所有配置文件操作。
在任何配置文件中对此设置的更新也会应用于所有其他配置文件。你可以随时通过取消选中将设置应用于所有配置文件操作来恢复此行为。
将扩展应用于所有配置文件
要将一个扩展应用于你所有的配置文件,请在扩展视图中选择将扩展应用于所有配置文件操作。
这使得该扩展在你所有的配置文件中都可用。你可以随时通过取消选中将扩展应用于所有配置文件操作来恢复此行为。
跨设备同步配置文件
你可以使用设置同步来在不同设备间迁移你的配置文件。启用设置同步并在设置同步: 配置下拉菜单中选中配置文件后,你所有的配置文件都将在已同步的设备上可用。
注意:VS Code 不会从远程窗口同步你的扩展,例如当你连接到 SSH、开发容器 (devcontainer) 或 WSL 时。
共享配置文件
导出
你可以通过使用要导出的配置文件的溢出操作中的导出...按钮来导出配置文件,以便保存或与他人共享。
当你选择导出...时,系统会提示你输入配置文件名称,并询问你是否要导出到 GitHub gist 或你的本地文件系统。
另存为 GitHub gist
将配置文件保存到 GitHub 后(系统会提示你登录 GitHub),一个对话框会给你复制链接的选项,以便与他人共享你的配置文件 gist URL。该 URL 包含一个自动生成的 GUID,格式为 https://vscode.dev/editor/profile/github/{GUID}
。该 GitHub gist 被标记为私密,因此只有拥有链接的人才能看到该 gist。
如果你打开该配置文件 URL,它会打开 VS Code for the Web,并打开配置文件编辑器,显示导入的配置文件内容。如果你愿意,可以取消选择配置文件的元素,并且如果你想在 VS Code for the Web 中继续使用该配置文件,你需要手动安装扩展(通过下载云按钮)。
你还可以选择在 Visual Studio Code 中导入配置文件,这会打开 VS Code 桌面版,显示配置文件的内容和一个导入配置文件按钮。
你可以在 https://gist.github.com/{username}
查看你的 gists。在你的 GitHub gist 页面上,你可以重命名、删除或复制 gist 的 GUID。
另存为本地文件
如果你选择将配置文件保存为本地文件,一个保存配置文件对话框会让你将文件放在你的本地机器上。配置文件被保存在一个扩展名为 .code-profile
的文件中。
导入
你可以从配置文件编辑器中导入一个现有的配置文件,方法是选择新建配置文件按钮下拉操作中的导入配置文件...按钮。
当你选择导入配置文件...时,系统会通过一个导入配置文件对话框提示你输入 GitHub gist 的 URL 或配置文件的文件位置。一旦你选择了配置文件,配置文件创建表单就会打开,并预先选择了要导入的配置文件。你可以继续修改配置文件并选择创建来导入该配置文件。
配置文件的用途
配置文件是自定义 VS Code 以更好地满足你需求的好方法。在本节中,我们来看一些配置文件的常见用例。
由于配置文件是按工作区记忆的,因此它们是为特定编程语言自定义 VS Code 的好方法。例如,你可以创建一个 JavaScript 前端配置文件,其中包含你在一个工作区中用于 JavaScript 开发的扩展、设置和自定义项,并拥有一个 Python 后端配置文件,其中包含你在另一个工作区中用于 Python 开发的扩展、设置和自定义项。使用这种方法,你可以轻松地在工作区之间切换,并始终让 VS Code 配置得当。
演示
在做演示时,你可以使用配置文件为你的演示设置特定的配置。例如,你可以创建一个包含特定扩展集和设置(如缩放级别、字体大小和颜色主题)的配置文件。这样做,演示不会弄乱你正常的 VS Code 设置,并且你可以为演示期间更好的可见性自定义 VS Code。
教育
配置文件可用于为学生自定义 VS Code,以便在课堂环境中简化使用。配置文件允许教育工作者快速与学生共享自定义的 VS Code 设置。例如,教育工作者可以创建一个包含计算机科学课程所需的特定扩展和设置的配置文件,然后与学生共享该配置文件。
报告 VS Code 问题
空配置文件的一个用途是,当你想报告 VS Code 的问题时,可以重置你的编辑器。空配置文件会禁用所有扩展和已修改的设置,这样你就可以快速查看问题是由扩展、设置还是 VS Code 核心引起的。
配置文件模板
VS Code 自带一组预定义的配置文件模板,你可以用它们来为你的特定工作流程自定义 VS Code。要基于模板创建新配置文件,请在创建配置文件流程中选择一个配置文件模板。
Python 配置文件模板
Python 配置文件是 Python 开发的一个很好的起点。它附带了 Python 特定的代码片段,并包含以下扩展:
- autoDocstring - 自动生成 Python 文档字符串。
- 容器工具 - 创建、管理和调试容器化应用程序。
- Even Better TOML - 为例如
pyproject.toml
文件提供功能齐全的 TOML 支持。 - Python - IntelliSense、环境管理、调试、重构。
- Python 环境 - 使用你偏好的环境管理器管理 Python 环境和包。
- 远程开发扩展包 - 支持 SSH、WSL 和开发容器。
- Ruff - 集成了 Ruff Python linter 和格式化工具。
此配置文件还设置了以下设置:
"python.analysis.autoImportCompletions": true,
"python.analysis.fixAll": ["source.unusedImports"],
"editor.defaultFormatter": "charliermarsh.ruff"
数据科学配置文件模板
数据科学配置文件是所有数据和 notebook 工作的一个很好的起点。它附带了特定的代码片段,并包含以下扩展:
- Data Wrangler - 用于表格数据集和 Excel/CSV/Parquet 文件的数据查看、清理和准备。
- GitHub Copilot - 你的 AI 结对程序员。
- Jupyter - 在 VS Code 中使用 Jupyter notebooks。
- Python - IntelliSense、环境管理、调试、重构。
- 远程开发扩展包 - 支持 SSH、WSL 和开发容器。
- Ruff - 集成了 Ruff Python linter 和格式化工具。
此配置文件还设置了以下设置:
"[python]": {
"editor.defaultFormatter": "charliermarsh.ruff",
"editor.formatOnType": true,
"editor.formatOnSave": true
},
"editor.inlineSuggest.enabled": true,
"editor.lineHeight": 17,
"breadcrumbs.enabled": false,
"files.autoSave": "afterDelay",
"notebook.output.scrolling": true,
"jupyter.themeMatplotlibPlots": true,
"jupyter.widgetScriptSources": [
"unpkg.com",
"jsdelivr.com"
],
"files.exclude": {
"**/.csv": true,
"**/.parquet": true,
"**/.pkl": true,
"**/.xls": true
}
文档编写者配置文件模板
文档编写者配置文件是用于编写文档的一个很好的轻量级设置。它包含以下扩展:
- Code Spell Checker - 源代码的拼写检查器。
- Markdown Checkboxes - 为 VS Code 内置的 Markdown 预览添加复选框支持。
- Markdown Emoji - 为 Markdown 预览和 notebook Markdown 单元格添加表情符号语法支持。
- Markdown Footnotes - 为 Markdown 预览添加 ^footnote 语法支持。
- Markdown Preview GitHub Styling - 在 Markdown 预览中使用 GitHub 样式。
- Markdown Preview Mermaid Support - Mermaid 图表和流程图。
- Markdown yaml Preamble - 将 YAML front matter 渲染为表格。
- markdownlint - Visual Studio Code 的 Markdown linting 和样式检查。
- Word Count - 在状态栏中查看 Markdown 文档的字数。
- Read Time - 估算阅读你的 Markdown 所需的时间。
此配置文件还设置了以下设置:
"workbench.colorTheme": "Default Light Modern",
"editor.minimap.enabled": false,
"breadcrumbs.enabled": false,
"editor.glyphMargin": false,
"explorer.decorations.badges": false,
"explorer.decorations.colors": false,
"editor.fontLigatures": true,
"files.autoSave": "afterDelay",
"git.enableSmartCommit": true,
"window.commandCenter": true,
"editor.renderWhitespace": "none",
"workbench.editor.untitled.hint": "hidden",
"markdown.validate.enabled": true,
"markdown.updateLinksOnFileMove.enabled": "prompt",
"workbench.startupEditor": "none"
Node.js 配置文件模板
Node.js 配置文件是所有 Node.js 工作的一个很好的起点。它包含以下扩展:
- 容器工具 - 创建、管理和调试容器化应用程序。
- Dev Containers - 在 Docker 容器内创建自定义开发环境。
- DotENV - 支持 dotenv 文件语法。
- EditorConfig for VS Code - Visual Studio Code 的 EditorConfig 支持。
- ESLint - 将 ESLint JavaScript 集成到 VS Code 中。
- JavaScript (ES6) code snippets - ES6 语法的 JavaScript 代码片段。
- Jest - 使用 Facebook 的 jest 测试框架。
- Microsoft Edge Tools for VS Code - 在 VS Code 中使用 Microsoft Edge 工具。
- npm Intellisense - 在 import 语句中自动补全 npm 模块。
- Prettier - Code formatter - 使用 Prettier 的代码格式化工具。
- Rest Client - Visual Studio Code 的 REST 客户端。
- YAML - YAML 语言支持,内置 Kubernetes 语法。
此配置文件附带以下设置:
"editor.formatOnPaste": true,
"git.autofetch": true,
"[markdown]": {
"editor.wordWrap": "on"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[jsonc]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
Angular 配置文件模板
Angular 配置文件是所有 Angular 工作的一个很好的起点。它包含以下扩展:
- Angular Language Service - 用于 Angular 模板的编辑器服务。
- Angular Schematics - 集成 Angular schematics(CLI 命令)。
- angular2-switcher - 在 angular2 项目中轻松导航到
typescript
|template
|style
。 - Dev Containers - 在 Docker 容器内创建自定义开发环境。
- EditorConfig for VS Code - Visual Studio Code 的 EditorConfig 支持。
- ESLint - 将 ESLint JavaScript 集成到 VS Code 中。
- JavaScript (ES6) code snippets - ES6 语法的 JavaScript 代码片段。
- Jest - 使用 Facebook 的 jest 测试框架。
- Material Icon Theme - Visual Studio Code 的 Material Design 图标。
- Microsoft Edge Tools for VS Code - 在 VS Code 中使用 Microsoft Edge 工具。
- Playwright Test for VSCode - 在 Visual Studio Code 中运行 Playwright 测试。
- Prettier - Code formatter - 使用 Prettier 的代码格式化工具。
- Rest Client - Visual Studio Code 的 REST 客户端。
- YAML - YAML 语言支持,内置 Kubernetes 语法。
此配置文件设置了以下设置:
"editor.formatOnPaste": true,
"git.autofetch": true,
"[markdown]": {
"editor.wordWrap": "on"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[jsonc]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"workbench.iconTheme": "material-icon-theme"
Java 通用配置文件模板
Java 通用配置文件是所有 Java 工作的一个很好的起点。它自定义布局以改善 Java 体验,并包含来自 Extension Pack for Java 的以下扩展:
- Debugger for Java - 一个轻量级的 Java 调试器。
- IntelliCode - AI 辅助开发。
- IntelliCode API Usage Examples - 为超过 10 万个不同的 API 提供代码示例。
- Language Support for Java(TM) by Red Hat - 基础的 Java 语言支持、Linting、Intellisense、格式化、重构。
- Maven for Java - 管理 Maven 项目和构建。
- Project Manager for Java - 在 VS Code 中管理 Java 项目。
- Test Runner for Java - 运行和调试 JUnit 或 TestNG 测试用例。
Java Spring 配置文件模板
Java Spring 配置文件是所有 Java 和 Spring 开发者的一个很好的起点。它建立在 Java 通用配置文件的基础上,并添加了来自 Spring Boot Extension Pack 的以下扩展:
- Spring Boot Dashboard - 在你运行的 Spring 应用程序中提供 Spring Boot 实时数据可视化和观察。
- Spring Boot Tools - 对 Spring Boot 文件的丰富语言支持。
- Spring Initializr Java Support - 构建和生成 Spring Boot Java 项目。
此配置文件设置了以下设置:
"[java]": {
"editor.defaultFormatter": "redhat.java"
},
"boot-java.rewrite.reconcile": true
命令行
你可以通过 --profile
命令行界面选项来启动具有特定配置文件的 VS Code。你在 --profile
参数后传递配置文件的名称,并使用该配置文件打开一个文件夹或工作区。下面的命令行使用 "Web Development" 配置文件打开 web-sample
文件夹:
code ~/projects/web-sample --profile "Web Development"
如果指定的配置文件不存在,则会创建一个具有给定名称的新空配置文件。
常见问题
配置文件保存在哪里?
配置文件与你的用户设置和键盘快捷方式类似,都存储在你的用户配置下。
- Windows
%APPDATA%\Code\User\profiles
- macOS
$HOME/Library/Application\ Support/Code/User/profiles
- Linux
$HOME/.config/Code/User/profiles
如果你正在使用 Insiders 版本,中间的文件夹名称是 Code - Insiders
。
什么是临时配置文件?
临时配置文件是一种不会在 VS Code 会话之间保存的配置文件。你可以通过命令面板中的配置文件: 创建临时配置文件命令来创建临时配置文件。临时配置文件以空配置文件的形式开始,并有一个自动生成的名称(例如 Temp 1)。你可以修改配置文件的设置和扩展,在你的 VS Code 会话期间使用该配置文件,但一旦你关闭 VS Code,它就会被删除。
如果你想尝试新的配置或测试一个扩展而不修改你的默认或现有配置文件,临时配置文件非常有用。重启 VS Code 会为你的工作区重新启用当前的配置文件。
我可以从另一个配置文件继承设置吗?
目前,无法从另一个配置文件继承设置,即覆盖特定设置而保留来自另一个配置文件的其余设置。我们正在 vscode 仓库中跟踪此功能请求。
当你创建新配置文件时,你可以选择从另一个或默认配置文件复制设置。这会在新配置文件中创建设置的副本,但不会与你用作源的配置文件保持链接。
如何从我的项目中移除配置文件?
你可以将你的项目设置回默认配置文件。如果你想移除所有配置文件的工作区关联,可以使用开发者: 重置工作区配置文件关联,这将把所有当前分配了配置文件的本地文件夹设置回默认配置文件。重置工作区配置文件关联不会删除任何现有的配置文件。
为什么在导出配置文件时有些设置没有被导出?
在导出配置文件时,特定于机器的设置不会被包含在内,因为这些设置在另一台机器上将不适用。例如,指向本地路径的设置就不会被包含。
为什么在创建新配置文件时模板不可用?
配置文件模板由 VS Code 外部托管,只有在你连接到互联网时才能下载和应用模板。如果你发现配置文件模板不可用,请务必检查你的互联网连接。