VScode setting.js配置(一)

2,405 阅读55分钟

由于篇幅有限分为两部分(其一)

  {
    // 控制是否在编辑器中显示 CodeLens。
    "diffEditor.codeLens": false,
  
    // 启用后,差异编辑器将忽略前导空格或尾随空格中的更改。
    "diffEditor.ignoreTrimWhitespace": true,
  
    // 超时(以毫秒为单位),之后将取消差异计算。使用0表示没有超时。
    "diffEditor.maxComputationTime": 5000,
  
    // 要为其计算差异的最大文件大小(MB)。使用 0 表示无限制。
    "diffEditor.maxFileSize": 50,
  
    // 控制差异编辑器是否为添加/删除的更改显示 +/- 指示符号。
    "diffEditor.renderIndicators": true,
  
    // 控制差异编辑器的显示方式是并排还是内联。
    "diffEditor.renderSideBySide": true,
  
    //  - off: 永不换行。
    //  - on: 将在视区宽度处换行。
    //  - inherit: 将根据 `editor.wordWrap` 设置换行。
    "diffEditor.wordWrap": "inherit",
  
    // 控制是否应在遇到提交字符时接受建议。例如,在 JavaScript 中,半角分号 (`;`) 可以为提交字符,能够在接受建议的同时键入该字符。
    "editor.acceptSuggestionOnCommitCharacter": true,
  
    // 控制除了 `Tab` 键以外, `Enter` 键是否同样可以接受建议。这能减少“插入新行”和“接受建议”命令之间的歧义。
    //  - on
    //  - smart: 仅当建议包含文本改动时才可使用 `Enter` 键进行接受。
    //  - off
    "editor.acceptSuggestionOnEnter": "on",
  
    // 控制编辑器中可由屏幕阅读器一次读出的行数。我们检测到屏幕阅读器时,会自动将默认值设置为 500。警告: 如果行数大于默认值,可能会影响性能。
    "editor.accessibilityPageSize": 10,
  
    // 控制编辑器是否应在对屏幕阅读器进行了优化的模式下运行。设置为“开”将禁用自动换行。
    //  - auto: 编辑器将使用平台 API 以检测是否附加了屏幕阅读器。
    //  - on: 编辑器将针对与屏幕阅读器搭配使用进行永久优化。将禁用自动换行。
    //  - off: 编辑器将不再对屏幕阅读器的使用进行优化。
    "editor.accessibilitySupport": "auto",
  
    // 控制编辑器是否在左括号后自动插入右括号。
    //  - always
    //  - languageDefined: 使用语言配置确定何时自动闭合括号。
    //  - beforeWhitespace: 仅当光标位于空白字符左侧时,才自动闭合括号。
    //  - never
    "editor.autoClosingBrackets": "languageDefined",
  
    // 控制在删除时编辑器是否应删除相邻的右引号或右方括号。
    //  - always
    //  - auto: 仅在自动插入时才删除相邻的右引号或右括号。
    //  - never
    "editor.autoClosingDelete": "auto",
  
    // 控制编辑器是否应改写右引号或右括号。
    //  - always
    //  - auto: 仅在自动插入时才改写右引号或右括号。
    //  - never
    "editor.autoClosingOvertype": "auto",
  
    // 控制编辑器是否在左引号后自动插入右引号。
    //  - always
    //  - languageDefined: 使用语言配置确定何时自动闭合引号。
    //  - beforeWhitespace: 仅当光标位于空白字符左侧时,才自动闭合引号。
    //  - never
    "editor.autoClosingQuotes": "languageDefined",
  
    // 控制编辑器是否应在用户键入、粘贴、移动或缩进行时自动调整缩进。
    //  - none: 编辑器不会自动插入缩进。
    //  - keep: 编辑器将保留当前行的缩进。
    //  - brackets: 编辑器将保留当前行的缩进并遵循语言定义的括号。
    //  - advanced: 编辑器将保留当前行的缩进、使用语言定义的括号并调用语言定义的特定 onEnterRules。
    //  - full: 编辑器将保留当前行的缩进,使用语言定义的括号,调用由语言定义的特殊输入规则,并遵循由语言定义的缩进规则。
    "editor.autoIndent": "full",
  
    // 控制在键入引号或方括号时,编辑器是否应自动将所选内容括起来。
    //  - languageDefined: 使用语言配置确定何时自动包住所选内容。
    //  - quotes: 使用引号而非括号来包住所选内容。
    //  - brackets: 使用括号而非引号来包住所选内容。
    //  - never
    "editor.autoSurround": "languageDefined",
  
    // 控制是否已启用括号对着色。使用 `workbench.colorCustomizations` 替代括号高亮颜色。
    "editor.bracketPairColorization.enabled": true,
  
    // 控制每个方括号类型是否具有自己的独立颜色池。
    "editor.bracketPairColorization.independentColorPoolPerBracketType": false,
  
    // 在保存时运行的代码操作类型。
    "editor.codeActionsOnSave": {},
  
    // 控制是否在编辑器中显示 CodeLens。
    "editor.codeLens": true,
  
    // 控制 CodeLens 的字体系列。
    "editor.codeLensFontFamily": "",
  
    // 控制 CodeLens 的字号(以像素为单位)。设置为 `0` 时,将使用 90% 的 `editor.fontSize`。
    "editor.codeLensFontSize": 0,
  
    // 控制编辑器是否显示内联颜色修饰器和颜色选取器。
    "editor.colorDecorators": true,
  
    // 启用使用鼠标和键进行列选择。
    "editor.columnSelection": false,
  
    // 控制在对行注释执行切换、添加或删除操作时,是否应忽略空行。
    "editor.comments.ignoreEmptyLines": true,
  
    // 控制在注释时是否插入空格字符。
    "editor.comments.insertSpace": true,
  
    // 控制在复制时是否同时复制语法高亮。
    "editor.copyWithSyntaxHighlighting": true,
  
    // 控制光标的动画样式。
    "editor.cursorBlinking": "blink",
  
    // 控制是否启用平滑插入动画。
    "editor.cursorSmoothCaretAnimation": false,
  
    // 控制光标样式。
    "editor.cursorStyle": "line",
  
    // 控制光标周围可见的前置行和尾随行的最小数目。在其他一些编辑器中称为 "scrollOff" 或 "scrollOffset"。
    "editor.cursorSurroundingLines": 0,
  
    // 控制何时应强制执行"光标环绕行"。
    //  - default: 仅当通过键盘或 API 触发时,才会强制执行"光标环绕行"。
    //  - all: 始终强制执行 "cursorSurroundingLines"
    "editor.cursorSurroundingLinesStyle": "default",
  
    // 当 `editor.cursorStyle` 设置为 `line` 时,控制光标的宽度。
    "editor.cursorWidth": 0,
  
    // 定义一个默认格式化程序, 该格式化程序优先于所有其他格式化程序设置。必须是提供格式化程序的扩展的标识符。
    //  - null: 没有
    //  - formulahendry.code-runner: Run C, C++, Java, JS, PHP, Python, Perl, Ruby, Go, Lua, Groovy, PowerShell, CMD, BASH, F#, C#, VBScript, TypeScript, CoffeeScript, Scala, Swift, Julia, Crystal, OCaml, R, AppleScript, Elixir, VB.NET, Clojure, Haxe, Obj-C, Rust, Racket, Scheme, AutoHotkey, AutoIt, Kotlin, Dart, Pascal, Haskell, Nim, D, Lisp, Kit, V, SCSS, Sass, CUDA, Less, Fortran, Ring, Standard ML
    //  - vscode.css-language-features: 为 CSS、LESS 和 SCSS 文件提供丰富的语言支持。
    //  - vscode.html-language-features: 为 HTML 和 Handlebar 文件提供丰富的语言支持
    //  - vscode.json-language-features: 为 JSON 文件提供丰富的语言支持
    //  - ms-toolsai.jupyter: Jupyter notebook support, interactive programming and computing that supports Intellisense, debugging and more.
    //  - vscode.markdown-language-features: 为 Markdown 提供丰富的语言支持。
    //  - vscode.php-language-features: 为 PHP 文件提供丰富的语言支持。
    //  - ms-python.python: IntelliSense (Pylance), Linting, Debugging (multi-threaded, remote), Jupyter Notebooks, code formatting, refactoring, unit tests, and more.
    //  - ms-vscode.references-view: Reference Search results as separate, stable view in the sidebar
    //  - vscode.search-result: 为选项卡搜索结果中提供语法突出显示和语言功能。
    //  - foxundermoon.shell-format: shellscript、Dockerfile、properties、gitignore、dotenv、hosts、jvmoptions... DocumentFormat
    //  - vscode.typescript-language-features: 为 JavaScript 和 TypeScript 提供丰富的语言支持。
    //  - ms-python.vscode-pylance: A performant, feature-rich language server for Python in VS Code
    //  - nadako.vshaxe: Haxe language support
    //  - vscode.configuration-editing: 在配置文件 (如设置、启动和扩展推荐文件) 中提供高级 IntelliSense、自动修复等功能
    //  - vscode.debug-auto-launch: 当 node-debug 扩展未启用时提供自动附加的辅助程序。
    //  - vscode.debug-server-ready: 如果正在调试的服务器已准备就绪,在浏览器中打开 URI。
    //  - vscode.emmet: 适用于 VS Code 的 Emmet 支持
    //  - vscode.extension-editing: 在创建扩展时提供 linting 功能。
    //  - vscode.git: Git 源代码管理集成
    //  - vscode.git-base: Git 静态贡献和选取器。
    //  - vscode.github: 适用于 VS Code 的 GitHub 功能
    //  - vscode.github-authentication: GitHub 身份验证提供程序
    //  - vscode.grunt: Extension to add Grunt capabilities to VS Code.
    //  - vscode.gulp: 向 VSCode 提供 Gulp 功能的扩展。
    //  - vscode.image-preview: 提供 VS Code的内置图像预览
    //  - vscode.ipynb: 为打开和读取 Jupyter 的 .ipynb 笔记本文件提供基本支持
    //  - vscode.jake: 向 VS Code 提供 Jake 功能的扩展。
    //  - ms-vscode.js-debug: An extension for debugging Node.js programs and Chrome.
    //  - ms-vscode.js-debug-companion: Companion extension to js-debug that provides capability for remote debugging
    //  - ms-toolsai.jupyter-renderers: Renderers for Jupyter Notebooks (with plotly, vega, gif, png, svg, jpeg and other such outputs)
    //  - vscode.markdown-math: 在笔记本中向 Markdown 添加数学支持。
    //  - PKief.material-icon-theme: Material Design Icons for Visual Studio Code
    //  - vscode.merge-conflict: 为内联合并冲突提供高亮和命令。
    //  - vscode.microsoft-authentication: Microsoft 身份验证提供程序
    //  - vscode.npm: 为 npm 脚本提供任务支持的扩展。
    //  - ms-vscode-remote.remote-wsl-recommender: Recommends using the Windows Subsystem for Linux (WSL) and the Remote WSL extension.
    //  - vscode.simple-browser: 一个非常基本的内置 Web 视图,用于显示 Web 内容。
    //  - ms-vscode.vscode-js-profile-table: Text visualizer for profiles taken from the JavaScript debugger
    "editor.defaultFormatter": null,
  
    // 控制"转到定义"鼠标手势是否始终打开预览小部件。
    "editor.definitionLinkOpensInPeek": false,
  
    // 控制是否在打开文件时,基于文件内容自动检测 `editor.tabSize#` 和 `#editor.insertSpaces`。
    "editor.detectIndentation": true,
  
    // 控制在编辑器中是否允许通过拖放来移动选中内容。
    "editor.dragAndDrop": true,
  
    // 控制在没有选择内容时进行复制是否复制当前行。
    "editor.emptySelectionClipboard": true,
  
    // 按下"Alt"时滚动速度倍增。
    "editor.fastScrollSensitivity": 5,
  
    // 控制 "查找小部件" 是否应在编辑器顶部添加额外的行。如果为 true, 则可以在 "查找小工具" 可见时滚动到第一行之外。
    "editor.find.addExtraSpaceOnTop": true,
  
    // 控制自动打开“在选定内容中查找”的条件。
    //  - never: 从不自动打开“在选定内容中查找”(默认)。
    //  - always: 始终自动打开“在选定内容中查找”。
    //  - multiline: 选择多行内容时,自动打开“在选定内容中查找”。
    "editor.find.autoFindInSelection": "never",
  
    // 控制在键入时光标是否应跳转以查找匹配项。
    "editor.find.cursorMoveOnType": true,
  
    // 控制在找不到其他匹配项时,是否自动从开头(或结尾)重新开始搜索。
    "editor.find.loop": true,
  
    // 控制是否将编辑器选中内容作为搜索词填入到查找小组件中。
    //  - never: 切勿为编辑器选择中的搜索字符串设定种子。
    //  - always: 始终为编辑器选择中的搜索字符串设定种子,包括光标位置的字词。
    //  - selection: 仅为编辑器选择中的搜索字符串设定种子。
    "editor.find.seedSearchStringFromSelection": "always",
  
    // 控制编辑器是否启用了代码折叠。
    "editor.folding": true,
  
    // 控制编辑器是否应突出显示折叠范围。
    "editor.foldingHighlight": true,
  
    // 控制编辑器是否自动折叠导入范围。
    "editor.foldingImportsByDefault": false,
  
    // 可折叠区域的最大数量。如果当前源具有大量可折叠区域,那么增加此值可能会导致编辑器的响应速度变慢。
    "editor.foldingMaximumRegions": 5000,
  
    // 控制计算折叠范围的策略。
    //  - auto: 使用特定于语言的折叠策略(如果可用),否则使用基于缩进的策略。
    //  - indentation: 使用基于缩进的折叠策略。
    "editor.foldingStrategy": "auto",
  
    // 控制字体系列。
    "editor.fontFamily": "Consolas, 'Courier New', monospace",
  
    // 配置字体连字或字体特性。可以是用于启用/禁用连字的布尔值,或用于设置 CSS "font-feature-settings" 属性值的字符串。
    "editor.fontLigatures": false,
  
    // 控制字体大小(像素)。
    "editor.fontSize": 14,
  
    // 控制字体粗细。接受关键字“正常”和“加粗”,或者接受介于 1 至 1000 之间的数字。
    "editor.fontWeight": "normal",
  
    // 控制编辑器是否自动格式化粘贴的内容。格式化程序必须可用,并且能针对文档中的某一范围进行格式化。
    "editor.formatOnPaste": false,
  
    // 在保存时格式化文件。格式化程序必须可用,延迟后文件不能保存,并且编辑器不能关闭。
    "editor.formatOnSave": false,
  
    // 控制在保存时设置格式是设置整个文件格式还是仅设置修改内容的格式。仅当 "#editor.formatOnSave#" 处于启用状态时适用。
    //  - file: 设置整个文件的格式。
    //  - modifications: 格式修改(需要源代码管理)。
    //  - modificationsIfAvailable: 将尝试只对修改进行格式化(需要源代码管理)。如果无法使用源代码管理,则将格式化整个文件。
    "editor.formatOnSaveMode": "file",
  
    // 控制编辑器在键入一行后是否自动格式化该行。
    "editor.formatOnType": false,
  
    // 控制编辑器是否应呈现垂直字形边距。字形边距最常用于调试。
    "editor.glyphMargin": true,
  
    // 当"转到声明"的结果为当前位置时将要执行的替代命令的 ID。
    "editor.gotoLocation.alternativeDeclarationCommand": "editor.action.goToReferences",
  
    // 当"转到定义"的结果为当前位置时将要执行的替代命令的 ID。
    "editor.gotoLocation.alternativeDefinitionCommand": "editor.action.goToReferences",
  
    // 当"转到实现"的结果为当前位置时将要执行的替代命令的 ID。
    "editor.gotoLocation.alternativeImplementationCommand": "",
  
    // 当"转到引用"的结果是当前位置时正在执行的替代命令 ID。
    "editor.gotoLocation.alternativeReferenceCommand": "",
  
    // 当"转到类型定义"的结果是当前位置时正在执行的备用命令 ID。
    "editor.gotoLocation.alternativeTypeDefinitionCommand": "editor.action.goToReferences",
  
    // 此设置已弃用,请改用单独的设置,如"editor.editor.gotoLocation.multipleDefinitions"或"editor.editor.gotoLocation.multipleImplementations"。
    // 
    "editor.gotoLocation.multiple": null,
  
    // 控制存在多个目标位置时"转到声明"命令的行为。
    //  - peek: 显示结果的预览视图 (默认值)
    //  - gotoAndPeek: 转到主结果并显示预览视图
    //  - goto: 转到主结果,并对其他人启用防偷窥导航
    "editor.gotoLocation.multipleDeclarations": "peek",
  
    // 控制存在多个目标位置时"转到定义"命令的行为。
    //  - peek: 显示结果的预览视图 (默认值)
    //  - gotoAndPeek: 转到主结果并显示预览视图
    //  - goto: 转到主结果,并对其他人启用防偷窥导航
    "editor.gotoLocation.multipleDefinitions": "peek",
  
    // 控制存在多个目标位置时"转到实现"命令的行为。
    //  - peek: 显示结果的预览视图 (默认值)
    //  - gotoAndPeek: 转到主结果并显示预览视图
    //  - goto: 转到主结果,并对其他人启用防偷窥导航
    "editor.gotoLocation.multipleImplementations": "peek",
  
    // 控制存在多个目标位置时"转到引用"命令的行为。
    //  - peek: 显示结果的预览视图 (默认值)
    //  - gotoAndPeek: 转到主结果并显示预览视图
    //  - goto: 转到主结果,并对其他人启用防偷窥导航
    "editor.gotoLocation.multipleReferences": "peek",
  
    // 控制存在多个目标位置时"转到类型定义"命令的行为。
    //  - peek: 显示结果的预览视图 (默认值)
    //  - gotoAndPeek: 转到主结果并显示预览视图
    //  - goto: 转到主结果,并对其他人启用防偷窥导航
    "editor.gotoLocation.multipleTypeDefinitions": "peek",
  
    // 控制是否启用括号对指南。
    //  - true: 启用括号对参考线。
    //  - active: 仅为活动括号对启用括号对参考线。
    //  - false: 禁用括号对参考线。
    "editor.guides.bracketPairs": false,
  
    // 控制是否启用水平括号对指南。
    //  - true: 启用水平参考线作为垂直括号对参考线的添加项。
    //  - active: 仅为活动括号对启用水平参考线。
    //  - false: 禁用水平括号对参考线。
    "editor.guides.bracketPairsHorizontal": "active",
  
    // 控制编辑器是否应突出显示活动的括号对。
    "editor.guides.highlightActiveBracketPair": true,
  
    // 控制是否突出显示编辑器中活动的缩进参考线。
    //  - true: 突出显示活动缩进参考线。
    //  - always: 突出显示活动缩进参考线,即使突出显示了括号参考线。
    //  - false: 不要突出显示活动缩进参考线。
    "editor.guides.highlightActiveIndentation": true,
  
    // 控制编辑器是否显示缩进参考线。
    "editor.guides.indentation": true,
  
    // 控制是否在概览标尺中隐藏光标。
    "editor.hideCursorInOverviewRuler": false,
  
    // 如果有空间,首选在线条上方显示悬停。
    "editor.hover.above": true,
  
    // 控制显示悬停提示前的等待时间 (毫秒)。
    "editor.hover.delay": 300,
  
    // 控制是否显示悬停提示。
    "editor.hover.enabled": true,
  
    // 控制当鼠标移动到悬停提示上时,其是否保持可见。
    "editor.hover.sticky": true,
  
    // 在编辑器中启用内联提示。
    //  - on: 已启用内嵌提示
    //  - onUnlessPressed: 默认情况下显示内嵌提示,并在按住 `Ctrl+Alt` 时隐藏
    //  - offUnlessPressed: 默认情况下隐藏内嵌提示,并在按住 `Ctrl+Alt` 时显示
    //  - off: 已禁用内嵌提示
    "editor.inlayHints.enabled": "on",
  
    // 在编辑器中控制内嵌提示的字体系列。设置为空时,使用 `editor.fontFamily`。
    "editor.inlayHints.fontFamily": "",
  
    // 控制编辑器中内嵌提示的字号。当配置的值小于 `5` 或大于编辑器字号时,默认使用 `editor.fontSize`。
    "editor.inlayHints.fontSize": 0,
  
    // 控制是否在编辑器中自动显示内联建议。
    "editor.inlineSuggest.enabled": true,
  
    // 按 `Tab` 键时插入空格。该设置在 `editor.detectIndentation` 启用时根据文件内容可能会被覆盖。
    "editor.insertSpaces": true,
  
    // 定义增加和减少缩进的括号。
    "editor.language.brackets": null,
  
    // 如果启用方括号对着色,则按照其嵌套级别定义已着色的方括号对。
    "editor.language.colorizedBracketPairs": null,
  
    // 对大型文件进行特殊处理,禁用某些内存密集型功能。
    "editor.largeFileOptimizations": true,
  
    // 控制字母间距(像素)。
    "editor.letterSpacing": 0,
  
    // 在编辑器中启用代码操作小灯泡提示。
    "editor.lightbulb.enabled": true,
  
    // 控制行高。
    //  - 使用 0 根据字号自动计算行高。
    //  - 介于 0 和 8 之间的值将用作字号的乘数。
    //  - 大于或等于 8 的值将用作有效值。
    "editor.lineHeight": 0,
  
    // 控制行号的显示。
    //  - off: 不显示行号。
    //  - on: 将行号显示为绝对行数。
    //  - relative: 将行号显示为与光标相隔的行数。
    //  - interval: 每 10 行显示一次行号。
    "editor.lineNumbers": "on",
  
    // 控制编辑器是否已启用链接编辑。相关符号(如 HTML 标记)在编辑时进行更新,具体由语言而定。
    "editor.linkedEditing": false,
  
    // 控制是否在编辑器中检测链接并使其可被点击。
    "editor.links": true,
  
    // 突出显示匹配的括号。
    "editor.matchBrackets": "always",
  
    // 由于性能原因,超过这个长度的行将不会被标记
    "editor.maxTokenizationLineLength": 20000,
  
    // 控制是否显示缩略图。
    "editor.minimap.enabled": true,
  
    // 限制缩略图的宽度,控制其最多显示的列数。
    "editor.minimap.maxColumn": 120,
  
    // 渲染每行的实际字符,而不是色块。
    "editor.minimap.renderCharacters": true,
  
    // 在迷你地图中绘制的内容比例: 1、2 或 3。
    "editor.minimap.scale": 1,
  
    // 控制何时显示迷你地图滑块。
    "editor.minimap.showSlider": "mouseover",
  
    // 控制在哪一侧显示缩略图。
    "editor.minimap.side": "right",
  
    // 控制迷你地图的大小。
    //  - proportional: 迷你地图的大小与编辑器内容相同(并且可能滚动)。
    //  - fill: 迷你地图将根据需要拉伸或缩小以填充编辑器的高度(不滚动)。
    //  - fit: 迷你地图将根据需要缩小,永远不会大于编辑器(不滚动)。
    "editor.minimap.size": "proportional",
  
    // 对鼠标滚轮滚动事件的 `deltaX` 和 `deltaY` 乘上的系数。
    "editor.mouseWheelScrollSensitivity": 1,
  
    // 按住 `Ctrl` 键并滚动鼠标滚轮时对编辑器字体大小进行缩放。
    "editor.mouseWheelZoom": false,
  
    // 当多个光标重叠时进行合并。
    "editor.multiCursorMergeOverlapping": true,
  
    // 在通过鼠标添加多个光标时使用的修改键。“转到定义”和“打开链接”功能所需的鼠标动作将会相应调整,不与多光标修改键冲突。[阅读详细信息](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier)。
    //  - ctrlCmd: 映射为 `Ctrl` (Windows 和 Linux) 或 `Command` (macOS)。
    //  - alt: 映射为 `Alt` (Windows 和 Linux) 或 `Option` (macOS)。
    "editor.multiCursorModifier": "alt",
  
    // 控制粘贴时粘贴文本的行计数与光标计数相匹配。
    //  - spread: 每个光标粘贴一行文本。
    //  - full: 每个光标粘贴全文。
    "editor.multiCursorPaste": "spread",
  
    // 控制编辑器是否突出显示语义符号的匹配项。
    "editor.occurrencesHighlight": true,
  
    // 控制是否在概览标尺周围绘制边框。
    "editor.overviewRulerBorder": true,
  
    // 控制编辑器的底边和最后一行之间的间距量。
    "editor.padding.bottom": 0,
  
    // 控制编辑器的顶边和第一行之间的间距量。
    "editor.padding.top": 0,
  
    // 控制参数提示菜单在到达列表末尾时进行循环还是关闭。
    "editor.parameterHints.cycle": false,
  
    // 在输入时显示含有参数文档和类型信息的小面板。
    "editor.parameterHints.enabled": true,
  
    // 控制是将焦点放在内联编辑器上还是放在预览小部件中的树上。
    //  - tree: 打开速览时聚焦树
    //  - editor: 打开预览时将焦点放在编辑器上
    "editor.peekWidgetDefaultFocus": "tree",
  
    // 控制是否在键入时自动显示建议。
    "editor.quickSuggestions": {
      "other": "on",
      "comments": "off",
      "strings": "off"
    },
  
    // 控制显示快速建议前的等待时间 (毫秒)。
    "editor.quickSuggestionsDelay": 10,
  
    // 启用/禁用重命名之前预览更改的功能
    "editor.rename.enablePreview": true,
  
    // 已弃用,请改用 "editor.linkedEditing"。
    // 控制是否在编辑器中输入时自动重命名。
    "editor.renameOnType": false,
  
    // 控制编辑器是否显示控制字符。
    "editor.renderControlCharacters": true,
  
    // 当文件以换行符结束时, 呈现最后一行的行号。
    "editor.renderFinalNewline": true,
  
    // 控制编辑器的当前行进行高亮显示的方式。
    //  - none
    //  - gutter
    //  - line
    //  - all: 同时突出显示导航线和当前行。
    "editor.renderLineHighlight": "line",
  
    // 控制编辑器是否仅在焦点在编辑器时突出显示当前行。
    "editor.renderLineHighlightOnlyWhenFocus": false,
  
    // 控制编辑器在空白字符上显示符号的方式。
    //  - none
    //  - boundary: 呈现空格字符(字词之间的单个空格除外)。
    //  - selection: 仅在选定文本上呈现空白字符。
    //  - trailing: 仅呈现尾随空格字符。
    //  - all
    "editor.renderWhitespace": "selection",
  
    // 控制选区是否有圆角。
    "editor.roundedSelection": true,
  
    // 在一定数量的等宽字符后显示垂直标尺。输入多个值,显示多个标尺。若数组为空,则不绘制标尺。
    "editor.rulers": [],
  
    // 控制水平滚动条的可见性。
    //  - auto: 水平滚动条仅在必要时可见。
    //  - visible: 水平滚动条将始终可见。
    //  - hidden: 水平滚动条将始终隐藏。
    "editor.scrollbar.horizontal": "auto",
  
    // 水平滚动条的高度。
    "editor.scrollbar.horizontalScrollbarSize": 12,
  
    // 控制单击按页滚动还是跳转到单击位置。
    "editor.scrollbar.scrollByPage": false,
  
    // 控制垂直滚动条的可见性。
    //  - auto: 垂直滚动条仅在必要时可见。
    //  - visible: 垂直滚动条将始终可见。
    //  - hidden: 垂直滚动条将始终隐藏。
    "editor.scrollbar.vertical": "auto",
  
    // 垂直滚动条的宽度。
    "editor.scrollbar.verticalScrollbarSize": 14,
  
    // 控制编辑器水平滚动时可以超过范围的字符数。
    "editor.scrollBeyondLastColumn": 5,
  
    // 控制编辑器是否可以滚动到最后一行之后。
    "editor.scrollBeyondLastLine": true,
  
    // 同时垂直和水平滚动时,仅沿主轴滚动。在触控板上垂直滚动时,可防止水平漂移。
    "editor.scrollPredominantAxis": true,
  
    // 控制编辑器是否应突出显示与所选内容类似的匹配项。
    "editor.selectionHighlight": true,
  
    // 控制是否为支持它的语言显示语义突出显示。
    //  - true: 对所有颜色主题启用语义突出显示。
    //  - false: 对所有颜色主题禁用语义突出显示。
    //  - configuredByTheme: 语义突出显示是由当前颜色主题的 "semanticHighlighting" 设置配置的。
    "editor.semanticHighlighting.enabled": "configuredByTheme",
  
    // 从当前所选颜色主题重写编辑器语义标记颜色和样式。
    "editor.semanticTokenColorCustomizations": {},
  
    // 控制加删除线被弃用的变量。
    "editor.showDeprecated": true,
  
    // 控制何时显示行号槽上的折叠控件。
    //  - always: 始终显示折叠控件。
    //  - mouseover: 仅在鼠标位于装订线上方时显示折叠控件。
    "editor.showFoldingControls": "mouseover",
  
    // 控制是否淡化未使用的代码。
    "editor.showUnused": true,
  
    // 是否应始终选择前导和尾随空格。
    "editor.smartSelect.selectLeadingAndTrailingWhitespace": true,
  
    // 控制编辑器是否使用动画滚动。
    "editor.smoothScrolling": false,
  
    // 控制代码片段是否与其他建议一起显示及其排列的位置。
    //  - top: 在其他建议上方显示代码片段建议。
    //  - bottom: 在其他建议下方显示代码片段建议。
    //  - inline: 在其他建议中穿插显示代码片段建议。
    //  - none: 不显示代码片段建议。
    "editor.snippetSuggestions": "inline",
  
    // 在速览编辑器中,即使双击其中的内容或者按 `Esc` 键,也保持其打开状态。
    "editor.stablePeek": false,
  
    // 在使用空格进行缩进时模拟制表符的选择行为。所选内容将始终使用制表符停止位。
    "editor.stickyTabStops": false,
  
    // 此设置已弃用,请改用单独的设置,如"editor.suggest.showKeywords"或"editor.suggest.showSnippets"。
    // 
    "editor.suggest.filteredTypes": {},
  
    // 控制对建议的筛选和排序是否考虑小的拼写错误。
    "editor.suggest.filterGraceful": true,
  
    // 控制接受补全时是否覆盖单词。请注意,这取决于扩展选择使用此功能。
    //  - insert: 插入建议而不覆盖光标右侧的文本。
    //  - replace: 插入建议并覆盖光标右侧的文本。
    "editor.suggest.insertMode": "insert",
  
    // 控制排序时是否首选光标附近的字词。
    "editor.suggest.localityBonus": false,
  
    // 此设置已弃用。现在可以调整建议小组件的大小。
    // 
    "editor.suggest.maxVisibleSuggestions": 0,
  
    // 控制是否在编辑器中预览建议结果。
    "editor.suggest.preview": false,
  
    // 控制是否在多个工作区和窗口间共享记忆的建议选项(需要 `editor.suggestSelection`)。
    "editor.suggest.shareSuggestSelections": false,
  
    // 启用后,IntelliSense 将显示“类”建议。
    "editor.suggest.showClasses": true,
  
    // 启用后,IntelliSense 将显示“颜色”建议。
    "editor.suggest.showColors": true,
  
    // 启用后,IntelliSense 将显示“常量”建议。
    "editor.suggest.showConstants": true,
  
    // 启用后,IntelliSense 将显示“构造函数”建议。
    "editor.suggest.showConstructors": true,
  
    // 启用后,IntelliSense 将显示“自定义颜色”建议。
    "editor.suggest.showCustomcolors": true,
  
    // 启用后,IntelliSense 将显示“已启用”建议。
    "editor.suggest.showDeprecated": true,
  
    // 启用后,IntelliSense 将显示 "enumMember" 建议。
    "editor.suggest.showEnumMembers": true,
  
    // 启用后,IntelliSense 将显示“枚举”建议。
    "editor.suggest.showEnums": true,
  
    // 启用后,IntelliSense 将显示“事件”建议。
    "editor.suggest.showEvents": true,
  
    // 启用后,IntelliSense 将显示“字段”建议。
    "editor.suggest.showFields": true,
  
    // 启用后,IntelliSense 将显示“文件”建议。
    "editor.suggest.showFiles": true,
  
    // 启用后,IntelliSense 将显示“文件夹”建议。
    "editor.suggest.showFolders": true,
  
    // 启用后,IntelliSense 将显示“函数”建议。
    "editor.suggest.showFunctions": true,
  
    // 控制是否在建议中显示或隐藏图标。
    "editor.suggest.showIcons": true,
  
    // 控制建议详细信息是随标签一起显示还是仅显示在详细信息小组件中
    "editor.suggest.showInlineDetails": true,
  
    // 启用后,IntelliSense 将显示“接口”建议。
    "editor.suggest.showInterfaces": true,
  
    // 启用后,IntelliSense 将显示"问题"建议。
    "editor.suggest.showIssues": true,
  
    // 启用后,IntelliSense 将显示“关键字”建议。
    "editor.suggest.showKeywords": true,
  
    // 启用后,IntelliSense 将显示“方法”建议。
    "editor.suggest.showMethods": true,
  
    // 启用后,IntelliSense 将显示“模块”建议。
    "editor.suggest.showModules": true,
  
    // 启用后,IntelliSense 将显示“操作符”建议。
    "editor.suggest.showOperators": true,
  
    // 启用后,IntelliSense 将显示“属性”建议。
    "editor.suggest.showProperties": true,
  
    // 启用后,IntelliSense 将显示“参考”建议。
    "editor.suggest.showReferences": true,
  
    // 启用后,IntelliSense 将显示“片段”建议。
    "editor.suggest.showSnippets": true,
  
    // 控制建议小部件底部的状态栏的可见性。
    "editor.suggest.showStatusBar": false,
  
    // 启用后,IntelliSense 将显示“结构”建议。
    "editor.suggest.showStructs": true,
  
    // 启用后,IntelliSense 将显示 "typeParameter" 建议。
    "editor.suggest.showTypeParameters": true,
  
    // 启用后,IntelliSense 将显示“单位”建议。
    "editor.suggest.showUnits": true,
  
    // 启用后,IntelliSense 将显示"用户"建议。
    "editor.suggest.showUsers": true,
  
    // 启用后,IntelliSense 将显示“值”建议。
    "editor.suggest.showValues": true,
  
    // 启用后,IntelliSense 将显示“变量”建议。
    "editor.suggest.showVariables": true,
  
    // 启用后,IntelliSense 将显示“文本”建议。
    "editor.suggest.showWords": true,
  
    // 控制活动代码段是否阻止快速建议。
    "editor.suggest.snippetsPreventQuickSuggestions": true,
  
    // 建议小部件的字号。如果设置为 `0`,则使用 `editor.fontSize` 的值。
    "editor.suggestFontSize": 0,
  
    // 建议小部件的行高。如果设置为 `0`,则使用 `editor.lineHeight` 的值。最小值为 8。
    "editor.suggestLineHeight": 0,
  
    // 控制在键入触发字符后是否自动显示建议。
    "editor.suggestOnTriggerCharacters": true,
  
    // 控制在建议列表中如何预先选择建议。
    //  - first: 始终选择第一个建议。
    //  - recentlyUsed: 选择最近的建议,除非进一步键入选择其他项。例如 `console. -> console.log`,因为最近补全过 `log`。
    //  - recentlyUsedByPrefix: 根据之前补全过的建议的前缀来进行选择。例如,`co -> console`、`con -> const`。
    "editor.suggestSelection": "first",
  
    // 启用 Tab 补全。
    //  - on: 在按下 Tab 键时进行 Tab 补全,将插入最佳匹配建议。
    //  - off: 禁用 Tab 补全。
    //  - onlySnippets: 在前缀匹配时进行 Tab 补全。在 "quickSuggestions" 未启用时体验最好。
    "editor.tabCompletion": "off",
  
    // 一个制表符等于的空格数。在 `editor.detectIndentation` 启用时,根据文件内容,该设置可能会被覆盖。
    "editor.tabSize": 4,
  
    // 替代当前所选颜色主题中的编辑器语法颜色和字形。
    "editor.tokenColorCustomizations": {},
  
    // 删除自动插入的尾随空白符号。
    "editor.trimAutoWhitespace": true,
  
    // 控制单击已折叠的行后面的空内容是否会展开该行。
    "editor.unfoldOnClickAfterEndOfLine": false,
  
    // 定义未突出显示的允许字符。
    "editor.unicodeHighlight.allowedCharacters": {},
  
    // 未突出显示在允许区域设置中常见的 Unicode 字符。
    "editor.unicodeHighlight.allowedLocales": {
      "_os": true,
      "_vscode": true
    },
  
    // 控制是否突出显示可能与基本 ASCII 字符混淆的字符,但当前用户区域设置中常见的字符除外。
    "editor.unicodeHighlight.ambiguousCharacters": true,
  
    // 控制注释中的字符是否也应进行 Unicode 突出显示。
    "editor.unicodeHighlight.includeComments": "inUntrustedWorkspace",
  
    // 控制字符串中的字符是否也应进行 unicode 突出显示。
    "editor.unicodeHighlight.includeStrings": true,
  
    // 控制是否突出显示仅保留空格或完全没有宽度的字符。
    "editor.unicodeHighlight.invisibleCharacters": true,
  
    // 控制是否突出显示所有非基本 ASCII 字符。只有介于 U+0020 到 U+007E 之间的字符、制表符、换行符和回车符才被视为基本 ASCII。
    "editor.unicodeHighlight.nonBasicASCII": "inUntrustedWorkspace",
  
    // 删除可能导致问题的异常行终止符。
    //  - auto: 自动删除异常的行终止符。
    //  - off: 忽略异常的行终止符。
    //  - prompt: 提示删除异常的行终止符。
    "editor.unusualLineTerminators": "prompt",
  
    // 根据制表位插入和删除空格。
    "editor.useTabStops": true,
  
    // 控制是否根据文档中的文字计算自动完成列表。
    "editor.wordBasedSuggestions": true,
  
    // 控制通过哪些文档计算基于字词的补全。
    //  - currentDocument: 仅建议活动文档中的字词。
    //  - matchingDocuments: 建议使用同一语言的所有打开的文档中的字词。
    //  - allDocuments: 建议所有打开的文档中的字词。
    "editor.wordBasedSuggestionsMode": "matchingDocuments",
  
    // 执行单词相关的导航或操作时作为单词分隔符的字符。
    "editor.wordSeparators": "`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?",
  
    // 控制折行的方式。
    //  - off: 永不换行。
    //  - on: 将在视区宽度处换行。
    //  - wordWrapColumn: 在 `editor.wordWrapColumn` 处折行。
    //  - bounded: 在视区宽度和 `editor.wordWrapColumn` 中的较小值处折行。
    "editor.wordWrap": "off",
  
    // 在 `editor.wordWrap` 为 `wordWrapColumn` 或 `bounded` 时,控制编辑器的折行列。
    "editor.wordWrapColumn": 80,
  
    // 控制折行的缩进。
    //  - none: 没有缩进。折行从第 1 列开始。
    //  - same: 折行的缩进量与其父级相同。
    //  - indent: 折行的缩进量比其父级多 1。
    //  - deepIndent: 折行的缩进量比其父级多 2。
    "editor.wrappingIndent": "same",
  
    // 控制计算包裹点的算法。
    //  - simple: 假定所有字符的宽度相同。这是一种快速算法,适用于等宽字体和某些字形宽度相等的文字(如拉丁字符)。
    //  - advanced: 将包装点计算委托给浏览器。这是一个缓慢算法,可能会导致大型文件被冻结,但它在所有情况下都正常工作。
    "editor.wrappingStrategy": "simple"
  
  },
  {
    // 控制是否在“源代码管理”视图中始终显示内联操作。
    "scm.alwaysShowActions": false,
  
    // 控制存储库是否应在源代码管理视图中始终可见。
    "scm.alwaysShowRepositories": false,
  
    // 控制源代码管理视图在打开文件时是否应自动显示和选择文件。
    "scm.autoReveal": true,
  
    // 控制活动栏上源代码管理图标上的计数锁屏提醒。
    //  - all: 显示所有源代码管理提供程序计数锁屏提醒的总和。
    //  - focused: 显示焦点源控制提供程序的计数标记。
    //  - off: 禁用源代码管理计数徽章。
    "scm.countBadge": "all",
  
    // 控制默认的源代码管理存储库视图模式。
    //  - tree: 将存储库更改显示为树。
    //  - list: 将存储库更改显示为列表。
    "scm.defaultViewMode": "list",
  
    // 控制默认的源代码管理存储库在被视为列表时的更改排序顺序。
    //  - name: 按文件名对存储库更改进行排序。
    //  - path: 按路径对存储库更改进行排序。
    //  - status: 按源代码管理状态对存储库更改进行排序。
    "scm.defaultViewSortKey": "path",
  
    // 控制编辑器中差异的显示效果。
    //  - all: 显示所有可用位置中的差异装饰。
    //  - gutter: 仅在编辑器行号槽中显示差异装饰。
    //  - overview: 仅在概览标尺中显示差异装饰。
    //  - minimap: 仅在缩略图中显示差异装饰。
    //  - none: 不要显示差异装饰。
    "scm.diffDecorations": "all",
  
    // 控制源代码管理差异装订线修饰的行为。
    //  - diff: 单击时显示内联差异一览视图。
    //  - none: 不执行任何操作。
    "scm.diffDecorationsGutterAction": "diff",
  
    // 控制是否将模式用于装订线中的差异修饰。
    "scm.diffDecorationsGutterPattern": {
      "added": false,
      "modified": true
    },
  
    // 控制行号槽中源代码管理差异装饰器的可见性。
    //  - always: 始终显示行号槽中的差异装饰器。
    //  - hover: 仅在悬停时显示行号槽中的差异装饰器。
    "scm.diffDecorationsGutterVisibility": "always",
  
    // 控制装订线中差异修饰的宽度(px)(已添加或已修改)。
    "scm.diffDecorationsGutterWidth": 3,
  
    // 控制在源代码管理差异装订线修饰中是否忽略前导空格和尾随空格。
    //  - true: 忽略前导空格和尾随空格。
    //  - false: 不要忽略前导空格和尾随空格。
    //  - inherit: 继承自 `diffEditor.ignoreTrimWhitespace`。
    "scm.diffDecorationsIgnoreTrimWhitespace": "false",
  
    // 控制输入消息的字体。将 `default` 用于工作台用户界面字体系列,将 `editor` 用于 `editor.fontFamily` 的值,或者使用自定义字体系列。
    "scm.inputFontFamily": "default",
  
    // 控制输入消息的字号(以像素为单位)。
    "scm.inputFontSize": 13,
  
    // 控制源代码管理提供程序标头的计数锁屏提醒。仅在有多个提供程序时才显示这些标头。
    //  - hidden: 隐藏源代码管理提供程序计数锁屏提醒。
    //  - auto: 仅显示非零时源代码管理提供程序的计数锁屏提醒。
    //  - visible: 显示源代码管理提供程序计数锁屏提醒。
    "scm.providerCountBadge": "hidden",
  
    // 控制源代码管理存储库视图中存储库的排序顺序。
    //  - discovery time: 按发现时间对源代码管理存储库视图中的存储库排序。按所选顺序对源代码管理视图中的存储库排序。
    //  - name: 按存储库名称对源代码管理存储库和源代码管理视图中的存储库排序。
    //  - path: 按存储库路径对源代码管理存储库和源代码管理视图中的存储库排序。
    "scm.repositories.sortOrder": "discovery time",
  
    // 控制在“源代码管理存储库”部分中可见的存储库数。设置为 "0", 以便能够手动调整视图的大小。
    "scm.repositories.visible": 10,
  
    // 控制是否可以在源代码管理视图中显示操作按钮。
    "scm.showActionButton": true
  
  },
  {
    // 控制在工作台中单击活动栏图标时出现的行为。
    //  - toggle: 如果单击的项已可见,则隐藏边栏。
    //  - focus: 如果单击的项已可见,则将焦点放在边栏上。
    "workbench.activityBar.iconClickBehavior": "toggle",
  
    // 控制工作台中活动栏的可见性。
    "workbench.activityBar.visible": true,
  
    // 覆盖当前所选颜色主题的颜色。
    "workbench.colorCustomizations": {},
  
    // 指定用在工作台中的颜色主题。
    "workbench.colorTheme": "Default Dark+",
  
    // 控制命令面板中保留最近使用命令的数量。设置为 0 时禁用命令历史功能。
    "workbench.commandPalette.history": 50,
  
    // 当再次打开命令面板时,控制是否恢复上一次输入的内容。
    "workbench.commandPalette.preserveInput": false,
  
    // 如果与列出的其中一个类型匹配的编辑器作为编辑器组中的第一个编辑器打开,且打开了多个组,则该组会自动锁定。锁定的组仅用于在用户手势(例如拖放)显式选择时打开编辑器,默认情况下不使用。因此,锁定的组中的活动编辑器不太可能被意外替换为其他编辑器。
    "workbench.editor.autoLockGroups": {
      "default": false,
      "workbench.input.interactive": false,
      "interactive": false,
      "workbench.editorinputs.searchEditorInput": false,
      "imagePreview.previewEditor": false,
      "vscode.markdown.preview.editor": false,
      "jsProfileVisualizer.cpuprofile.table": false,
      "jsProfileVisualizer.heapprofile.table": false,
      "workbench.editorinputs.sidebysideEditorInput": false,
      "terminalEditor": true,
      "jupyter-notebook": false,
      "mainThreadWebview-markdown.preview": false
    },
  
    // 如果在居中布局中打开了超过一组编辑器,控制是否自动将宽度调整为最大宽度值。当回到只打开了一组编辑器的状态,将自动将宽度调整为原始的居中宽度值。
    "workbench.editor.centeredLayoutAutoResize": true,
  
    // 控制编辑器组中最后一个选项卡关闭时这个空组的行为。若启用,将自动关闭空组。若禁用,空组仍将保留在网格布局中。
    "workbench.editor.closeEmptyGroups": true,
  
    // 控制在会话期间显示已打开文件的编辑器是否应在被其他进程删除或重命名时自动关闭。禁用此功能将使编辑器在此类事件中保持打开状态。请注意,从应用程序内删除将始终关闭编辑器,且永远不会关闭具有未保存更改的编辑器以保留数据。
    "workbench.editor.closeOnFileDelete": false,
  
    // 控制编辑器文件修饰是否应使用徽章。
    "workbench.editor.decorations.badges": true,
  
    // 控制编辑器文件修饰是否应使用颜色。
    "workbench.editor.decorations.colors": true,
  
    // 检测为二进制文件的默认编辑器。如果未定义,将向用户显示选取器。
    "workbench.editor.defaultBinaryEditor": "",
  
    // 控制打开的编辑器是否显示为预览编辑器。预览编辑器不会保持打开状态,在将其显式设置为保持打开(例如通过双击或编辑)前将会重复使用,其文件名显示样式为斜体。
    "workbench.editor.enablePreview": true,
  
    // 控制当从编辑器开始进行代码导航时,编辑器是否保持为预览状态。预览编辑器不会保持打开状态,在将其显式设置为保持打开(例如通过双击或编辑)前将会重复使用。当 "#workbench.editor.enablePreview#" 处于禁用状态时,将忽略此值。
    "workbench.editor.enablePreviewFromCodeNavigation": false,
  
    // 控制通过 Quick Open 打开的编辑器是否显示为预览编辑器。预览编辑器不会保持打开状态,在将其显式设置为保持打开(例如通过双击或编辑)前将会重复使用。当 "#workbench.editor.enablePreview#" 处于禁用状态时,将忽略此值。
    "workbench.editor.enablePreviewFromQuickOpen": false,
  
    // 控制是否按最常使用的顺序或从左到右的顺序关闭选项卡。
    "workbench.editor.focusRecentEditorAfterClose": true,
  
    // 控制是否在具有未保存更改的编辑器的选项卡上绘制顶部边框。当禁用 `workbench.editor.showTabs` 时,会忽略此值。
    "workbench.editor.highlightModifiedTabs": false,
  
    // 允许在语言检测中使用编辑器历史记录。这会导致自动语言检测偏向于最近打开的语言,并允许自动语言检测使用较小的输入进行操作。
    "workbench.editor.historyBasedLanguageDetection": true,
  
    // 控制编辑器标签的格式。
    //  - default: 显示文件名。当启用选项卡且在同一组内有两个相同名称的文件时,将添加每个文件路径中可以用于区分的部分。在选项卡被禁用且编辑器活动时,将显示相对于工作区文件夹的路径。
    //  - short: 在文件的目录名之后显示文件名。
    //  - medium: 在文件相对当前工作区文件夹的路径之后显示文件名。
    //  - long: 在文件的绝对路径之后显示文件名。
    "workbench.editor.labelFormat": "default",
  
    // 控制是否自动检测文本编辑器中的语言,除非该语言已由语言选择器显式设置。这也可以按语言确定范围,以便你可以指定不希望关闭的语言。这对于像 Markdown 这样的语言很有用,因为它通常包含可能会欺骗语言检测的其他语言,使其认为它是嵌入语言而不是 Markdown。
    "workbench.editor.languageDetection": true,
  
    // 启用后,当编辑器语言与检测到的内容语言不匹配时,显示状态栏快速修复。
    "workbench.editor.languageDetectionHints": {
      "untitledEditors": true,
      "notebookEditors": false
    },
  
    // 控制打开的编辑器数是否应受限制。启用后,最近使用较少的编辑器将关闭,以为新打开的编辑器腾出空间。
    "workbench.editor.limit.enabled": false,
  
    // 控制打开的编辑器的最大数目是否应排除脏编辑器以计入配置的限制。
    "workbench.editor.limit.excludeDirty": false,
  
    // 控制最大打开的编辑器的限制是否应应用于每个编辑器组或所有编辑器组。
    "workbench.editor.limit.perEditorGroup": false,
  
    // 控制打开编辑器的最大数量。使用 "#workbench.editor.limit.perEditorGroup#" 设置控制每个编辑器组或跨所有组的限制。
    "workbench.editor.limit.value": 10,
  
    // 允许使用鼠标按钮四和五执行“返回”和“前进”命令。
    "workbench.editor.mouseBackForwardToNavigate": true,
  
    // 控制编辑器中“返回”和“前进”等命令的历史导航范围。
    //  - default: 浏览所有打开的编辑器和编辑器组。
    //  - editorGroup: 仅在活动编辑器组的编辑器中导航。
    //  - editor: 仅在活动编辑器中导航。
    "workbench.editor.navigationScope": "default",
  
    // 控制编辑器打开的位置。选择 `left` 或 `right` 可分别在当前活动编辑器的左侧或右侧打开。选择 `first` (最前) 或 `last` (最后) 打开的位置与当前活动编辑器无关。
    "workbench.editor.openPositioning": "right",
  
    // 控制编辑器在并排打开时(例如从资源管理器)出现的默认位置。默认在当前活动编辑器右侧打开。若更改为 "down",则在当前活动编辑器下方打开。
    "workbench.editor.openSideBySideDirection": "right",
  
    // 控制固定的编辑器选项卡的大小。固定的选项卡排在所有打开的选项卡的开头,并且在取消固定之前,通常不会关闭。当 "#workbench.editor.showTabs#" 处于禁用状态时,将忽略此值。
    //  - normal: 固定的选项卡会继承未固定的选项卡的外观。
    //  - compact: 固定的选项卡将以紧凑形式显示,其中只包含图标或编辑器名称的第一个字母。
    //  - shrink: 固定的选项卡缩小至紧凑的固定大小,显示编辑器名称的各部分。
    "workbench.editor.pinnedTabSizing": "normal",
  
    // 启用后,将编辑器历史记录考虑在内的语言检测模型将获得更高的优先级。
    "workbench.editor.preferHistoryBasedLanguageDetection": false,
  
    // 关闭编辑器后,当重新打开时,还原最后的编辑器视图状态(例如滚动位置)。编辑器视图状态存储在每个编辑器组中,且会在组关闭时被放弃。使用 `workbench.editor.sharedViewState` 设置以跨所有编辑器组使用最后已知的视图状态,以防未找到编辑器组之前的视图状态。
    "workbench.editor.restoreViewState": true,
  
    // 控制是否在打开的任何可见组中显示编辑器。如果禁用,编辑器将优先在当前活动的编辑器组中打开。如果启用,将会显示在已打开的编辑器,而不是在当前活动的编辑器组中再次打开。请注意,有些情况下会忽略此设置,例如,强制编辑器在特定组中打开或当前活动组的一侧时。
    "workbench.editor.revealIfOpen": false,
  
    // 控制在滚动到选项卡上方时是否打开这些选项卡。默认情况下,选项卡仅在鼠标滚动时呈现,但不打开。可通过在滚动时按住 Shift 键来更改滚动期间的此行为。当 "#workbench.editor.showTabs#" 处于禁用状态时,将忽略此值。
    "workbench.editor.scrollToSwitchTabs": false,
  
    // 跨所有编辑器组保留最新的编辑器视图状态(例如滚动位置),并在未找到编辑器组的特定编辑器视图状态时进行还原。
    "workbench.editor.sharedViewState": false,
  
    // 控制是否在打开的编辑器中显示图标。这要求同时启用文件图标主题。
    "workbench.editor.showIcons": true,
  
    // 控制打开的编辑器是否显示在选项卡中。
    "workbench.editor.showTabs": true,
  
    // 控制在编辑器组中垂直或水平拆分编辑器时的布局。
    //  - vertical: 从上到下定位编辑器。
    //  - horizontal: 从左到右定位编辑器。
    "workbench.editor.splitInGroupLayout": "horizontal",
  
    // 通过将编辑器或文件放到编辑器区域的边缘,控制是否可以由拖放操作拆分编辑器组。
    "workbench.editor.splitOnDragAndDrop": true,
  
    // 拆分编辑器组时控制编辑器组大小。
    //  - distribute: 将所有编辑器组拆分为相等的部分。
    //  - split: 将活动编辑器组拆分为相等的部分。
    "workbench.editor.splitSizing": "distribute",
  
    // 控制编辑器的选项卡关闭按钮的位置,或者在设置为 "off" 时禁用它们。当 "#workbench.editor.showTabs#" 处于禁用状态时,将忽略此值。
    "workbench.editor.tabCloseButton": "right",
  
    // 控制编辑器选项卡的大小调整。当 "#workbench.editor.showTabs#" 处于禁用状态时,将忽略此值。
    //  - fit: 始终将标签页保持足够大,能够完全显示编辑器标签。
    //  - shrink: 在不能同时显示所有选项卡时,允许选项卡缩小。
    "workbench.editor.tabSizing": "fit",
  
    // 控制编辑器标题区域中用于选项卡和面包屑的滚动条的高度。
    //  - default: 默认大小。
    //  - large: 增加大小,以便更轻松地通过鼠标抓取。
    "workbench.editor.titleScrollbarSizing": "default",
  
    // 控制无标题提示应该是编辑器或浮动按钮中的内联文本,还是应该隐藏。
    "workbench.editor.untitled.hint": "text",
  
    // 控制无标题编辑器的标签格式。
    //  - content: 无标题文件的名称派生自其第一行的内容,除非它有关联的文件路径。如果行为空或不包含单词字符,它将回退到名称。
    //  - name: 无标题文件的名称不是从文件的内容派生的。
    "workbench.editor.untitled.labelFormat": "content",
  
    // 控制当超出可用空间时,选项卡是否应在多行之间换行,或者是否应显示滚动条。当 "#workbench.editor.showTabs#" 处于禁用状态时,将忽略此值。
    "workbench.editor.wrapTabs": false,
  
    // 将 glob 模式配置到编辑器(例如 `"*.hex": "hexEditor.hexEdit"`)。这些优先顺序高于默认行为。
    "workbench.editorAssociations": {},
  
    // 控制是否可以通过按住 `Shift` (而不是在编辑器中打开文件)将文件拖放到编辑器中。
    "workbench.experimental.editor.dropIntoEditor.enabled": true,
  
    // 已弃用此设置,以支持 `workbench.layoutControl.enabled`
    // 控制是否通过 `window.titleBarStyle` 启用自定义标题栏中的布局控件。
    "workbench.experimental.layoutControl.enabled": true,
  
    // 已弃用此设置,以支持 `workbench.layoutControl.type`
    // 控制自定义标题栏中的布局控件是显示为单个菜单按钮还是多个 UI 切换。
    //  - menu: 显示包含布局选项下拉列表的单个按钮。
    //  - toggles: 显示用于切换面板和侧边栏可见性的多个按钮。
    //  - both: 显示下拉列表和切换按钮。
    "workbench.experimental.layoutControl.type": "both",
  
    // 配置开启程序以用于外部 URI (即 http、https)。
    "workbench.externalUriOpeners": {},
  
    // 控制为工作台项显示悬停之前的延迟时间(以毫秒为单位)(例如,一些扩展提供了树状视图项)。已经可见的项可能需要刷新,然后才会反映出此设置更改。
    "workbench.hover.delay": 500,
  
    // 指定工作台中使用的文件图标主题;若指定为 "null",则不显示任何文件图标。
    //  - null: 无文件图标
    //  - vs-minimal
    //  - vs-seti
    //  - material-icon-theme
    "workbench.iconTheme": "vs-seti",
  
    // 控制是否通过 `window.titleBarStyle` 启用自定义标题栏中的布局控件。
    "workbench.layoutControl.enabled": true,
  
    // 控制自定义标题栏中的布局控件是显示为单个菜单按钮还是多个 UI 切换。
    //  - menu: 显示包含布局选项下拉列表的单个按钮。
    //  - toggles: 显示用于切换面板和侧边栏可见性的多个按钮。
    //  - both: 显示下拉列表和切换按钮。
    "workbench.layoutControl.type": "both",
  
    // 控制列表和树中的键盘导航是否仅通过键入自动触发。如果设置为 `false` ,键盘导航只在执行 `list.toggleKeyboardNavigation` 命令时触发,您可以为该命令指定键盘快捷方式。
    "workbench.list.automaticKeyboardNavigation": true,
  
    // 按下"Alt"时滚动速度倍增。
    "workbench.list.fastScrollSensitivity": 5,
  
    // 控制列表和树是否支持工作台中的水平滚动。警告: 打开此设置影响会影响性能。
    "workbench.list.horizontalScrolling": false,
  
    // 控制工作台中的列表和树的键盘导航样式。它可为“简单”、“突出显示”或“筛选”。
    //  - simple: 简单键盘导航聚焦与键盘输入相匹配的元素。仅对前缀进行匹配。
    //  - highlight: 高亮键盘导航会突出显示与键盘输入相匹配的元素。进一步向上和向下导航将仅遍历突出显示的元素。
    //  - filter: 筛选器键盘导航将筛选出并隐藏与键盘输入不匹配的所有元素。
    "workbench.list.keyboardNavigation": "highlight",
  
    // 对鼠标滚轮滚动事件的 `deltaX` 和 `deltaY` 乘上的系数。
    "workbench.list.mouseWheelScrollSensitivity": 1,
  
    // 在通过鼠标多选树和列表条目时使用的修改键 (例如“资源管理器”、“打开的编辑器”和“源代码管理”视图)。“在侧边打开”功能所需的鼠标动作 (若可用) 将会相应调整,不与多选修改键冲突。
    //  - ctrlCmd: 映射为 `Ctrl` (Windows 和 Linux) 或 `Command` (macOS)。
    //  - alt: 映射为 `Alt` (Windows 和 Linux) 或 `Option` (macOS)。
    "workbench.list.multiSelectModifier": "ctrlCmd",
  
    // 控制如何使用鼠标打开树和列表中的项(若支持)。请注意,如果此设置不适用,某些树和列表可能会选择忽略它。
    "workbench.list.openMode": "singleClick",
  
    // 控制列表和树是否具有平滑滚动效果。
    "workbench.list.smoothScrolling": false,
  
    // 控制是否启用本地文件历史记录。启用后,所保存编辑器文件内容将存储到备份位置,以便稍后可以还原或查看内容。更改此设置不会影响现有本地文件历史记录条目。
    "workbench.localHistory.enabled": true,
  
    // 配置 [glob 模式](https://code.visualstudio.com/docs/editor/codebasics#_advanced-search-options) 以从本地文件历史记录中排除文件。更改此设置不会影响现有本地文件历史记录条目。
    "workbench.localHistory.exclude": {},
  
    // 控制每个文件的最大本地文件历史记录条目数。当文件的本地文件历史记录条目数超过此数目时,将丢弃最早的条目。
    "workbench.localHistory.maxFileEntries": 50,
  
    // 控制考虑用于本地历史记录的文件最大大小(KB)。较大的文件将不会添加到本地历史记录中。更改此设置不会影响现有本地文件历史记录条目。
    "workbench.localHistory.maxFileSize": 256,
  
    // 配置时间间隔(以秒为单位),在此间隔期间,本地文件历史记录中的最后一个条目将替换为正在添加的条目。这有助于减少所添加的条目总数,例如启用自动保存时。此设置仅应用于具有相同源的条目。更改此设置不会影响现有本地文件历史记录条目。
    "workbench.localHistory.mergeWindow": 10,
  
    // 控制新工作区中面板(终端、调试控制台、输出、问题)的默认位置。它可以显示在编辑器区域的底部、右侧或左侧。
    "workbench.panel.defaultLocation": "bottom",
  
    // 控制面板是否以最大化方式打开。它可以始终以最大化方式打开、永不以最大化方式打开或以关闭前的最后一个状态打开。
    //  - always: 始终以最大化方式打开面板。
    //  - never: 永不以最大化方式打开面板。面板将以非最大化方式打开。
    //  - preserve: 以关闭面板前的状态打开面板。
    "workbench.panel.opensMaximized": "preserve",
  
    // 指定启用了 `window.autoDetectColorScheme` 时深色操作系统外观的首选颜色主题。
    "workbench.preferredDarkColorTheme": "Default Dark+",
  
    // 指定启用了 `window.autoDetectHighContrast` 时在高对比度深色模式下使用的首选颜色主题。
    "workbench.preferredHighContrastColorTheme": "Default High Contrast",
  
    // 指定启用了 `window.autoDetectHighContrast` 时在高对比度浅色模式下使用的首选颜色主题。
    "workbench.preferredHighContrastLightColorTheme": "Default High Contrast Light",
  
    // 指定启用了 `window.autoDetectColorScheme` 时浅色操作系统外观的首选颜色主题。
    "workbench.preferredLightColorTheme": "Default Light+",
  
    // 指定使用的产品图标主题。
    //  - Default: 默认
    "workbench.productIconTheme": "Default",
  
    // 控制 Quick Open 是否在其失去焦点时自动关闭。
    "workbench.quickOpen.closeOnFocusLost": true,
  
    // 在打开 Quick Open 视图时,控制是否自动恢复上一次输入的值。
    "workbench.quickOpen.preserveInput": false,
  
    // 控制工作台是否应以更少的动画呈现。
    //  - on: 始终减少动作呈现。
    //  - off: 不要减少运动呈现
    //  - auto: 根据 OS 配置减少运动呈现。
    "workbench.reduceMotion": "auto",
  
    // 控制视图/编辑器之间拖动区域的悬停反馈延迟(以毫秒为单位)。
    "workbench.sash.hoverDelay": 300,
  
    // 控制视图/编辑器之间拖动区域的反馈区域大小(以像素为单位)。如果你认为很难使用鼠标调整视图的大小,请将该值调大。
    "workbench.sash.size": 4,
  
    // 配置默认使用的设置编辑器。
    //  - ui: 使用设置 ui 编辑器。
    //  - json: 使用 json 文件编辑器。
    "workbench.settings.editor": "ui",
  
    // 控制是否在设置中启用自然语言搜索。自然语言搜索由 Microsoft 联机服务提供。
    "workbench.settings.enableNaturalLanguageSearch": true,
  
    // 控制在打开按键绑定设置时是否同时打开显示所有默认按键绑定的编辑器。
    "workbench.settings.openDefaultKeybindings": false,
  
    // 控制在打开设置时是否同时打开显示所有默认设置的编辑器。
    "workbench.settings.openDefaultSettings": false,
  
    // 控制设置编辑器的目录在搜索时的行为。
    //  - hide: 在搜索时隐藏目录。
    //  - filter: 筛选目录为仅显示含有匹配设置的类别。单击一个类别将仅显示该类别的结果。
    "workbench.settings.settingsSearchTocBehavior": "filter",
  
    // 控制在将设置编辑为 json 时是否使用拆分 json 编辑器。
    "workbench.settings.useSplitJSON": false,
  
    // 控制主边栏和活动栏的位置。它们可以显示在工作台的左侧或右侧。辅助边栏将显示在工作台的另一侧。
    "workbench.sideBar.location": "left",
  
    // 在没有从上一会话中恢复出信息的情况下,控制启动时显示的编辑器。
    //  - none: 在启动时不打开编辑器。
    //  - welcomePage: 打开包含帮助开始使用 VS Code 和扩展内容的欢迎页面。
    //  - readme: 当打开包含自述文件的文件夹时,请打开自述文件,否则会回退到 'welcomePage'。请注意: 仅在作为全局 配置时才遵守此操作,如果在工作区或文件夹配置中进行设置,则此将被忽略。
    //  - newUntitledFile: 打开一个新的无标题文件(仅在打开一个空窗口时适用)。
    //  - welcomePageInEmptyWorkbench: 在打开空工作区时打开欢迎页面。
    "workbench.startupEditor": "welcomePage",
  
    // 控制工作台底部状态栏的可见性。
    "workbench.statusBar.visible": true,
  
    // 启用后,当没有打开编辑器时将显示水印提示。
    "workbench.tips.enabled": true,
  
    // 控制在单击文件夹名称时如何扩展树文件夹。请注意,如果不适用,某些树和列表可能会选择忽略此设置。
    "workbench.tree.expandMode": "singleClick",
  
    // 控制树缩进(以像素为单位)。
    "workbench.tree.indent": 8,
  
    // 控制树是否应呈现缩进参考线。
    "workbench.tree.renderIndentGuides": "onHover",
  
    // 控制是否显示视图头部的操作项。视图头部操作项可以一直,或是仅当聚焦到和悬停在视图上时显示。
    "workbench.view.alwaysShowHeaderActions": false
  
  },
  {
    // 如果已设置,则根据 OS 外观自动切换到首选颜色主题。如果 OS 外观为深色,则使用 `workbench.preferredDarkColorTheme#` 处指定的主题。如果外观为浅色,则使用 `#workbench.preferredLightColorTheme` 处指定的主题。
    "window.autoDetectColorScheme": false,
  
    // 控制在关闭最后一个编辑器时是否关闭整个窗口。此设置仅适用于没有显示文件夹的窗口。
    "window.closeWhenEmpty": false,
  
    // 根据活动编辑器控制窗口标题。变量是根据上下文替换的:
    // - "${activeEditorShort}": 文件名 (例如 myFile.txt)。
    // - "${activeEditorMedium}": 相对于工作区文件夹的文件路径 (例如, myFolder/myFileFolder/myFile.txt)。
    // - "${activeEditorLong}": 文件的完整路径 (例如 /Users/Development/myFolder/myFileFolder/myFile.txt)。
    // - "${activeFolderShort}": 文件所在的文件夹名称 (例如, myFileFolder)。
    // - "${activeFolderMedium}": 相对于工作区文件夹的、包含文件的文件夹的路径, (例如 myFolder/myFileFolder)。
    // - "${activeFolderLong}": 文件所在文件夹的完整路径 (例如 /Users/Development/myFolder/myFileFolder)。
    // - "${folderName}": 文件所在工作区文件夹的名称 (例如 myFolder)。
    // - "${folderpath}": 文件所在工作区文件夹的路径 (例如 /Users/Development/myFolder)。
    // - "${rootName}": 打开的工作区或文件夹的名称 (例如 myFolder 或 myWorkspace)。
    // - "${rootPath}": 打开的工作区或文件夹的文件路径 (例如 /Users/Development/myWorkspace)。
    // - "${appName}": 例如 VS Code。
    // - “${remoteName}”: 例如 SSH
    // - `${dirty}`: 表明活动编辑器具有未保存更改的时间的指示器。
    // - "${separator}": 一种条件分隔符 ("-"), 仅在被包含值或静态文本的变量包围时显示。
    "window.title": "${dirty}${activeEditorShort}${separator}${rootName}${separator}${appName}",
  
    // "window.title" 使用的分隔符。
    "window.titleSeparator": " - ",
  
    // 调整窗口的缩放级别。原始大小是 0,每次递增(例如 1)或递减(例如 -1)表示放大或缩小 20%。也可以输入小数以便以更精细的粒度调整缩放级别。
    "window.zoomLevel": 0
  },
  {
    // 控制在打开禅模式时是否启用居中布局。
    "zenMode.centerLayout": true,
  
    // 控制在打开禅模式时是否将工作台切换到全屏。
    "zenMode.fullScreen": true,
  
    // 控制在打开禅模式时是否隐藏工作台左侧或右侧的活动栏。
    "zenMode.hideActivityBar": true,
  
    // 控制在打开禅模式时是否隐藏编辑器行号。
    "zenMode.hideLineNumbers": true,
  
    // 控制在打开禅模式时是否隐藏工作台底部的状态栏。
    "zenMode.hideStatusBar": true,
  
    // 控制在打开禅模式时是否隐藏工作台选项卡。
    "zenMode.hideTabs": true,
  
    // 若窗口在处于禅模式时退出,控制其在恢复时是否还原到禅模式。
    "zenMode.restore": true,
  
    // 控制在禅宗模式下是否显示通知。如果为 true,则只会弹出错误通知。
    "zenMode.silentNotifications": true
  
  },
  {
    // 控制截屏模式键盘的字体大小(以像素为单位)。
    "screencastMode.fontSize": 56,
  
    // 控制截屏模式下键盘覆盖显示的时长(以毫秒为单位)。
    "screencastMode.keyboardOverlayTimeout": 800,
  
    // 控制显示快捷方式时键盘覆盖中显示的内容。
    //  - keys: 密钥。
    //  - command: 命令标题。
    //  - commandWithGroup: 以其组为前缀的命令标题。
    //  - commandAndKeys: 命令标题和密钥。
    //  - commandWithGroupAndKeys: 命令标题和密钥,其中命令以其组为前缀。
    "screencastMode.keyboardShortcutsFormat": "commandAndKeys",
  
    // 控制截屏视频模式下鼠标指示器的十六进制(#RGB、#RGBA、#RRGGBB 或 #RRGGBBAA)的颜色。
    "screencastMode.mouseIndicatorColor": "#FF0000",
  
    // 控制截屏模式下鼠标光标的大小(以像素为单位)。
    "screencastMode.mouseIndicatorSize": 20,
  
    // 仅在截屏模式下显示键盘快捷方式。
    "screencastMode.onlyKeyboardShortcuts": false,
  
    // 控制截屏模式叠加的垂直偏移,从底部作为工作台高度的百分比。
    "screencastMode.verticalOffset": 20
  
  },
  {
    // 配置语言的文件关联 (如: `"*.extension": "html"`)。这些关联的优先级高于已安装语言的默认关联。
    "files.associations": {},
  
    // 启用后,编辑器将尝试在打开文件时猜测字符集编码。此设置也可以按语言配置。请注意,文本搜索不遵守此设置。仅遵守 “#files.encoding#”。
    "files.autoGuessEncoding": false,
  
    // 控制具有未保存更改的编辑器的 [自动保存](https://code.visualstudio.com/docs/editor/codebasics#_save-auto-save)。
    //  - off: 具有更改的编辑器永远不会自动保存。
    //  - afterDelay: 在配置的 `files.autoSaveDelay` 之后,会自动保存具有更改的编辑器。
    //  - onFocusChange: 当编辑器失去焦点时,会自动保存具有更改的编辑器。
    //  - onWindowChange: 当窗口失去焦点时,会自动保存具有更改的编辑器。
    "files.autoSave": "off",
  
    // 控制自动保存具有未保存更改的编辑器之前的延迟(以毫秒为单位)。只有当 `files.autoSave` 设置为 `afterDelay` 时才适用。
    "files.autoSaveDelay": 1000,
  
    // 分配给新文件的默认语言标识符。如果配置为 "${activeEditorLanguage}",将使用当前活动文本编辑器(如果有)的语言标识符。
    "files.defaultLanguage": "",
  
    // 在删除文件或文件夹时,将它们移动到操作系统的“废纸篓”中 (Windows 为“回收站”)。禁用此设置将永久删除文件或文件夹。
    "files.enableTrash": true,
  
    // 在读取和写入文件时使用的默认字符集编码。可以按语言对此项进行配置。
    //  - utf8: UTF-8
    //  - utf8bom: UTF-8 with BOM
    //  - utf16le: UTF-16 LE
    //  - utf16be: UTF-16 BE
    //  - windows1252: Western (Windows 1252)
    //  - iso88591: Western (ISO 8859-1)
    //  - iso88593: Western (ISO 8859-3)
    //  - iso885915: Western (ISO 8859-15)
    //  - macroman: Western (Mac Roman)
    //  - cp437: DOS (CP 437)
    //  - windows1256: Arabic (Windows 1256)
    //  - iso88596: Arabic (ISO 8859-6)
    //  - windows1257: Baltic (Windows 1257)
    //  - iso88594: Baltic (ISO 8859-4)
    //  - iso885914: Celtic (ISO 8859-14)
    //  - windows1250: Central European (Windows 1250)
    //  - iso88592: Central European (ISO 8859-2)
    //  - cp852: Central European (CP 852)
    //  - windows1251: Cyrillic (Windows 1251)
    //  - cp866: Cyrillic (CP 866)
    //  - iso88595: Cyrillic (ISO 8859-5)
    //  - koi8r: Cyrillic (KOI8-R)
    //  - koi8u: Cyrillic (KOI8-U)
    //  - iso885913: Estonian (ISO 8859-13)
    //  - windows1253: Greek (Windows 1253)
    //  - iso88597: Greek (ISO 8859-7)
    //  - windows1255: Hebrew (Windows 1255)
    //  - iso88598: Hebrew (ISO 8859-8)
    //  - iso885910: Nordic (ISO 8859-10)
    //  - iso885916: Romanian (ISO 8859-16)
    //  - windows1254: Turkish (Windows 1254)
    //  - iso88599: Turkish (ISO 8859-9)
    //  - windows1258: Vietnamese (Windows 1258)
    //  - gbk: Simplified Chinese (GBK)
    //  - gb18030: Simplified Chinese (GB18030)
    //  - cp950: Traditional Chinese (Big5)
    //  - big5hkscs: Traditional Chinese (Big5-HKSCS)
    //  - shiftjis: Japanese (Shift JIS)
    //  - eucjp: Japanese (EUC-JP)
    //  - euckr: Korean (EUC-KR)
    //  - windows874: Thai (Windows 874)
    //  - iso885911: Latin/Thai (ISO 8859-11)
    //  - koi8ru: Cyrillic (KOI8-RU)
    //  - koi8t: Tajik (KOI8-T)
    //  - gb2312: Simplified Chinese (GB 2312)
    //  - cp865: Nordic DOS (CP 865)
    //  - cp850: Western European DOS (CP 850)
    "files.encoding": "utf8",
  
    // 默认行尾字符。
    //  - \n: LF
    //  - \r\n: CRLF
    //  - auto: 使用具体操作系统规定的行末字符。
    "files.eol": "auto",
  
    // 配置 [glob 模式](https://code.visualstudio.com/docs/editor/codebasics#_advanced-search-options)以排除文件和文件夹。例如,文件资源管理器根据此设置决定要显示或隐藏的文件和文件夹。请参阅 "#search.exclude#" 设置以定义特定于搜索的排除。
    "files.exclude": {
      "**/.git": true,
      "**/.svn": true,
      "**/.hg": true,
      "**/CVS": true,
      "**/.DS_Store": true,
      "**/Thumbs.db": true
    },
  
    // 启用后,保存文件时在文件末尾插入一个最终新行。
    "files.insertFinalNewline": false,
  
    // 在打开大型文件时,控制 VS Code 可在重启后使用的内存。在命令行中指定 `--max-memory=新的大小` 参数可达到相同效果。
    "files.maxMemoryForLargeFilesMB": 4096,
  
    // 超时(以毫秒为单位)后,将取消创建、重命名和删除的文件参与者。使用\"0\"禁用参与者。
    "files.participants.timeout": 60000,
  
    // 控制是否自动保存作为重构一部分的文件
    "files.refactoring.autoSave": true,
  
    // 重新打开文件后,还原撤消堆栈。
    "files.restoreUndoStack": true,
  
    // 当文件保存到磁盘上并被另一个程序更改时,可能会发生保存冲突。 为了防止数据丢失,要求用户将编辑器中的更改与磁盘上的版本进行比较。 仅当经常遇到保存冲突错误时,才应更改此设置;如果不谨慎使用,可能会导致数据丢失。
    //  - askUser: 将拒绝保存并请求手动解决保存冲突。
    //  - overwriteFileOnDisk: 将通过在编辑器中用更改覆盖磁盘上的文件来解决保存冲突。
    "files.saveConflictResolution": "askUser",
  
    // 启用简单文件对话框。启用时,简单文件对话框将替换系统文件对话框。
    "files.simpleDialog.enable": false,
  
    // 启用后,保存文件时将删除在最终新行后的所有新行。
    "files.trimFinalNewlines": false,
  
    // 启用后,将在保存文件时删除行尾的空格。
    "files.trimTrailingWhitespace": false,
  
    // 配置要从文件观察中排除的路径或 glob 模式。相对的路径或基本 glob 模式(例如 `build/output` 或 `*.js`)将使用当前打开的工作区解析为绝对路径。复杂 Glob 模式必须在绝对路径(即前缀为 “**/” 或完整路径和后缀为 “/**” 以匹配路径中的文件)上匹配,才能正确匹配(例如 “**/build/output/**” 或 “/Users/name/workspaces/project/build/output/**”)。当遇到文件观察程序进程消耗大量 CPU 时,请确保排除不太相关的大型文件夹(例如生成输出文件夹)。
    "files.watcherExclude": {
      "**/.git/objects/**": true,
      "**/.git/subtree-cache/**": true,
      "**/node_modules/*/**": true,
      "**/.hg/store/**": true
    },
  
    // 配置额外路径以监视工作区内的更改。默认情况下,将以递归方式监视所有工作区文件夹,但符号链接的文件夹除外。可以显式添加绝对路径或相对路径,以支持作为符号链接的监视文件夹。将使用当前打开的工作区将相对路径解析为绝对路径。
    "files.watcherInclude": []
  
  },
  {
    // 控制资源管理器是否在打开文件时自动显示并选择。
    //  - true: 将显示和选择文件。
    //  - false: 不会显示和选择文件。
    //  - focusNoScroll: 文件不会滚动到视图中,但仍会获得焦点。
    "explorer.autoReveal": true,
  
    // 控制资源管理器是否应以紧凑形式呈现文件夹。在这种形式中,单个子文件夹将被压缩在组合的树元素中。例如,对 Java 包结构很有用。
    "explorer.compactFolders": true,
  
    // 控制资源管理器是否在把文件删除到废纸篓时进行确认。
    "explorer.confirmDelete": true,
  
    // 控制在资源管理器内拖放移动文件或文件夹时是否进行确认。
    "explorer.confirmDragAndDrop": true,
  
    // 控制资源管理器是否应在撤消时要求确认。
    //  - verbose: 资源管理器将在所有撤消操作之前进行提示。
    //  - default: 资源管理器将在破坏性撤消操作之前进行提示。
    //  - light: 聚焦时,资源管理器将不会在撤消操作之前进行提示。
    "explorer.confirmUndo": "default",
  
    // 复制相对文件路径时使用的路径分隔字符。
    //  - /: 使用斜杠作为路径分隔字符。
    //  - \: 使用反斜杠作为路径分隔字符。
    //  - auto: 使用操作系统特定路径分隔字符。
    "explorer.copyRelativePathSeparator": "auto",
  
    // 控制文件修饰是否应使用徽章。
    "explorer.decorations.badges": true,
  
    // 控制文件修饰是否应使用颜色。
    "explorer.decorations.colors": true,
  
    // 控制浏览器是否允许通过拖放移动文件和文件夹。此设置仅影响从浏览器内部拖放。
    "explorer.enableDragAndDrop": true,
  
    // 控制资源管理器是否应支持撤消文件和文件夹操作。
    "explorer.enableUndo": true,
  
    // 控制资源管理器是否应在初始化过程中展开仅包含一个文件夹的多根工作区
    "explorer.expandSingleFolderWorkspaces": true,
  
    // 控制是否已在资源管理器中启用文件嵌套。文件嵌套允许目录中的相关文件在单个父文件下以可视方式组合在一起。
    "explorer.fileNesting.enabled": false,
  
    // 控制是否自动扩展文件嵌套。要使此操作生效,必须设置“#explorer.fileNesting.enabled#”。
    "explorer.fileNesting.expand": true,
  
    // 控制资源管理器中的文件嵌套。每个 __Item__ 都表示父模式,且可能包含匹配任意字符串的单个 \"*\" 字符。每个 __Value__ 都表示子模式的逗号分隔列表,这些子模式应显示嵌套在给定父级下。子模式可能包含多个特殊标记:
    // - \"${capture}\": 匹配父模式的 \"*\" 的解析值 
    // - \"${basename}\": 匹配父文件的基名,即 \"file.ts\" 中的 \"file\" 
    // - \"${extname}\": 匹配父文件的扩展名,即 \"file.ts\" 中的 \"ts\" 
    // - \"${dirname}\": 匹配父文件的目录名,即 \"src/file.ts\" 中的 \"src\" 
    // - \"*\": 匹配任意字符串,每个子模式只能使用一次
    "explorer.fileNesting.patterns": {
      "*.ts": "${capture}.js",
      "*.js": "${capture}.js.map, ${capture}.min.js, ${capture}.d.ts",
      "*.jsx": "${capture}.js",
      "*.tsx": "${capture}.ts",
      "tsconfig.json": "tsconfig.*.json",
      "package.json": "package-lock.json, yarn.lock"
    },
  
    // 选择在粘贴同名文件(夹)时要使用的重命名方式。
    //  - simple: 在重复名称的末尾附加单词“copy”,后面可能跟一个数字
    //  - smart: 在重复名称的末尾添加一个数字。如果某个号码已经是名称的一部分,请尝试增加该号码
    "explorer.incrementalNaming": "simple",
  
    // “打开编辑器”窗格中显示的最小编辑器槽数。如果设置为 0,则“打开编辑器”窗格将根据编辑器数量动态重设大小。
    "explorer.openEditors.minVisible": 0,
  
    // 控制编辑器在“打开编辑器”窗格中的排序顺序。
    //  - editorOrder: 编辑器按编辑器标签显示的顺序排列。
    //  - alphabetical: 编辑器在每个编辑器组内按选项卡名称以字母顺序排序。
    //  - fullPath: 编辑器在每个编辑器组内按完整路径以字母顺序排序。
    "explorer.openEditors.sortOrder": "editorOrder",
  
    // “打开编辑器”窗格中显示的编辑器最大数量。如果设置为 0,将隐藏“打开编辑器”窗格。
    "explorer.openEditors.visible": 9,
  
    // 控制资源管理器中文件和文件夹基于属性的排序。启用“#explorer.fileNesting.enabled#”后,还控制嵌套文件的排序。
    //  - default: 按名称排列文件和文件夹。文件夹显示在文件前。
    //  - mixed: 按名称排列文件和文件夹。两者穿插显示。
    //  - filesFirst: 按名称排列文件和文件夹。文件显示在文件夹前。
    //  - type: 按拓展类型为文件和文件夹分组,然后按名称排列它们。文件夹显示在文件前。
    //  - modified: 按最后修改日期降序排列文件和文件夹。文件夹显示在文件前。
    //  - foldersNestsFiles: 文件和文件夹按其名称排序。文件夹显示在文件之前。具有嵌套子级的文件将显示在其他文件之前。
    "explorer.sortOrder": "default",
  
    // 在资源管理器中控制文件和文件夹名称的词典排序。
    //  - default: 将大写和小写名称混合在一起。
    //  - upper: 大写名称组合在一起,位于小写名称之前。
    //  - lower: 小写名称组合在一起,位于大写名称之前。
    //  - unicode: 名称按 unicode 顺序排序。
    "explorer.sortOrderLexicographicOptions": "default"
  
  },
  {
    // 在搜索视图中控制操作栏的位置。
    //  - auto: 当搜索视图较窄时将操作栏置于右侧,当搜索视图较宽时,将它紧接在内容之后。
    //  - right: 始终将操作栏放置在右侧。
    "search.actionsPosition": "right",
  
    // 控制是折叠还是展开搜索结果。
    //  - auto: 结果少于10个的文件将被展开。其他的则被折叠。
    //  - alwaysCollapse
    //  - alwaysExpand
    "search.collapseResults": "alwaysExpand",
  
    // 配置 [glob 模式](https://code.visualstudio.com/docs/editor/codebasics#_advanced-search-options)以在全文搜索和快速打开中排除文件和文件夹。从 "#files.exclude#" 设置继承所有 glob 模式。
    "search.exclude": {
      "**/node_modules": true,
      "**/bower_components": true,
      "**/*.code-search": true
    },
  
    // 控制是否在搜索中跟踪符号链接。
    "search.followSymlinks": true,
  
    // 此设置已弃用。可以改为将搜索图标拖到新位置。
    // 控制搜索功能是显示在侧边栏,还是显示在水平空间更大的面板区域。
    "search.location": "sidebar",
  
    // 搜索缓存保留在从不关闭的扩展主机中,因此不再需要此设置。
    // 启用后,搜索服务进程将保持活动状态,而不是在一个小时不活动后关闭。这将使文件搜索缓存保留在内存中。
    "search.maintainFileSearchCache": false,
  
    // 控制搜索结果的最大数目,可将其设置为 “null”(空),以返回无限结果。
    "search.maxResults": 20000,
  
    // 控制新的“搜索: 在文件中查找”和“在文件夹中查找”操作发生的位置: 在搜索视图中或在搜索编辑器中
    //  - view: 在面板或边栏的搜索视图中进行搜索。
    //  - reuseEditor: 在现有搜索编辑器(若有)中搜索,否则在新的搜索编辑器中进行搜索。
    //  - newEditor: 在新的搜索编辑器中搜索。
    "search.mode": "view",
  
    // 控制在快速打开中筛选时编辑器历史记录的排序顺序。
    //  - default: 历史记录条目按与筛选值的相关性排序。首先显示更相关的条目。
    //  - recency: 历史记录条目按最近时间排序。首先显示最近打开的条目。
    "search.quickOpen.history.filterSortOrder": "default",
  
    // 是否在 Quick Open 的文件结果中包含最近打开的文件。
    "search.quickOpen.includeHistory": true,
  
    // 控制 Quick Open 文件结果中是否包括全局符号搜索的结果。
    "search.quickOpen.includeSymbols": false,
  
    // 创建新的搜索编辑器时要使用的周围上下文行的默认数目。如果使用 "#search.searchEditor.reusePriorSearchConfiguration#",则可将它设置为 "null" (空),以使用搜索编辑器之前的配置。
    "search.searchEditor.defaultNumberOfContextLines": 1,
  
    // 配置在搜索编辑器中双击结果的效果。
    //  - selectWord: 双击选择光标下的单词。
    //  - goToLocation: 双击将在活动编辑器组中打开结果。
    //  - openLocationToSide: 双击将在编辑器组中的结果打开到一边,如果尚不存在,则创建一个结果。
    "search.searchEditor.doubleClickBehaviour": "goToLocation",
  
    // 启用后,新的搜索编辑器将重用之前打开的搜索编辑器的包含、排除和标志。
    "search.searchEditor.reusePriorSearchConfiguration": false,
  
    // 在键入时搜索所有文件。
    "search.searchOnType": true,
  
    // 启用"#search.searchOnType"后,控制键入的字符与开始搜索之间的超时(以毫秒为单位)。禁用"搜索.searchOnType"时无效。
    "search.searchOnTypeDebouncePeriod": 300,
  
    // 聚焦搜索视图时,将搜索查询更新为编辑器的所选文本。单击时或触发 "workbench.views.search.focus" 命令时会发生此情况。
    "search.seedOnFocus": false,
  
    // 当活动编辑器没有选定内容时,从离光标最近的字词开始进行种子设定搜索。
    "search.seedWithNearestWord": false,
  
    // 控制是否显示搜索结果所在的行号。
    "search.showLineNumbers": false,
  
    // 若搜索词全为小写,则不区分大小写进行搜索,否则区分大小写进行搜索。
    "search.smartCase": false,
  
    // 控制搜索结果的排序顺序。
    //  - default: 结果按文件夹和文件名按字母顺序排序。
    //  - fileNames: 结果按文件名排序,忽略文件夹顺序,按字母顺序排列。
    //  - type: 结果按文件扩展名的字母顺序排序。
    //  - modified: 结果按文件的最后修改日期按降序排序。
    //  - countDescending: 结果按每个文件的计数降序排序。
    //  - countAscending: 结果按每个文件的计数以升序排序。
    "search.sortOrder": "default",
  
    // 控制在搜索文件时是否使用全局 “.gitignore” 和 “.ignore” 文件。需要启用 “#search.useIgnoreFiles#”。
    "search.useGlobalIgnoreFiles": false,
  
    // 控制在搜索文件时是否使用 `.gitignore` 和 `.ignore` 文件。
    "search.useIgnoreFiles": true,
  
    // 控制在搜索文件时是否在父目录中使用 ".gitignore" 和 ".ignore" 文件。需要启用 "#search.useIgnoreFiles#"。
    "search.useParentIgnoreFiles": false,
  
    // 弃用。当使用仅 PCRE2 支持的正则表达式功能时,将自动使用 PCRE2。
    // 是否在文本搜索中使用 pcre2 正则表达式引擎。这允许使用一些高级正则表达式功能, 如前瞻和反向引用。但是, 并非所有 pcre2 功能都受支持-仅支持 javascript 也支持的功能。
    "search.usePCRE2": false,
  
    // 控制在选择或替换匹配项时是否打开“替换预览”视图。
    "search.useReplacePreview": true,
  
    // 已弃用。请考虑使用 "search.usePCRE2" 获取对高级正则表达式功能的支持。
    // 此设置已被弃用,将回退到 "search.usePCRE2"。
    "search.useRipgrep": true
  
  },
  {
    // 允许在任何文件中设置断点。
    "debug.allowBreakpointsEverywhere": false,
  
    // 自动显示调试器延迟解析的变量的值,例如 getter。
    "debug.autoExpandLazyVariables": false,
  
    // 如果存在活动调试会话,控制是否确认窗口关闭时间。
    //  - never: 从不确认。
    //  - always: 始终确认是否存在调试会话。
    "debug.confirmOnExit": "never",
  
    // 控制是否应在调试控制台中输入时接受建议。enter 还用于评估调试控制台中键入的任何内容。
    "debug.console.acceptSuggestionOnEnter": "off",
  
    // 控制调试控制台是否应在调试会话结束时自动关闭。
    "debug.console.closeOnEnd": false,
  
    // 控制调试控制台是否应折叠相同的行,并显示出现次数和徽章。
    "debug.console.collapseIdenticalLines": true,
  
    // 控制调试控制台中的字体系列。
    "debug.console.fontFamily": "default",
  
    // 控制调试控制台中的字体大小(以像素为单位)。
    "debug.console.fontSize": 14,
  
    // 控制调试控制台是否应建议以前键入的输入。
    "debug.console.historySuggestions": true,
  
    // 设置调试控制台中的行高(以像素为单位)。使用 0 来计算从字体大小开始的行高。
    "debug.console.lineHeight": 0,
  
    // 控制是否应在调试控制台中换行。
    "debug.console.wordWrap": true,
  
    // 在反汇编视图中显示源代码。
    "debug.disassemblyView.showSourceCode": true,
  
    // 控制调试器中断时编辑器是否应聚焦。
    "debug.focusEditorOnBreak": true,
  
    // 控制当调试器中断时,工作台窗口是否应获得焦点。
    "debug.focusWindowOnBreak": true,
  
    // 当处于调试过程中时,在编辑器中内联显示变量值。
    //  - on: 在调试时,始终在编辑器中内联显示变量值。
    //  - off: 在调试时,绝不在编辑器中内联显示变量值。
    //  - auto: 如果语言支持内联值位置,则在调试时在编辑器中内联显示变量值。
    "debug.inlineValues": "auto",
  
    // 控制何时打开内部调试控制台。
    "debug.internalConsoleOptions": "openOnFirstSessionStart",
  
    // 控制在运行预启动任务后遇到错误时应该怎么做。
    //  - debugAnyway: 忽略任务错误并开始调试。
    //  - showErrors: 显示问题视图且不开始调试。
    //  - prompt: 提示用户。
    //  - abort: 取消调试。
    "debug.onTaskErrors": "prompt",
  
    // 控制何时打开“调试”视图。
    "debug.openDebug": "openOnDebugBreak",
  
    // 在调试会话结束时自动打开资源管理器视图。
    "debug.openExplorerOnEnd": false,
  
    // 控制在启动调试会话前要保存哪些编辑器。
    //  - allEditorsInActiveGroup: 在启动调试会话之前,保存活动组中的所有编辑器。
    //  - nonUntitledEditorsInActiveGroup: 在启动调试会话之前,保存活动组中的所有编辑器(无标题的编辑器除外)。
    //  - none: 在启动调试会话之前,不保存任何编辑器。
    "debug.saveBeforeStart": "allEditorsInActiveGroup",
  
    // 控制断点是否应显示在概览标尺中。
    "debug.showBreakpointsInOverviewRuler": false,
  
    // 控制调试时是否应在编辑器中显示内联断点候选修饰。
    "debug.showInlineBreakpointCandidates": true,
  
    // 控制何时显示调试状态栏。
    //  - never: 在状态栏中不再显示调试
    //  - always: 始终在状态栏中显示调试
    //  - onFirstSessionStart: 仅于第一次启动调试后在状态栏中显示调试
    "debug.showInStatusBar": "onFirstSessionStart",
  
    // 控制调试子会话是否显示在调试工具栏中。当此设置为 false 时, 子会话上的 stop 命令也将停止父会话。
    "debug.showSubSessionsInToolBar": false,
  
    // 在集成或外部终端中启动新的调试会话之前,请清除终端。
    "debug.terminal.clearBeforeReusing": false,
  
    // 控制调试工具栏的位置。可在所有视图中“浮动”、在调试视图中“停靠”,也可“隐藏”。
    "debug.toolBarLocation": "floating",
  
    // 全局调试启动配置。应当作为跨工作区共享的 \"launch.json\" 的替代方法。
    "launch": {
      "configurations": [],
      "compounds": []
    }
  
  },
  {
    // 此设置已弃用,取而代之的是 \"comments.openView\"。
    // 控制评论面板应何时打开。
    "comments.openPanel": "openOnSessionStartWithComments",
  
    // 控制评论视图应何时打开。
    //  - never: 注释视图永远不会打开。
    //  - file: 批注视图将在具有注释的文件处于活动状态时打开。
    //  - firstFile: 如果在此会话期间尚未打开注释视图,则它将在带注释文件处于活动状态的会话期间首次打开。
    "comments.openView": "firstFile",
  
    // 确定是否在注释时间戳中使用相对时间,(例如"1 天前")。
    "comments.useRelativeTime": true
  
  },
  {
    // 启用/禁用 HTML 标记的自动关闭。
    "html.autoClosingTags": true,
  
    // 启用/禁用自动创建 HTML 属性分配的引号。可通过 #html.completion.attributeDefaultValue#”配置引号类型。
    "html.autoCreateQuotes": true,
  
    // 控制接受完成时属性的默认值。
    //  - doublequotes: 属性值设置为 ""。
    //  - singlequotes: 属性值设置为 ''。
    //  - empty: 未设置属性值。
    "html.completion.attributeDefaultValue": "doublequotes",
  
    // 一个相对文件路径列表,这些路径指向采用[自定义数据格式](https://github.com/microsoft/vscode-html-languageservice/blob/master/docs/customData.md)的 JSON 文件。
    // 
    // VS Code 在启动时加载自定义数据,从而增强它对你在 JSON 文件中指定的自定义 HTML 标记、属性和属性值的 HTML 支持。
    // 
    // 文件路径与工作区相对,且仅考虑工作区文件夹设置。
    "html.customData": [],
  
    // 标记列表(用逗号隔开),其中内容不应重新格式化。"null" 默认为 "pre" 标记。
    "html.format.contentUnformatted": "pre,code,textarea",
  
    // 启用或禁用默认 HTML 格式化程序。
    "html.format.enable": true,
  
    // 以新行结束。
    "html.format.endWithNewline": false,
  
    // 以逗号分隔的标记列表,其中的标记之前将有额外新行。若为 `null`,默认包含 `"head, body, /html"`。
    "html.format.extraLiners": "head, body, /html",
  
    // 对 `{{#foo}}` 和 `{{/foo}}` 进行格式化与缩进。
    "html.format.indentHandlebars": false,
  
    // 缩进 "<head>" 和 "<body>" 部分。
    "html.format.indentInnerHtml": false,
  
    // 保留在一个区块中的换行符的最大数量。若为 `null`,则没有限制。
    "html.format.maxPreserveNewLines": null,
  
    // 控制是否保留元素前已有的换行符。仅适用于元素前,不适用于标记内或文本。
    "html.format.preserveNewLines": true,
  
    // 接受 django、erb、handlebars 和 php 模板化语言标记。
    "html.format.templating": false,
  
    // 以逗号分隔的标记列表,其中的内容不会被重新格式化。若为 `null`,默认包含所有列于 https://www.w3.org/TR/html5/dom.html#phrasing-content 的标记。
    "html.format.unformatted": "wbr",
  
    // 在此字符串之间保留文本内容。
    "html.format.unformattedContentDelimiter": "",
  
    // 对属性进行换行。
    //  - auto: 仅在超出行长度时才对属性进行换行。
    //  - force: 对除第一个属性外的其他每个属性进行换行。
    //  - force-aligned: 对除第一个属性外的其他每个属性进行换行,并保持对齐。
    //  - force-expand-multiline: 对每个属性进行换行。
    //  - aligned-multiple: 当超出折行长度时,将属性进行垂直对齐。
    //  - preserve: 保留属性的包装。
    //  - preserve-aligned: 保留属性的包装,但对齐。
    "html.format.wrapAttributes": "auto",
  
    // 将包装的属性缩进到 N 个字符之后。使用 `null` 来使用默认缩进大小。如果将 `html.format.wrapAttributes` 设置为 “aligned”,则忽略此项。
    "html.format.wrapAttributesIndentSize": null,
  
    // 每行最大字符数(0 = 禁用)。
    "html.format.wrapLineLength": 120,
  
    // 在悬停时显示标记和属性文档。
    "html.hover.documentation": true,
  
    // 在悬停时显示 MDN 的引用。
    "html.hover.references": true,
  
    // 已弃用,请改用 "editor.linkedEditing"
    // 在匹配的 HTML 标记上启用/禁用镜像光标。
    "html.mirrorCursorOnMatchingTag": false,
  
    // 配置内置 HTML 语言支持是否建议 HTML5 标记、属性和值。
    "html.suggest.html5": true,
  
    // 跟踪 VS Code 与 HTML 语言服务器之间的通信。
    "html.trace.server": "off",
  
    // 配置内置的 HTML 语言支持是否对嵌入的脚本进行验证。
    "html.validate.scripts": true,
  
    // 配置内置 HTML 语言支持是否对嵌入的样式进行验证。
    "html.validate.styles": true
  
  },
  {
    // 已弃用设置 "json.colorDecorators.enable",请改用 "editor.colorDecorators"。
    // 启用或禁用颜色修饰器
    "json.colorDecorators.enable": true,
  
    // 启用或禁用默认 JSON 格式化程序。
    "json.format.enable": true,
  
    // 计算的大纲符号和折叠区域的最大数量(因性能原因而受限)。
    "json.maxItemsComputed": 5000,
  
    // 启用后,可以从 http 和 https 位置提取 JSON 架构。
    "json.schemaDownload.enable": true,
  
    // 将架构关联到当前项目中的 JSON 文件。
    "json.schemas": [],
  
    // 跟踪 VS Code 和 JSON 语言服务器之间的通信。
    "json.trace.server": "off",
  
    // 启用/禁用 JSON 验证。
    "json.validate.enable": true
  
  },
  {
    // 启用/禁用放置到 Markdown editor 中以插入排班。需要启用 `workbenck.experimental.editor.dropIntoEditor.enabled`。
    "markdown.editor.drop.enabled": true,
  
    // 控制应在哪里打开 Markdown 文件中的链接。
    //  - currentGroup: 打开活动编辑器组中的链接。
    //  - beside: 打开活动编辑器旁边的链接。
    "markdown.links.openLocation": "currentGroup",
  
    // 设置换行符在 Markdown 预览中的呈现方式。如果将其设置为 "true",则将为段落内的新行创建一个 <br>。
    "markdown.preview.breaks": false,
  
    // 在 Markdown 预览中双击切换到编辑器。
    "markdown.preview.doubleClickToSwitchToEditor": true,
  
    // 控制 Markdown 预览中使用的字体系列。
    "markdown.preview.fontFamily": "-apple-system, BlinkMacSystemFont, 'Segoe WPC', 'Segoe UI', system-ui, 'Ubuntu', 'Droid Sans', sans-serif",
  
    // 控制 Markdown 预览中使用的字号(以像素为单位)。
    "markdown.preview.fontSize": 14,
  
    // 控制 Markdown 预览中使用的行高。此数值与字号相关。
    "markdown.preview.lineHeight": 1.6,
  
    // 在 Markdown 预览中启用或禁用将类似 URL 的文本转换为链接的操作。
    "markdown.preview.linkify": true,
  
    // 在 Markdown 预览中标记当前的编辑器选定内容。
    "markdown.preview.markEditorSelection": true,
  
    // 控制如何打开 Markdown 预览中其他 Markdown 文件的链接。
    //  - inPreview: 尝试在 Markdown 预览中打开链接。
    //  - inEditor: 尝试在编辑器中打开链接。
    "markdown.preview.openMarkdownLinks": "inPreview",
  
    // 滚动 Markdown 预览时,更新其编辑器视图。
    "markdown.preview.scrollEditorWithPreview": true,
  
    // 滚动 Markdown 编辑器时,更新其预览视图。
    "markdown.preview.scrollPreviewWithEditor": true,
  
    // 在 Markdown 预览中启用或禁用一些与语言无关的替换和引文美化。
    "markdown.preview.typographer": false,
  
    // 要从 Markdown 预览使用的 CSS 样式表的 URL 或本地路径的列表。相对路径解释为相对于资源管理器中打开的文件夹。如果没有打开的文件夹,则解释为相对于 Markdown 文件的位置。所有 '\' 都需写为 '\\'。
    "markdown.styles": [],
  
    // 启用/禁用 Markdown 链接的路径建议
    "markdown.suggest.paths.enabled": true,
  
    // 对 Markdown 扩展启用调试日志记录。
    "markdown.trace": "off"
  
  },
  {
    // 控制是否启用内置 PHP 语言建议。支持对 PHP 全局变量和变量进行建议。
    "php.suggest.basic": true,
  
    // 启用/禁用内置的 PHP 验证。
    "php.validate.enable": true,
  
    // 指向 PHP 可执行文件。
    "php.validate.executablePath": null,
  
    // 不管 linter 是在 save 还是在 type 上运行。
    "php.validate.run": "onSave"
  
  },
  {
    // 启用/禁用 JSX 标记的自动关闭。
    "javascript.autoClosingTags": true,
  
    // 启用/禁用 JavaScript 格式化程序。
    "javascript.format.enable": true,
  
    // 定义逗号分隔符后面的空格处理。
    "javascript.format.insertSpaceAfterCommaDelimiter": true,
  
    // 定义构造函数关键字后面的空格处理方式。
    "javascript.format.insertSpaceAfterConstructor": false,
  
    // 定义匿名函数的函数关键字后面的空格处理。
    "javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": true,
  
    // 定义控制流语句中关键字后面的空格处理。
    "javascript.format.insertSpaceAfterKeywordsInControlFlowStatements": true,
  
    // 定义空大括号中左括号后和右括号前的空格处理方式。
    "javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces": true,
  
    // 定义 JSX 表达式括号中左括号后和右括号前的空格处理方式。
    "javascript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces": false,
  
    // 定义非空大括号中左括号后和右括号前的空格处理方式。
    "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": true,
  
    // 定义非空中括号的左括号后和右括号前的空格处理方式。
    "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": false,
  
    // 定义非空小括号的左括号后和右括号前的空格处理方式。
    "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": false,
  
    // 定义模板字符串括号中左括号后和右括号前的空格处理方式。
    "javascript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": false,
  
    // 定义 for 语句中分号之后的空格处理方式。
    "javascript.format.insertSpaceAfterSemicolonInForStatements": true,
  
    // 定义二进制运算符后面的空格处理
    "javascript.format.insertSpaceBeforeAndAfterBinaryOperators": true,
  
    // 定义函数参数括号前的空格处理方式。
    "javascript.format.insertSpaceBeforeFunctionParenthesis": false,
  
    // 定义控制块的左括号是否放置在新的一行。
    "javascript.format.placeOpenBraceOnNewLineForControlBlocks": false,
  
    // 定义函数的左大括号是否放置在新的一行。
    "javascript.format.placeOpenBraceOnNewLineForFunctions": false,
  
    // 定义非必要分号的处理方式。要求在工作区内使用 TypeScript 3.7 或更高版本。
    //  - ignore: 不要插入或删除任何分号。
    //  - insert: 在语句末尾插入分号。
    //  - remove: 删除不必要的分号。
    "javascript.format.semicolons": "ignore",
  
    // 为支持 `js/ts.implicitProjectConfig.checkJs`,已弃用此设置。
    // 启用或禁用 JavaScript 文件的语义检查。现有 `jsconfig.json` 或 `tsconfig.json` 文件将覆盖此设置。
    "javascript.implicitProjectConfig.checkJs": false,
  
    // 为支持 `js/ts.implicitProjectConfig.experimentalDecorators`,已弃用此设置。
    // 在不属于任何工程的 JavaScript 文件中启用或禁用 `experimentalDecorators`。现有 `jsconfig.json` 或 `tsconfig.json` 文件将覆盖此设置。
    "javascript.implicitProjectConfig.experimentalDecorators": false,
  
    // 启用/禁用枚举声明中成员值的嵌入提示: 
    // ```typescript
    // 
    // enum MyValue {
    // 	A /* = 0 */;
    // 	B /* = 1 */;
    // }
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    "javascript.inlayHints.enumMemberValues.enabled": false,
  
    // 启用/禁用函数签名上隐式返回类型的 inlay 提示: 
    // ```typescript
    // 
    // function foo() /* :number */ {
    // 	return Date.now();
    // } 
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    "javascript.inlayHints.functionLikeReturnTypes.enabled": false,
  
    // 启用/禁用参数名的 inlay 提示: 
    // ```typescript
    // 
    // parseInt(/* str: */ '123', /* radix: */ 8)
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    //  - none: 禁用参数名称提示。
    //  - literals: 仅启用文本参数的参数名称提示。
    //  - all: 启用文本和非文本参数的参数名称提示。
    "javascript.inlayHints.parameterNames.enabled": "none",
  
    // 对于文本与参数名称完全相同的参数,抑制其参数名称提示。
    "javascript.inlayHints.parameterNames.suppressWhenArgumentMatchesName": true,
  
    // 启用/禁用隐式参数类型的 inlay 提示: 
    // ```typescript
    // 
    // el.addEventListener('click', e /* :MouseEvent */ => ...)
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    "javascript.inlayHints.parameterTypes.enabled": false,
  
    // 在属性声明上启用/禁用隐式类型的内嵌提示:
    // ```typescript
    // 
    // class Foo {
    // 	prop /* :number */ = Date.now();
    // }
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    "javascript.inlayHints.propertyDeclarationTypes.enabled": false,
  
    // 启用/禁用隐式变量类型的 inlay 提示: 
    // ```typescript
    // 
    // const foo /* :number */ = Date.now();
    //  
    // ```
    // 要求在工作区中使用 TypeScript 4.4+。
    "javascript.inlayHints.variableTypes.enabled": false,
  
    // 自动 import 语句中路径的首选样式。
    //  - shortest: 仅当有路径段少于相关导入路径段的不相关导入时,才首选不相关导入。
    //  - relative: 首选导入文件位置的相对路径。
    //  - non-relative: 根据在 `jsconfig.json` / `tsconfig.json` 中配置的 `baseUrl` 或 `paths` 首选不相关导入。
    //  - project-relative: 仅当相关导入路径将离开包或项目目录时,才首选不相关导入。需要在工作区中使用 TypeScript 4.2+。
    "javascript.preferences.importModuleSpecifier": "shortest",
  
    // 自动导入的首选路径结尾。需要在工作区中使用 TypeScript 4.5+。
    //  - auto: 使用项目设置选择默认值。
    //  - minimal: 将 "./component/index.js" 缩短为 "./component"。
    //  - index: 将 "./component/index.js" 缩短为 "./component/index"。
    //  - js: 不要缩短路径结尾;包括".js"扩展名。
    "javascript.preferences.importModuleSpecifierEnding": "auto",
  
    // JSX 属性完成的首选样式。
    //  - auto: 根据属性类型,在属性名称后插入 `={}` or `=""`。请参见 `javascript.preferences.quoteStyle`,控制用于字符串属性的引号样式。
    //  - braces: 在属性名称后插入 `={}`。
    //  - none: 仅插入属性名称。
    "javascript.preferences.jsxAttributeCompletionStyle": "auto",
  
    // 用于快速修复的首选引号样式。
    //  - auto: 从现有代码推断引号类型
    //  - single: 始终使用单引号: `'`
    //  - double: 始终使用双引号: `"`
    "javascript.preferences.quoteStyle": "auto",
  
    // 设置 "typescript.preferences.renameShorthandProperties" 已被弃用,取而代之的是 "typescript.preferences.useAliasesForRenames"
    // 允许/禁止在重命名期间向对象速记属性引入别名。需要在工作区中使用 TypeScript 3.4 或更高版本。
    "javascript.preferences.renameShorthandProperties": true,
  
    // 允许/禁止在重命名期间向对象速记属性引入别名。需要在工作区中使用 TypeScript 3.4 或更高版本。
    "javascript.preferences.useAliasesForRenames": true,
  
    // 启用/禁用在 JavaScript 文件中引用 CodeLens。
    "javascript.referencesCodeLens.enabled": false,
  
    // 启用/禁用在 JavaScript 文件中对所有函数的 CodeLens 引用。
    "javascript.referencesCodeLens.showOnAllFunctions": false,
  
    // 启用/禁用自动导入建议。
    "javascript.suggest.autoImports": true,
  
    // 启用/禁用类成员的代码段完成。需要在工作区中使用 TypeScript 4.5+
    "javascript.suggest.classMemberSnippets.enabled": true,
  
    // 完成函数的参数签名。
    "javascript.suggest.completeFunctionCalls": false,
  
    // 启用/禁用对完成 JSDoc 注释的建议。
    "javascript.suggest.completeJSDocs": true,
  
    // 启用或禁用自动完成建议。
    "javascript.suggest.enabled": true,
  
    // 启用/禁用显示可能未定义的值的完成情况,这些值会插入可选的链式调用。需要启用 TS 3.7+ 和严格的空检查。
    "javascript.suggest.includeAutomaticOptionalChainCompletions": true,
  
    // 在部分键入的导入语句上启用/禁用自动导入样式的补全。需要在工作区中使用 TypeScript 4.3+。
    "javascript.suggest.includeCompletionsForImportStatements": true,
  
    // 启用/禁用生成 JSDoc 模板的 \"@returns\" 批注。需要在工作区中使用 TypeScript 4.2+。
    "javascript.suggest.jsdoc.generateReturns": true,
  
    // 启用/禁用在 JavaScript 建议中包含文件中的唯一名称。请注意,在使用`@ts-check`或`checkJs`进行语义检查的 JavaScript 代码中,名称建议始终处于禁用状态。
    "javascript.suggest.names": true,
  
    // 在 import 语句和 require 调用中,启用或禁用路径建议。
    "javascript.suggest.paths": true,
  
    // 启用或禁用编辑器中 JavaScript 文件的建议诊断。
    "javascript.suggestionActions.enabled": true,
  
    // 启用或禁用在 VS Code 中重命名或移动文件时自动更新导入路径的功能。
    //  - prompt: 在每次重命名时进行提示。
    //  - always: 始终自动更新路径。
    //  - never: 一律不要重命名路径,也不要提示。
    "javascript.updateImportsOnFileMove.enabled": "prompt",
  
    // 启用/禁用 JavaScript 验证。
    "javascript.validate.enable": true,
  
    // 启用或禁用 JavaScript 文件的语义检查。现有 `jsconfig.json` 或 `tsconfig.json` 文件将覆盖此设置。
    "js/ts.implicitProjectConfig.checkJs": false,
  
    // 在不属于任何工程的 JavaScript 文件中启用或禁用 `experimentalDecorators`。现有 `jsconfig.json` 或 `tsconfig.json` 文件将覆盖此设置。
    "js/ts.implicitProjectConfig.experimentalDecorators": false,
  
    // 设置程序的模块系统。查看详细信息: https://www.typescriptlang.org/tsconfig#module。
    "js/ts.implicitProjectConfig.module": "ESNext",
  
    // 在不属于项目的 JavaScript 和 TypeScript 文件中启用/禁用[严格函数类型](https://www.typescriptlang.org/tsconfig#strictFunctionTypes)。现有 `jsconfig.json` 或 `tsconfig.json` 文件将替代此设置。
    "js/ts.implicitProjectConfig.strictFunctionTypes": true,
  
    // 在不属于项目的 JavaScript 和 TypeScript 文件中启用/禁用[严格 null 检查](https://www.typescriptlang.org/tsconfig#strictNullChecks)。现有 `jsconfig.json` 或 `tsconfig.json` 文件将替代此设置。
    "js/ts.implicitProjectConfig.strictNullChecks": false,
  
    // 为发出的 JavaScript 设置目标 JavaScript 语言版本并包含库声明。查看详细信息: https://www.typescriptlang.org/tsconfig#target。
    "js/ts.implicitProjectConfig.target": "ES2020",
  
    // 启用/禁用 JSX 标记的自动关闭。
    "typescript.autoClosingTags": true,
  
    // 检查是否为 [自动类型获取](https://code.visualstudio.com/docs/nodejs/working-with-javascript#_typings-and-automatic-type-acquisition) 安装了 npm 。
    "typescript.check.npmIsInstalled": true,
  
    // 禁用 [自动类型获取](https://code.visualstudio.com/docs/nodejs/working-with-javascript#_typings-and-automatic-type-acquisition) 。自动类型获取可以从 npm 提取 `@types` 包来改进外部库的 IntelliSense。
    "typescript.disableAutomaticTypeAcquisition": false,
  
    // 允许提示用户对 Intellisense 使用在工作区中配置的 TypeScript 版本。
    "typescript.enablePromptUseWorkspaceTsdk": false,
  
    // 启用/禁用默认 TypeScript 格式化程序。
    "typescript.format.enable": true,
  
    // 定义逗号分隔符后面的空格处理。
    "typescript.format.insertSpaceAfterCommaDelimiter": true,
  
    // 定义构造函数关键字后面的空格处理方式。
    "typescript.format.insertSpaceAfterConstructor": false,
  
    // 定义匿名函数的函数关键字后面的空格处理。
    "typescript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": true,
  
    // 定义控制流语句中关键字后面的空格处理。
    "typescript.format.insertSpaceAfterKeywordsInControlFlowStatements": true,
  
    // 定义空大括号中左括号后和右括号前的空格处理方式。
    "typescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces": true,
  
    // 定义 JSX 表达式括号中左括号后和右括号前的空格处理方式。
    "typescript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces": false,
  
    // 定义非空大括号中左括号后和右括号前的空格处理方式。
    "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": true,
  
    // 定义非空中括号的左括号后和右括号前的空格处理方式。
    "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": false,
  
    // 定义非空小括号的左括号后和右括号前的空格处理方式。
    "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": false,
  
    // 定义模板字符串括号中左括号后和右括号前的空格处理方式。
    "typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": false,
  
    // 定义 for 语句中分号之后的空格处理方式。
    "typescript.format.insertSpaceAfterSemicolonInForStatements": true,
  
    // 定义 TypeScript 中类型断言后的空格处理方式。
    "typescript.format.insertSpaceAfterTypeAssertion": false,
  
    // 定义二进制运算符后面的空格处理
    "typescript.format.insertSpaceBeforeAndAfterBinaryOperators": true,
  
    // 定义函数参数括号前的空格处理方式。
    "typescript.format.insertSpaceBeforeFunctionParenthesis": false,
  
    // 定义控制块的左括号是否放置在新的一行。
    "typescript.format.placeOpenBraceOnNewLineForControlBlocks": false,
  
    // 定义函数的左大括号是否放置在新的一行。
    "typescript.format.placeOpenBraceOnNewLineForFunctions": false,
  
    // 定义非必要分号的处理方式。要求在工作区内使用 TypeScript 3.7 或更高版本。
    //  - ignore: 不要插入或删除任何分号。
    //  - insert: 在语句末尾插入分号。
    //  - remove: 删除不必要的分号。
    "typescript.format.semicolons": "ignore",
  
    // 启用或禁用实现 CodeLens。此 CodeLens 显示接口的实现。
    "typescript.implementationsCodeLens.enabled": false,
  
    // 启用/禁用枚举声明中成员值的嵌入提示: 
    // ```typescript
    // 
    // enum MyValue {
    // 	A /* = 0 */;
    // 	B /* = 1 */;
    // }
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    "typescript.inlayHints.enumMemberValues.enabled": false,
  
    // 启用/禁用函数签名上隐式返回类型的 inlay 提示: 
    // ```typescript
    // 
    // function foo() /* :number */ {
    // 	return Date.now();
    // } 
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    "typescript.inlayHints.functionLikeReturnTypes.enabled": false,
  
    // 启用/禁用参数名的 inlay 提示: 
    // ```typescript
    // 
    // parseInt(/* str: */ '123', /* radix: */ 8)
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    //  - none: 禁用参数名称提示。
    //  - literals: 仅启用文本参数的参数名称提示。
    //  - all: 启用文本和非文本参数的参数名称提示。
    "typescript.inlayHints.parameterNames.enabled": "none",
  
    // 对于文本与参数名称完全相同的参数,抑制其参数名称提示。
    "typescript.inlayHints.parameterNames.suppressWhenArgumentMatchesName": true,
  
    // 启用/禁用隐式参数类型的 inlay 提示: 
    // ```typescript
    // 
    // el.addEventListener('click', e /* :MouseEvent */ => ...)
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    "typescript.inlayHints.parameterTypes.enabled": false,
  
    // 在属性声明上启用/禁用隐式类型的内嵌提示:
    // ```typescript
    // 
    // class Foo {
    // 	prop /* :number */ = Date.now();
    // }
    //  
    // ```
    // 需要在工作区中使用 TypeScript 4.4+。
    "typescript.inlayHints.propertyDeclarationTypes.enabled": false,
  
    // 启用/禁用隐式变量类型的 inlay 提示: 
    // ```typescript
    // 
    // const foo /* :number */ = Date.now();
    //  
    // ```
    // 要求在工作区中使用 TypeScript 4.4+。
    "typescript.inlayHints.variableTypes.enabled": false,
  
    // 设置在报告 JavaScript 和 TypeScript 错误时使用的区域设置。默认使用 VS Code 的区域设置。
    "typescript.locale": "auto",
  
    // 自动 import 语句中路径的首选样式。
    //  - shortest: 仅当有路径段少于相关导入路径段的不相关导入时,才首选不相关导入。
    //  - relative: 首选导入文件位置的相对路径。
    //  - non-relative: 根据在 `jsconfig.json` / `tsconfig.json` 中配置的 `baseUrl` 或 `paths` 首选不相关导入。
    //  - project-relative: 仅当相关导入路径将离开包或项目目录时,才首选不相关导入。需要在工作区中使用 TypeScript 4.2+。
    "typescript.preferences.importModuleSpecifier": "shortest",
  
    // 自动导入的首选路径结尾。需要在工作区中使用 TypeScript 4.5+。
    //  - auto: 使用项目设置选择默认值。
    //  - minimal: 将 "./component/index.js" 缩短为 "./component"。
    //  - index: 将 "./component/index.js" 缩短为 "./component/index"。
    //  - js: 不要缩短路径结尾;包括".js"扩展名。
    "typescript.preferences.importModuleSpecifierEnding": "auto",
  
    // 允许/禁止在 "package.json" 依赖项中搜索可用的自动导入。
    //  - auto: 根据预估的性能影响搜索依赖项。
    //  - on: 始终搜索依赖项。
    //  - off: 从不搜索依赖项。
    "typescript.preferences.includePackageJsonAutoImports": "auto",
  
    // JSX 属性完成的首选样式。
    //  - auto: 根据属性类型,在属性名称后插入 `={}` or `=""`。请参见 `typescript.preferences.quoteStyle`,控制用于字符串属性的引号样式。
    //  - braces: 在属性名称后插入 `={}`。
    //  - none: 仅插入属性名称。
    "typescript.preferences.jsxAttributeCompletionStyle": "auto",
  
    // 用于快速修复的首选引号样式。
    //  - auto: 从现有代码推断引号类型
    //  - single: 始终使用单引号: `'`
    //  - double: 始终使用双引号: `"`
    "typescript.preferences.quoteStyle": "auto",
  
    // 设置 "typescript.preferences.renameShorthandProperties" 已被弃用,取而代之的是 "typescript.preferences.useAliasesForRenames"
    // 允许/禁止在重命名期间向对象速记属性引入别名。需要在工作区中使用 TypeScript 3.4 或更高版本。
    "typescript.preferences.renameShorthandProperties": true,
  
    // 允许/禁止在重命名期间向对象速记属性引入别名。需要在工作区中使用 TypeScript 3.4 或更高版本。
    "typescript.preferences.useAliasesForRenames": true,
  
    // 在 TypeScript 文件中启用或禁用引用 CodeLens。
    "typescript.referencesCodeLens.enabled": false,
  
    // 启用/禁用在 TypeScript 文件中的所有函数上引用 CodeLens。
    "typescript.referencesCodeLens.showOnAllFunctions": false,
  
    // 将风格检查的问题报告为警告。
    "typescript.reportStyleChecksAsWarnings": true,
  
    // 启用/禁用自动导入建议。
    "typescript.suggest.autoImports": true,
  
    // 启用/禁用类成员的代码段完成。需要在工作区中使用 TypeScript 4.5+
    "typescript.suggest.classMemberSnippets.enabled": true,
  
    // 完成函数的参数签名。
    "typescript.suggest.completeFunctionCalls": false,
  
    // 启用/禁用对完成 JSDoc 注释的建议。
    "typescript.suggest.completeJSDocs": true,
  
    // 启用或禁用自动完成建议。
    "typescript.suggest.enabled": true,
  
    // 启用/禁用显示可能未定义的值的完成情况,这些值会插入可选的链式调用。需要启用 TS 3.7+ 和严格的空检查。
    "typescript.suggest.includeAutomaticOptionalChainCompletions": true,
  
    // 在部分键入的导入语句上启用/禁用自动导入样式的补全。需要在工作区中使用 TypeScript 4.3+。
    "typescript.suggest.includeCompletionsForImportStatements": true,
  
    // 从 TS 服务器启用/禁用片段补全。需要在工作区中使用 TypeScript 4.3+。
    "typescript.suggest.includeCompletionsWithSnippetText": true,
  
    // 启用/禁用生成 JSDoc 模板的 \"@returns\" 批注。需要在工作区中使用 TypeScript 4.2+。
    "typescript.suggest.jsdoc.generateReturns": true,
  
    // 启用/禁用对象文本中的方法的代码片段完成。需要在工作区中使用 TypeScript 4.7+
    "typescript.suggest.objectLiteralMethodSnippets.enabled": true,
  
    // 在 import 语句和 require 调用中,启用或禁用路径建议。
    "typescript.suggest.paths": true,
  
    // 启用或禁用编辑器中 TypeScript 文件的建议诊断。
    "typescript.suggestionActions.enabled": true,
  
    // 启用或禁用偶尔出现的有关 JavaScript 和 TypeScript 的调查,帮助我们改善 VS Code 对两者的支持。
    "typescript.surveys.enabled": true,
  
    // 控制对 tsc 任务的自动检测。
    //  - on: 同时创建生成和监视任务。
    //  - off: 禁用此功能。
    //  - build: 仅创建单次运行编译任务。
    //  - watch: 仅创建编译和监视任务。
    "typescript.tsc.autoDetect": "on",
  
    // 指定 TypeScript 安装下用于 IntelliSense 的 tsserver 和 `lib*.d.ts` 文件的文件夹路径,例如: `./node_modules/typescript/lib`。
    // 
    // - 当指定为用户设置时,`typescript.tsdk` 中的 TypeScript 版本会自动替换内置的 TypeScript 版本。
    // - 当指定为工作区设置时,`typescript.tsdk` 允许通过 `TypeScript: Select TypeScript version` 命令切换为对 IntelliSense 使用 TypeScript 的该工作区版本。
    // 
    // 有关管理 TypeScript 版本的更多详细信息,请参阅 [TypeScript文档](https://code.visualstudio.com/docs/typescript/typescript-compiling#_using-newer-typescript-versions)。
    "typescript.tsdk": "",
  
    // 允许将 TS 服务器性能跟踪保持到目录。这些跟踪文件可用于诊断 TS 服务器性能问题。日志可能包含你的项目中的文件路径、源代码和其他可能敏感的信息。
    "typescript.tsserver.enableTracing": false,
  
    // (实验性)启用项目范围的错误报告。
    "typescript.tsserver.experimental.enableProjectDiagnostics": false,
  
    // 将 TS 服务器的日志保存到一个文件。此日志可用于诊断 TS 服务器问题。日志可能包含你的项目中的文件路径、源代码和其他可能敏感的信息。
    "typescript.tsserver.log": "off",
  
    // 要分配给 TypeScript 服务器进程的最大内存量(MB)。
    "typescript.tsserver.maxTsServerMemory": 3072,
  
    // 对发送到 TS 服务器的消息启用跟踪。此跟踪信息可用于诊断 TS 服务器问题。 跟踪信息可能包含你的项目中的文件路径、源代码和其他可能敏感的信息。
    "typescript.tsserver.trace": "off",
  
    // 此设置已弃用,取而代之的是“typescript.tsserver.useSyntaxServer”。
    // 允许/禁止生成单独的 TypeScript 服务器,该服务器可更快地响应与语法相关的操作,例如计算折叠或计算文档符号。需要在工作区中使用 TypeScript 3.4.0 或更高版本。
    "typescript.tsserver.useSeparateSyntaxServer": true,
  
    // 控制 TypeScript 是否启动专用服务器,以便更快地处理与语法相关的运算,如计算代码折叠。
    //  - always: 使用更加轻量级的语法服务器来处理所有 IntelliSense 运算。此语法服务器只能为打开的文件提供 IntelliSense。
    //  - never: 请不要使用专用的语法服务器。使用单个服务器来处理所有 IntelliSense 运算。
    //  - auto: 生成一个完整的服务器和一个专用于语法运算的轻量级服务器。语法服务器用于加快语法运算并在加载项目时提供 IntelliSense。
    "typescript.tsserver.useSyntaxServer": "auto",
  
    // 配置应使用哪些监视策略来跟踪文件和目录。需要在工作区中使用 TypeScript 3.8+。
    "typescript.tsserver.watchOptions": {},
  
    // 启用或禁用在 VS Code 中重命名或移动文件时自动更新导入路径的功能。
    //  - prompt: 在每次重命名时进行提示。
    //  - always: 始终自动更新路径。
    //  - never: 一律不要重命名路径,也不要提示。
    "typescript.updateImportsOnFileMove.enabled": "prompt",
  
    // 启用/禁用 TypeScript 验证。
    "typescript.validate.enable": true,
  
    // 通过[转到工作区中的符号](https://code.visualstudio.com/docs/editor/editingevolved#_open-symbol-by-name)来控制搜索的具体文件。
    //  - allOpenProjects: 在所有打开的 JavaScript 或 TypeScript 项目中搜索符号。需要在工作区中使用 TypeScript 3.9 或更高版本。
    //  - currentProject: 仅在当前 JavaScript 或 TypeScript 项目中搜索符号。
    "typescript.workspaceSymbols.scope": "allOpenProjects"
  
  },