重磅!微軟發布 vscode.dev,把 VS Code 帶入瀏覽器!


早在 2019 年,當.dev頂級域名開放時,我們趕緊注冊了vscode.dev。像許多購買.dev域名的人一樣,我們不知道我們將用它做啥。反正,也占個坑吧!

將 VS Code 帶入瀏覽器

直到今天,當你轉到https://vscode.dev 時,你將看到一個完全在瀏覽器中運行的輕量級 VS Code。在本地機器上打開一個文件夾並開始編碼。

無需任何的安裝。如絲般順滑。

隨着 vscode.dev 的出現,我們最終實現了我們最初的願景,即構建一個可以在瀏覽器中完全無服務器運行的開發工具。如需了解完整的歷史,請查看 Erich Gamma 的 VS Code Day 演講 "VS Code An Overnight Success…10 Years in the Making"

那么,我們可以在 VS Code for the Web 上做什么呢?

使用雲工具進行本地開發

 

支持文件系統訪問 API(目前的 Edge 和 Chrome)的現代瀏覽器允許網頁訪問本地文件系統(在你的許可下)。這個簡單的本地機器網關,快速打開了一些使用 VS Code for the Web 作為零安裝本地開發工具的有趣場景,例如:

  • 本地文件查看和編輯。在 Markdown 中快速記筆記(和預覽!)。即使你在無法安裝完整 VS Code 的受限機器上,仍然可以使用 vscode.dev 查看和編輯本地文件。
  • 結合瀏覽器工具構建客戶端 HTML、JavaScript 和 CSS 應用程序以進行調試。
  • 在 Chromebook 等低功率機器上編輯代碼,因為你無法(輕松地)在 Chromebook 安裝 VS Code。
  • 在 iPad 上開發。你可以上傳/下載文件(甚至使用 Files 應用程序將它們存儲在雲中),以及使用內置的 GitHub 存儲庫擴展遠程打開存儲庫。

而且,如果你的瀏覽器不支持本地文件系統 API,仍然可以通過瀏覽器上傳和下載單個文件來打開它們。

輕量級體驗

由於 VS Code for the Web 完全在瀏覽器中運行,因此與你在桌面應用程序中可以執行的操作相比,某些體驗自然會受到更多限制。例如,終端和調試器不可用。這是有道理的,因為你無法在瀏覽器沙箱中編譯、運行和調試 Rust 或 Go 應用程序(盡管 Pyodide 和 Web 容器等新興技術有一天可能會改變這一點)。

更微妙的是代碼編輯、導航和瀏覽體驗,在桌面上,這些體驗通常由需要文件系統、運行時和計算環境的語言服務和編譯器提供支持。在瀏覽器中,這些體驗由完全在瀏覽器中運行的語言服務(無文件系統,無運行時)提供支持,這些服務提供源代碼標記化和語法着色、完成和許多單文件操作。

因此,在瀏覽器中時,體驗通常分為以下幾類:

好:對於大多數編程語言,vscode.dev 為你提供代碼語法着色、基於文本的完成和括號對着色。使用Tree-sitter語法樹,我們能夠為流行語言(如 C/C++、C#、Java、PHP、Rust 和 Go)提供額外的體驗,例如大綱/轉到符號符號搜索

更好:TypeScript、JavaScript 和 Python 體驗都由在瀏覽器中本地運行的語言服務提供支持。使用這些編程語言,你將獲得“良好”體驗以及豐富的單文件補全、語義突出顯示、語法錯誤等。

最佳:對於許多“webby”語言,例如 JSON、HTML、CSS 和 LESS,vscode.dev 中的編碼體驗幾乎與桌面相同(包括 Markdown 預覽!)。

擴展

大多數 UI 自定義擴展(例如主題、鍵映射和代碼段)都可以在 vscode.dev 中使用,你甚至可以通過 Settings Sync 在瀏覽器、桌面和 GitHub 代碼空間之間啟用漫游。

使用了操作系統模塊的 Node.js 代碼的擴展,或者運行了可執行文件的擴展,仍然會顯示在擴展搜索結果中,但被明確標記為不可用。

也就是說,越來越多的擴展已經更新到可以在瀏覽器中使用,而且每天都有更多的擴展。

注意:如果你是擴展作者並希望在瀏覽器中使用你的擴展,請查看我們的 Web 擴展創作指南

例如,Luna Paint - Image Editor擴展允許你直接在 VS Code 中編輯光柵圖像。該擴展為 VS Code 帶來了豐富的設計工具(例如圖層和混合工具),當然你也可以將圖像保存到本地磁盤。

在 GitHub Issue Notebooks 帶來了 GitHub Issues 的 Notebook 體驗。有了它,你可以將查詢、結果,甚至描述查詢目的的 Markdown 混合到一個編輯器中。

GitHub

VS Code 的許多擴展都基於 GitHub。例如,CodeTour擴展允許你創建代碼庫的指導性演練,而WikiLens擴展將 VS Code 和你的存儲庫變成一個強大的筆記工具(具有雙向鏈接)。為了方便訪問 GitHub 中的代碼,VS Code for the Web 內置了GitHub RepositoriesCodespacesPull Request擴展。你可以進行快速編輯、審查 PR,並繼續進行本地克隆。如果你想要更強大的語言體驗或需要在合並提交之前構建、運行和測試更改,你可以使用 GitHub Codespace 來獲得更強的開發體驗,

哇噻,聽起來很像github.dev不是嗎?為什么是兩個呢 ??!!

真是個好問題呀!

github.dev是深度集成到 GitHub 中的 Web 版 VS Code 定制實例。登錄是自動的,URL格式如下github.com的/organization/repo模式,使你可以簡單地改變.com.dev以編輯代碼。

除了 GitHub 上的存儲庫,VS Code for the Web 還支持 Azure Repos(Azure DevOps 的一部分)。為了同時使用這兩者,VS Code for the Web 支持兩種路由,vscode.dev/github以及vscode.dev/azurerepos. 不過,你不必記住這一點,只需在你擁有的任何 URL 前面加上“vscode.dev”,就行了!

例如,更改https://github.com/microsoft/vscode為:

https://vscode.dev/github.com/Microsoft/vscode

對於 Azure Repos,執行相同操作。更改https://dev.azure.com/…為:

https://vscode.dev/dev.azure.com/,,,

今天,對 Azure Repos 的支持處於讀取存儲庫的預覽模式,但我們正在努力盡快提供完整的讀/寫功能。

如果你不在 GitHub 或 Azure DevOps 上,則可以通過擴展提供對其他存儲庫托管服務的支持,就像在桌面上一樣。如上所述,這些擴展需要支持在瀏覽器中完全運行。

再聊聊 URL

就像在桌面上一樣,您可以通過支持幾乎所有后端、語言和服務的豐富擴展生態系統,來定制 VS Code for the Web。不像在桌面上,很容易讓我們能夠提供自定義體驗與通過獨特的預安裝的擴展程序vscode.dev的網址(例如vscode.dev/githubvscode.dev/azurerepos)。

例如,嘗試瀏覽到 

在這里你可以直接體驗 @sarah_edo 的夜貓子顏色主題。無需安裝!如果您是主題作者,你甚至可以在 README 中創建一個徽章,讓用戶直接從 Marketplace 試用你的主題(在 VS Code for the Web 用戶指南中了解更多信息)。

如你所見,vscode.devURL 是我們提供輕量級新體驗的強大方式。另一個示例,是 Live Share 來賓會話,也將通過https://vscode.dev/liveshareURL在瀏覽器中可用。在sessionId將被傳遞到擴展,使加入的體驗如絲般順滑。

vscode.devURL的可能性是無窮無盡的,我們很高興在未來幾個月內與你分享更多想法。

未來的路,怎么走?

將 VS Code 引入瀏覽器是對產品最初願景的實現。這也是一個全新的開始。

任何擁有瀏覽器和互聯網連接的人,都可以使用我們的編輯器。這是未來我們可以真正從任何地方編輯任何內容的基礎。

敬請期待更多!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM