网页版 Visual Studio Code
网页版 Visual Studio Code 提供免费、零安装的 Microsoft Visual Studio Code 体验,完全在浏览器中运行,让您可以快速安全地浏览源代码存储库并进行轻量级代码更改。要开始使用,请在浏览器中访问 https://vscode.dev。
网页版 VS Code 具有您喜爱的许多 VS Code 桌面版功能,包括浏览和编辑时的搜索和语法高亮显示,以及扩展支持,可用于处理代码库和进行更简单的编辑。除了打开来自 GitHub 和 Azure Repos 等源代码控制提供程序的存储库、分支和拉取请求,您还可以处理存储在本地计算机上的代码。
网页版 VS Code 完全在您的 Web 浏览器中运行,因此与桌面版体验相比,存在某些限制,您可以在下方阅读更多相关信息。
以下视频简要概述了网页版 Visual Studio Code。
与 VS Code 桌面版的关系
网页版 VS Code 提供基于浏览器的体验,用于导航文件和存储库以及提交轻量级代码更改。但是,如果您需要访问运行时来运行、构建或调试代码,想要使用终端等平台功能,或者想要运行 Web 不支持的扩展,我们建议将您的工作转移到桌面应用程序、GitHub Codespaces,或使用远程 - 隧道以获得 VS Code 的全部功能。此外,VS Code 桌面版允许您使用不受浏览器限制的全套键盘快捷键。
准备好切换时,您只需单击几下即可“升级”到完整的 VS Code 体验。
您还可以通过选择齿轮图标,然后选择切换到 Insider 版本...,或直接导航到 https://insiders.vscode.dev,在网页版 VS Code 的稳定版和 Insider 版本之间切换。
打开项目
通过导航到 https://vscode.dev,您可以创建新的本地文件或项目,处理现有的本地项目,或访问托管在其他地方的源代码存储库,例如 GitHub 和 Azure Repos(Azure DevOps 的一部分)。
您可以通过命令面板 (F1) 中的文件 > 新建文件,在 Web 中创建新的本地文件,就像在 VS Code 桌面版环境中一样。
GitHub 存储库
您可以直接从 URL 在网页版 VS Code 中打开 GitHub 存储库,遵循以下格式:https://vscode.dev/github/<organization>/<repo>
。以 VS Code 存储库为例,这将是:https://vscode.dev/github/microsoft/vscode
。
此体验通过自定义 vscode.dev/github
URL 提供,该 URL 由 GitHub Repositories 扩展(它是更广泛的 Remote Repositories 扩展的一部分)提供支持。
GitHub Repositories 允许您从编辑器内远程浏览和编辑存储库,而无需将代码拉取到本地计算机。您可以在我们的 GitHub Repositories 指南中了解有关该扩展及其工作原理的更多信息。
注意:GitHub Repositories 扩展也可以在 VS Code 桌面版中工作,以提供快速的存储库浏览和编辑。安装该扩展后,您可以使用GitHub Repositories:打开存储库...命令打开存储库。
您还可以通过安装适用于 Chrome 和 Edge 的 vscode.dev
扩展,通过浏览器的搜索栏(即多功能框)在 vscode.dev
中打开 GitHub 存储库。然后,键入 code
激活多功能框,后跟您的存储库名称。建议由您的浏览器搜索历史记录填充,因此如果未出现您想要的存储库,您还可以键入完全限定的 <owner>/<repo>
名称来打开它,例如 microsoft/vscode
。
如果您已经在 https://vscode.dev 的网页版 VS Code 中,您也可以通过 Remote Repositories 扩展命令导航到不同的存储库。选择状态栏左下角的远程指示器,您将看到打开远程存储库...命令。
Azure Repos
您可以在网页版 VS Code 中像 GitHub 存储库一样打开 Azure Repos。
当您导航到架构为 https://vscode.dev/azurerepos/<organization>/<project>/<repo>
的 URL 时,您将能够读取、搜索存储库中的文件,并将更改提交到 Azure Repos。您可以获取、拉取和同步更改,并查看分支。
您可以通过在 Azure Repos URL 前加上 vscode.dev
来在网页版 VS Code 中打开 Azure Repos 中的任何存储库、分支或标签。
或者,当您在 Azure DevOps 存储库或拉取请求上时,您可以按 (.) 在网页版 VS Code 中打开它。
更多自定义 URL
与桌面版一样,您可以通过丰富的扩展生态系统自定义网页版 VS Code,这些扩展支持几乎所有后端、语言和服务。vscode.dev
包含提供常见体验快捷方式的 URL。
我们已经探索了一些 URL(vscode.dev/github
和 vscode.dev/azurerepos
)。这是一个更完整的列表
服务 | URL 结构 | 文档 |
---|---|---|
GitHub | /github/<org>/<repo> |
更多信息见上文 |
Azure Repos | /azurerepos/<org>/<project>/<repo> |
更多信息见上文 |
Visual Studio Live Share | /editor/liveshare/<sessionId> |
更多信息见下文 |
Visual Studio Marketplace | /editor/marketplace/<marketplacePublisher> /<extensionId>/<extensionVersion> |
编辑此扩展的示例路由 |
Power Pages | /power/pages |
Power Pages 文档 |
配置文件 | /editor/profile/github/<GUID> |
配置文件文档 |
主题 | /editor/theme/<extensionId> |
更多信息见下文 |
MakeCode | /edu/makecode |
MakeCode 文档 |
VS Code 教育版 | /edu |
VS Code 教育版登录页面 |
Azure 机器学习 (AML) | /+ms-toolsai.vscode-ai-remote-web |
AML 文档 |
Azure | /azure |
适用于 Azure 的 VS Code |
请注意,某些 URL 必须以特定方式输入(例如,vscode.dev/editor/liveshare
需要活动的 Live Share 会话)。请查阅每个服务的文档以获取特定的访问和使用信息。
下面将介绍其中一些 URL 的更多信息。
主题
您可以通过 URL 架构 https://vscode.dev/editor/theme/<extensionId>
在网页版 VS Code 中共享和体验颜色主题。
例如,您可以访问 https://vscode.dev/editor/theme/sdras.night-owl 来体验 Night Owl 主题,而无需经过下载和安装过程。
注意:颜色主题 URL 架构适用于完全声明式(无代码)的主题。
一个扩展可以定义多个主题。您可以使用架构 /editor/theme/<extensionId>/<themeName>
。如果未指定 themeName
,网页版 VS Code 将选择第一个主题。
作为主题作者,您可以将以下徽章添加到您的扩展自述文件中,以便用户可以轻松地在网页版 VS Code 中试用您的主题(将 <extensionId>
替换为您的主题扩展的唯一标识符)
[](https://vscode.dev/editor/theme/<extensionId>)
Visual Studio Live Share
Live Share 来宾会话可通过 https://vscode.dev/editor/liveshare
URL 在浏览器中进行。sessionId
将传递给扩展,以实现无缝加入体验。
在不同环境中继续工作
在某些情况下,您需要访问能够运行代码的不同环境。您可以切换到在支持本地文件系统以及完整语言和开发工具的开发环境中处理存储库。
GitHub Repositories 扩展使您能够轻松地在本地克隆存储库,在桌面版中重新打开它,或为当前存储库创建 GitHub codespace(如果您安装了 GitHub Codespaces 扩展并有权创建 GitHub codespace)。为此,请使用命令面板 (F1) 中提供的继续工作...命令,或单击状态栏中的远程指示器。
保存和共享工作
在 Web 中处理本地文件时,如果启用了自动保存,您的工作会自动保存。您也可以像在桌面版 VS Code 中工作一样手动保存(例如文件 > 保存)。
在远程存储库上工作时,您的工作会保存在浏览器的本地存储中,直到您提交。如果您使用 GitHub Repositories 打开存储库或拉取请求,您可以在源代码管理视图中推送您的更改以保留任何新工作。
您还可以通过继续工作在其他环境中继续工作。
首次使用带有未提交更改的继续工作时,您将可以选择使用云更改将您的编辑带到您选择的开发环境,该服务使用 VS Code 服务来存储您待处理的更改。这在GitHub Repositories 文档中进一步描述。
使用 Remote Tunnels 部署您自己的计算实例
您可以使用 Remote - Tunnels 扩展在网页版 VS Code 中针对另一台计算机进行开发。
Remote - Tunnels 扩展允许您通过安全隧道连接到远程计算机,例如台式 PC 或虚拟机 (VM)。然后,您可以从任何地方安全地连接到该计算机,而无需 SSH。这使您可以将“自己的计算”带到 vscode.dev,从而实现更多场景,例如在浏览器中运行代码。
您可以在其文档中了解有关 Remote - Tunnels 的更多信息。
安全探索
网页版 VS Code 完全在您的 Web 浏览器沙盒中运行,并提供非常有限的执行环境。
访问远程存储库中的代码时,Web 编辑器不会“克隆”存储库,而是通过直接从浏览器调用服务的 API 来加载代码;这进一步减少了克隆不受信任的存储库时的攻击面。
处理本地文件时,网页版 VS Code 通过浏览器的文件系统访问 API 加载它们,这限制了浏览器可以访问的范围。
随处运行
与 GitHub Codespaces 类似,网页版 VS Code 可以在平板电脑(如 iPad)上运行。
语言支持
Web 上的语言支持在代码编辑、导航和浏览方面更为细致。桌面体验通常由期望文件系统、运行时和计算环境的语言服务和编译器提供支持。在浏览器中,这些体验由在浏览器中运行的语言服务提供支持,这些服务提供源代码标记和语法着色、完成以及许多单文件操作。
通常,体验分为以下几类
- 良好:对于大多数编程语言,网页版 VS Code 为您提供代码语法着色、基于文本的完成和括号对着色。通过 Tree-sitter 语法树,通过 anycode 扩展,我们能够为 C/C++、C#、Java、PHP、Rust 和 Go 等流行语言提供额外的体验,例如大纲/转到符号和符号搜索。
- 更好:TypeScript、JavaScript 和 Python 体验都由在浏览器中本机运行的语言服务提供支持。使用这些编程语言,您将获得“良好”体验以及丰富的单文件完成、语义高亮显示、语法错误等等。
- 最佳:对于许多“Web 化”语言,例如 JSON、HTML、CSS 和 LESS 等,vscode.dev 中的编码体验几乎与桌面版相同(包括 Markdown 预览!)。
您可以通过状态栏中的语言状态指示器确定当前文件的语言支持级别
限制
由于网页版 VS Code 完全在浏览器中运行,因此与桌面应用程序相比,某些体验自然会受到更多限制。例如,终端和调试器不可用,这很合理,因为您无法在浏览器沙盒中编译、运行和调试 Rust 或 Go 应用程序。
扩展
只有一部分扩展可以在浏览器中运行。您可以使用“扩展”视图在 Web 中安装扩展,无法安装的扩展将显示警告图标和了解原因链接。我们预计未来会有更多扩展启用。
当您安装扩展时,它会保存在浏览器的本地存储中。您可以通过启用设置同步来确保您的扩展在 VS Code 实例之间同步,包括不同的浏览器甚至桌面版。
当扩展包包含无法在浏览器沙盒中运行的扩展时,您将收到一条信息性消息,其中包含查看包中包含的扩展的选项。
当扩展在浏览器沙盒中执行时,它们会受到更多限制。纯粹声明性的扩展,例如大多数主题、片段或语法,可以未经修改地运行,并且无需扩展作者进行任何修改即可在网页版 VS Code 中使用。正在运行代码的扩展需要更新以支持在浏览器沙盒中运行。您可以在Web 扩展作者指南中阅读有关支持浏览器中扩展所涉及内容的更多信息。
还有一些扩展在浏览器中运行,但仅提供部分支持。一个很好的例子是语言扩展,它将其支持限制为单个文件或当前打开的文件。
文件系统 API
Edge 和 Chrome 今天支持 文件系统 API,允许网页访问本地文件系统。如果您的浏览器不支持文件系统 API,您将无法在本地打开文件夹,但可以打开文件。
浏览器支持
您可以在最新版本的 Chrome、Edge、Firefox 和 Safari 中使用网页版 VS Code。每个浏览器的旧版本可能无法运行 - 我们只保证支持最新版本。
提示:检查兼容浏览器版本的一种方法是查看当前用于测试 VS Code 的 Playwright 版本,并查看其支持的浏览器版本。您可以在 VS Code 存储库的 package.json 文件中的
devDependencies/@playwright/test
处找到当前使用的 Playwright 版本。一旦您知道 Playwright 版本,例如1.37
,您就可以查看其发行说明中的浏览器版本部分。
在 Firefox 和 Safari 中,Web 视图可能会显示不同或出现一些意外行为。您可以在 VS Code GitHub 存储库中查看问题查询,以跟踪与特定浏览器相关的问题,例如使用 Safari 标签和 Firefox 标签。
您可以采取其他步骤来改善使用网页版 VS Code 的浏览器体验。有关更多信息,请查阅附加浏览器设置部分。
移动支持
您可以在移动设备上使用网页版 VS Code,但较小的屏幕可能会有一些限制。
键盘快捷键
某些键盘快捷键在 Web 中也可能有所不同。
问题 | 原因 |
---|---|
⇧⌘P (Windows, Linux Ctrl+Shift+P) 不会在 Firefox 中启动命令面板。 | ⇧⌘P (Windows, Linux Ctrl+Shift+P) 在 Firefox 中被保留。 作为解决方法,请使用 F1 启动命令面板。 |
用于新建文件的 ⌘N (Windows, Linux Ctrl+N) 在 Web 中不起作用。 | ⌘N (Windows, Linux Ctrl+N) 会改为打开一个新窗口。 作为解决方法,您可以使用 Ctrl+Alt+N(macOS 上为 Cmd+Alt+N)。 |
用于关闭编辑器的 ⌘W (Windows Ctrl+F4, Linux Ctrl+W) 在 Web 中不起作用。 | ⌘W (Windows Ctrl+F4, Linux Ctrl+W) 会关闭浏览器中的当前标签页。 作为解决方法,您可以使用 Ctrl+Shift+Alt+N(macOS 上为 Cmd+Shift+Alt+N)。 |
⇧⌘B (Windows, Linux Ctrl+Shift+B) 不会切换浏览器中的收藏夹栏。 | 网页版 VS Code 会覆盖此功能并重定向到命令面板中的“生成”菜单。 |
Alt+Left 和 Alt+Right 应该在编辑器内导航,但可能会错误地触发标签页历史导航。 | 如果焦点在编辑器之外,这些快捷键会改为触发标签页历史导航。 |
附加浏览器设置
在浏览器中使用 VS Code 时,您可以执行其他浏览器配置步骤。
打开新标签页和窗口
在某些情况下,您可能需要在网页版 VS Code 中工作时打开新标签页或窗口。VS Code 可能会在从剪贴板读取时请求您访问剪贴板的权限。根据您的浏览器,您可以通过不同方式授予对剪贴板的访问权限或允许弹出窗口
- Chrome、Edge、Firefox:在您的浏览器设置中搜索“网站权限”,或在地址栏右侧查找以下选项
- Safari:在 Safari 浏览器中,转到偏好设置... > 网站 > 弹出窗口 > 您正在访问的域(例如
vscode.dev
),然后从下拉菜单中选择允许。