2024 年 4 月 (1.89 版本)
更新 1.89.1:此更新解決了這些問題。
下載:Windows:x64 Arm64 | Mac:通用 Intel Apple 晶片 | Linux:deb rpm tarball Arm snap
歡迎使用 Visual Studio Code 2024 年 4 月版。此版本包含許多更新,希望您會喜歡,其中一些主要亮點包括:
- 預覽 Markdown 影像和影片 - 將滑鼠懸停在連結上即可預覽 Markdown 中的影像和影片。
- 增強的分支切換 - 在分支之間切換時無縫恢復開啟的編輯器。
- 中鍵貼上支援 - 使用滑鼠中鍵在終端中快速貼上文字。
- 透過 Remote - SSH 使用 WSL - 透過 Remote - SSH 連線到遠端機器時使用 WSL。
- 輔助功能檢視 - 從輔助功能檢視導航評論、聊天程式碼塊和終端命令。
- UI 操作的鍵盤快捷鍵 - 右鍵單擊即可直接自定義 UI 操作的鍵盤繫結。
- 快速搜尋 - 使用快速搜尋在工作區中搜索文字。
- AI 驅動的重新命名建議 - 使用 Copilot 在編輯器中獲取智慧重新命名建議。
- Copilot 內容排除 - 排除檔案不用於 Copilot 上下文。
- 本地工作區擴充套件 - 直接在工作區中包含和安裝擴充套件。
如果您想線上閱讀這些發行說明,請訪問 code.visualstudio.com 上的更新。Insiders:想盡快嘗試新功能嗎?您可以下載每晚Insiders版本並儘快嘗試最新更新。
輔助功能
進度輔助功能訊號
設定 accessibility.signals.progress
允許螢幕閱讀器使用者在使用者介面中顯示進度條的任何位置聽到進度。訊號在三秒鐘後播放,然後每五秒鐘迴圈播放一次,直到進度條完成。訊號可能播放的示例包括:搜尋工作區時、聊天響應待處理時、筆記本單元執行時等。
改進的編輯器輔助功能訊號
現在,當行有錯誤或警告時,或當游標位於錯誤或警告上時,都有單獨的輔助功能訊號。
我們支援分別自定義在編輯器中行和列之間導航時輔助功能訊號的延遲。此外,aria 警報訊號在播放前比音訊提示訊號有更高的延遲。
當建議控制元件顯示時,內聯建議不再觸發輔助功能訊號。
可訪問檢視
輔助功能檢視(⌥F2 (Windows Alt+F2, Linux Shift+Alt+F2))允許螢幕閱讀器使用者檢查工作臺功能。
終端改進
現在,當您在終端輔助功能檢視中導航到下一個(⌥↓ (Windows、Linux Alt+Down))或上一個(⌥↑ (Windows、Linux Alt+Up))命令時,您可以聽到當前命令是否失敗。此功能可以透過設定 accessibility.signals.terminalCommandFailed
進行切換。
當從啟用了 shell 整合的終端開啟此檢視時,VS Code 會提示終端命令列以改善體驗。
聊天程式碼塊導航
當您在聊天響應的輔助功能檢視中時,您現在可以在下一個(⌥⌘PageDown (Windows、Linux Ctrl+Alt+PageDown))和上一個(⌥⌘PageUp (Windows、Linux Ctrl+Alt+PageUp))程式碼塊之間導航。
評論檢視
當安裝了提供評論的擴充套件且評論檢視處於焦點時,您可以在輔助功能檢視中檢查和導航檢視中的評論。也可從輔助功能檢視中執行評論上可用的擴充套件提供的操作。
工作臺
語言模型使用報告
對於使用語言模型的擴充套件,您現在可以在擴充套件編輯器和執行時擴充套件編輯器中跟蹤它們的語言模型使用情況。例如,您可以檢視語言模型請求的數量,如以下螢幕截圖所示的 Copilot Chat 擴充套件
本地工作區擴充套件
本地工作區擴充套件,首次在 VS Code 1.88 版本中引入,現已全面可用。您現在可以將擴充套件直接包含在工作區中,並僅為該工作區安裝它。此功能旨在滿足您的特定工作區需求並提供更定製的開發體驗。
要使用此功能,您需要將擴充套件放在工作區內的 .vscode/extensions
資料夾中。然後,VS Code 會在擴充套件檢視的工作區推薦部分中顯示此擴充套件,使用者可以從此處安裝它。VS Code 僅為該工作區安裝此擴充套件。本地工作區擴充套件要求使用者在安裝和執行此擴充套件之前信任工作區。
例如,考慮 VS Code 儲存庫中的 vscode-selfhost-test-provider
擴充套件。此擴充套件插入了測試功能,使貢獻者能夠直接在工作區中檢視和執行測試。以下螢幕截圖顯示了擴充套件檢視的“工作區推薦”部分中的 vscode-selfhost-test-provider
擴充套件以及安裝它的能力。
請注意,您應該在 .vscode/extensions
資料夾中包含未打包的擴充套件,而不是 VSIX
檔案。您還可以只包含擴充套件的原始碼並將其作為工作區設定的一部分進行構建。
快速開啟中的自定義編輯器標籤
上個月,我們推出了自定義標籤,它允許您個性化編輯器標籤的標籤。此功能旨在幫助您更輕鬆地區分同名檔案的標籤,例如 index.tsx
檔案。
在此基礎上,我們已將自定義標籤的使用擴充套件到快速開啟(⌘P (Windows, Linux Ctrl+P))。現在,您可以使用建立的自定義標籤搜尋檔案,使檔案導航更加直觀。
自定義按鍵繫結
我們已使自定義使用者介面操作的按鍵繫結更加簡單。右鍵單擊工作臺中的任何操作項,然後選擇自定義按鍵繫結。如果操作具有 when
子句,它將自動包含在內,從而更容易按您需要的方式設定按鍵繫結。
在樹中查詢按鍵繫結
我們解決了一個問題,即“查詢”控制元件在樹控制元件中經常意外開啟。例如,當“查詢”控制元件出現在資源管理器檢視中而不是在編輯器中搜索時。
為了減少這些意外啟用,我們已將樹控制元件中開啟“查詢”控制元件的預設按鍵繫結更改為 ⌥⌘F (Windows, Linux Ctrl+Alt+F)。如果您喜歡以前的設定,可以使用鍵盤快捷方式編輯器輕鬆將 list.find
命令恢復為原始按鍵繫結。
自動檢測系統顏色模式改進
如果您希望主題遵循系統的顏色模式,您已經可以透過啟用設定 window.autoDetectColorScheme
來實現這一點。
啟用後,當前主題在深色模式下由 workbench.preferredDarkColorTheme
設定定義,在淺色模式下由 workbench.preferredLightColorTheme
設定定義。
在這種情況下,workbench.colorTheme
設定將不再考慮。它僅在 window.autoDetectColorScheme
關閉時使用。
在此里程碑中,新功能是主題選擇器對話方塊(首選項:顏色主題命令)現在能夠感知系統顏色模式。請注意,當系統處於深色模式時,主題選擇只顯示深色主題
該對話方塊還有一個新按鈕,可以直接將您帶到 window.autoDetectColorScheme
設定
在評論中貼上 Markdown 連結
在評論控制元件的輸入編輯器中,貼上連結與在 Markdown 檔案中貼上連結的行為相同。將顯示貼上選項,您可以選擇貼上 Markdown 連結而不是複製的原始連結。
原始碼管理
切換分支時儲存/恢復開啟的編輯器
此里程碑中,我們解決了一個長期存在的功能請求,即在切換原始碼控制分支時儲存和恢復編輯器。使用 scm.workingSets.enabled
設定啟用此功能。
要控制首次切換到分支時開啟的編輯器,您可以使用 scm.workingSets.default
設定。您可以選擇不開啟編輯器 (empty
),或使用當前開啟的編輯器 (current
,預設值)。
用於檢視更改的專用命令
為了更容易在多檔案差異編輯器中檢視特定型別的更改,我們向命令面板添加了一組新命令:Git: 檢視暫存更改、Git: 檢視更改和Git: 檢視未跟蹤更改。
Notebook
最小錯誤渲染器
您可以使用設定 notebook.output.minimalErrorRendering
為筆記本錯誤渲染器使用新的佈局。此新佈局僅顯示錯誤和訊息,以及一個用於展開完整錯誤堆疊以供檢視的控制元件。
停用大型筆記本的備份
現在,對於大型筆記本檔案,已停用定期檔案備份,以減少寫入檔案到磁碟的時間。該限制可以透過設定 notebook.backup.sizeLimit
進行調整。我們還在試驗一個選項,以避免在儲存筆記本檔案時阻塞渲染器,使用 notebook.experimental.remoteSave
,這樣自動儲存可以在沒有效能損失的情況下進行。
修復大綱/粘性滾動效能退化
在過去幾個月中,我們收到了關於筆記本編輯器效能退化的反饋。這些退化很難查明,也不容易重現。感謝社群不斷提供日誌和反饋,我們能夠確定這些退化是由於我們在大綱和粘性滾動功能中新增新功能而引起的。這些問題已在此版本中修復。
我們感謝社群的反饋和耐心,並將繼續改進筆記本編輯器的效能。如果您仍然遇到效能問題,請隨時在 VS Code 儲存庫中提交新問題。
搜尋
快速搜尋
快速搜尋使您能夠快速對工作區檔案執行文字搜尋。快速搜尋不再是實驗性的,所以請使用命令面板中的搜尋:快速搜尋命令(⇧⌘P (Windows, Linux Ctrl+Shift+P))進行嘗試!✨🔍
主題:Night Owl Light(在vscode.dev上預覽)
請注意,所有快速搜尋命令和設定在其識別符號中不再包含“experimental”關鍵字。例如,命令 ID workbench.action.experimental.quickTextSearch
已變為 workbench.action.quickTextSearch
。如果您有使用這些舊 ID 的設定或按鍵繫結,這可能很重要。
搜尋樹遞迴展開
我們有一個新的上下文選單選項,可以遞迴開啟搜尋樹中選定的樹節點。
主題:Night Owl Light(在vscode.dev上預覽)
終端
預設啟用 Git Bash shell 整合
Git Bash 的 Shell 整合現在自動啟用。這為 Git Bash 帶來了許多功能,例如命令導航、粘性滾動、快速修復等。
配置中鍵貼上
在大多數 Linux 發行版上,中鍵貼上選定的內容。現在可以透過將 terminal.integrated.middleClickBehavior
配置為 paste
,在其他作業系統上啟用類似的行為,這將在中鍵單擊時貼上常規剪貼簿內容。
擴充套件 ANSI 超連結支援
以前,透過 OSC 8 轉義序列建立的 ANSI 超連結僅支援 http
和 https
協議,但現在適用於任何協議。出於安全原因,預設情況下,只有帶有 file
、http
、https
、mailto
、vscode
和 vscode-insiders
協議的連結才會被啟用,但您可以透過 terminal.integrated.allowedLinkSchemes
設定新增更多協議。
終端的新圖示選擇器
從終端標籤上下文選單中選擇更改圖示現在會開啟為配置檔案構建的新圖示選擇器
主題:Sapphire (在 vscode.dev 上預覽)
支援視窗大小報告
終端現在響應以下轉義序列請求
CSI 14 t
報告終端的視窗大小(以畫素為單位)CSI 16 t
報告終端的單元格大小(以畫素為單位)CSI 18 t
報告終端的視窗大小(以字元為單位)
⚠️ Canvas 渲染器棄用
終端有三種不同的渲染器:DOM 渲染器、WebGL 渲染器和 canvas 渲染器。我們早就想移除 canvas 渲染器,但由於 DOM 渲染器效能不佳和 WebKit 未實現 webgl2
而受阻。這兩個問題現已解決!
此版本中,我們從回退鏈中移除了 canvas 渲染器,因此只有當 terminal.integrated.gpuAcceleration
設定明確設定為 "canvas"
時才啟用它。我們計劃在下一個版本中完全移除 canvas 渲染器。如果 terminal.integrated.gpuAcceleration
設定為 "on"
或 "off"
時您遇到問題,請告知我們。
除錯
JavaScript 偵錯程式
JavaScript 偵錯程式現在會自動查詢 runtimeExecutable
配置中出現在 node_modules/.bin
資料夾中的二進位制檔案。現在,它會按名稱自動解析它們。
在以下示例中,請注意您只需引用 mocha
,而無需指定二進位制檔案的完整路徑。
{
"name": "Run Tests",
"type": "node",
"request": "launch",
- "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/mocha",
- "windows": {
- "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/mocha.cmd"
- },
+ "runtimeExecutable": "mocha",
}
語言
Markdown 路徑補全中的影像預覽
VS Code 內建的 Markdown 工具為 Markdown 中的連結和影像提供路徑補全。當補全影像或影片檔案的路徑時,我們現在直接在補全詳情中顯示一個小預覽。這可以幫助您更輕鬆地找到所需的影像或影片。
懸停以預覽 Markdown 中的影像和影片
想要快速預覽 Markdown 中的影像或影片,而無需開啟完整的Markdown 預覽?現在您可以將滑鼠懸停在影像或影片路徑上以檢視其小預覽
改進的 Markdown 標題重新命名
您知道 VS Code 內建的 Markdown 支援允許您使用 F2 重新命名標題嗎?這很有用,因為它還會自動更新指向該標題的所有連結。此迭代中,我們改進了在 Markdown 檔案中存在重複標題情況下的重新命名處理。
考慮 Markdown 檔案
# Readme
- [Example 1](#_example)
- [Example 2](#_example-1)
## Example
...
## Example
...
兩個 ## 示例
標題具有相同的文字,但可以透過使用唯一的 ID(#示例
和 #示例-1
)分別連結到它們。以前,如果您將第一個 ## 示例
標題重新命名為 ## 第一個示例
,#示例
連結將正確更改為 #第一個示例
,但 #示例-1
連結不會更改。但是,重新命名後 #示例-1
不再是有效連結,因為不再有重複的 ## 示例
標題。
我們現在正確處理此場景。例如,如果您將上面文件中的第一個 ## 示例
標題重新命名為 ## 第一個示例
,則新文件將是
# Readme
- [Example 1](#_first-example)
- [Example 2](#_example)
## First Example
...
## Example
...
請注意,兩個連結現在都已自動更新,因此它們都保持有效!
遠端開發
遠端開發擴充套件允許您透過 SSH 或遠端隧道使用開發容器、遠端機器或適用於 Linux 的 Windows 子系統 (WSL) 作為功能齊全的開發環境。
亮點包括:
- 透過 SSH 連線到 WSL
您可以在遠端開發發行說明中瞭解有關這些功能的更多資訊。
對擴充套件的貢獻
GitHub Copilot
終端內聯聊天
終端內聯聊天現在是終端中的預設體驗。當終端處於焦點時,使用鍵盤快捷鍵 ⌘I (Windows, Linux Ctrl+I) 將其調出。
終端內聯聊天使用 @terminal
聊天參與者,該參與者具有整合終端的 shell 及其內容的上下文。
一旦建議了命令,使用 ⌘Enter (Windows, Linux Ctrl+Enter) 在終端中執行命令,或使用 ⌥Enter (Windows, Linux Alt+Enter) 將命令插入終端。命令也可以在執行之前直接在 Copilot 的響應中進行編輯(目前在 Windows 和 Linux 上是 Ctrl+down, Tab, Tab;在 macOS 上是 Cmd+down, Tab, Tab)。
Copilot 驅動的重新命名建議按鈕
Copilot 驅動的重新命名建議現在可以透過重新命名控制元件中的閃光圖示觸發。
內容排除
GitHub Copilot 內容排除現在在 Copilot Chat 中支援所有 Copilot for Business 和 Copilot Enterprise 客戶。有關配置內容排除的資訊可以在 GitHub 文件中找到。
當檔案被內容排除時,Copilot Chat 無法檢視檔案內容或路徑,並且不會用於生成 LLM 建議。
預覽:在筆記本編輯器中生成
我們現在支援在筆記本編輯器中自動啟用內聯聊天並插入新單元格。當 notebook.experimental.generate
設定為 true
時,我們在筆記本工具欄和單元格之間的插入工具欄上顯示一個生成按鈕。當焦點位於筆記本列表或單元格容器上時,也可以透過在 macOS 上按 Cmd+I(或在 Windows/Linux 上按 Ctrl+I)來觸發。此功能可以幫助簡化在語言模型的幫助下在新單元格中生成程式碼的過程。
Python
“實現所有繼承的抽象類”程式碼操作
使用 Pylance 時,使用抽象類現在更容易。當定義一個繼承自抽象類的新類時,您現在可以使用實現所有繼承的抽象類程式碼操作來自動實現父類中的所有抽象方法和屬性
主題:Catppuccin Macchiato(在 vscode.dev 上預覽)
新的自動縮排設定
以前,Pylance 的自動縮排行為透過 editor.formatOnType
設定控制,如果您想停用自動縮排但啟用其他受支援工具的鍵入時格式化,這可能會出現問題。為了解決這個問題,Pylance 有自己的設定來控制其自動縮排行為:python.analysis.autoIndent
,預設情況下啟用。
Debugpy 已從 Python 擴充套件中移除,取而代之的是 Python Debugger 擴充套件
現在除錯功能由 Python Debugger 擴充套件處理,我們已從 Python 擴充套件中移除 debugpy。
作為此更改的一部分,您的 launch.json
檔案中指定的 "type": "python"
和 "type": "debugpy"
都將引用 Python Debugger 擴充套件的路徑,無需對您的 launch.json
檔案進行任何更改即可有效執行和除錯。未來,我們建議使用 "type": "debugpy"
,因為它直接對應於 Python Debugger 擴充套件。
現在在測試期間可以停用套接字
您現在可以透過 Python 測試重寫上的測試 UI 執行停用套接字的測試。這是透過 Python 擴充套件和測試執行子程序之間通訊切換到現在使用命名管道來實現的。
已更新次要測試錯誤
測試檢視現在可以正確顯示使用 unittest 和引數化測試在巢狀類中包含 testscenarios 的專案。此外,測試資源管理器現在可以處理帶有符號連結的工作區中的測試,特別是符號連結路徑的子工作區根目錄,這在 WSL 場景中特別有用。
Pylance 的效能改進
Pylance 團隊收到了反饋,Pylance 的效能在過去幾個版本中有所下降。我們對記憶體消耗和索引效能進行了一些小的改進,以解決各種報告的問題。但是,對於那些可能仍然遇到 Pylance 效能問題的人,我們懇請透過命令面板中的Pylance: 報告問題命令提交問題,最好附帶日誌、程式碼示例和/或工作環境中安裝的包。
十六進位制編輯器
十六進位制編輯器現在除了長期存在的“替換”模式外,還具有“插入”模式。插入模式允許在檔案內部和末尾新增新位元組,並且可以使用 Insert 鍵或從狀態列進行切換。
十六進位制編輯器現在還會在狀態列中顯示當前懸停的位元組。
GitHub 拉取請求
GitHub Pull Requests 擴充套件取得了更多進展,該擴充套件使您能夠處理、建立和管理拉取請求和問題。新功能包括:
- 當透過隱藏設定
"githubPullRequests.experimentalUpdateBranchWithGitHub": true
啟用時,非檢出 PR 的實驗性衝突解決方案可用。此功能允許您在不本地檢出分支的情況下解決 PR 中的衝突。該功能仍處於實驗階段,並非適用於所有情況。 - 當從 Pull Requests 和 Issues 檢視觸發開啟輔助功能幫助時,會顯示一個輔助功能幫助對話方塊。
- 當有足夠的空間時,所有審查操作按鈕都會顯示在活動 Pull Request 側邊欄檢視中。
請檢視擴充套件 0.88.0 版本的更新日誌,瞭解其他亮點。
TypeScript
檔案監視由 VS Code 核心處理
一個新的實驗性設定 typescript.tsserver.experimental.useVsCodeWatcher
控制 TS 擴充套件是否使用 VS Code 的核心檔案監視支援來滿足檔案監視需求。TS 廣泛使用檔案監視,通常使用其自己的基於 node.js 的實現。透過使用 VS Code 的檔案監視器,監視應該更高效、更可靠且消耗更少的資源。我們計劃在 5 月逐步為使用者啟用此功能並監控是否存在迴歸。
預覽功能
VS Code 原生 PowerShell 智慧感知
我們已經在終端中實現 PowerShell 智慧感知的原型有一段時間了,最近我們投入了更多時間進行完善。它看起來是這樣的
目前,它在 -
字元或按下 Ctrl+空格鍵時觸發。要啟用此功能,請在您的 settings.json
檔案中設定 "terminal.integrated.shellIntegration.suggestEnabled": true
(目前它不會顯示在設定 UI 中)。
此功能仍處於早期階段,但我們很樂意聽取您的反饋。我們計劃的一些更大的目標是使其觸發更可靠(#211222),無論彈出視窗在哪裡觸發,使建議更一致(#211364),並使體驗儘可能接近編輯器智慧感知體驗(#211076,#211194)。
貼上時自動更新 Markdown 連結
假設您正在編寫一些 Markdown 文件,並且您意識到文件的某個部分實際上屬於其他位置。因此,您將其複製並貼上到另一個檔案中。一切都好,對嗎?如果複製的文字包含任何相對路徑連結、引用連結或影像,那麼這些連結很可能會損壞,並且您必須手動修復它們。這可能是一個真正的痛苦,但值得慶幸的是,新的“貼上時更新連結”功能可以幫助您!
要啟用此功能,只需設定 "markdown.experimental.updateLinksOnPaste": true
。啟用後,當您在當前編輯器中的 Markdown 檔案之間複製和貼上文字時,VS Code 會自動修復所有相對路徑連結、引用連結以及所有帶有相對路徑的影像/影片。
粘貼後,如果您意識到您想插入完全相同的複製文字,您可以使用貼上控制元件切換回正常的複製/貼上行為。
支援 TypeScript 5.5
我們現在支援 TypeScript 5.5 測試版。請檢視 TypeScript 5.5 測試版部落格文章和迭代計劃,瞭解此版本的詳細資訊。
編輯器亮點包括
- 正則表示式的語法檢查。
- 檔案監視改進。
要開始使用 TypeScript 5.5 測試版,請安裝 TypeScript Nightly 擴充套件。請分享反饋,並讓我們知道您在使用 TypeScript 5.5 時是否遇到任何錯誤。
API
改進了評論輸入編輯器中的語言功能支援
在編寫新評論時,VS Code 會建立一個精簡的文字編輯器,該編輯器由 TextDocument
提供支援,就像 VS Code 中的主編輯器一樣。本次迭代中,我們在此評論文字編輯器中啟用了額外的 API 功能。這包括
- 支援工作區編輯。
- 支援診斷。
- 支援貼上為建議 API。
評論文字文件可以透過具有 comment
方案的 URI 進行識別。
我們期待看到擴充套件使用此新功能構建什麼!
已最終確定視窗活動 API
視窗活動 API 已最終確定。此 API 提供了一個簡單的附加 WindowState.active
布林值,擴充套件可以使用它來確定視窗最近是否被互動過。
vscode.window.onDidChangeWindowState(e => console.log('Is the user active?', e.active));
提議的 API
檢視的輔助功能幫助對話方塊
可以透過 accessibilityHelpContent
屬性為任何擴充套件貢獻的檢視新增輔助功能幫助對話方塊。當檢視獲得焦點時,螢幕閱讀器使用者會聽到開啟對話方塊的提示(⌥F1 (Windows Alt+F1, Linux Shift+Alt+F1)),其中包含概述和有用的命令。
此 API 由 GitHub Pull Request 擴充套件的 Issues 和 PR 檢視使用。
語言模型和聊天 API
語言模型名稱空間 (vscode.lm
) 匯出了用於檢索語言模型資訊和計算給定字串的令牌計數的新函式。它們分別是 getLanguageModelInformation
和 computeTokenLength
。您應該使用這些函式來構建在語言模型限制範圍內的提示。
注意:內聯聊天現在由即將推出的聊天參與者 API 提供支援。這也意味著
registerInteractiveEditorSessionProvider
已棄用,並將很快移除。
更新的文件貼上提案
我們繼續迭代文件貼上提案 API。此 API 使擴充套件能夠掛接到文字文件中的複製/貼上操作。
API 的顯著變化包括
-
一個新的
resolveDocumentPasteEdit
方法,用於在貼上操作時填充編輯。如果計算編輯需要很長時間,則應使用此方法,因為它僅在實際需要應用貼上編輯時才呼叫。 -
所有貼上操作現在都由
DocumentDropOrPasteEditKind
標識。這與現有的CodeActionKind
非常相似,並用於貼上操作的鍵繫結和設定。
文件貼上擴充套件示例包含所有最新的 API 更改,因此您可以測試 API。請務必分享對更改和整體 API 設計的反饋。
懸停詳細程度
本次迭代中,我們添加了一個新的提案 API 來摺疊/展開懸停,名為 editorHoverVerbosityLevel
。它引入了一種名為 VerboseHover
的新型別,該型別具有兩個布林欄位:canIncreaseHoverVerbosity
和 canDecreaseHoverVerbosity
,它們指示懸停詳細程度是否可以增加或減少。如果其中一個設定為 true,則懸停將顯示帶有 +
和 -
圖示,可用於增加/減少懸停詳細程度。
提案 API 還為 provideHover
方法引入了一個新簽名,該簽名接受一個型別為 HoverContext
的附加引數。當用戶傳送懸停詳細程度請求時,懸停上下文將填充先前的懸停以及一個 HoverVerbosityAction
,該操作指示使用者是希望增加還是減少詳細程度。
在擴充套件觸發的 TestRuns 上 preserveFocus
對於由擴充套件觸發的測試執行請求,有一個提案,其中包含一個 preserveFocus
布林值。以前,從擴充套件 API 觸發的測試執行不會導致焦點移動到測試結果檢視,這需要一些擴充套件重新發明輪子以保持使用者體驗相容性。此新選項可以在 TestRunRequest
上設定,以要求編輯器移動焦點,就像執行是從編輯器內部觸發一樣。
值得注意的修復
- 209917 輔助視窗:恢復最大化狀態 (Linux, Windows)
感謝
最後但同樣重要的是,向 VS Code 的貢獻者們致以衷心的感謝。
問題跟蹤
對我們問題跟蹤的貢獻
- @gjsjohnmurray (John Murray)
- @IllusionMH (Andrii Dieiev)
- @RedCMD (RedCMD)
- @starball5 (starball)
- @ArturoDent (ArturoDent)
拉取請求
對 vscode
的貢獻
- @4-tel: fix: 除錯控制檯中以“!”開頭的行搜尋問題 #174146 PR #210178
- @CareyJWilliams (Carey Williams): 修復任務模板寫入空 tasks.json 的問題 PR #210675
- @cpendery (Chapman Pendery)
- fix: 打包錯誤導致終端建議失敗 PR #208822
- feat: 為 shell 整合新增 git-bash 支援 PR #208960
- fix: 改進 windows 上終端標記的位置 PR #209136
- fix: 終端建議在沒有補全時應隱藏模態視窗 PR #210289
- fix: git bash 中的 split 失敗 PR #210513
- @Ditoo29 (Diogo Pinto): fix: 換行符的序列化 PR #209703
- @frankli0324 (Frank): 執行 npm view 時停用 corepack 自動固定功能 PR #210601
- @g-plane (Pig Fang): 當所有檔案都已暫存或提交時自動關閉 Git 多檔案差異編輯器 PR #210327
- @gjsjohnmurray (John Murray)
- 改進
workbench.activityBar.iconClickBehavior
和workbench.activityBar.location
設定的描述 PR #210574 - 正確清除活動欄圖示徽章 (fix #210640) PR #210645
- 改進
- @grgar (George Garside)
- 不在網頁上使用 window.customTitleBarVisibility 配置 PR #209162
- 修復顏色選擇器命令標題 PR #210349
- 將 cmd start escape 移動到提示符末尾 PR #210443
- @hsfzxjy (Xie Jingyi): 記錄可導航容器事件以進行除錯 PR #209357
- @jswillard (John Willard): 在快速開啟中顯示自定義標籤 PR #209681
- @marvinthepa (Martin Sander): 終端中鍵貼上 PR #136633
- @mmastrac (Matt Mastracci): 將
windowOptions
新增到 xtermTerminal 以允許ESC [18t
工作 PR #209310 - @nopeless (nopeless): fix: 在 shell 整合 bash 檔案中使
cmd
成為區域性變數 PR #208364 - @pagict (Premium): feat. 在搜尋檢視中新增選單項“expand-select”以展開子樹 PR #206033
- @pisv (Vladimir Piskarev): 修復
OpenJsDocLinkCommand_Args
中不正確的型別定義 PR #209872 - @qirong77: 修復 Monaco-Editor 中 inlinesuggest 工具欄缺少類導致 CSS 變數失效的問題 PR #207582
- @r-sargento (Rafael Sargento): 修復 #201247 (整合終端未設定預設配置檔案中的環境變數) PR #209711
- @ScriptBloom (alviner): fix: 迷你地圖部分標題首次載入時顯示不完整:#209603 PR #209605
- @sheetalkamat (Sheetal Nandi): 為 tsserver 使用 vscode watches PR #193848
- @telamon (Tony Ivanov): 修復 #114425 阻止安裝時的 mime 汙染 PR #209510
- @timorthi (Timothy Ng): 更改行號顯示模式時重新渲染粘性滾動 PR #210815
- @WardenGnaw (Andrew Wang): 為 selectAndStartDebugging 命令新增 'noDebug' PR #209893
- @zWingz (zWing): fix: 執行命令 workbench.extensions.installExtension 時發生意外錯誤 PR #210135
- @ale-dg: 持續提供反饋和日誌,以幫助我們診斷筆記本編輯器和 jupyter 中的多個性能問題。
對 vscode-css-languageservice
的貢獻
- @liaoyinglong (vigoss): 支援巢狀 @container PR #390
對 vscode-emmet-helper
的貢獻
對 vscode-eslint
的貢獻
- @hyoban (Stephen Zhou): fix: 將 json, jsonc 新增到
eslint.probe
的預設選項中 PR #1830
對 vscode-hexeditor
的貢獻
對 vscode-json-languageservice
的貢獻
- @michaeltlombardi (Mikey Lombardi (He/Him)): 確保解析器為 minContains/maxContains 使用 errorMessage PR #229
對 vscode-languageserver-node
的貢獻
- @werat (Andy Hippo): 解除安裝不存在的功能時不要崩潰 PR #1460
對 vscode-python-debugger
的貢獻
- @DavidArchibald (David Archibald): 修復在 WSL 上執行時偵錯程式附加到程序的問題 PR #267
對 vscode-vsce
的貢獻
- @yutotnh (yutotnh): feat: 忽略
git worktree add
生成的 .git PR #943
對 language-server-protocol
的貢獻
- @asukaminato0721 (Asuka Minato): 新增 2 lsp PR #1918
- @MariaSolOs (Maria José Solano): 新增標記診斷訊息澄清 PR #1917
- @practicalli-johnny (Practicalli Johnny): servers: 更新 clojure-lsp 倉庫和維護者 PR #1921
- @sz3lbi (szelbi): 新增 SAP CDS 伺服器 PR #1924
- @unvalley (unvalley): docs: 將 biome 新增到 lsp 伺服器 PR #1923
- @Wilfred (Wilfred Hughes): 修復 RequestCancelled doc comment 中的拼寫錯誤 PR #1922
對 monaco-editor
的貢獻
- @timotheeguerin (Timothee Guerin): 新增對 TypeSpec 語言的支援 PR #4450