现已推出!阅读有关 11 月份的新功能和修复的信息。

辅助功能

Visual Studio Code 具有许多功能,可帮助所有用户访问编辑器。缩放级别和高对比度颜色提高了编辑器的可见性,仅键盘导航支持在没有鼠标的情况下使用,并且该编辑器针对屏幕阅读器进行了优化。

缩放

您可以使用“**视图**”>“**外观**”>“**缩放**”命令来调整 VS Code 中的缩放级别。每个“**缩放**”命令都会将缩放级别增加或减少 20%。

  • “**视图**”>“**外观**”>“**放大**”(⌘= (Windows,Linux Ctrl+=)) - 增加缩放级别。
  • “**视图**”>“**外观**”>“**缩小**”(⌘- (Windows,Linux Ctrl+-)) - 减小缩放级别。
  • “**视图**”>“**外观**”>“**重置缩放**”(⌘Numpad0 (Windows,Linux Ctrl+Numpad0)) - 将缩放级别重置为 0。

**注意**:如果使用放大镜,请在查看悬停时按住 Alt 键,以便将光标移动到悬停上方。

Zoomed in editor

持久化的缩放级别

当您使用“**视图**”>“**外观**”>“**放大/缩小**”命令调整缩放级别时,缩放级别将保存在 window.zoomLevel 设置 中。默认值为 0,每次递增/递减会使缩放级别更改 20%。

辅助功能帮助

命令“**打开辅助功能帮助**”⌥F1 (Windows Alt+F1,Linux Shift+Alt+F1) 会根据当前上下文打开一个帮助菜单。它目前适用于编辑器、终端、笔记本、聊天视图和内联聊天功能。

您可以关闭辅助功能帮助菜单或从帮助菜单中打开其他文档。

When triggered in an editor, a dialog appears that explains how to enable screen reader mode explicitly, tab focus mode and other details

高对比度主题

VS Code 在所有平台上都支持高对比度颜色主题。使用“**文件** > **首选项**” > “**主题**” > “**颜色主题**”(⌘K ⌘T (Windows,Linux Ctrl+K Ctrl+T)) 显示“**选择颜色主题**”下拉列表,然后选择“**高对比度**”主题。

High Contrast Theme

色觉辅助功能

您可以在“**Visual Studio Marketplace**”中搜索与色觉缺陷兼容的扩展。使用扩展视图 ⇧⌘X (Windows,Linux Ctrl+Shift+X) 并搜索“color blind”以填充相关选项。

Visual Studio Marketplace in VS Code UI

从 Marketplace 安装颜色主题后,您可以使用“**文件** > **首选项**” > “**主题**” > “**颜色主题**”⌘K ⌘T (Windows,Linux Ctrl+K Ctrl+T) 来更改颜色主题

Dropdown for Select Color Theme

  • GitHub - 适用于大多数形式的色盲,并且与 GitHub 设置中的主题匹配。
  • Gotthard - 针对大约 20 种编程语言进行了优化。
  • Blinds - 专为患有红色盲的人士创建,具有高对比度色彩比率。
  • Greative - 同时考虑了色盲和光敏感性。
  • Pitaya Smoothie - 适用于大多数形式的色盲,并且符合 WCAG 2.1 色彩对比度标准

自定义警告颜色

VS Code 的默认颜色主题是“**Dark+**”。但是,您可以在用户界面中自定义主题和属性颜色。

**注意**:有关覆盖当前主题中的颜色的详细信息,请转到自定义颜色主题

要自定义错误和警告波浪线,请转到“**文件** > **首选项**” >“**设置**”以进行用户设置。搜索“颜色自定义”以找到“**工作台: 颜色自定义**”设置,并通过选择“**在 settings.json 中编辑**”来打开用户 `settings.json` 文件。

JSON file settings icon

在 `settings.json` 文件中,将以下代码嵌套在最外层的大括号内。您可以通过输入十六进制代码为每个对象分配颜色。

"workbench.colorCustomizations": {
    "editorError.foreground": "#ffef0f",
    "editorWarning.foreground": "#3777ff"
}

在以下示例中,当 JSON 项之后缺少逗号时,会应用警告颜色。

JSON code to alter error/warning squiggle colors

  • editorError.foreground - 覆盖错误下方的波浪线。
  • editorWarning.foreground - 覆盖警告下方的波浪线。
  • editorError.background - 覆盖错误的突出显示颜色。
  • editorWarning.background - 覆盖警告的突出显示颜色。

为 `editorError` 和 `editorWarning` 的背景分配颜色也有助于识别潜在的问题。您选择的颜色将突出显示相应的错误或警告。在前面的示例中显示的颜色,即 `#ffef0f` (黄色) 和 `#37777ff` (蓝色),对于具有常见形式的色觉缺陷的个人来说更容易访问。

选择易于访问的颜色

颜色的辅助功能主观上取决于异常三色视觉(色盲)的类型。严重程度因人而异,可以分为四种状况类型

状况 类型
红色盲 对绿光的敏感度降低。这是最常见的色盲形式。
绿色盲 对红光的敏感度降低。
蓝色盲 对蓝光的敏感度降低。这种情况被认为是罕见的。
单色视觉 无法看到所有颜色,也称为全色盲。有关最罕见的色盲形式的更多信息:为对抗失明基金会

选择特定状况的最佳颜色的最佳方法之一是应用互补色。这些颜色位于色轮上彼此相对的位置。

Color wheel highlighting complementary colors for regular vision, deuteranopia, protanopia, tritanopia and monochromacy

**注意**:有关查找互补色的详细信息,请访问 Adobe Color 上的色盲模拟器和交互式色轮。

使未聚焦的编辑器和终端变暗

可以调暗未聚焦的视图,以更清晰地显示键入的输入将去往何处。这在处理多个编辑器组或终端时尤其有用。通过设置 "accessibility.dimUnfocused.enabled": true 来启用此功能。您可以使用accessibility.dimUnfocused.opacity来控制调暗级别,它接受从 0.2 到 1 的不透明度分数(默认为 0.75)。

键盘导航

VS Code 在命令面板中提供了详尽的命令列表 (⇧⌘P (Windows, Linux Ctrl+Shift+P)),因此您可以使用 VS Code 而无需鼠标。按下⇧⌘P (Windows, Linux Ctrl+Shift+P),然后键入命令名称(例如“git”)以筛选命令列表。

VS Code 还为命令提供了许多预设的键盘快捷键。

Key bindings for commands are displayed at the end of the command palette entry

您还可以设置自己的键盘快捷键。文件 > 首选项 > 键盘快捷方式 (⌘K ⌘S (Windows, Linux Ctrl+K Ctrl+S)) 打开键盘快捷方式编辑器,您可以在其中发现和修改 VS Code 操作的按键绑定。有关自定义或添加您自己的键盘快捷键的更多详细信息,请参阅按键绑定

为了在工作台中快速导航,我们建议使用聚焦下一个部分 (F6) 和聚焦上一个部分 (⇧F6 (Windows, Linux Shift+F6)) 命令。

锚点选择

为了更容易使用键盘开始和结束选择,有四个命令:设置选择锚点 (⌘K ⌘B (Windows, Linux Ctrl+K Ctrl+B)),从锚点选择到光标 (⌘K ⌘K (Windows, Linux Ctrl+K Ctrl+K)),取消选择锚点 (Escape) 和 转到选择锚点

Tab 键导航

您可以使用 Tab 键在 VS Code 中的 UI 控件之间导航。使用 Shift+Tab 按相反顺序进行 Tab 键导航。当您在 UI 控件之间切换时,当 UI 元素获得焦点时,该元素周围会出现一个指示符。

工作台中的所有元素都支持 Tab 键导航。为了避免出现过多的 Tab 键停止位,工作台工具栏和选项卡列表都只有一个。一旦工具栏或选项卡列表获得焦点,您可以使用箭头键在其中导航。

注意:Tab 键导航按照视觉上的自然顺序进行,但 WebViews(如 Markdown 预览)除外。对于 WebViews,我们建议使用 F6⇧F6 (Windows, Linux Shift+F6) 命令在 WebViews 和工作台的其余部分之间导航。或者,您可以使用多个聚焦编辑器命令之一。

Tab 键捕获

默认情况下,在源代码文件中按 Tab 键会插入 Tab 字符(或空格,具体取决于您的缩进设置),并且不会离开打开的文件。您可以使用 ⌃⇧M (Windows, Linux Ctrl+M) 切换 Tab 键捕获,随后的 Tab 键将使焦点移出文件。当默认的 Tab 键捕获关闭时,您将在状态栏中看到一个Tab 键移动焦点的指示符。

集成终端中也存在 Tab 键捕获。此功能的默认行为可以使用 editor.tabFocusMode 进行配置。

A Tab moves focus status bar item shows when the mode is active

您还可以使用切换 Tab 键移动焦点操作,从命令面板 (⇧⌘P (Windows, Linux Ctrl+Shift+P)) 打开和关闭 Tab 键捕获。

只读文件永远不会捕获 Tab 键。集成终端面板遵循 Tab 键捕获模式,可以使用 ⌃⇧M (Windows, Linux Ctrl+M) 进行切换。

屏幕阅读器

VS Code 使用基于文本分页的策略在编辑器中支持屏幕阅读器。以下屏幕阅读器已经过测试

对于 NVDA,我们建议您保持在焦点模式下,并使用热键进行导航,而不是使用浏览模式。

转到下一个/上一个错误或警告操作 (F8⇧F8 (Windows, Linux Shift+F8)) 允许屏幕阅读器宣布错误和警告消息。

当弹出建议时,它们会被通知给屏幕阅读器。使用 Ctrl+UpCtrl+Down 导航建议,并使用 Shift+Escape 关闭它们。如果建议妨碍您,可以使用 editor.quickSuggestions 设置将其关闭。

在差异视图窗格中,转到下一个/上一个差异操作 (F7⇧F7 (Windows, Linux Shift+F7)) 将显示可访问的差异查看器,其中差异以统一的补丁格式呈现。使用 UpDown 浏览未更改、插入或删除的行。按 Enter 将焦点返回到差异编辑器的已修改窗格中选定的行号(或最接近仍然存在的行号,如果选择的是删除的行)。使用 EscapeShift+Escape 关闭可访问的差异查看器。

屏幕阅读器模式

当 VS Code 检测到正在使用屏幕阅读器时,它会进入针对 UI(例如编辑器和集成终端)优化的屏幕阅读器模式。状态栏将在右下角显示屏幕阅读器已优化。您可以通过单击显示文本或使用切换屏幕阅读器辅助模式命令退出屏幕阅读器模式。

Activating the screen reader optimized status bar will show a notification that allows disabling the mode

某些功能(例如折叠和小地图(代码概览))在屏幕阅读器模式下禁用。您可以使用编辑器:辅助功能支持设置 (editor.accessibilitySupport) 来控制 VS Code 是否使用屏幕阅读器模式,这些值可以是 onoff 或默认值 auto,它会通过查询平台自动检测屏幕阅读器。

通过键盘调整表格列的大小

list.resizeColumn 命令使您可以使用键盘调整列的大小。您可以分配一个键盘快捷键来触发此命令。

当您触发此命令时,选择您要调整大小的列,并提供您想要设置的宽度百分比。以下视频演示了如何将其应用于调整“键盘快捷方式”编辑器中的列的大小。

可访问视图

运行命令打开辅助视图 ⌥F2 (Windows Alt+F2, Linux Shift+Alt+F2) 以显示辅助视图并逐字符、逐行地检查内容。辅助视图目前可用于悬停提示、通知、注释、笔记本输出、终端输出、聊天回复、内联完成、调试控制台输出等。

输入控制和结果导航

在“扩展”视图、“键盘快捷方式”编辑器以及“注释”、“问题”和“调试控制台”面板中使用 (⌘↓ (Windows, Linux Ctrl+Down)) 和 (⌘↑ (Windows, Linux Ctrl+Up)) 在输入控件(例如,搜索或筛选输入)及其结果之间进行导航是一致的。

终端辅助功能

您可以通过 ⌥F1 (Windows Alt+F1, Linux Shift+Alt+F1) 显示终端辅助功能帮助,其中描述了使用屏幕阅读器时有用的提示。其中一个提示是使用 ⌥F2 (Windows Alt+F2, Linux Shift+Alt+F2) 访问终端中的缓冲区。这将自动进入屏幕阅读器的浏览模式,具体取决于您的屏幕阅读器,以获得整个终端缓冲区的可访问视图。

使用 editor.tabFocusMode 控制终端是否接收 Tab 键,而不是工作台,这与编辑器类似。

Shell 集成

终端有一个称为Shell 集成的功能,它启用了许多在其他终端中找不到的附加功能。使用屏幕阅读器时,运行最近的命令转到最近的目录功能特别有用。

另一个由 Shell 集成支持的命令,在辅助视图中转到符号 (⇧⌘O (Windows, Linux Ctrl+Shift+O)),使您可以在终端命令之间导航,类似于编辑器中的转到编辑器中的符号...导航。

最小对比度

terminal.integrated.minimumContrastRatio 设置为 1 到 21 之间的数字,以调整文本颜色亮度,直到达到所需的对比度或达到纯白色 (#FFFFFF) 黑色 (#000000)。

请注意,terminal.integrated.minimumContrastRatio 设置不会应用于 powerline 字符。

状态栏辅助功能

当通过聚焦下一个部分F6)将焦点移至状态栏后,您可以使用方向键在状态栏条目之间移动焦点。

Diff 编辑器辅助功能

Diff 编辑器中有一个辅助功能 Diff 查看器,以统一补丁格式呈现更改。您可以使用转到下一个差异F7)和转到上一个差异⇧F7 (Windows、Linux Shift+F7)在更改之间导航。使用方向键导航行,然后按 Enter 返回 Diff 编辑器和选定的行。

调试器辅助功能

VS Code 调试器 UI 具有用户辅助功能,并具有以下特性

  • 调试状态更改会被读出(例如,“已启动”、“已命中断点”、“已终止”,等等)。
  • 所有调试操作都可以通过键盘访问。
  • “运行和调试”视图和“调试控制台”都支持 Tab 键导航。
  • 调试悬停可以通过键盘访问(⌘K ⌘I (Windows、Linux Ctrl+K Ctrl+I))。
  • 可以创建键盘快捷方式来将焦点设置到每个调试器区域。
  • 在调试时,如果焦点位于编辑器中,调用调试:添加到监视命令会宣布变量的值。

辅助功能信号

辅助功能信号会指示当前行是否具有某些标记,例如:错误、警告、断点、折叠的文本区域或内联建议。

当主光标更改其行或首次将标记添加到当前行时,会播放这些信号。当连接屏幕阅读器时,可能会自动启用辅助功能信号声音和公告,并且可以通过设置 accessibility.signals.* 进行控制。

帮助:列出信号声音命令会列出所有可用的声音,让您在列表中移动时听到每个声音,并允许配置其启用/禁用状态。

Aria 公告还会通知屏幕阅读器和盲文用户已命中某些标记。帮助:列出信号公告命令会告知用户哪些可用,并允许配置其启用/禁用状态。

悬停辅助功能

某些悬停无法正常悬停,这使得它们难以与屏幕放大镜一起使用。为了解决这个问题,在悬停处于活动状态时按住 AltOption 键可以“锁定”它,使其在悬停时不会隐藏。释放该键以解锁悬停。

当前已知问题

VS Code 存在一些已知的辅助功能问题,具体取决于平台。有关完整列表,请转到VS Code 辅助功能问题

macOS

该编辑器包括对 VoiceOver 的屏幕阅读器支持。

Linux

VS Code 与 Orca 屏幕阅读器配合良好。如果您的 Linux 发行版中的 Orca 不读取编辑器内容

  • 请确保在 VS Code 中设置 "editor.accessibilitySupport": "on"。您可以使用设置来执行此操作,或者运行 显示辅助功能帮助 命令并按 Ctrl+E 来启用 accessibilitySupport。
  • 如果 Orca 仍然无声,请尝试将 ACCESSIBILITY_ENABLED=1 设置为环境变量。

启用该设置后,VS Code 应该可以与 Orca 屏幕阅读器一起使用。

后续步骤

继续阅读以了解