2021 年 7 月 (1.59 版本)
更新 1.59.1:此更新解決了這些 問題。
此版本還解決了 CVE-2021-26437。
下載:Windows:x64 Arm64 | Mac:Universal Intel silicon | Linux:deb rpm tarball Arm snap
歡迎使用 Visual Studio Code 2021 年 7 月版。此版本包含許多我們希望您會喜歡的更新,其中一些主要亮點包括:
- 擴充功能檢視改進 - 豐富的擴充功能詳細資訊懸停效果、新的執行階段狀態索引標籤。
- 設定編輯器驗證 - 快速找出物件型設定的編輯錯誤。
- 拖放終端機 - 將終端機跨視窗移動到編輯器與面板區域。
- 擴充主題自訂 - 同時自訂多個色彩主題。
- 內建 Jupyter Notebook 支援 - 直接在 VS Code 中開啟
.ipynb檔案。 - Notebook UI 改進 - 顯示摺疊單元格的第一行,以及支援單元格層級的復原/取消復原。
- 測試 API 定案 - 透過內建的測試總管 (Test Explorer) 原生支援在 VS Code 中執行測試。
- 偵錯反組譯檢視預覽 - 在 VS Code 中顯示 C++ 反組譯代碼。
- 即時預覽 (Live Preview) 擴充功能 - 在 VS Code 內進行即時 HTML 預覽並支援 JavaScript 偵錯。
- 開發容器 devcontainer CLI - 用於處理開發容器的命令列介面。
如果您想在線上閱讀這些發行說明,請前往 code.visualstudio.com 上的 Updates。
歡迎參加我們在太平洋時間 8 月 10 日上午 8 點(倫敦時間下午 4 點)舉辦的 VS Code 團隊直播,觀看此版本的新功能展示,並進行現場問答。
Insiders: 想要盡早嘗試新功能嗎?您可以下載每夜更新的 Insiders 版本,並在第一時間嘗試最新的更新。
工作台 (Workbench)
延伸模組
改進了調整大小時的擴充功能檢視。在下方的短片中,預設寬度的擴充功能檢視顯示了所有詳細資訊(先前未顯示圖示、評分和安裝次數)。當視窗縮小時,會顯示較小的擴充功能圖示;當寬度進一步減小時,圖示和評分將會隱藏。

佈景主題:GitHub Light Theme
現在,擴充功能檢視會在擴充功能上顯示自訂懸停效果。這個豐富的懸停資訊包含擴充功能的完整描述以及其他實用資訊,例如擴充功能為何被停用或被推薦。

佈景主題:GitHub Light Theme
您現在可以在擴充功能窗格中新的執行階段狀態 (Runtime Status) 索引標籤查看擴充功能的執行階段狀態。狀態資訊包括其啟動時間、是否在啟動時啟動,以及是否有任何警告或錯誤。部分資訊也會顯示在擴充功能檢視及其懸停效果中(如上圖所示)。

佈景主題:GitHub Light Theme
擴充功能窗格的「詳細資料」索引標籤現在顯示類別、資源連結以及其他資訊,例如擴充功能的發佈和更新日期。選取一個類別將會在擴充功能檢視中顯示該類別的其他擴充功能。

佈景主題:GitHub Light Theme
設定編輯器
設定編輯器現在支援物件驗證。驗證功能會檢查直接編輯 JSON 檔案時可能產生的型別錯誤。

陣列設定現在在非編輯模式下支援拖放功能。此外,屬性 uniqueItems 設定為 true 的列舉陣列設定,現在在下拉選單中只會顯示剩餘選項,而不是全部選項。

設定編輯器現在也支援多行字串設定,其值會呈現為多行文字區域,而非單行輸入框。

擴充主題自訂語法
下列列出的色彩自訂設定允許使用者自訂目前主題的色彩。
workbench.colorCustomizationseditor.tokenColorCustomizationseditor.semanticTokenColorCustomizations
現在有新的語法可以同時自訂多個主題。
"workbench.colorCustomizations": {
"[Abyss][Red]": {
"activityBar.background": "#ff0000"
},
"[Monokai*]": {
"activityBar.background": "#ff0000"
}
},
可以列出多個主題,並在名稱的開頭和結尾使用 * 萬用字元。
支援 Jupyter Notebook
本月,我們將處理讀取 *.ipynb 檔案的程式碼從 Jupyter Notebook 擴充功能移至一個新的內建擴充功能中。這意味著您現在可以在乾淨安裝的 VS Code 中開啟 Jupyter Notebook,而無需安裝完整的 Jupyter 擴充功能。不過,如果您想要執行單元格或檢視使用 ipywidgets 或其他複雜轉譯類型的輸出,則仍需安裝 Jupyter 擴充功能。
Notebook 版面配置改進
我們在此迭代中對 Notebook 版面配置進行了一些改進。
- 現在在單元格摺疊時,會渲染單元格輸入的第一行。
- 當視窗寬度不足以顯示所有主要動作時,Notebook 編輯器工具列上的動作將會移至溢位選單 (...) 中。
notebook.undoRedoPerCell的預設值現已更改為true。

我們也更新了程式碼單元格的預設樣式,現在會顯示背景顏色以幫助區分不同的單元格。主題可以使用 notebook.cellEditorBackground 來對此顏色進行自訂。

最後,您現在可以使用 notebook.globalToolbarShowLabel 設定來切換顯示 Notebook 工具列上的文字標籤。

設定「複製相對路徑」的路徑分隔符號
新增的設定 explorer.copyRelativePathSeparator 允許您在執行複製相對路徑 (Copy Relative Path) 動作時,明確設定路徑分隔符號。
可用的分隔符號選項如下:
auto(預設)- 使用作業系統特定的路徑分隔字元。/- 使用斜線作為路徑分隔字元。\\- 使用反斜線作為路徑分隔字元。
在編輯器群組間共用檢視狀態
新增了設定 workbench.editor.sharedViewState,用於設定編輯器檢視狀態(例如編輯器中的捲動位置)如何在編輯器群組之間共用。
預設情況下,此設定為停用,以保留目前的行為。如果您在側邊開啟編輯器並稍後關閉該編輯器群組,然後再次在側邊開啟該編輯器,則不會恢復檢視狀態,因為您開啟的是一個新的編輯器群組。然而,當您啟用此設定時,最新的編輯器檢視狀態將會在所有編輯器群組之間保留並使用,除非該編輯器群組有更明確的檢視狀態。
下圖展示了在側邊重新開啟 package.json 檔案時,選取狀態是如何被保留的。

編輯器
在摺疊區域間導覽
我們新增了將游標位置設定到對應摺疊區域的命令:
- 前往下一個摺疊 (Go to Next Fold) (
editor.gotoNextFold) - 前往上一個摺疊 (Go to Previous Fold) (
editor.gotoPreviousFold) - 前往父摺疊 (Go to Parent Fold) (
editor.gotoParentFold)
這些命令目前沒有預設快速鍵,但您可以透過喜好設定:開啟鍵盤快速鍵 (Preferences: Open Keyboard Shortcuts) (⌘K ⌘S (Windows, Linux Ctrl+K Ctrl+S)) 新增您自己的快速鍵。
自動摺疊匯入語句
使用設定 editor.foldingImportsByDefault 可以自動摺疊匯入語句。摺疊狀態會在檔案開啟過一次後儲存。此功能適用於 TypeScript、JavaScript、Java、C#、C++ 以及所有提供摺疊範圍供應器且將匯入語句標記為 FoldingRangeKind.Imports 的語言。
從選取範圍設定搜尋字串
尋找控制項設定 editor.find.seedSearchStringFromSelection 已擴充,支援僅從非空白的選取範圍進行搜尋字串設定。預設情況下,當顯示尋找控制項時,編輯器將使用選取範圍或空選取範圍周圍的單字作為搜尋關鍵字。
內嵌建議改進
我們改變了內嵌建議的渲染方式。這不僅修復了許多錯誤,還使得自動換行功能能夠識別內嵌建議。
此外,現在支援非結尾位置的多行內嵌建議。
嵌入提示 (Inlay Hints) 改進
我們也改變了嵌入提示的渲染方式。透過使用與內嵌建議相同的機制,現在嵌入提示也納入自動換行的考量中。此機制也支援嵌入提示周圍的游標停止點。
終端機
跨視窗拖放終端機
您可以將終端機從一個視窗的標籤清單或編輯器區域拖放到另一個視窗的標籤清單、編輯器區域或面板中。

子程序追蹤與關閉警告
現有的 terminal.integrated.confirmOnExit 和新的 terminal.integrated.confirmOnKill 設定使用子程序追蹤,當您嘗試關閉具有 Shell 程序下子程序的終端機時會顯示警告。預設情況下,此追蹤僅影響編輯器區域中的終端機,但現在可以設定為顯示所有終端機或僅面板區域終端機的警告。
將擴充功能提供的終端機設定檔設為預設
擴充功能提供的終端機設定檔現在可以設為預設設定檔。預設終端機設定檔會以預設 (Default) 後綴在終端機下拉選單中標示。

底線與刪除線支援
整合終端機現在支援底線與刪除線屬性。例如,Git 可以設定使用這些新屬性。

上述範例在 .gitconfig 中使用了下列設定。
[color "status"]
added = green bold
changed = red bold strike
untracked = cyan
branch = yellow black bold ul
在編輯器區域側邊建立終端機
新增了命令 workbench.action.createTerminalEditorSide,用於在作用中編輯器的側邊建立終端機。
作用中終端機標籤指示器
主題現在可以使用主題鍵 terminal.tab.activeBorder 設定垂直線的顏色,以指示作用中的終端機標籤。

如果未設定 terminal.tab.activeBorder,顏色將會回退到 tab.activeBorder。
停用終端機標籤圖示動畫
新的設定 terminal.integrated.tabs.enableAnimation 將停用終端機標籤圖示的動畫。對於工作 (Tasks),將使用播放按鈕取代旋轉動畫。

偵錯
編輯器標題中的「執行/偵錯」按鈕改進
在 2 月版中,我們引入了一個下拉按鈕,將「執行」和「偵錯」命令分組在編輯器標題區域的中央(且緊湊)位置(請參閱 1.54 版本說明)。根據使用者回饋,我們試圖透過記錄上一次執行的動作來改進此下拉按鈕。該下拉按鈕現在具有兩個點擊區,左側用於預設動作,右側用於下拉選單;選取動作時會執行該動作並將其記為新的預設值。

下拉選單行為
- 如果只有一個「執行」或「偵錯」動作,則會省略下拉選單。
- 如果有多於一個「執行」或「偵錯」動作,所有動作都會出現在下拉選單中,且預設動作將設為下拉選單中的第一個動作(前提是沒有已記錄的動作)。
- 特定工作區的預設動作會在 VS Code 重啟後保留;它不會針對每個編輯器分別保留。
對擴充功能的貢獻
Live Preview
上個月發佈的 Live Preview 擴充功能有了一些令人興奮的新功能,包括:
- 與用於外部預覽的內建 JavaScript 偵錯器相容。
- 執行 Live Preview: Show Debug Preview 來嘗試一下!
- 內嵌瀏覽器的改進,例如「在頁面中尋找」支援和快速存取
webview開發者工具。 - 針對自動產生的檔案進行檔案系統監控。
- 還有更多!🎉
欲查看本月進展的更多詳細資訊,請參閱 該擴充功能的發佈說明。


GitHub Pull Requests and Issues
我們持續致力於 GitHub Pull Requests and Issues 擴充功能的開發,它讓您可以處理、建立並管理 Pull Request 和 Issue。本月的一個亮點是,開始處理 (Start working) Issue 的功能已擴充,讓您可以處理當前儲存庫以外的 Issue。
若要了解所有新功能和更新,您可以參閱該擴充功能 0.29.0 版本的完整變更日誌。
Jupyter
我們持續致力於 Jupyter 擴充功能的開發。若要了解所有新功能和更新,您可以閱讀該擴充功能 7 月版本的完整變更日誌。
如果您想進一步了解 VS Code 如何實現 Notebook 原生支援的發展路徑,可以閱讀最近的 Notebook 的成熟 (Coming of Age of Notebooks) 部落格文章。
互動式視窗
Jupyter 互動式視窗提供了一種使用文字檔案而非 Notebook 介面來建立和處理 Jupyter Notebook 的替代方式。上個月,我們預覽了 Jupyter 互動式視窗的升級版本,該版本具有更深度的 Workbench 整合,包括對主題、自訂快速鍵、程式碼片段、擴充功能相容性等的支援。非常感謝透過 GitHub 問題為預覽體驗提供回饋的使用者。內建的互動式視窗現已成為 1.59 中的預設介面。先前的介面仍可透過設定 "jupyter.enableNativeInteractiveWindow": false 使用,並將在未來的版本中移除。我們期待您的回饋。

逐行執行 (Run By Line)
我們一直在努力支援 Jupyter Notebook 中的「逐行執行」功能。此功能本質上是一種簡化的偵錯模式,讓您無需任何複雜的偵錯 UI,即可逐行逐步執行單元格的程式碼。這目前仍處於實驗階段,但您可以透過設定 "jupyter.experimental.debugging": true,在選取的 Kernel 中安裝 ipykernel 第 6 版,然後選取單元格工具列中的逐行執行 (Run By Line) 按鈕來嘗試使用。

Python
在 Python 擴充功能中,我們改進了 Python 直譯器清單的排序方式。過去,虛擬環境會顯示在清單底部,導致需要大量的捲動和/或搜尋。現在,位於專案根目錄的虛擬環境會優先顯示,隨後才是全域安裝的環境。

開發容器 devcontainer CLI
用於在 VS Code 內使用 Docker 容器的 Dev Containers 擴充功能,現在包含一個 devcontainer 命令列介面,讓您可以在開發容器內開啟資料夾 (devcontainer open) 或建置開發容器映像檔 (devcontainer build)。
您可以參閱 遠端開發 (Remote Development) 發佈說明,了解更多新功能與錯誤修復。
預覽功能
未命名檔案的自動語言偵測
我們很高興宣佈未命名檔案自動語言偵測的初步預覽版。它利用機器學習來偵測您正在編寫的語言,並自動設定該未命名檔案的語言模式。此功能使用開源 ML 函式庫 Tensorflow.js,以及由 GitHub 使用者 @yoeo 提供的 Guesslang ML 模型。
在此版本中,此功能預設為關閉,但我們計畫在下個迭代中使其成為預設值。若要啟用它,請套用下列設定:
"workbench.editor.untitled.experimentalLanguageDetection": true
要體驗此功能,請開啟一個未命名的檔案(檔案 (File) > 新檔案 (New File))並將原始程式碼貼入編輯器中。
以下是 Python 程式碼自動偵測的範例:

佈景主題:Panda Theme
此外,您可以透過開啟語言選擇器查看偵測到的語言。

佈景主題:Panda Theme
注意:如果語言偵測不夠自信,您將保持目前的語言模式,且在語言偵測具有足夠信心之前,語言選擇器中不會顯示結果。
此設定也允許您提供語言覆寫,以指定您不希望自動切換的語言模式。
以下是不自動偵測 Markdown 檔案的範例:
"workbench.editor.untitled.experimentalLanguageDetection": true
"[markdown]": { "workbench.editor.untitled.experimentalLanguageDetection": false }
使用上述設定,當您編輯未命名的 Markdown 檔案時,自動語言偵測將不會執行。然而,如果您修改任何其他類型的未命名檔案,自動語言偵測將會根據這些檔案的內容執行。
我們將與 ML 模型互動的程式碼分離為獨立的函式庫,並以 npm 套件的形式發佈在 vscode-languagedetection 儲存庫中。
請讓我們知道自動語言偵測對您的效果如何!
TypeScript 4.4
此版本包含對即將推出的 TypeScript 4.4 的支援。您可以在 TypeScript 部落格閱讀更多關於新語言特性和改進的資訊。一些工具亮點包括:
- JavaScript 和 TypeScript 檔案中參數名稱和型別的嵌入提示。
- 純 JavaScript 檔案中的基本拼字建議。僅在 TypeScript 語言服務對錯誤和修復方案具有信心時才會顯示。
若要開始使用 TypeScript 4.4 夜間建置,請安裝 TypeScript Nightly 擴充功能。
請分享您的回饋,若遇到 TypeScript 4.4 的任何錯誤,請告訴我們。
反組譯 (Disassembly) 檢視
感謝 Microsoft C++ 團隊的大力貢獻,我們很高興在此里程碑中包含偵錯反組譯檢視的預覽功能。
反組譯檢視可以從編輯器的右鍵選單開啟,用以顯示作用中堆疊框架的反組譯原始碼。它支援逐步執行組合語言指令,並可在個別指令上設定中斷點。
反組譯檢視僅在作用中的偵錯工作階段,且底層偵錯擴充功能支援時才可用。截至今日,僅 Microsoft C++ 和 Mock Debug 擴充功能可以提供資料給反組譯檢視。

從技術角度來看,VS Code 的反組譯檢視實作現在支援偵錯轉接器協定 (DAP) 的四項額外功能:
- 用於為記憶體位置提供反組譯原始碼的
disassembly請求。 - 堆疊框架上的
instructionPointerReference屬性。 - 逐步請求上的
granularity屬性。 - 指令中斷點和
setInstructionBreakpoints請求。
擴充功能編寫
測試 API
去年秋天,我們開始在 VS Code 中新增執行測試的原生支援,本月第一組與測試相關的 API 已定案。這些 API 與先前擴充功能中所使用的方案相比,提供了更大的靈活性、更好的效能以及更豐富的 UX。請查看編寫測試擴充功能的指南以深入了解。

主題:codesong
Test Explorer UI 擴充功能的現有使用者可以透過將 testExplorer.useNativeTesting 設定為 true 來獲得原生體驗。然而,這種轉換反映了 Test Explorer UI 擴充功能的現有 API,因此某些功能(如豐富的差異比對支援)尚未包含在內。
最早採用測試 API 的擴充功能之一是包含在 Extension Pack for Java 中的 Microsoft Test Runner for Java。

「新增檔案」選單的貢獻點
提供建立新檔案編輯器(例如 Notebook 或自訂編輯器)方法的擴充功能,現在可以貢獻命令至新的 file/newFile 選單貢獻點。此選單可以從歡迎頁面的新檔案... (New File...) 項目或「檔案」選單中存取。

豐富的狀態列懸停
狀態列項目現在支援包含連結和圖示的豐富懸停效果:StatusBarItem.tooltip: string | IMarkdownString。

- 如果
MarkdownString.supportThemeIcons為 true,您可以使用$(iconName)語法使用圖示。 - 如果
MarkdownString為受信任的,您也可以新增命令連結。語法:([test](command:vscode.newWindow))。
狀態列警告顏色
代表警告的狀態列項目可以使用新加入的顏色 statusBarItem.warningBackground 和 statusBarItem.warningForeground。
無 additionalProperties 的物件設定
物件設定必須將 additionalProperties 設定為 false,才能在設定編輯器中獲得支援。否則,設定編輯器會將該設定解釋為可以採用任何形狀的複雜設定,並將使用者引導至設定 JSON 檔案。
多行字串設定
若要在設定編輯器中增加對多行字串設定的支援,請將 "editPresentation": "multilineText" 以鍵值對的形式新增至字串設定。將字串設定變更為多行,會導致設定編輯器在多行文字區域中渲染設定值,而非單行輸入框。
更新後的圖示 (codicons)
我們已將以下新圖示新增至我們的 Codicon 庫:
![]()
azurecompass-activecompass-activecompass-dotcompassdebug-alldebug-coveragegit-pull-request-closedgit-pull-request-draftissue-draftlayers-activelayers-dotlayers
文字文件變更原因
當觸發 workspace.onDidChangeTextDocument 事件時,事件物件上的新屬性 reason 會指出文字變更是由「復原」還是「取消復原」操作所引起。
語言伺服器通訊協定 (Language Server Protocol)
新版的 語言伺服器協定 (LSP) 以及對應的 npm 模組已經發佈。3.17 版本包含了一項關於完成項目標籤詳細資訊的提案,這與 VS Code 本身的最新變更保持一致。
偵錯配接器通訊協定 (Debug Adapter Protocol)
定案「writeMemory」請求與「memory」事件提案
writeMemory 請求已定案,現在可用於 偵錯轉接器協定 (DAP) 1.48 版本及對應的 npm 模組。如果偵錯轉接器具有 supportsWriteMemoryRequest 功能,客戶端可以使用 writeMemory 請求將位元組寫入指定位置的記憶體中。
memory 事件有一個提案,將在下個里程碑加入至 DAP 中。
提議的擴充功能 API
每個里程碑都會帶來新的提議 API,擴充功能作者可以嘗試使用它們。一如既往,我們希望得到您的回饋。以下是嘗試提議 API 的步驟:
- 您必須使用測試版 (Insiders),因為提議的 API 會經常變動。
- 您必須在延伸模組的
package.json檔案中包含此行:"enableProposedApi": true。 - 將最新版本的 vscode.proposed.d.ts 檔案複製到專案的原始碼位置。
您不能發布使用提議 API 的擴充功能。下一個發行版中可能會有破壞性變更,我們絕不想破壞現有的擴充功能。
TaskGroup 的 isDefault
定義在 tasks.json 檔案中的任務具有 group 屬性,此屬性也透過任務 API 公開。group 屬性包含 isDefault 屬性,該屬性此前在 API 中無法使用。此提案將 isDefault 屬性以唯讀方式公開在 TaskGroup 上,因此擴充功能可以讀取哪一個任務是該群組的預設值,但不能透過設定群組的預設值來覆寫使用者的配置。
AuthenticationGetSessionOptions 的 forceRecreate
到目前為止,用於取得驗證會話物件的 getSession API 無法要求使用者登入。對於使用 SAML/單一登入 (SSO) 的 GitHub 等驗證服務來說,當 SSO 會話過期且存取權杖失去資源存取權時,提示登入是有必要的。此提案為 AuthenticationGetSessionOptions 新增了另一個屬性 forceRecreate,允許您要求使用者重新登入。使用者會看到一個與指定 createIfNone 時類似的強制回應視窗。
工程相關
桌面端全面採用 iframe 型 webview
本月我們完成了從 Electron 的 webview 標籤元素轉換為標準 <iframe> 元素型 webview 的工作。這使得 VS Code 的 webview 在桌面端和 Web 端的實作更加一致,也讓我們得以刪除許多現在多餘的程式碼。
Electron 13 更新
在此里程碑中,我們完成了將 Electron 13 整合至 VS Code 的探索工作,感謝所有參與測試和在 Insiders 版本中進行自我託管的人員。這是一個重大版本更新,隨附 Chromium 91.0.4472.124。此版本中 Node.js 版本沒有變更,將保持為 v14.16.0。
Electron 沙盒支援的進度
隨著我們持續讓 VS Code Workbench 準備好啟用 Electron 的 沙盒 (sandbox),我們希望在 Linux 上啟用混合沙盒模式,並不再於發佈的 deb、rpm、snap 和 tar 壓縮包中綁定 CLI 引數 --no-sandbox。Chromium 在 Linux 上具有多層次沙盒模型。如果 Chromium 無法針對第一層使用命名空間沙盒,它將嘗試透過隨應用程式二進位檔一起提供的輔助二進位檔 chrome-sandbox 來使用 setuid 沙盒。為了使 setuid 二進位檔能夠運作,它需要滿足下列條件:
- 沙盒二進位檔必須能被 Chromium 程序執行。
- 它必須是 SUID 且能被其他人執行。
我們已經為 deb 和 rpm 軟體包保留了這些條件。目前在 snap 中無法達成這些權限,我們已建立追蹤 問題 #127140 來處理未來的 snap 軟體包。
至於使用 tar 壓縮檔,如果應用程式無法使用命名空間沙盒(例如在容器內執行時),它將失敗並出現下列錯誤:
FATAL:setuid_sandbox_host.cc(158)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that chrome-sandbox is owned by root and has mode 4755.
如果發生這種情況,您可以使用下列兩種選項之一來解決:
-
修復
setuid輔助程式的權限sudo chown root <path-to-vscode>/chrome-sandbox sudo chmod 4755 <path-to-vscode>/chrome-sandbox -
使用
--no-sandbox旗標執行
煙霧測試 (Smoke test) 改進
我們執行一系列煙霧測試,在每次組建時觸發,啟動 VS Code(桌面端和 Web 端)並操作各種 UI 元素以確保功能正常。在此里程碑中,我們投資了此基礎架構,以允許我們將手動煙霧測試從發佈檢查清單中移除。
現在煙霧測試會在所有平台(macOS、Linux 和 Windows)上執行。此外,我們其中一個較複雜的煙霧測試套件,特別用於檢查舊版 Stable 與新版本之間的退化問題,現已自動化為在每次提交時執行。
最後,感謝我們用於 Web 自動化煙霧測試的強大 Playwright 函式庫,我們啟用了它們的追蹤功能,可以使用其 Trace Viewer 工具重新播放失敗的測試。
值得注意的修正
- 26425:無變更時不應顯示「開啟變更」按鈕
- 100815:連線到遠端 WSL 時外部終端機損壞
- 106981:視窗縮放設定為 -1 時終端機游標殘影
- 127959:偵錯器暫停時偵錯窗格開啟
- 129059:設定編輯器中的物件小工具未渲染描述
- 129070:無法僅透過按「確定」按鈕來修正下拉選單設定值
- 129415:使用者任務無法在單檔案模式下執行
謝謝您
最後但同樣重要,衷心感謝以下在本月為 VS Code 做出貢獻的人員:
對我們議題追蹤的貢獻:
- John Murray (@gjsjohnmurray)
- Andrii Dieiev (@IllusionMH)
- @CodeCrazy-ywt
- ArturoDent (@ArturoDent)
- Alexander (@usernamehw)
對 vscode 的貢獻:
- @71 (Grégoire Geis):platform/configuration:修復配置解析器忽略空鍵的問題 PR #128909
- @adaex (Aex):新增對 eslintrc.json seti-ui 圖示的支援 PR #123404
- @alanrenmsft (Alan Ren)
- 修復達到最大呼叫堆疊大小的問題 PR #119929
- 將下拉箭頭放大以符合無障礙要求 PR #127839
- @alielbashir (Ali Elbashir):修復 github spaces 連結中的錯字 PR #128120
- @andrewbranch (Andrew Branch):[typescript-language-features] 新增 suggest.allowIncompleteCompletions 並將觸發種類傳遞給 TS Server PR #127673
- @door-bell (Tim):新增編輯器和終端機外部清單捲動靈敏度的設定 PR #110059
- @galexite (George White):新增
.ixx作為可能的 C++ 副檔名 PR #127962 - @headerjson:將 isDefault 新增至 TaskGroup API PR #128596
- @jeanp413 (Jean Pierre)
- 修復鍵盤多選在「開啟編輯器」和「原始碼控制」檢視中無效的問題 PR #128284
- 修復從總管樹狀結構拖曳資料夾至終端機不再複製資料夾路徑的問題 PR #128419
- 修復即使使用終端機編輯器,「在終端機中執行 python 檔案」也會開啟面板的問題 PR #128866
- @joshspicer (Josh Spicer):welcomePage.contribution.ts 中的錯字 PR #127893
- @karolz-ms (Karol Zadora-Przylecki):改進 dockercompose 語言的預設值 PR #128550
- @kieranlblack (Kieran Black):新增修改複製分隔符號的設定 PR #101197
- @kilbouri (Isaac Kilbourne):Commit 訊息 PR #127849
- @Kingwl (Wenlu Wang)
- 新增 ts 內嵌提示 PR #113412
- 公開 monaco 的嵌入提示 API PR #127391
- 嵌入提示預設使用 editor.fontFamily PR #128181
- 新增匯入範圍的自動摺疊 PR #128978
- @movermeyer (Michael Overmeyer)
- 使用相同的時間解析所有基於時間的程式碼片段變數 PR #128571
- 從建構函式移除私有欄位 PR #128857
- @nickdelja (Nick Delja):修復輕微錯字 PR #129439
- @NSExceptional (Tanner Bennett):在 macOS 上提供更具體的檔案型別描述 PR #117713
- @shantaram3013 (Siddharth Singh):walkthrough:更新已棄用的屬性名稱 PR #129041
- @SNDST00M (SNDST00M: M.U.N.I.N):擴充主題自訂語法 PR #122969
- @ssigwart (Stephen Sigwart):新增摺疊跳轉(父級和同層級的下一個/上一個) PR #128450
- @suema0331:Fix#122454:截斷過長的終端機標題 PR #122620
- @timfenney (Tim Fenney):新增複製命令標籤至鍵盤快速鍵 PR #125563
- @usjpin (Utkarsh Singh):打字時隱藏活動列懸停效果 PR #128362
- @xisui-MSFT
- 反組譯檢視 PR #125737
- 修復反組譯檢視中的焦點問題 PR #129616
- 反組譯檢視中較大的初始檢視尺寸 PR #129651
- 開啟反組譯檢視應存在但處於停用狀態 PR #129726
對 vscode-extension-samples 的貢獻
- @gjsjohnmurray (John Murray):修復 #400 tree-view-sample:更新 package.json, package-lock.json PR #401
- @jabbera (Mike):新增 --enable-proposed-api 至 launch.json PR #346
- @james1293:移除多餘的 parseTree PR #406
對 vscode-languageserver-node 的貢獻
- @perrinjerome (Jérome Perrin):修復無法關閉的「請求失敗」對話框 PR #787
對 vscode-pull-request-github 的貢獻
- @binsee:修復檢查 fork 詳細資料 PR #2806
- @iChenLei (ChenLei):chore:將棄用的 vscode-test 取代為 @vscode/test-electron PR #2842
對 vscode-vsce 的貢獻:
- @legomushroom (Oleg Solomka):更新
azure-devops-node-api版本 PR #589
對 debug-adapter-protocol 的貢獻
- @NipunaRanasinghe (Nipuna Ransinghe ):更新 Ballerina 偵錯轉接器資訊 PR #201
對 language-server-protocol 的貢獻:
- @leegbestand:更新 jsonrpcReservedErrorRangeEnd 的註解 PR #1315
對 monaco-editor 的貢獻
- @Surm4 (Marcin):更新 playground 中的 Exposed colors 範例 PR #2561
對 monaco-languages 的貢獻
- @alefragnani (Alessandro Fragnani):新增
strict關鍵字至 Pascal 語言 PR #153 - @jonatanklosko (Jonatan Kłosko):正確標記 GitHub 風格程式碼區塊中的結束符號 PR #149
- @lofcz (Matěj Štágl):修復帶有破折號符號的 razor + liquid 標籤渲染問題 PR #150