現已釋出!閱讀關於 11 月新增功能和修復的內容。

2021 年 9 月 (版本 1.61)

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

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

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


歡迎使用 Visual Studio Code 2021 年 9 月版。此版本有許多更新,我們希望你會喜歡,其中一些重點包括:

如果您想線上閱讀這些發行說明,請訪問 code.visualstudio.com 上的更新頁面。

在 VS Code 團隊的釋出派對中觀看此版本新功能的亮點影片。你可以在我們的 YouTube 頻道上找到活動的錄影。

內測版:想盡快嘗試新功能?您可以下載每晚的內測版構建,並儘快嘗試最新的更新。

工作臺

在不建立新組的情況下拆分編輯器

添加了一個新命令在組中拆分 (⌘K ⇧⌘\ (Windows, Linux Ctrl+K Ctrl+Shift+\)),用於將編輯器拆分為兩部分,而無需第二個編輯器組。這允許你為同一檔案並排使用兩個編輯器。你還可以透過切換佈局按鈕在垂直拆分或水平拆分之間切換佈局,如短影片所示。

如果你喜歡垂直或水平拆分,有一個新的設定 workbench.editor.splitInGroupLayout

有新的命令可以透過鍵繫結使用此功能

  • workbench.action.splitEditorInGroup
  • workbench.action.toggleSplitEditorInGroup
  • workbench.action.joinEditorInGroup
  • workbench.action.toggleSplitEditorInGroupLayout

以及在兩側之間導航

  • workbench.action.focusFirstSideEditor
  • workbench.action.focusSecondSideEditor
  • workbench.action.focusOtherSideEditor

新顏色 sideBySideEditor.border 設定用於分隔兩側的邊框顏色。

鎖定編輯器組

上一個里程碑我們引入了鎖定編輯器組作為一個實驗性新功能。在此里程碑期間,改進了設定體驗,允許你輕鬆選擇在開啟時應自動鎖定組的編輯器

Locked editor group setting

該設定現在稱為 workbench.editor.autoLockGroups。同樣,與編輯器組鎖定相關的命令已重新命名且不再是實驗性的

  • workbench.action.lockEditorGroup
  • workbench.action.unlockEditorGroup
  • workbench.action.toggleEditorGroupLock

透過裝飾指示已刪除和只讀編輯器

開啟的編輯器可以指示它們是否為只讀或其關聯的資源是否已從磁碟中刪除。此指示是透過將“deleted”(已刪除)和/或“readonly”(只讀)附加到編輯器標籤來給出的,這需要相當大的空間。

VS Code 現在使用裝飾來達到此目的

  • 已刪除資源的編輯器會顯示刪除線並呈紅色。
  • 只讀資源的編輯器會顯示一個鎖定圖示。

Editor readonly and deleted decorations

將編輯器拆分到現有組中

當你將編輯器拆分到側面時,VS Code 會開啟一個新的編輯器組,即使側面存在現有組。但是,有時你希望將編輯器拆分到已經存在的組中。

為了支援這一點,添加了新命令

  • workbench.action.splitEditorToPreviousGroup:拆分到上一個組。
  • workbench.action.splitEditorToNextGroup:拆分到下一個組。
  • workbench.action.splitEditorToAboveGroup:拆分到當前組上方的組。
  • workbench.action.splitEditorToBelowGroup:拆分到當前組下方的組。
  • workbench.action.splitEditorToLeftGroup:拆分到當前組左側的組。
  • workbench.action.splitEditorToRightGroup:拆分到當前組右側的組。
  • workbench.action.splitEditorToFirstGroup:拆分到第一個組。
  • workbench.action.splitEditorToLastGroup:拆分到最後一個組。

Diff 編輯器的較短標籤

當你比較兩個檔案時,工作區相對資料夾路徑會作為字首新增到檔名中,使得很難看到正在比較的檔案的名稱。

在此版本中,資料夾現在從標籤中隱藏,除非兩個檔名相同,這與普通編輯器標籤的行為匹配。

如果兩個檔名相同,則會顯示一條描述,暗示資料夾差異

Diff editor comparing two files

macOS:檔案選單更改

在 macOS 上,如果從檔案選單中選擇開啟...選單項,則可以開啟檔案和資料夾。對於新使用者來說,這可能會讓人感到意外,人們嘗試使用開啟工作區命令來開啟資料夾,而該選單項是專門用於開啟 .code-workspace 檔案的。

為了避免混淆,我們對 macOS 上的檔案選單進行了微調

  • 新條目開啟資料夾...用於開啟資料夾。
  • 開啟工作區...已重新命名為從檔案開啟工作區...

macOS File menu

遙測設定

有一個新的遙測設定 telemetry.telemetryLevel,它提供了更高的配置粒度,允許使用者選擇是否只發送錯誤遙測而不傳送一般使用資料。值包括 onerroroffonerror 的值也將啟用崩潰報告器。

現有設定 telemetry.enableTelemetrytelemetry.enableCrashReporter 已被標記為棄用,轉而使用新的 telemetry.telemetryLevel 設定,但將繼續受到尊重。

迷你地圖背景透明度

現在可以使用新新增的 minimap.foregroundOpacity 顏色獨立配置迷你地圖背景的不透明度。

更新的幫助選單項

隨著入門體驗的持續改進,幫助選單項已更新為更常用的名稱。這是根據新使用者的學習得出的,但希望讓每個人都更容易找到幫助。介紹影片現在是影片教程互動式演練場變成了編輯器演練場。你將在幫助選單和命令面板中找到新名稱。幫助選單還有一個顯示所有命令條目,作為開啟命令面板的附加入口點。

編輯器

括號對指南

編輯器現在支援基本的括號對指南。括號對指南使用與括號對顏色化功能相同的顏色和演算法。括號對匹配演算法在最近的“括號對顏色化快 10,000 倍”部落格文章中詳細描述。

與縮排指南類似,活動的括號對指南會突出顯示。

Bracket pair guides shown in the editor

可以透過配置 editor.guides.bracketPairs 設定(預設為 false)來啟用括號對指南。我們將繼續迭代此功能並在下一個版本中探索垂直指南。

縮排指南設定

editor.renderIndentGuideseditor.highlightActiveIndentGuide 設定已被棄用,轉而使用 editor.guides.indentationeditor.guides.highlightActiveIndentation

原始碼管理

Git 儲存庫的釋出或同步“操作按鈕”

Git 擴充套件現在向原始碼管理檢視添加了一個新的“操作”按鈕,允許你更輕鬆地釋出或同步任何未推送的更改。

New Source Control view Sync button

主題:紫水晶主題

預設情況下,如果存在未推送的提交,Git 擴充套件將新增一個如上所示的同步更改按鈕,如果分支尚未釋出,則會新增一個釋出更改按鈕。此外,使用者可以透過配置 git.showUnpublishedCommitsButton 設定來自定義此行為,該設定預設為 whenEmpty,因此僅當存在未推送的提交且檢視中沒有其他更改時才會顯示該按鈕。

此新操作按鈕可作為原始碼管理擴充套件的新提議 API 使用,有關詳細資訊,請參閱下面的提議 API 部分

最後,使用者可以透過新的 scm.showActionButton 設定完全停用原始碼管理檢視中任何操作按鈕的可見性,該設定會覆蓋任何原始碼管理擴充套件的行為。

增加更改檔案顯示限制

在此版本之前,Git 擴充套件有一個硬編碼的限制,即在原始碼管理檢視中最多可以顯示 5000 個更改。此限制是為了防止使用者在 VS Code 處理 Git 報告的所有更改時等待太久。此限制現在增加到 10,000 個更改,並且有一個新的 git.statusLimit 設定允許使用者自定義限制(如果需要,可以按儲存庫自定義)。此設定也可以設定為 0 以完全停用限制,但請注意,如果更改過多,這可能會導致更新需要很長時間。

此外,當超出限制時,我們在輸入框上添加了以下警告指示器。

New warning indicator, which reads "Too many changes were detected. Only the first 10,000 changes will be shown below"

終端

固定尺寸

你現在可以透過終端:設定固定尺寸命令 (workbench.action.terminal.setDimensions) 靜態設定終端尺寸。這對於換行可能很刺耳或具有破壞性的情況很有用。

該命令將顯示一個提示,你可以在其中輸入首選的寬度和/或高度。

Terminal Set Fixed Dimensions column width prompt

自定義標題和描述

終端名稱通常是它們關聯的程序的名稱,有時很難區分終端。

你現在可以使用 terminal.integrated.tabs.titleterminal.integrated.tabs.description 設定中的變數配置標題和描述。

當前的預設值是

{
  "terminal.integrated.tabs.title": "${process}",
  "terminal.integrated.tabs.description": "${task}${separator}${local}${separator}${cwdFolder}"
}

可用的變數有

  • ${cwd} - 終端的當前工作目錄
  • ${cwdFolder} - 終端的當前工作目錄。
  • ${workspaceFolder} - 啟動終端的工作區。
  • ${local} - 在遠端工作區中指示本地終端。
  • ${process} - 終端程序的名稱。
  • ${separator} - 一個條件分隔符 (" - "),僅在被有值的變數或靜態文字包圍時顯示。
  • ${sequence} - 程序提供給 xterm.js 的名稱。
  • ${task} - 指示此終端與任務相關聯。

表情符號 IME

現在在 macOS 上支援輸入法編輯器 (IME) 的表情符號。

Dialog showing Emojis available in the Integrated Terminal for IME on macOS

Alt 緩衝區活動上下文鍵

某些終端 UI 應用程式(如 nano)使用 VS Code 工作臺使用的鍵盤快捷鍵,這限制了它們在整合到 VS Code 中時的功能。一個新的when clause contextTerminalContextKeys.altBufferActive 會在 alt 緩衝區活動時將鍵繫結定向到終端而不是工作臺,以解決此問題。

語言

新的 JavaScript 和 TypeScript 語言狀態項

當前 TypeScript 版本和 IntelliSense 狀態現在顯示在語言狀態列項中

The JavaScript and TypeScript IntelliSense status item showing config file and TypeScript version

以前,TypeScript 版本始終顯示在狀態列中。你可以固定版本以恢復舊的行為

語言狀態項還顯示當前檔案的 jsconfig/tsconfig,並會指示你是否當前處於部分模式

跨未命名檔案的 IntelliSense

所有未命名的 JavaScript 和 TypeScript 檔案現在都作為同一專案的一部分處理。這意味著在一個未命名檔案中定義的全域性符號現在將作為建議顯示在其他未命名檔案中。

這更好地匹配了工作區中磁碟上檔案的行為。你可以向未命名檔案新增 importexport 以將其轉換為模組,這將使其全域性變數對其他檔案隱藏。

Web 上檔案間的 IntelliSense

當 VS Code 在瀏覽器中執行時,IntelliSense 現在適用於 vscode.devgithub.dev 上的 JavaScript 和 TypeScript 檔案。

Cross file JavaScript IntelliSense on github.dev

請記住,當 VS Code 在瀏覽器中執行時,它只能訪問你當前開啟的檔案,因此 VS Code 無法提供專案範圍的 IntelliSense 功能,例如自動匯入。

更一致的 JSX 標籤摺疊

當你在 JavaScript 或 TypeScript 中摺疊 JSX 標籤時,VS Code 現在會繼續顯示結束標籤

Folding in JSX

這與 HTML 中的摺疊工作方式匹配。

預覽功能

TypeScript 4.5 支援

此更新包括對即將釋出的 TypeScript 4.5 版本的初步支援。有關新的語言和工具功能,請參閱 TypeScript 4.5 beta 公告文章。一些工具亮點包括

  • JSX 屬性補全的初步支援。
  • 引用 CodeLens 的更準確的引用計數。

要開始使用 TypeScript 4.5 每夜版,請安裝 TypeScript Nightly 擴充套件

請分享你的反饋,並讓我們知道你是否遇到了 TypeScript 4.5 的任何錯誤。

在應用程式重新啟動時恢復終端會話

當 VS Code 視窗關閉時,終端程序會被釋放。在此版本中,有一個新的選擇加入設定用於記錄和恢復緩衝區並使用它來重新建立程序。設定 terminal.integrated.persistentSessionReviveProcess 以啟用此功能。

The terminal buffer gets restored on application restart with a message indicating when the snapshot was taken

切換終端大小以適應內容寬度

你可以透過 ⌥Z (Windows, Linux Alt+Z) 或使用選項卡上下文選單操作切換大小以適應內容寬度在適應全部內容和換行之間切換終端寬度。

這類似於在編輯器中切換換行,並共享鍵繫結。

對擴充套件的貢獻

Jupyter

目錄

Jupyter Notebooks 的目錄現在可以透過命令面板中的命令Jupyter: 顯示目錄訪問。此功能也可以透過筆記本工具欄中的圖示訪問。

此功能適用於 VS Code 中的所有筆記本,因此可以透過檔案資源管理器中的大綱檢視訪問。

透過“新建檔案”選單建立新筆記本

你現在可以使用選單項檔案 > 新建檔案...建立新的 Jupyter Notebook。此選單也可以從歡迎頁面或命令面板中的新建檔案...項訪問。

除錯

VS Code 現在支援 Jupyter Notebooks 的完整除錯功能。要試用它,請確保你已安裝 ipykernel v6+ 作為所選核心,設定斷點,然後選擇除錯單元格命令。

遠端除錯

你還可以使用按行執行並使用遠端核心除錯 Jupyter Notebooks。要試用它,請使用Jupyter: 指定本地或遠端 Jupyter 伺服器連線命令連線到你的遠端核心,確保你已安裝 ipykernel v6+ 作為所選核心,並像往常一樣使用按行執行或除錯。

單獨的渲染器擴充套件

Jupyter Notebook 渲染器已拆分為一個單獨的擴充套件 (Jupyter Notebook Renderers),允許使用者在 vscode.devgithub.dev 上檢視筆記本輸出,例如 plotly、vega、latex 等。

Python

新的 Python 演練

Python 擴充套件現在提供了一個演練,其中包含一些基本設定步驟,以改善 VS Code 中 Python 的入門體驗。

New Python walkthrough

改進的除錯體驗

當使用沒有 launch.json 配置檔案的空間時,Python 擴充套件會在你每次開始除錯 Python 檔案或專案時顯示一個偵錯程式配置選單。當除錯帶有自定義引數的 Web 應用程式(例如 Flask、Django 或 FastAPI)時,這可能特別煩人。

你現在不再需要在每次開始除錯時選擇配置,因為你所做的第一個選擇會重複用於會話的其餘部分。

GitHub 拉取請求和議題

GitHub Pull Requests and Issues 擴充套件的工作仍在繼續,它允許你處理、建立和管理拉取請求和問題。檢視擴充套件的 0.31.0 版本更改日誌以檢視亮點。

遠端開發

遠端開發擴充套件的工作仍在繼續,它允許您使用容器、遠端機器或 適用於 Linux 的 Windows 子系統 (WSL) 作為功能齊全的開發環境。

1.61 中的功能亮點包括

  • 轉發埠中的 DNS 名稱。
  • 輕鬆選擇容器附加功能。
  • 開發容器擴充套件可以在 WSL 中執行 CLI 命令。

你可以在遠端開發發行說明中瞭解有關新擴充套件功能和錯誤修復的資訊。

擴充套件創作

特定於平臺的擴充套件

擴充套件現在可以為 VS Code 支援的每個平臺(Windows、Linux、macOS)釋出不同的 VSIX。從 VS Code 版本 1.61.0 開始,VS Code 會查詢與當前平臺匹配的擴充套件包。從版本 1.99.0 開始,vsce 擴充套件釋出工具支援釋出特定於平臺的擴充套件

如果你的擴充套件具有特定於平臺的庫或依賴項,則特定於平臺的擴充套件非常有用,因此你可以控制包含在平臺包中的精確二進位制檔案。一個常見的用例是擴充套件使用本機 node 模組

有關此內容的更多資訊,請參閱我們的特定於平臺的擴充套件文件

測試標籤和非錯誤輸出

本月我們為基於新測試 API 構建的擴充套件釋出了額外的 API。

  • 測試標籤允許你配置是否以及如何執行某些測試——或者不執行。

  • 非錯誤輸出允許你將額外的控制檯輸出與特定的測試用例相關聯。

    輸出中的訊息會內聯顯示,類似於失敗訊息。

    Image showing "hello world" displayed inline beside a console.log statement

啟用檔案系統提供程式將檔案宣告為只讀

檔案系統提供程式現在可以透過在 FileStat 物件上設定 permissions 屬性的值為 FilePermission.Readonly,將單個檔案標記為只讀。只讀檔案不可編輯。

注意:如果所有檔案都應被視為只讀,你可以在呼叫 registerFileSystemProvider 時使用現有的 isReadonly 選項。

設定編輯器擴充套件類別

當存在類別時,設定編輯器現在會顯示擴充套件的 contributes.configuration 端點的子樹。

要建立多個類別,contributes.configuration 接受配置陣列,每個配置的 title 鍵用於部分標題。還有一個 order 欄位,允許在子樹中重新排序類別。

New Setting editor table of contents showing CSS language features having its own subtree

型別層次結構

新增型別層次結構提供程式的 API 提案已最終確定。

WebviewOptions.enableForms

WebviewOptions 上的新屬性 enableForms 允許你啟用或停用 webview 內部的表單。為了向後相容,如果你已經設定了 enableScripts,則 enableForms 預設為 true。否則預設為 false。

我們建議停用表單,除非你的 webview 內容需要它們。

終端狀態

Terminal 物件上公開了一個新的 state 屬性,以及相應的 window.onDidChangeTerminalState 事件,並指示使用者是否與終端進行了互動。例如,擴充套件可能希望等到使用者與終端互動後才執行操作。

在測試資料上執行 web 擴充套件測試

@vscode/test-web node 模組提供了一個 CLI 和 API,用於在 Chromium、Firefox 或 Webkit 中測試 web 擴充套件。

此里程碑的新功能是 folderPath 選項,用於在測試資料上開啟 VS Code for the Web。一個記憶體檔案系統包含給定位置的資源,以便測試有檔案可以處理。

vscode-test-web --browserType=chromium --extensionDevelopmentPath=$extensionLocation $testDataLocation

更新的 codicons

以下新圖示已新增到我們的 codicon 庫中:

List of codicon icons that were added

  • beaker-stop
  • bracket-dot
  • bracket-error
  • bracket
  • debug-continue-small
  • graph-line
  • graph-scatter
  • pie-chart

適用於 Visual Studio Code 的 Webview UI 工具包

Visual Studio Code 的 Webview UI Toolkit 是一個用於在 Visual Studio Code 中構建基於 webview 的擴充套件的元件庫。

Webview Toolkit component artwork

該庫的功能包括

  • 實現 Visual Studio Code 設計語言: 建立與編輯器其餘部分具有一致外觀和感覺的擴充套件。
  • 自動支援顏色主題: 所有元件的設計都考慮了主題,並且會自動顯示當前編輯器主題。
  • 使用任何技術棧: 該庫作為一組 web 元件提供,這意味著開發人員無論使用何種技術棧(React、Vue、Svelte 等)構建擴充套件,都可以使用該工具包。
  • 開箱即用: 所有元件都附帶符合 web 標準的 ARIA 標籤和鍵盤導航。

虛擬工作區擴充套件指南

有一個新的虛擬工作區擴充套件指南,可幫助擴充套件作者在 VS Code 在虛擬環境中執行時測試和更新其擴充套件。隨著像 GitHub Repositories 這樣的擴充套件的引入(它建立了自己的虛擬檔案系統),以及像 vscode.devgithub.dev 這樣的新工作流(其中 VS Code 在瀏覽器中執行),擴充套件不能再假定它們可以直接訪問磁碟檔案系統或平臺功能。

虛擬工作區擴充套件指南涵蓋了

  • 你的擴充套件是否可以在不修改的情況下在虛擬工作區中執行。
  • 如何更新你的擴充套件以在沒有磁碟檔案系統的虛擬工作區中執行。
  • 如何向 VS Code 發出訊號,以在虛擬工作區中執行時啟用或停用你的擴充套件。

建議的擴充套件 API

每個里程碑都會帶來新的提議 API,擴充套件作者可以嘗試使用它們。一如既往,我們希望得到您的反饋。要嘗試提議的 API,您需要執行以下操作:

  • 您必須使用 Insiders 版本,因為提議的 API 經常更改。
  • 您的擴充套件的 package.json 檔案中必須包含以下行:"enableProposedApi": true
  • 將最新版本的 vscode.proposed.d.ts 檔案複製到您專案的源位置。

您不能釋出使用提議 API 的擴充套件。下個版本中可能會有破壞性更改,我們絕不希望破壞現有擴充套件。

TaskPresentationOptions close 屬性

close 屬性是 tasks.json 架構中的 presentation 屬性,在 TaskPresentationOptions API 中可用。它的功能與匹配的 tasks.json 屬性相同,透過控制任務完成後終端是否會關閉。

選項卡 API

有一個提議的 API 用於讀取和操作選項卡。這解決了常見的功能請求,例如在沒有支援 textDocument 時訪問開啟資源列表。你可以在issue #133532中提供有關此 API 的反饋。

MarkdownString.supportHtml

MarkdownString 上新提議的 supportHtml 屬性支援渲染出現在 Markdown 文字中的安全子集原始 HTML。

supportHtml 屬性預設為 false。停用後,VS Code 將剝離 Markdown 文字中出現的任何原始 HTML 標籤。

控制器渲染器指令碼現在使用 JavaScript 模組

NotebookController.rendererScripts 允許筆記本控制器在執行任何渲染器之前將一組 JavaScript 檔案預載入到筆記本中。這些指令碼可以初始化筆記本或定義渲染器依賴的全域性符號。

渲染器指令碼以前是普通的 JavaScript 檔案。這些指令碼可以使用 VS Code 匯出的全域性符號來呼叫 VS Code 特定的 API。

這個全域性符號不可發現,也不能讓 VS Code 對渲染器指令碼本身進行太多控制。為了解決這個問題,渲染器指令碼現在使用匯出 activate 函式的 JavaScript 模組。此函式傳遞 VS Code API

interface KernelPreloadContext {
    readonly onDidReceiveKernelMessage: Event<unknown>;
    postKernelMessage(data: unknown): void;
}

export function activate(ctx: KernelPreloadContext): Promise<void> | undefined {
    ...
}

此更改還使 NotebookController 中的渲染器指令碼與貢獻的筆記本渲染器提供的渲染指令碼更好地保持一致。

Quick Pick keepScrollPosition 屬性

window.createQuickPick() 返回的 QuickPick 物件上的 keepScrollPosition 屬性已作為提議的 API 新增。這允許你控制 Quick Pick 中的滾動位置 (cursorTop) 是否返回列表頂部。

以下是此 API 的幾個用例

  • 使用提議的 QuickPickItemButtons API 實現“從列表中刪除此項”選項(例如,Ctrl/Cmd + P x QuickPickItemButton)。
  • 使用提議的 QuickPickItemButtons API 實現“以某種方式切換此項”選項(例如,插入程式碼片段命令)。
  • 在 Quick Pick 中非同步載入專案(例如 setInterval 透過重新分配 .items 屬性向列表中新增專案,此時滾動不應跳到頂部)。

如果沒有控制滾動位置的能力,這些操作中的每一個都會強制 Quick Pick 的滾動位置跳到列表頂部。keepScrollPosition 允許擴充套件作者控制此行為。

SourceControl.actionButton

原始碼管理 API 現在在 SourceControl 物件上包含一個 actionButton 屬性,允許 SCM 提供程式在輸入框下方有條件地顯示一個“操作”按鈕。例如,Git 擴充套件使用此新屬性在存在未推送的更改時顯示釋出或同步按鈕。

語言伺服器協議

已釋出新版本的 Language Server Protocol,以及相應的 npm 模組。新版本包含型別層次結構的提議實現。

工程

切換到 DOMPurify 來清理渲染的 HTML

我們已切換到在內部使用 DOMPurify 來清理在主工作臺中渲染的 HTML。這主要用於清理渲染的 Markdown。

DOMPurify 維護良好且開箱即用符合 trusted types。此切換有助於保護使用者,並使我們更有信心啟用諸如 MarkdownString.supportHtml 之類的功能。

將 open 命令用於 Big Sur CLI

在 macOS Big Sur 上,當從命令列啟動時,我們現在使用 open 命令來生成 VS Code。此更改允許 VS Code 像從 macOS Dock 啟動一樣開啟,從而修復了一些涉及許可權的問題。

檔案監視更改

用於檢測磁碟上檔案和資料夾更改的檔案監視器已更改為可以處理我們所有支援平臺(Windows、Linux、macOS)的,並減少了維護不同平臺的不同監視器的開銷。我們計劃在所有平臺上預設啟用此庫。本次迭代我們在 Windows 和 macOS 上啟用了它,並計劃很快在 Linux 上啟用它。

新的監視器應該在啟動時更快,並在大型資料夾上花費更少的 CPU 週期。使用該庫的一個缺點是檔案監視器不再自動檢測 macOS 上工作區中作為符號連結的資料夾。如果你有這樣的設定,可以使用新的 files.watcherInclude 設定來顯式新增要包含在檔案監視中的符號連結路徑。另一方面,你可以在 Windows 上使用此新設定來顯式包含工作區內的符號連結資料夾 - 這在 Windows 上以前是不可能的。

你日常工作中應該不會注意到任何差異,但如果檔案監視對你不起作用,請報告問題。如果遇到問題,有一個設定 files.legacyWatcher 可以啟用舊的監視器。

文件

高階容器配置

有一個新部分涵蓋了 Dev Containers 擴充套件的高階容器配置

在容器文件中,你可以瞭解如何

高階容器配置文件包含設定開發容器的提示和程式碼示例以及簡短的 YouTube 影片

值得注意的修復

  • 69665:從睡眠狀態恢復作業系統時,終端有時會顯示損壞的紋理
  • 130407:[trivial] settings>files: exclude changing pattern as (blank) won't deletable
  • 133149:任務終端在資訊/警告級別問題時被標記為失敗。
  • 133567:可訪問性:查詢引用中頂級樹節點的標籤都只讀取“true”
  • 133910:解析 shell 環境失敗或超時時顯示錯誤
  • 133976:允許透過協議 URL 開啟 .code-workspace

感謝

最後但同樣重要的是,衷心感謝以下本月為 VS Code 做出貢獻的人們:

對我們問題跟蹤的貢獻

vscode 的貢獻

vscode-eslint 的貢獻

vscode-html-languageservice 的貢獻

vscode-json-languageservice 的貢獻

vscode-languageserver-node 的貢獻

vscode-pull-request-github 的貢獻

vscode-references-view 的貢獻

vscode-vsce 的貢獻

language-server-protocol 的貢獻

monaco-editor-webpack-plugin 的貢獻

© . This site is unofficial and not affiliated with Microsoft.