辅助功能
Visual Studio Code 提供了许多功能,旨在确保所有用户都能无障碍地使用编辑器。缩放级别和高对比度颜色提高了编辑器的可见性,仅使用键盘的导航功能支持在不使用鼠标的情况下进行操作,且编辑器已针对屏幕阅读器进行了优化。
缩放
您可以通过 View(视图)> Appearance(外观)> Zoom(缩放)命令来调整 VS Code 中的缩放级别。每个 Zoom 命令都会增加或减少 20% 的缩放级别。
- View(视图)> Appearance(外观)> Zoom In(放大)(⌘= (Windows, Linux Ctrl+=)) - 增加缩放级别。
- View(视图)> Appearance(外观)> Zoom Out(缩小)(⌘- (Windows, Linux Ctrl+-)) - 降低缩放级别。
- View(视图)> Appearance(外观)> Reset Zoom(重置缩放)(⌘Numpad0 (Windows, Linux Ctrl+Numpad0)) - 将缩放级别重置为 0。
注意:如果您正在使用放大镜,请在查看悬停提示时按住 Alt 键,以便将光标移动到悬停提示上方。

持久化缩放级别
当您使用 View(视图)> Appearance(外观)> Zoom In / Out(放大/缩小)命令调整缩放级别时,缩放级别会保存在 window.zoomLevel 设置中。默认值为 0,每次增减会改变 20% 的缩放级别。
辅助功能帮助
命令 Open Accessibility Help(打开辅助功能帮助)⌥F1 (Windows Alt+F1, Linux Shift+Alt+F1) 会根据当前上下文打开帮助菜单。目前该功能适用于编辑器、终端、笔记本、聊天视图和行内聊天功能。
您可以在帮助菜单内关闭该菜单或打开额外的文档。

高对比度主题
VS Code 在所有平台上都支持高对比度颜色主题。使用 File(文件)> Preferences(首选项) > Theme(主题)> Color Theme(颜色主题)(⌘K ⌘T (Windows, Linux Ctrl+K Ctrl+T)) 来显示 Select Color Theme(选择颜色主题)下拉菜单,并选择 High Contrast(高对比度)主题。

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

安装来自市场的主题后,您可以使用 File(文件)> Preferences(首选项) > Theme(主题)> Color Theme(颜色主题)⌘K ⌘T (Windows, Linux Ctrl+K Ctrl+T) 来更改 颜色主题。

色觉辅助功能推荐主题
- GitHub - 适用于大多数色盲类型,并与 GitHub 设置中的主题匹配。
- Gotthard - 针对约 20 种编程语言进行了优化。
- Blinds - 专为绿色盲患者创建,具有高对比度比例。
- Greative - 同时考虑了色盲和光敏感度。
- Pitaya Smoothie - 适用于大多数色盲类型,并符合 WCAG 2.1 颜色对比度标准。
自定义警告颜色
VS Code 的默认颜色主题是 Dark+。不过,您可以在用户界面中自定义主题和属性颜色。
注意:请访问 自定义颜色主题,了解更多有关覆盖当前主题颜色的信息。
要自定义错误和警告的波浪线,请前往 File(文件)> Preferences(首选项) > Settings(设置)进行用户设置。搜索“color customizations”找到 Workbench: Color Customizations(工作台:颜色自定义)设置,并选择 Edit in settings.json(在 settings.json 中编辑)以打开您的用户 settings.json 文件。

在您的 settings.json 文件中,将以下代码嵌套在最外层的花括号内。您可以通过输入十六进制代码为每个对象指定颜色。
"workbench.colorCustomizations": {
"editorError.foreground": "#ffef0f",
"editorWarning.foreground": "#3777ff"
}
在下面的示例中,当 JSON 项目后缺少逗号时,将应用警告颜色。

editorError.foreground- 覆盖错误下方的波浪线颜色。editorWarning.foreground- 覆盖警告下方的波浪线颜色。editorError.background- 覆盖错误的背景高亮颜色。editorWarning.background- 覆盖警告的背景高亮颜色。
为 editorError 和 editorWarning 的背景分配颜色也有助于识别潜在问题。您选择的颜色将高亮显示相应的错误或警告。上例中显示的颜色,即 #ffef0f(黄色)和 #37777ff(蓝色),对于患有常见色觉缺陷的人群来说更易于辨识。
选择辅助性颜色
颜色的辅助性因异常三色觉(色盲)的类型而异。严重程度因人而异,可分为四种情况
| 病症 | 类型 |
|---|---|
| 绿色盲 (Deuteranopia) | 对绿光敏感度降低。这是最常见的色盲形式。 |
| 红色盲 (Protanopia) | 对红光敏感度降低。 |
| 蓝色盲 (Tritanopia) | 对蓝光敏感度降低。这种情况被认为是罕见的。 |
| 全色盲 (Monochromia) | 无法感知所有颜色,也称为 achromatopsia。关于这种最罕见的色盲形式的更多信息:Foundation for Fighting Blindness。 |
为特定病症选择最佳颜色的最佳方法之一是应用互补色。这些颜色位于色轮上彼此相对的位置。

注意:有关查找互补色的更多信息,请访问 Adobe Color 的色盲模拟器和交互式色轮。
调暗未聚焦的编辑器和终端
可以调暗未聚焦的视图,以更清楚地显示键入的内容将出现在哪里。当使用多个编辑器组或终端时,这一点尤其有用。通过设置 "accessibility.dimUnfocused.enabled": true 来开启此功能。您可以使用 accessibility.dimUnfocused.opacity 来控制调暗级别,该值接受 0.2 到 1 之间的小数(默认为 0.75)。
键盘导航
VS Code 在 Command Palette(命令面板)(⇧⌘P (Windows, Linux Ctrl+Shift+P)) 中提供了详尽的命令列表,以便您无需鼠标即可使用 VS Code。按 ⇧⌘P (Windows, Linux Ctrl+Shift+P),然后键入命令名称(例如“git”)以过滤命令列表。
VS Code 还为命令预设了许多键盘快捷键。

您也可以设置自己的键盘快捷键。File(文件)> Preferences(首选项) > Keyboard Shortcuts(键盘快捷键)(⌘K ⌘S (Windows, Linux Ctrl+K Ctrl+S)) 会打开键盘快捷键编辑器,您可以在其中发现并修改 VS Code 操作的键盘快捷键。请参阅 按键绑定以了解有关自定义或添加自己的键盘快捷键的更多详细信息。
为了在工作台中快速导航,我们建议使用 Focus Next Part(聚焦下一部分)(F6) 和 Focus Previous Part(聚焦上一部分)(⇧F6 (Windows, Linux Shift+F6)) 命令。
锚点选择
为了更容易使用键盘开始和结束选择,提供了四个命令:Set Selection Anchor(设置选择锚点)(⌘K ⌘B (Windows, Linux Ctrl+K Ctrl+B))、Select From Anchor to Cursor(从锚点选择到光标)(⌘K ⌘K (Windows, Linux Ctrl+K Ctrl+K))、Cancel Selection Anchor(取消选择锚点)(Escape) 和 Go to Selection Anchor(转到选择锚点)。
Tab 键导航
您可以使用 Tab 键在 VS Code 的 UI 控件之间进行导航。使用 Shift+Tab 以相反顺序制表。当您使用 Tab 键浏览 UI 控件时,当 UI 元素获得焦点时,其周围会出现指示符。
工作台中的所有元素都支持 Tab 键导航。为了避免过多的 Tab 停止点,工作台工具栏和标签列表每个只有一个停止点。当工具栏或标签列表获得焦点时,您可以使用箭头键在其中进行导航。
注意:Tab 键导航遵循视觉上的自然顺序,WebView(如 Markdown 预览)除外。对于 WebView,我们建议使用 F6 和 ⇧F6 (Windows, Linux Shift+F6) 命令在 WebView 和工作台的其他部分之间进行导航。或者,您也可以使用多个“聚焦编辑器”命令之一。
Tab 键捕获
默认情况下,在源代码文件中按 Tab 键会插入制表符(或空格,具体取决于您的缩进设置),并且不会离开打开的文件。您可以使用 ⌃⇧M (Windows, Linux Ctrl+M) 切换 Tab 键捕获,之后的 Tab 键操作会将焦点移出文件。当默认 Tab 键捕获关闭时,您会在状态栏中看到 Tab moves focus(Tab 键移动焦点)指示器。
集成终端中也存在 Tab 键捕获。该功能的默认行为可以通过 editor.tabFocusMode 进行配置。

您还可以从 Command Palette(命令面板)(⇧⌘P (Windows, Linux Ctrl+Shift+P)) 通过 Toggle Tab Key Moves Focus(切换 Tab 键移动焦点)操作来开启或关闭 Tab 键捕获。
只读文件永远不会捕获 Tab 键。Integrated Terminal(集成终端)面板遵循 Tab 捕获模式,可以通过 ⌃⇧M (Windows, Linux Ctrl+M) 进行切换。
屏幕阅读器
VS Code 在编辑器中使用基于文本分页的策略来支持屏幕阅读器。以下屏幕阅读器已经过测试
对于 NVDA,我们建议您保持在焦点模式并使用热键进行导航,而不是使用浏览模式。
Go to Next/Previous Error or Warning(转到下一个/上一个错误或警告)操作(F8 和 ⇧F8 (Windows, Linux Shift+F8))允许屏幕阅读器播报错误和警告消息。
当建议弹出时,它们会被告知给屏幕阅读器。使用 Ctrl+Up 和 Ctrl+Down 浏览建议,并使用 Shift+Escape 关闭它们。如果建议干扰了您的操作,您可以通过 editor.quickSuggestions 设置将其关闭。
在差异视图窗格中,Go to Next/Previous Difference(转到下一个/上一个差异)操作(F7 和 ⇧F7 (Windows, Linux Shift+F7))将显示 Accessible Diff Viewer(可访问差异查看器),其中以统一的补丁格式显示差异。使用 Up 和 Down 浏览未更改、插入或删除的行。按 Enter 返回到所选行号处(如果选择了已删除的行,则返回到仍然存在的最接近的行号)的差异编辑器修改窗格。使用 Escape 或 Shift+Escape 关闭 Accessible Diff Viewer。
屏幕阅读器模式
当 VS Code 检测到正在使用屏幕阅读器时,它会进入针对编辑器和集成终端等 UI 的优化屏幕阅读器模式。状态栏右下角将显示 Screen Reader Optimized(屏幕阅读器优化)。您可以通过点击显示的文本或使用 Toggle Screen Reader Accessibility Mode(切换屏幕阅读器辅助模式)命令来退出屏幕阅读器模式。

在屏幕阅读器模式下,某些功能(如折叠和代码小地图)会被禁用。您可以通过 Editor: Accessibility Support(编辑器:辅助功能支持)设置( editor.accessibilitySupport )来控制 VS Code 是否使用屏幕阅读器模式,其值为 on、off 或默认的 auto(通过查询平台自动检测屏幕阅读器)。
通过键盘调整表格列大小
list.resizeColumn 命令使您能够使用键盘调整列的大小。您可以 分配键盘快捷键来触发此命令。
触发此命令时,选择要调整大小的列,并提供您要设置的宽度百分比。以下视频展示了如何在键盘快捷键编辑器中应用此功能来调整列的大小。
可访问视图
运行命令 Open Accessible View(打开辅助视图)⌥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 集成驱动的命令,Go to Symbol in Accessible View(在辅助视图中转到符号)(⇧⌘O (Windows, Linux Ctrl+Shift+O)),让您可以在终端命令之间导航,类似于编辑器中的 Go to Symbol in Editor...(转到编辑器中的符号)导航。
最小对比度
将 terminal.integrated.minimumContrastRatio 设置为 1 到 21 之间的数字,以调整文本颜色亮度,直到达到所需的对比度或达到纯白 (#FFFFFF) 或纯黑 (#000000)。
注意, terminal.integrated.minimumContrastRatio 设置不适用于 powerline 字符。
状态栏辅助功能
一旦通过 Focus Next Part(聚焦下一部分)(F6) 将焦点置于状态栏中,您就可以使用箭头导航在状态栏条目之间移动焦点。
差异编辑器辅助功能
差异编辑器中有一个 Accessible Diff Viewer(可访问差异查看器),它以统一的补丁格式呈现更改。您可以使用 Go to Next Difference(转到下一个差异)(F7) 和 Go to Previous Difference(转到上一个差异)(⇧F7 (Windows, Linux Shift+F7)) 在更改之间进行导航。使用箭头键导航行,按 Enter 跳回到差异编辑器和选定行。
调试器辅助功能
VS Code 调试器 UI 是用户可访问的,并具有以下功能
- 读取调试状态更改(例如,“started”、“breakpoint hit”、“terminated”等)。
- 所有调试操作都可以通过键盘访问。
- “运行和调试”视图和“调试控制台”都支持 Tab 键导航。
- 调试悬停提示可以通过键盘访问(⌘K ⌘I (Windows, Linux Ctrl+K Ctrl+I))。
- 可以创建键盘快捷键来将焦点设置到每个调试器区域。
- 在调试过程中并将焦点置于编辑器中时,调用 Debug: Add to Watch(调试:添加到监视)命令会播报变量的值。
辅助功能信号
辅助功能信号指示当前行是否具有某些标记,例如:错误、警告、断点、折叠文本区域或行内建议。
当主要光标改变其行,或第一次向当前行添加标记时,它们会播放声音。当连接屏幕阅读器时,辅助功能信号声音和播报可能会自动启用,并可以通过设置 accessibility.signals.* 进行控制。
命令 Help: List Signal Sounds(帮助:列出信号声音)列出所有可用的声音,让您在移动列表时听到每一个声音,并允许配置它们的启用/禁用状态。
ARIA 播报还通知屏幕阅读器和盲文用户已触发某些标记。命令 Help: List Signal Announcements(帮助:列出信号播报)向用户通知哪些是可用的,并允许配置它们的启用/禁用状态。
悬停辅助功能
某些悬停提示无法正常悬停,这使得屏幕放大镜难以使用它们。要解决此问题,请在悬停提示处于活动状态时按住 Alt 或 Option 键以将其“锁定”到位,这样它就不会在悬停时隐藏。释放该键即可解锁悬停提示。
当前已知问题
VS Code 存在一些已知的辅助功能问题,具体取决于平台。如需完整列表,请前往 VS Code 辅助功能问题。
macOS
编辑器包含对 VoiceOver 的屏幕阅读器支持。
Linux
VS Code 可以很好地与 Orca 屏幕阅读器配合使用。如果您的 Linux 发行版中的 Orca 不读取编辑器内容
- 请确保在 VS Code 中有
"editor.accessibilitySupport": "on"设置。您可以使用设置执行此操作,或通过运行 Show Accessibility Help(显示辅助功能帮助)命令并按 Ctrl+E 来开启 accessibilitySupport。 - 如果 Orca 仍然处于静音状态,请尝试将
ACCESSIBILITY_ENABLED=1设置为环境变量。
启用该设置后,VS Code 应该可以与 Orca 屏幕阅读器配合使用。
后续步骤
继续阅读以了解:
- 语音交互 - 了解如何在 VS Code 中使用语音命令。
- Visual Studio Code 用户界面 - VS Code 的快速上手指南。
- 基本编辑 - 了解功能强大的 VS Code 编辑器。
- 代码导航 - 快速浏览您的源代码。