在 VS Code 中试试

UX 指南

这些指南涵盖了创建与 VS Code 原生界面和模式无缝集成的扩展的最佳实践。在这些指南中,你可以找到

  • VS Code 整体 UI 架构和元素的概览
  • 由扩展贡献的 UI 的建议和示例
  • 相关指南和示例的链接

在深入了解细节之前,了解 VS Code 的各种 UI 架构部分如何协同工作以及你的扩展可以在何处、如何贡献是很重要的。

容器

VS Code 界面大致可以分为两个主要概念:容器。一般来说,容器可以被认为是 VS Code 界面中渲染一个或多个项的较大区域

Overview of Visual Studio Code containers elements

活动栏

活动栏是 VS Code 中的核心导航界面。扩展可以向活动栏贡献项,这些项充当视图容器,在主侧边栏中渲染视图

主侧边栏

主侧边栏渲染一个或多个视图。活动栏和主侧边栏紧密耦合。单击贡献的活动栏项(即:视图容器)会打开主侧边栏,其中会渲染与该视图容器关联的一个或多个视图。一个具体的例子是资源管理器。单击资源管理器项将打开主侧边栏,其中文件夹、时间线和大纲视图是可见的。

副侧边栏

副侧边栏也用作渲染带视图的视图容器的界面。用户可以将终端或问题视图等视图拖动到副侧边栏以自定义其布局。

编辑器

编辑器区域包含一个或多个编辑器组。扩展可以贡献自定义编辑器Webview以在编辑器区域中打开。它们还可以贡献编辑器操作以在编辑器工具栏中显示附加的图标按钮。

面板

面板是显示视图容器的另一个区域。默认情况下,终端、问题和输出等视图可以在面板中的单个选项卡中一次性查看。用户还可以将视图拖动到分屏布局,就像在编辑器中一样。此外,扩展可以选择专门将视图容器添加到面板中,而不是活动栏/主侧边栏。

状态栏

状态栏提供有关工作区和当前活动文件的上下文信息。它渲染两组状态栏项

扩展可以将项添加到上面列出的各种容器中。

Overview of Visual Studio Code containers elements

视图

视图可以以树视图欢迎视图Webview 视图的形式贡献,并且可以拖动到界面的其他区域。

视图工具栏

扩展可以公开视图特定的操作,这些操作作为按钮显示在视图工具栏上。

作用域为整个视图容器的操作也可以在侧边栏工具栏中公开。

编辑器工具栏

扩展可以直接在编辑器工具栏中贡献作用域为编辑器的编辑器操作

面板工具栏

面板工具栏可以公开作用域为当前选定视图的选项。例如,终端视图公开了添加新终端、拆分视图布局等操作。切换到问题视图会显示不同的操作集。

状态栏项

左侧的状态栏项作用域为整个工作区。右侧的项作用域为活动文件。

常见的 UI 元素

命令面板

扩展可以贡献显示在命令面板中的命令,以快速执行某些功能。

Overview of the Command Palette element

快速选择

快速选择以几种不同的方式捕获用户的输入。它们可以要求单选、多选,甚至自由文本输入。

Overview of the Quick Pick element

通知

通知用于向用户传达信息、警告和错误消息。它们也可以用于指示进度。

Overview of the Notification element

Webview

Webview可用于显示自定义内容和功能,适用于超出 VS Code“原生”API 的用例。

Overview of the Webview element

上下文菜单

与命令面板固定不变的位置不同,上下文菜单使用户能够从特定位置执行操作或配置某些内容。

Overview of the Context Menu element

演练

演练通过包含丰富内容的多步清单,为用户提供一致的扩展入门体验。

Overview of the Walkthrough API

设置

设置使用户能够配置与扩展相关的选项。

Overview of the Settings page