🚀 在 VS Code 中

2022 年 11 月 (版本 1.74)

更新 1.74.1:此更新解決了這些問題

更新 1.74.2:此更新解決了這些問題

更新 1.74.3:此更新解決了此安全性問題

下載:Windows:x64 Arm64 | Mac:通用 Intel Silicon | Linux:deb rpm tarball Arm snap


歡迎使用 Visual Studio Code 2022 年 11 月版。此版本包含許多更新,我們希望您會喜歡,其中一些主要重點包括

如果您想在線上閱讀這些版本資訊,請前往 code.visualstudio.com 上的更新

Insiders: 想要盡快試用新功能嗎?您可以下載每晚組建的 Insiders 組建,並在最新更新可用時立即試用。

協助工具

筆記本執行的音訊提示

現在,當筆記本單元格完成執行時,會有音訊提示。提示音有所不同,以指示單元格執行成功或失敗。

差異檢閱模式的音訊提示

在差異編輯器中,當觸發前往下一個差異時,會播放特定的音訊提示,以指示游標是否位於插入或刪除的行上。

如果您對可用的音訊提示感到好奇,可以透過說明:列出音訊提示下拉式選單來收聽。

List Audio Cues dropdown

設定編輯器中的指示器、浮動提示和連結現在可以透過鍵盤導覽。也調整了一些連結的樣式,以在整個設定編輯器中獲得更好的一致性。

設定編輯器指示器浮動提示在跳位停靠點和維持鍵盤焦點方面,現在表現得更好。此改良的行為仍處於實驗階段,目前僅針對設定編輯器指示器浮動提示啟用,而不是針對 VS Code 中的所有浮動提示。

Navigating settings and a Modified elsewhere indicator in the Settings editor using the keyboard

佈景主題:淡粉色(在 vscode.dev 上預覽)

工作台

自訂 Explorer 自動顯示邏輯

高票的 問題 #87956(「允許針對特定資料夾設定 explorer.autoReveal」)已透過引入新的設定 explorer.autoRevealExclude 修正。此設定可讓您設定在啟用自動顯示時(explorer.autoReveal,預設為 true),哪些檔案會在 Explorer 中自動顯示。autoRevealExclude 設定使用 glob 模式排除檔案,並且類似於 files.exclude,也支援透過 when 子句進行同層級比對。

預設值會排除 node 和 bower 模組

{
  "explorer.autoRevealExclude": {
    "**/node_modules": true,
    "**/bower_components": true
  }
}

隱藏每個檢視容器的徽章

類似於您可以透過右鍵按一下檢視容器來隱藏檢視容器的方式,您現在可以隱藏容器上的徽章(顯示在活動列、面板和輔助側邊欄中)。徽章通常會顯示特定檢視容器的數字、圖示或進度指示器,例如,原始檔控制檢視的待定變更數。

A context menu is triggered on the Source Control view showing a Hide Badge entry. This is then selected and the blue number one badge disappears. Triggering the context menu again shows a Show Badge entry which brings the blue badge number one badge back.

合併編輯器

此版本發佈了一些針對合併編輯器的改進和錯誤修正。重點包括

  • 還原/取消還原現在會追蹤衝突的處理狀態。
  • 輸入檢視中的忽略動作可用於接受基本版本,而不是結果檢視中的標記為已處理動作。
  • 兩側相等的變更現在會自動解決。
  • 提供 git blame 功能的擴充功能現在可在傳入、目前和基本編輯器中使用。

安裝位於磁碟上的擴充功能

您現在可以使用開發人員:從位置安裝擴充功能... 命令來安裝位於本機磁碟機上的擴充功能。此命令將開啟平台資料夾對話方塊,以選取擴充功能的 .vsix 檔案位置。

編輯器

CJK 字元的新斷字選項

現在可以使用名為 editor.wordBreak 的設定來避免在 CJK 字元後插入換行點。當設定為 keepAll 時,換行演算法會嘗試將 CJK 字元後的文字保留在同一行上。此設定對其他腳本的字元沒有任何影響。

OpenType 字型的新字型設定

一些較新的字型支援 OpenType 字型變體,支援調整某些軸,例如字型粗細軸,以達到無法透過 font-weight CSS 屬性設定的字型粗細。在 CSS 中,這是透過 font-variation-settings 屬性實現的。如果您使用此類字型,您現在可以將 editor.fontVariations 設定為 true,這將導致 VS Code 使用 "wght" 顯示軸來設定字型粗細。如果您的字型支援其他軸,也可以直接設定它們,例如透過設定 "editor.fontVariations": "'ital' 0.5"

新的縮排大小設定

有一個名為 editor.indentSize 的新設定,允許將縮排大小(組成縮排的空格數)與 Tab 大小(用於呈現 Tab 字元的空格數)分開。這在處理使用混合 Tab 和空格縮排的檔案時很有用,並且只能在使用手動縮排設定時使用。

以下是範例設定

"editor.detectIndentation": false,
"editor.insertSpaces": true,
"editor.tabSize": 8,
"editor.indentSize": 2

部分接受內嵌完成的命令

接受下一個內嵌建議單字 (editor.action.inlineSuggest.acceptNextWord) 命令可用於接受目前內嵌建議的下一個單字/非單字區段。目前,它只能接受內嵌建議的第一行部分。此命令仍在開發中,我們正在探索鍵盤快速鍵以及未來版本的替代分割規則。

原始檔控制

管理不安全的 Git 儲存庫

VS Code 使用 git.exe 執行所有 Git 作業。從 Git 2.35.2 開始,使用者將無法在位於非目前使用者擁有的資料夾中的儲存庫中執行 Git 作業,因為該儲存庫被視為可能不安全。

從此版本開始,如果您嘗試開啟此類可能不安全的儲存庫,VS Code 將在原始檔控制檢視中顯示歡迎檢視,以及錯誤通知。歡迎檢視和通知都會公開管理不安全的儲存庫命令,可讓您檢閱可能不安全的儲存庫清單,將它們標記為安全並開啟它們。管理不安全的儲存庫命令也可在命令選取區中使用。將儲存庫標記為安全會將儲存庫位置新增至 safe.directory git 設定

樂觀的使用者介面更新

執行 Git 作業後,會執行一組 git 命令(例如,git status)以更新資料模型,然後再更新原始檔控制檢視。在某些情況下,執行這些命令可能需要幾秒鐘才能完成(例如,使用大型單一儲存庫時),導致原始檔控制檢視的重新整理延遲。

在此里程碑中,我們進行了變更,以便在 git status 完成之前,針對某些 Git 作業(暫存、取消暫存、捨棄變更和提交)樂觀地更新原始檔控制檢視,從而使原始檔控制檢視更快速。

新功能預設為啟用,但可以使用 git.optimisticUpdate: false 停用。

提交動作按鈕潤飾

提交動作按鈕正在執行次要提交命令時(例如,提交並同步),按鈕標籤現在會正確反映正在執行的命令。提交按鈕也會顯示動畫以指示進度。

終端機

終端機快速修正改進

終端機快速修復現在顯示在程式碼動作控制項中,以與編輯器中的體驗保持一致。

A Quick Fix is triggered in the terminal and a menu is presented with a play button to the left of the action's label

終端機下拉式選單中的工作動作

執行工作設定工作命令會顯示在終端機下拉式選單中,以提高可探索性和易於存取性。

The last section of the terminal dropdown menu contains Run Task and Configure Tasks commands

遠端開發

遠端通道現在以預覽功能的形式在 VS Code Stable 上提供。遠端通道可讓您從任何地方的任何裝置安全地存取您的機器上的 VS Code。若要啟用遠端通道存取,您可以擇一

  • 從帳戶選單或命令選取區中選擇開啟遠端通道存取
  • 從安裝了 VS Code 且位於 PATH 上的機器執行 code tunnel
  • 下載新的 VS Code CLI 並執行 ./code tunnel

開啟通道存取後,您可以使用 vscode.dev 從任何裝置連線到機器,或使用 VS Code Desktop 內的 Remote - Tunnels 擴充功能。

若要瞭解更多資訊,請查看我們發佈此功能的部落格文章遠端通道 文件。

佈景主題:Codesong(在 vscode.dev 上預覽)

注意: 如果您正在使用獨立的 code-server CLI,您現在應該改用 VS Code CLI(透過最新的 VS Code Desktop 或上述獨立下載)。

偵錯

JavaScript 偵錯

支援 console.profile

JavaScript 偵錯工具現在支援 console.profile。在偵錯工具下執行時,將會為 console.profile()console.profileEnd() 之間的程式碼收集 CPU 效能分析檔案。

console.profile();
doSomeExpensiveWork();
console.profileEnd();

產生的 .cpuprofile 檔案將儲存在您的工作區資料夾中,並且可以使用 VS Code 的內建 效能分析檢視器 開啟和檢視。

支援巢狀來源地圖

有時,尤其是在單一儲存庫設定中,原始程式碼可能會編譯一次,然後再次重新編譯或捆綁。在許多情況下,這會導致結果捆綁的來源地圖參考在第一步中建立的已編譯檔案。

JavaScript 偵錯工具現在會自動遞迴解析來源地圖,以便可以偵錯原始原始檔,而無需額外步驟。

killOnServerStop 屬性已新增至 serverReadyAction

serverReadyAction launch.json 功能可讓使用者啟動啟動 Web 伺服器的偵錯工作階段,然後在伺服器啟動後,自動開始偵錯導覽至該伺服器 URL 的瀏覽器。有一個新的屬性 killOnServerStop,當設定為 true 時,將導致新的瀏覽器偵錯工作階段在伺服器偵錯工作階段停止時自動停止。

例如

{
  "type": "node",
  "request": "launch",
  "name": "Launch Program",
  "program": "${workspaceFolder}/app.js",

  "serverReadyAction": {
    "pattern": "listening on port ([0-9]+)",
    "uriFormat": "https://127.0.0.1:%s",
    "action": "debugWithEdge",
    "killOnServerStop": true
  }
}

在上述範例中,當原始 Launch Program 偵錯工作階段停止時,自動啟動的 Edge 偵錯工作階段也會停止。

針對焦點偵錯工作階段顯示例外狀況中斷點

當執行兩種不同類型的偵錯工作階段時,管理例外狀況中斷點之前效果不佳。現在,當偵錯工作階段在呼叫堆疊檢視中成為焦點時,將會顯示該工作階段偵錯類型的正確中斷點集。

Exception breakpoints correctly shown per call stack frame

註解

comments.visible

新的設定 comments.visible 可用於關閉編輯器註解(註解列和編輯器內註解 Peek 檢視)。註解:切換編輯器註解命令仍然可用於在工作階段期間開啟和關閉編輯器註解。在註解檢視中選取註解將始終開啟註解。

註解檢視徽章

註解檢視會顯示未解決註解計數的徽章。

Comments view badge

工作

問題比對器「搜尋」檔案位置方法

先前,問題比對器需要透過 fileLocation 屬性確切知道在哪裡尋找有問題的檔案。支援的方法為 absoluterelativeautoDetect(先檢查相對路徑,然後在失敗時尋找絕對路徑)。

但是,在使用位於巢狀子目錄中的腳本的工作區中,很難設定工作,因為不同的腳本很少以統一的方式報告檔案路徑(例如,相對於工作區的基底目錄)。

為了協助解決此問題,有一個名為 search 的新檔案位置方法。使用此方法,將執行遞迴檔案系統搜尋,以尋找任何擷取的路徑。

以下範例顯示如何設定 search 檔案位置方法(儘管所有參數都是選用的)

"problemMatcher": {
    // ...
    "fileLocation": [
        "search",
        {
            "include": [ // Optional; defaults to ["${workspaceFolder}"]
                "${workspaceFolder}/src",
                "${workspaceFolder}/extensions"
            ],
            "exclude": [ // Optional
                "${workspaceFolder}/extensions/node_modules"
            ]
        }
    ],
    // ...
}

注意,使用者應注意造成耗時的檔案系統搜尋(例如,在 node_modules 目錄內尋找),並適當地設定 exclude 屬性。

語言

TypeScript 4.9

VS Code 現在隨附 TypeScript 4.9。此主要更新帶來了新的 TypeScript 語言功能,例如 satisfies 運算子自動存取子。在工具方面,我們對 檔案監看 進行了改進,並進行了許多其他修正和改進。

查看 TypeScript 4.9 公告,以瞭解有關此更新的更多資訊。

從 return 跳到定義

JavaScript 和 TypeScript 現在支援在 return 關鍵字上執行跳到定義,以快速跳到要從中傳回的函式頂端。這在處理冗長、複雜或高度巢狀的函式時很有用。您可以將跳到定義命令/鍵盤快速鍵用於此目的 (F12) 或僅需在 return 關鍵字上按一下 Cmd/Alt + Click

筆記本

核心選取器實驗:最近使用的核心

有一個新的筆記本核心選取器,會在選取器的頂端顯示最近使用的核心。這是一個選擇加入實驗,可以透過將 notebook.kernelPicker.type 設定設定為 mru 來啟用。

未使用的核心將移至輔助選取器選取另一個核心...。當您安裝最新的 Jupyter 擴充功能 時,此選取器會依其來源(例如:Jupyter 核心、Python 環境等)對所有核心進行分組。

Kernel picker with most recently used kernels

我們很樂意聽取您的意見反應,您可以在 VS Code 儲存庫 中建立問題。

適用於 Web 的 VS Code

原始檔控制

適用於 Web 的 VS Code 現在在編輯 GitHub 和 Azure Repos 儲存庫時支援以下設定

  • "git.branchRandomName.enabled" - 在適用於 Web 的 VS Code 中建立分支時,產生隨機分支名稱。
  • "git.branchRandomName.dictionary" - 在適用於 Web 的 VS Code 中建立分支時,指定用於產生隨機分支名稱的單字字典。
  • "git.closeDiffOnOperation" - 在執行原始檔控制作業(例如提交、暫存、取消暫存變更)後關閉差異編輯器。

此外,適用於 Web 的 VS Code 會在狀態列和受保護分支的分支選取器中顯示鎖定圖示,與 VS Code Desktop 上的體驗保持一致。

Lock icon for protected branches in the Status bar and branch picker

最後,您現在可以在適用於 Web 的 VS Code 中使用原始檔控制動作按鈕來提交變更並直接推送至儲存庫遠端

Commit & Push using source control action button

如果您希望在提交之前驗證變更,您也可以在動作按鈕下拉式選單中使用次要繼續在...上工作動作,將您的工作變更帶到另一個開發環境。

「繼續在...上工作」的改進

當您在 GitHub 或 Azure Repos 儲存庫中時,命令選取區中現在提供了方便的一步命令,可將您的工作變更帶到特定的開發環境

  • 繼續在新的 Codespace 中工作
  • 繼續在本機複製中工作
  • 繼續在 VS Code Desktop 上的遠端儲存庫中工作

One step commands to continue working in another development environment

我們也將編輯工作階段重新命名為雲端變更,以闡明它與在雲端儲存工作變更有關。

擴充功能貢獻

Jupyter

筆記本單元格偵錯的「僅我的程式碼」

「僅我的程式碼」偵錯功能可讓您決定偵錯工具是否會逐步執行 Python 程式庫中的程式碼,或僅逐步執行您的原始程式碼。在偵錯筆記本單元格時,預設已啟用此功能,但您可以設定 "jupyter.debugJustMyCode": false 以停用它,並讓您逐步執行程式庫程式碼。為了獲得最佳體驗,請將您環境中的 debugpy 升級到 >=1.6.3。先前,debugJustMyCode 設定僅在互動式視窗中偵錯時才受到尊重,現在它也適用於筆記本編輯器。

支援重新啟動筆記本單元格偵錯工作階段

偵錯工具列中的重新啟動命令會重新啟動目前的偵錯工作階段。先前,這會在筆記本偵錯工作階段中擲回錯誤,但現在已支援。不幸的是,在互動式視窗中無法正確支援它。

當您偵錯、編輯單元格,然後重新啟動偵錯工作階段以使用您套用的編輯再次偵錯單元格的工作流程中,此功能特別有用。

遠端開發擴充功能

遠端開發擴充功能可讓您使用容器、遠端機器或 Windows Subsystem for Linux (WSL) 作為功能完整的開發環境。此版本的重點包括

  • 開發容器 GPU 支援
  • 開發容器 Cygwin / Git Bash Socket 轉發
  • Remote - Tunnels 擴充功能 - 連線到遠端機器,無需 SSH。

您可以在 遠端開發版本資訊 中瞭解新的擴充功能功能和錯誤修正。

GitHub Pull Requests and Issues

GitHub Pull Requests and Issues 擴充功能方面取得了更多進展,可讓您處理、建立和管理提取要求和問題。重點包括

  • 筆記本支援永久連結命令。
  • 提取要求檢查狀態(例如持續整合 (CI) 進行中、需要檢閱、CI 失敗等)顯示在提取要求樹狀檢視中。
  • 可以從提取要求概觀複製 PR 的 vscode.dev 連結。
  • 前往提取要求中的下一個差異命令會導覽至跨檔案的已簽出 PR 中的下一個差異。

查看擴充功能 0.56.0 版本的變更記錄,以查看其他重點。

預覽功能

設定檔

在過去幾個月中,我們一直致力於在 VS Code 中支援設定檔,這是社群最受歡迎的要求之一。此功能可透過 workbench.experimental.settingsProfiles.enabled 設定進行預覽。試用一下,並在 vscode 儲存庫 中建立問題或在 問題 #116740 中留言,向我們提供您的意見反應。

共用設定檔

您現在可以透過將設定檔匯出到 GitHub 作為 gist 來共用設定檔。VS Code 將使用您的 GitHub 帳戶建立秘密 gist,並提供您連結以與他人共用。當您開啟該連結時,VS Code 將要求您安裝共用的設定檔。在匯出或匯入設定檔期間,VS Code 將顯示預覽,以便您可以檢閱並選擇要分別匯出或匯入的資料。

以下是將設定檔匯出到 GitHub,然後複製連結以與他人共用的影片

Exporting a Profile

此影片顯示透過開啟共用連結匯入設定檔

Importing a Profile

擴充功能簽署和驗證

從 11 月中旬開始,所有上傳到 Visual Studio Marketplace 的 VS Code 擴充功能都由 VS Marketplace 簽署 - 此流程稱為儲存庫簽署。在每次擴充功能安裝和更新時,VS Code 都會驗證擴充功能套件簽章。透過簽署和簽章驗證,我們可以保證擴充功能套件的完整性和真實性。

簽章驗證目前僅在 VS Code Insiders 中完成。如果您發現任何問題,可以透過在 vscode 儲存庫 中建立問題來告知我們,您可以透過將 extensions.verifySignature 設定為 false 來選擇退出簽章驗證。我們正在努力在未來幾個月內在 VS Code Stable 中啟用簽章驗證。

除了儲存庫簽署外,我們也開始著手 擴充功能發行者簽署

Web 中的 Python 執行

我們為 Experimental - Python for the Web 擴充功能新增了偵錯支援。偵錯工具支援以下功能

  • 設定中斷點
  • 逐步執行和跳出函式
  • 跨模組偵錯
  • 在偵錯主控台中評估變數
  • 在整合式終端機中偵錯程式

以下螢幕擷取畫面顯示偵錯 Hello World 程式

Python debugging in VS Code for the Web

注意,使用擴充功能仍需要您將以下查詢參數新增至瀏覽器 URL ?vscode-coi=

擴充功能撰寫

宣告的擴充功能貢獻的隱含啟動事件

在此里程碑中,如果您的擴充功能在其 package.json 中宣告了某些擴充功能貢獻,我們取消了明確列出啟動事件的要求。

先前,如果擴充功能宣告它在其 package.json 檔案中貢獻了一個命令 mycommand,它也需要在 package.jsonactivationEvents 欄位中列出對應的 onCommand:mycommand 啟動事件,命令才能成功執行。這既繁瑣又容易出錯,並且可能導致 package.json 檔案變得很大。

VS Code 現在將自動為以下擴充功能貢獻點填入啟動事件

貢獻點 推斷的啟動事件
commands onCommand
authentication onAuthenticationRequest
languages onLanguage
customEditors onCustomEditor
views onView

擴充功能作者現在可以安全地從您的擴充功能中移除這些推斷的啟動事件。如果您這樣做,請更新您的 VS Code 引擎需求,以確保您的擴充功能不會被視為與舊版 VS Code 相容

    "engines": {
        "vscode": "^1.74.0"
    },

記錄輸出通道

在此里程碑中,我們最終確定了 LogOutputChannel API。您現在可以使用此 API 建立記錄輸出通道,該通道將用於記錄來自您擴充功能的訊息。

我們也最終確定了 env 命名空間中的 logLevel 屬性和 onDidChangeLogLevel 事件,以指示應用程式的目前記錄層級,並在應用程式的記錄層級變更時觸發事件。

所有 Webview 的一致來源

繼承 我們上次迭代的工作,VS Code 中的所有 Webview 現在都嘗試維護自訂來源。在 1.74 中,這也延伸到自訂編輯器使用的 Webview。

這透過允許在更多情況下快取 Webview 內容來提高效能。請參閱 先前的版本資訊,以瞭解更多詳細資訊以及作為擴充功能作者需要注意的事項。

擴充功能 README 中支援影片標籤

擴充功能現在可以在其 README 中使用 <video> 標籤。VS Code Marketplace 和 VS Code 中的擴充功能檢視頁面都支援影片。與 .gif 相比,影片檔案品質更高,而且通常也更小。您甚至可以包含音訊!

請記住,僅 VS Code 本身支援特定的影片和音訊格式。目前,您還必須使用 <video> srcposter 的完整路徑,而不是相對路徑。

註解執行緒其他動作

新的選單位置 comments/commentThread/additionalActions 允許擴充功能為註解執行緒貢獻始終可見的按鈕。

Visible button in a comment

將 vsce 重新命名為 @vscode/vsce

vsce 工具,VS Code 的擴充功能管理員,已重新命名為 @vscode/vsce。對於任何將該工具用作程式庫的人來說,這是一個重大變更。CLI 工具仍然稱為 vsce,並且可以透過 npm install -g @vscode/vsce 安裝。

偵錯配接器協定

偵錯配接器協定 新增了一些說明和一個新屬性。

  • DataBreakpointInfo 要求有一個新的選用 frameId 屬性。用戶端可以使用此旗標來指定哪個堆疊框架包含 name 變數。
  • 現在為 readMemory 要求指定了檔案結尾行為。

工程

屬性和方法的名稱混淆

在本次產品建置中,我們修改了屬性和方法的名稱。這減少了主要 bundle 約 13% 的大小(-1.5 MB),並縮短了約 5% 的程式碼載入時間。

GitHub & Microsoft Authentication 擴充功能 bundle 大小改善

考量到 GitHub Authentication 和 Microsoft Authentication 這兩個擴充功能提供的功能,以及它們在許多情況下(例如 vscode.dev)對於啟動的重要性,它們的 bundle 大小超出我們的預期。在這個里程碑中,我們專注於縮減這些擴充功能的大小,以下是成果

  • GitHub Authentication:93 KB -> 64.9 KB
  • Microsoft Authentication:97 KB -> 57.7 KB

達成此目標的方式如下:

  • 不再依賴(以及捆綁)在 Node.js 和 Web 中已可輕易取得功能的 node 模組(例如,移除 uuid,改用 Crypto.randomUUID())。
  • 僅在 Node.js 中使用 node-fetch,而不是同時用於 Node.js 和 Web。
  • 採用最新版本的 @vscode/extension-telemetry,其大小已大幅縮減。

在此過程中,功能並未減少,且由於這些擴充功能的大小縮減,現在載入速度更快。

Electron 沙箱旅程

您可以在最近發布的「將 VS Code 遷移至程序沙箱」部落格文章中,了解我們在啟用 Electron 沙箱方面的進展。這篇詳細的文章介紹了技術時程,並描述了為支援 VS Code 沙箱所做的漸進式變更。

如果您想試用 VS Code 沙箱模式,可以在設定中設定 "window.experimental.useSandbox": true。希望您不會注意到任何功能上的差異,但如果您發現任何問題,請回報給我們。

在 Windows 上重新預設啟用視窗控制項覆疊

視窗控制項覆疊 (WCO) 已重新預設啟用。它先前在八月時已啟用,但之後又再次停用,因為對於使用由右至左系統語言的使用者而言,它渲染在錯誤的側邊,遮蓋了檔案編輯選單項目。

主要問題在於 VS Code 沒有將應用程式地區設定傳遞給 Electron,因此 Electron 使用系統地區設定來判斷 WCO 的放置位置。然而,VS Code 依賴 Electron 的 app.getLocale() API 來取得系統語言,並判斷要建議哪個語言套件,而將應用程式地區設定傳遞給 Electron 會導致 app.getLocale() 傳回相同的地區設定,而不是系統語言。

為了修正此問題,我們在 Electron 中新增了一個新的 app.getPreferredSystemLanguages() API,如此一來,即使在將地區設定傳遞給 Electron 之後,我們仍然可以取得系統語言,以用於 VS Code 的語言套件推薦工具,同時讓 WCO 保持在正確的側邊。

VS Code with the custom title bar along with Paint's title bar. The screenshot is taken on Windows 11 with the system language in Arabic, showing that the WCO is on the right for VS Code, which is in English, while it is on the left for Paint, which is in Arabic.

內建擴充功能現在使用新的 l10n API 而非 vscode-nls

上個月,我們穩定了新的本地化 (l10n) API。本月,我們已在 Microsoft/vscode 儲存庫中找到的每個擴充功能中採用了該 API。我們仍然需要將語言伺服器遷移到使用 @vscode/l10n 而非 vscode-nls,以及團隊擁有的其他一些擴充功能(JS Debug、Python、Jupyter Notebooks 等),但我們正朝著正確的方向前進,為我們所有的擴充功能提供單一的本地化方案。

值得注意的修正

感謝您

最後但同樣重要的是,衷心感謝 VS Code 的貢獻者。

問題追蹤

對我們的問題追蹤的貢獻

提取請求

vscode 的貢獻

vscode-css-languageservice 的貢獻

vscode-eslint 的貢獻

vscode-js-debug 的貢獻

vscode-json-languageservice 的貢獻

vscode-pull-request-github 的貢獻

debug-adapter-protocol 的貢獻

devcontainers/cli 的貢獻