2023年11月 (バージョン 1.85)
アップデート 1.85.1: このアップデートでは、これらの課題に対応しています。
アップデート 1.85.2: このアップデートでは、これらの課題に対応しています。
ダウンロード: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap
Visual Studio Code の 2023 年 11 月リリースへようこそ。このバージョンには、皆さんに気に入っていただけることを願う多くの更新が含まれています。主なハイライトは以下の通りです。
- フローティングエディターウィンドウ - エディターをデスクトップにドラッグアンドドロップします。
- アクセシブルビューワークフロー - アクセシブルビューへの移行、およびアクセシブルビューからの移行がスムーズになりました。
- より詳細な拡張機能の更新制御 - 自動更新する拡張機能を選択します。
- ソース管理の受信/送信ビュー - 保留中のリポジトリの変更を簡単に確認できます。
- JavaScript ヒープスナップショット - メモリオブジェクトグラフを含むヒープスナップショットを視覚化します。
- TypeScript インレイヒントからの定義へ移動 - インレイヒントのホバーから定義へ移動します。
- Python 型階層表示 - 複雑な型の関係を素早く確認し、ナビゲートします。
- GitHub Copilot の更新 - インラインチャットの改善、Rust コードの解説。
- プレビュー: 拡張されたスティッキースクロールサポート - ツリービューとターミナルでのスティッキースクロール。
これらのリリースノートをオンラインで読みたい場合は、code.visualstudio.com の 更新 にアクセスしてください。
Insiders: 新機能をいち早く試したいですか?夜間ビルドのInsidersをダウンロードして、利用可能になり次第、最新の更新を試すことができます。
GitHub Universe、Copilot、および VS Code
今年の GitHub Universe を視聴または参加できた方なら、GitHub Copilot が中心であったことをご存知でしょう。Copilot は オープニング基調講演 や、GitHub Copilot: 今と未来の AI ペアプログラマー といった分科会で取り上げられました。
VS Code チームは Copilot をエディターに統合するために懸命に取り組んできました。GitHub Universe までのチームの進捗状況については、最近のブログ記事 VS Code における「恐ろしく賢い」ものの追求 で詳細を知ることができます。この投稿では、コードベースやテクノロジーの専門家として機能する Copilot Chat エージェント の開発について詳しく説明されており、拡張機能の作者が独自のカスタムエージェントを VS Code に貢献する方法についても説明されています。
アクセシビリティ
Accessible View
前回のイテレーションでは、UI コンポーネントとアクセシブルビュー間のシームレスなフローのために、キーが押されたときに アクセシブルビュー を自動的に閉じる機能を導入しました。場合によっては、この動作が望ましくないこともあります。これは、accessibility.accessibleView.closeOnKeyPress 設定で無効にできるようになりました。
ターミナルとターミナルのアクセシブルビューを切り替えることが多い場合は、terminal.integrated.accessibleViewFocusOnCommandExecution を有効にするとよいでしょう。これは、ターミナルでコマンドが実行された後にアクセシブルビューを自動的に開きます。
キーボードフォーカスでツールチップを表示
キーボードユーザーのエクスペリエンスを向上させるために、アクティビティバーやステータスバーの項目など、カスタムホバーを持つ項目にキーボードフォーカスするとツールチップが表示されるようになりました。

音声検出タイムアウト
新しい設定 accessibility.voice.speechTimeout は、音声入力 (Copilot Chat など) を受け入れるまでに、無音状態がどれくらい続くかを制御します。デフォルトでは、1.2 秒の無音状態の後、音声入力は自動的に送信されます。この値を 0 に設定すると、音声入力の受け入れが完全に無効になります。
Workbench
フローティングエディターウィンドウ
今回のリリースで、エディターをメインウィンドウから独立した軽量ウィンドウに移動できるようになったことをお知らせします。あるウィンドウのエディターへの変更は、エディターが開いている他のすべてのウィンドウに即座に適用されます。
フローティングエディターウィンドウを作成する最も簡単な方法は、現在開いているウィンドウからエディターをドラッグし、デスクトップの何もない場所にドロップすることです。
テーマ: GitHub Dark (vscode.dev でプレビュー)
新しい設定 workbench.editor.dragToOpenWindow でこの動作を無効にできます。
エディターやエディターグループを独自のウィンドウに移動またはコピーするための、新しいグローバルおよびコンテキストコマンドも追加されました。
- 表示: エディターを新しいウィンドウにコピー (workbench.action.editor.copyWithSyntaxHighlightingAction)
- 表示: エディターを新しいウィンドウに移動 (workbench.action.editor.moveEditorToNextWindow)
- 表示: エディターグループを新しいウィンドウにコピー (workbench.action.editor.copyGroupToNextWindow)
- 表示: エディターグループを新しいウィンドウに移動 (workbench.action.editor.moveGroupToNextWindow)
- 表示: 新しい空のエディターウィンドウ (workbench.action.newWindow)
フローティングウィンドウのエディター領域は、任意の 複雑なレイアウト で配置できます。ターミナルと検索結果の両方をエディターとして開くことができるため、これらの機能も別々のウィンドウで利用できるようになりました!

この新機能をぜひお試しいただき、遭遇した問題があればご報告ください。既存の課題を確認し、不足している機能に投票してください。
ファイルエクスプローラーでのネイティブ貼り付けサポート
VS Code が、オペレーティングシステムの Explorer から VS Code のファイルエクスプローラーへファイルをネイティブに貼り付ける機能をサポートするようになりました。
拡張機能の自動更新制御
自動更新する拡張機能を選択できるようになりました。これは、すべての拡張機能を自動更新したくないが、選択した拡張機能のみを自動更新したい場合に役立ちます。個々の拡張機能、または発行元のすべての拡張機能を選択できます。発行元のすべての拡張機能を自動更新するように選択した場合でも、その発行元から個々の拡張機能の選択を解除できます。

この機能を使用するには、自動更新を無効にする (なし) か、選択した拡張機能に対して有効にする (選択した拡張機能) 必要があります。

新しいプロファイルアイコン
プロファイルに追加できる新しいプロファイルアイコンは次のとおりです。

- vr
- piano
- coffee
- snake
- ロボット
- game
- chip
- music
設定エディターの検索機能の改善とバグ修正
設定エディターでは、検索結果の並び替えが、以前のように目次だけでなく、まず一致タイプによって行われるようになりました。つまり、タイトルとキーワードの一致が上位に表示されるため、一致するタイトルの設定を見つけるためにスクロールダウンする必要がなくなります。

テーマ: Light Pink (vscode.dev でプレビュー)
設定エディターでは、同点の場合に目次によって設定が並べ替えられます。これは、拡張機能の作者の order キーが @ext: などの検索クエリに対して尊重されることを意味します。
このイテレーションでは、設定エディターがネットワークの問題でロードに失敗したり、特定の検索クエリでハングしたりするなど、多くの設定エディターの回帰も修正されました。
Editor
保存時および自動保存時のコードアクション
エディターで自動保存時にコードアクションを有効にできるようになり、エディター: 保存時のコードアクション (editor.codeActionsOnSave) の設定が対応する列挙値に移行されました。always に設定すると、保存時、またはウィンドウの変更 (onWindowChange) やフォーカスの変更 (onFocusChange) による自動保存時にコードアクションを実行できます。この機能を有効にするには、エディター: 保存時のコードアクション (editor.codeActionsOnSave) をオンにし、各コードアクションの設定を always に変更します。
設定値の更新は以下の通りで、以前のブール値は文字列の同等な値に置き換えられ、非推奨になります。
オプションは次のとおりです
- explicit- 明示的に保存されたときにコードアクションをトリガーします。- trueと同じです。
- always- 明示的に保存されたとき、およびウィンドウまたはフォーカスの変更による自動保存時にコードアクションをトリガーします。
- never- 保存時にコードアクションをトリガーしません。- falseと同じです。
複数ドキュメントのハイライト
複数ドキュメントのハイライトは、新しい提案された MultiDocumentHighlightProvider API から追加のサポートを受けています。TypeScript 言語のセマンティックな出現箇所のハイライトの組み込みサポートが追加され、Editor: Occurrences Highlight (editor.occurrencesHighlight) の設定値を singleFile から multiFile に変更することで有効にできます。TypeScript 以外の言語では、より多くの言語固有のプロバイダーが実装されるまで、複数ドキュメントの出現箇所はセマンティックな出現箇所ではなく、テキストの出現箇所に基づいてハイライトされます。
ソース管理
受信/送信の変更
このマイルストーンでは、ソース管理ビューに新しい受信/送信セクションが導入され、現在のブランチとリモートブランチとの間の受信および送信の変更が表示されます。新しいセクションには、変更されたリソースの数と挿入および削除を含む個々の変更、およびすべての変更にわたるすべてのリソースを要約するすべての変更エントリの両方が表示されます。新しいセクションの表示は、scm.showIncomingChanges および scm.showOutgoingChanges 設定を使用して制御できます。両方の設定は、always、auto (デフォルト)、および never の値をサポートします。

入力最大行数
以前は、ソース管理入力は最大 6 行のテキストを表示するように自動的に拡張され、ほとんどのコミットメッセージには十分なスペースでした。しかし、より多くのスペースが役立つ場合があり、ソース管理入力の最大行数を制御する新しい設定 scm.inputMaxLines が追加されました。
ターミナル
スティッキースクロール
ターミナルにスティッキースクロールが導入されました!シェル統合 によって提供される情報を使用して、ビューポートの上部にあるコマンドのプロンプトがターミナルの上部に固定されます。これは、エディターでのスティッキースクロールの動作 と同様です。

スティッキースクロールの要素をクリックすると、ターミナルバッファーのその部分までスクロールします。
この機能は現在デフォルトで無効になっていますが、"terminal.integrated.stickyScroll.enabled": true を設定することで有効にできます。将来的にはデフォルトで有効にする予定で、その際には右クリックして無効にすることができます。
コマンドのハイライト
ターミナルでコマンドにホバーすると、左側にハイライトバーが表示されるようになりました。これは、あるコマンドがどこから始まり、別のコマンドがどこで終わるかが明確でない通常のターミナルプロンプトに役立ちます。

シェル統合とコマンドナビゲーションの改善
スティッキースクロールの導入により、シェル統合に多くの改善が加えられました。特に Windows で実行されているターミナルでは、シェル統合から受信したマーカーが完全に信頼できるものではありません。現在、ターミナルコンテンツをインテリジェントにスキャンし、ターミナルコマンドが利用可能になる前にマーカーを調整するロジックが実装されています。
シェル統合は、プロンプトの異なる部分 (プロンプトとその入力) を検出できるようになりました。これにより、スティッキースクロールを使用するときにコマンドのどの部分が表示されるかが決定されます。また、プロンプトの上部にある空行 (出力の分割やターミナルの読みやすさのために一般的に使用されます) も削除されます。
既存の コマンドナビゲーション 機能も、信頼性の低いプロンプト行ではなく、スティッキースクロールに使用されるより信頼性の高いプロンプトに移動できるようになり、恩恵を受けています。
以前

以後

下線描画の改善
ターミナル内の破線および点線の下線がピクセルパーフェクトなパターンで描画されるようになりました


Git pull クイックフィックス
Git ブランチのチェックアウトが fast-forward 可能な場合、新しいターミナルクイックフィックスで git pull を実行するオプションが提供されます。
タスク
npm.packageManager 設定を bun に設定できるようになり、package.json で定義された Bun スクリプトの検出と実行を有効にできます。
デバッグ
JavaScriptデバッガー
ヒープスナップショットの可視化
.heapsnapshot として保存された V8 ヒープスナップショットを VS Code で可視化できるようになりました。従来の表形式のビューと、特定のメモリオブジェクトのリテイナーのグラフィカルな表現の両方があります。

テーマ: Codesong (vscode.devでプレビュー)
JavaScript コードのデバッグ中にパフォーマンスプロファイルの取得コマンドを使用してヒープスナップショットをキャプチャできます。また、ブラウザの DevTools のメモリタブからもキャプチャできます。
イベントリスナーブレークポイントビューの改善
Microsoft Edge または Google Chrome ブラウザのデバッグ中に表示されるイベントリスナーブレークポイントビューが改善されました。チェックボックスリストになり、URL に基づく XHR/フェッチリクエストでの一時停止をサポートするようになりました。

Rust を使用した WebAssembly デバッグ
VS Code と wasm-bindgen の両方に変更が加えられ、WebAssembly にコンパイルされた Rust を VS Code でデバッグできるようになりました。詳細については、WebAssembly デバッグに関するドキュメントを参照してください。
テスト
検索コントロールがテスト結果ビューターミナルでサポートされるようになりました。
言語
TypeScript 5.3
このリリースには TypeScript 5.3 が含まれています。このメジャーアップデートでは、import 属性のサポート、より優れた型推論などが追加されています。また、新しい言語ツール機能とバグ修正も含まれています。
TypeScript 5.3 の詳細については、TypeScript ブログを参照してください。
node_module シンボルがワークスペースシンボル検索から除外される
ワークスペース内のシンボルへ移動 が、デフォルトで node_modules からのシンボルを除外するようになりました。これにより、インストールされたパッケージからのシンボルに圧倒されることなく、コード内のシンボルを見つけやすくなります。
"typescript.workspaceSymbols.excludeLibrarySymbols": false を設定することで、プロジェクト内のすべてのシンボルを含む以前の動作に戻すことができます。
インレイヒントから定義へジャンプ
JavaScript と TypeScript の インレイヒント 内の型がインタラクティブになりました。型にホバーし、Windows および Linux では Ctrl を、macOS では Cmd を押しながらクリックすることで、型の定義に素早くジャンプできます。

自動インポートで 'type' の使用を優先
型のみのインポート を使用すると、インポートが実行時に完全に消去されることを保証しながら型をインポートできます。常にデフォルトで type インポートを使用したい場合は、"typescript.preferences.preferTypeOnlyAutoImports": true を設定すると、自動インポートで型のみのインポートが使用されるようになります。この設定はデフォルトではオフです。
リモート開発
リモート開発拡張機能を使用すると、開発コンテナー、SSH 経由のリモートマシン、リモートトンネル、またはWindows 用 Linux サブシステム (WSL) をフル機能の開発環境として使用できます。
主なハイライトは次のとおりです。
- Dev Containers で GitHub Copilot と プルリクエストとイシュー 拡張機能を自動的にインストールします。
- Dev Containers にインストールされる拡張機能について、より詳細な制御が可能になりました。
- ローカル Dev Containers および WSL セッションでローカルマシンの証明書を再利用します。
これらの機能の詳細については、Remote Development のリリースノート を参照してください。
拡張機能への貢献
GitHub Copilot
インラインチャット UI の改善
インラインチャットのプロンプト履歴が VS Code セッション間で保持されるようになりました。前後のプロンプトを表示するためのキーボードショートカットも、VS Code の他の前後の項目ショートカットと合わせて、Up と Down に変更されました。
インラインチャットが /test スラッシュコマンドを使用するなど、新しいファイルの作成を提案する場合、作成 ドロップダウンから 名前を付けて作成 を選択することで、ファイル名と場所を選択できるようになりました。

最後に、インラインチャットに新しい実験的な軽量 UI モードが追加されました。これにより、よりスムーズなストリーミングエクスペリエンスが提供され、diff は要求に応じてのみレンダリングされます。このモードは "inlineChat.mode": "live3" 設定で有効にできます。

修正のためのインラインチャットで概要とフォローアップアクションを表示
修正 (/fix) のためのインラインチャットを使用すると、修正が何をするかを示す短い概要も表示されるようになりました。残りのエラーがある場合は、提示されたフォローアップアクションをクリックして修正を絞り込むことができます。

インラインチャットでのプログレッシブメッセージレンダリング
インラインチャットがチャットビューと同じプログレッシブレンダリングを使用するようになりました。

ターミナルのコミットメッセージ生成クイックフィックス
前回のリリースで、Copilot の コミットメッセージ生成「きらめき」 がソース管理ビューの入力ボックスに追加されました。ターミナルユーザー向けに、git add... コマンドを実行した後、ターミナルで編集可能なコミットメッセージを生成するクイックフィックスが追加されました。
ターミナルエージェントとコマンド提案の改善
ターミナル関連の機能はすべて @terminal エージェントに移動されました。これは、ターミナルエージェントがワークスペース情報を引き込まない可能性があることを明確にし、機能を統合し、より便利に使用できるようにするためです。
古いプロンプトから新しいプロンプトへのマッピングは以下のとおりです。
| 古いもの | 新しいもの | 
|---|---|
| @workspace /terminal ファイルを一覧表示する方法 | @terminal ファイルを一覧表示する方法 | 
| @workspace /explain #terminalSelection | @terminal #terminalSelection | 
| @workspace /explain #terminalLastCommand | @terminal #terminalLastCommand | 
さらに、このリリースではコマンド提案が大幅に改善されました。ターミナルコマンド提案は、使用されているオペレーティングシステムとシェルを認識するようになりました。Copilot が質問がワークスペースに関連していると判断した場合、ワークスペース情報も条件付きで取得されます。ワークスペースコンテキストの収集は、速度と参照される内容の両方でさらに改善される予定です。

この例で、@terminal エージェントが microsoft/vscode リポジトリで使用されたときにファイルパスがどのように形成されるかを知っていることに注目してください。

提案されたコマンドを説明するための便利なフォローアップも用意されており、チャット入力ボックスのすぐ上に青いキラキラリンクとして表示されます。

説明 のフォローアップをアクティブにすると、提案されたコマンドの詳細な説明が表示されます。

プライベートリポジトリで GitHub リモート検索機能を使用する場合の認証アップグレードダイアログ
ユーザーアカウントで有効になっている場合、@workspace エージェントを使用すると、Copilot Chat はリモート検索機能を使用してワークスペースを検索します。プライベートリポジトリでリモート検索を使用するには、より多くの権限を持つ認証トークンが必要です。必要な権限を持つトークンがまだない場合、追加の権限を求められます。

このダイアログは一度しか表示されず、今後の @workspace エージェントへのクエリではキャッシュされたトークンが使用されます。
@workspace へのリクエストをより簡単に送信
@workspace エージェントは多くの Copilot クエリで使用されるため、できるだけ簡単にアクティブ化できるようにしたいと考えました。チャット入力に質問を入力し、 を押すと、質問が送信され、自動的に @workspace が先頭に追加されます。
Copilot で Rust コードを説明する
Copilot Chat は、Rust コードを説明するように要求され、rust-analyzer のような Rust 言語サービス拡張機能がインストールされている場合に、コードベースからクロスファイルコンテキストを収集するようになりました。Copilot の説明を表示するには、アクティブなエディターでコードを選択し、コンテキストメニューから Copilot > Explain This を使用するか、インラインチャットまたはチャットビューから /explain を使用します。

コードブロック内の潜在的な脆弱性の検出
Copilot によって生成されたソースコードに潜在的な問題がないことを確認するために、チャットビューのコードブロックのコードをコード脆弱性検出モデルで実行し、検出された問題を警告するようにしました。この機能は最初は表示されないかもしれませんが、Copilot Chat ユーザーに徐々に展開され、検出される脆弱性の種類も調整されます。
コードブロックに潜在的な脆弱性が含まれていると判断された場合、コードブロックの下部に注釈が付けられます。この脆弱性検出モデルは現在試験運用中ですので、Copilot の提案や潜在的な脆弱性を確認する際には、ご自身の判断で最善の決定を下してください。

Copilot の動画とライブストリームセッション
YouTube の最近の VS Code Copilot 動画をお見逃しなく。最新の Copilot Chat 機能 や、Copilot が「劇的に賢くなった」方法 について学びましょう。
VS Code ライブストリーム をまだ視聴していない場合は、1.84 リリースパーティー で紹介された Copilot のデモをぜひご覧ください。
Python
Pylance で型階層を表示
Pylance を使用している場合、Python プロジェクトの型間の関係をより便利に探索およびナビゲートできるようになりました。これは、複雑な型関係を持つ大規模なコードベースを扱う場合に役立ちます。
シンボルを右クリックすると、型階層を表示 を選択して型階層ビューを開くことができます。そこから、シンボルのサブタイプとスーパータイプをナビゲートできます。
テーマ: Catppuccin Macchiato (vscode.devでプレビュー)
実行ボタンメニューの下に設定可能なデバッグオプション
Python Debugger 拡張機能には、実行 ボタンメニューの下に設定可能なデバッグオプションが追加されました。Python Debugger: launch.json を使用してデバッグ を選択し、ワークスペースに既存の launch.json がある場合、利用可能なすべてのデバッグ構成が表示され、デバッガーを開始するために選択できます。構成がない場合は、Python アプリケーション用の launch.json ファイルを作成するために使用するデバッグ構成テンプレートを選択するように促されます。

環境変数を使用してアクティブ化された場合の非アクティブ化コマンドのサポート
Python 拡張機能には、明示的なアクティブ化コマンドを実行せずに、選択した環境をデフォルトのターミナルでアクティブ化する新しいアクティブ化メカニズムがあります。これは現在実験的なフラグの背後にあり、次のユーザー設定を通じて有効にできます: "python.experiments.optInto": ["pythonTerminalEnvVarActivation"]。
ただし、このアクティブ化メカニズムの初期の欠点の1つは、deactivate コマンドをサポートしていなかったことです。これは一部のユーザーのワークフローの重要な部分であるというフィードバックを受け取ったため、選択されたデフォルトのターミナルが PowerShell またはコマンドプロンプトの場合に deactivate のサポートを追加しました。将来的には、追加のターミナルへのサポートを追加する予定です。
REPL Smart Send の警告メッセージと設定
無効なコードまたは非推奨のコードを含む Python ファイルで Shift+Enter を使用して Smart Send を試行すると、警告メッセージが表示され、REPL Smart Send を非アクティブ化するオプションが提供されるようになりました。ユーザーは、Python.REPL: REPLSmart Send を有効にする (python.REPL.enableREPLSmartSend) 設定を通じて、REPL Smart Send のユーザーおよびワークスペース固有の動作を変更できます。

テストアーキテクチャの書き直し
Python テストアダプタの書き換え実験 がすべてのユーザーに展開されました。現在、settings.json に "python.experiments.optOutFrom" : "pythonTestAdapter" を追加することでオプトアウトできますが、まもなくこの実験フラグは削除され、この新しいアーキテクチャが採用されます。
GitHub Pull Requests and Issues
プルリクエストやイシューの作業、作成、管理を可能にする GitHub プルリクエストとイシュー 拡張機能について、さらなる進捗がありました。
- PR の説明と 作成 ビューでマージキューがサポートされるようになりました。
- 新しい設定 "githubPullRequests.allowFetch": falseは、fetchの実行を防ぎます。
- サブモジュールのサポートが改善されました。
その他のハイライトについては、拡張機能の 0.78.0 リリースの 変更ログ を参照してください。
プレビュー機能
ツリー内のスティッキースクロール
エディターでのスティッキースクロールの成功を受けて、この機能をすべてのツリービューに拡張し、ユーザーがプロジェクトツリーをより簡単にナビゲートできるようにしました。ツリーのスティッキースクロールは workbench.tree.enableStickyScroll: true を設定することで有効にできます。スティッキースクロールがスペースを取りすぎないように、ビューの高さの最大 40% までしか占めることができません。さらに、ユーザーは workbench.tree.stickyScrollMaxItemCount を構成することで、スティッキー要素の最大数をカスタマイズできます。これはデフォルトで 7 に設定されています。
改善されたツリーナビゲーションエクスペリエンスのために、スティッキー要素を選択してツリー内のその要素に直接ジャンプしたり、親要素のシェブロンを押してすべての子要素を非表示にしたりできます。さらに、スティッキースクロールが有効になっている場合、チェックボックスやアクション項目へのアクセスが容易になります。
複数ファイル差分エディター
このリリースでは、複数ファイル差分エディター のプレビュー版が提供されます。複数ファイル差分エディターを使用すると、複数のファイルの変更を1つのスクロール可能なビューで確認できます。
複数ファイル差分エディターを有効にするには、"multiDiffEditor.experimental.enabled": true を設定します。現在、複数ファイル差分エディターは、ローカルの変更、ステージングされた変更、受信/送信の変更、プルリクエストからの変更を確認するために使用できます。複数ファイル差分エディターはまだ機能が完全ではなく、すべてのシナリオで機能しない可能性があることに注意してください。
韓国語の代替文字フィルタリング
フィルタリングを使用するワークベンチのさまざまな機能で、VS Code は QWERTY キーボードの等価文字も検索するようになりました。これは、言語入力メソッドエディター (IME) の切り替えを誤って忘れてしまうことがよくあるためです。これは検索エンジンと似ていますが、リアルタイムで動作します。たとえば、韓国語 IME で debug と入力すると ㅇ듀ㅕㅎ となり、これは意味がありません。

現在、これは単語の途中からのフィルタリングでは機能しません。
問題の装飾を非表示にする
エディターおよびワークベンチ全体 (問題ビューを除く) で問題の装飾を非表示にする新しい設定が追加されました。問題: 表示 (problems.visibility) の設定は、デフォルトですべての問題を表示するように有効になっています。
問題: 表示 がオフの場合、一部の問題 UI 設定は無効になります。
- アウトライン > 問題: バッジ (outline.problems.badges)
- アウトライン > 問題: 色 (outline.problems.colors)
- アウトライン > 問題: 有効 (outline.problems.enabled)
- 問題 > 装飾: 有効 (problems.decorations.enabled)
問題: 表示 がオフの場合、ステータスバーに警告が表示されます。

提案されたAPI
すべてのマイルストーンには新しい提案された API が含まれており、拡張機能の作者はそれらを試すことができます。いつものように、皆様からのフィードバックを歓迎します。提案された API を試す手順は次のとおりです。
- 試したい提案を見つけて、その名前をpackage.json#enabledApiProposalsに追加します。
- 最新の@vscode/dtsを使用し、npx @vscode/dts devを実行します。これにより、対応するd.tsファイルがワークスペースにダウンロードされます。
- これで提案に対してプログラミングできます。
提案された API を使用する拡張機能を公開することはできません。次のリリースで破壊的変更がある可能性があり、既存の拡張機能を壊すことは望ましくありません。
テストカバレッジ
このイテレーションでは、テストカバレッジに関する作業を再開し、初期の UI 統合と長年の提案に対するいくつかの小さな更新を行いました。API はここには長すぎて含められませんが、かなり分かりやすいものだと考えており、issue #123713 での提案についてのご意見をお待ちしております。
チャットエージェント
最近のブログ記事 VS Code における「恐ろしく賢い」ものの追求 で述べたように、Copilot Chat ビューにチャットエージェントを貢献するための拡張機能のモデルを開発しています。チャットエージェント API は提案中ですが、今すぐ独自のチャットエージェントを追加して実験できます。更新については、issue #199908 を購読してください。
複数ドキュメントハイライト API
前回のリリースで導入されたように、VS Code 内での複数ドキュメントのハイライトがサポートされるようになりました。このイテレーションでは、複数ドキュメントハイライトプロバイダーを登録するための 提案された MultiDocumentHighlightProvider API を追加しました。これにより、特定のプログラミング言語のセマンティックな出現箇所のハイライトを提供する機能が追加されます。プロバイダーは、URI から DocumentHighlight へのマップを持つ新しい MultiDocumentHighlight 構造を返します。フィードバックと今後の更新は、issue #196354 で追跡できます。
エンジニアリング
新しい CDN
新しい CDN エンドポイント vscode.download.prss.microsoft.com へのデプロイを開始しています。システム管理者の方は、このエンドポイントからのトラフィックを許可するようにネットワークルールを設定してください。
macOS 10.13 および 10.14 のサポートは終了しました
VS Code 1.85 は、macOS 10.13 (macOS High Sierra) および 10.14 (macOS Mojave) をサポートする最後のリリースです。詳細については、FAQ を参照してください。
注目すべき修正点
- 195796 設定エディターでローカライズ後のテキスト検索がサポートされていない
- 197319 vscode://file// リンクが機能しなくなった
- 194094 プロファイルアイコンピッカーからマウスを外してもピッカーを閉じない
- 197070 カスタムタイトルバーでのデバッグツールバーの配置をサポート
ありがとうございます
最後に、VS Codeの貢献者の皆様に心からの感謝を申し上げます。
問題追跡
問題追跡への貢献者
プルリクエスト
vscodeへの貢献者
- @a-stewart (Anthony Stewart): viewPaneContainer.ts の 'solid' || ''を簡素化 PR #198515
- @abhijit-chikane (Abhijit Chikane): treeStickyScroll のデフォルト値を boolean に変更 PR #198849
- @amaust (Andrew Maust): URL ツールチップに「検証済みドメイン」識別子を追加 PR #197037
- @andrewbranch (Andrew Branch)
- 型のみのインポートを優先する設定を追加 PR #196123
- [typescript-language-features] preferTypeOnlyAutoImports の不足している設定説明を追加 PR #197403
 
- @arvid220u (Arvid Lunnemark)
- 空白の設定ページを修正 PR #198261
- node を許可するように条件名を更新 PR #198274
 
- @cobey (Cody Beyer)
- 不足している py azure パッケージを追加 PR #195508
- Cobey、不足している js を追加 PR #197600
 
- @d-mahard (Dipta Mahardhika): chore: コメント入力ボックスの色変数をリネーム PR #197950
- @elseifthen: 検索結果の前に行番号を表示 (#_190742) PR #195452
- @gjsjohnmurray (John Murray)
- 補助ウィンドウに「グループをロック」ボタンを追加 (#_182265) PR #182294
- データブレークポイントでの条件とヒットカウントをサポート (fix #188721) PR #195710
- FSP に影響する冗長なタスクシステムメッセージと早期リターンを削除 (fix #192490) PR #196247
- Repositories サブメニューでの空またはあいまいなリポジトリラベルを回避 (fix #196613) PR #196623
- typescript.implementationsCodeLens.showOnInterfaceMethods設定を追加 (#_136282) PR #198419
- タイムライン設定の廃止された移行コードを削除 PR #198542
- 複数差分エディターに「すべての差分を折りたたむ」アクションボタンを追加 PR #199064
- 複数差分エディター: すべての差分を展開アクションを追加 PR #199623
 
- @gtritchie (Gary Ritchie): aria-hide 検索アイコン PR #197577
- @hamirmahal (Hamir Mahal): feat: ターミナルコピーコマンドのキーボードショートカット作成を許可 PR #197099
- @hsfzxjy (Xie Jingyi)
- @installed は拡張機能の説明と一致する PR #196602
- 「前/次の変更を表示」をクリックしたときにカーソルを設定 PR #197501
- inlineSuggest.showToolbar.never を追加 PR #198227
 
- @idootop (Del): feat: editor.action.showHover の新しいホバーフォーカスオプションを導入 PR #196891
- @jsoref (Josh Soref): Cannotを書き出す PR #198377
- @jtbandes (Jacob Bandes-Storch): Swift 文法と上流リポジトリを更新 PR #197470
- @marrej (Marcus Revaj): # 修正 提案ドロップダウン/インライン補完部分承認 (次のトークン/行経由) レース PR #197633
- @marvinruder (Marvin A. Ruder): npm拡張機能に Bun をパッケージマネージャーとして追加 PR #198005
- @mrgharabaghi (Mohammad Reza Gharabaghi): テーマのデフォルトを更新 PR #197449
- @myty (Michael Tyson): コンテキストメニューから拡張機能提供のターミナルプロファイルを使用 PR #195108
- @n-gist (n-gist): ピン留めされたタブボタン (アイコン) 制御設定を追加 PR #196896
- @nolddor (Jack Nolddor): fix: 新しい空のウィンドウデスクトップアクションの翻訳漏れ PR #199129
- @noritada (Noritada Kobayashi): Rust 文字列の \xN8 および \xN9 が誤って着色される問題を修正 PR #196198
- @oxcened (Alen Ajam): fix: エディターのモデルコンテンツ変更時にホバーを非表示にしない PR #198100
- @PrathamLalwani: 音声チャットリスニング時間機能を追加 PR #197801
- @r3m0t (Tomer Chachamu): [Acc] キーボードアクセス可能なツールチップ - Fixes #132344 PR #197965
- @rehmsen (オーレ)
- ようこそ画面からターミナルに切り替えたときのレイアウト。 PR #173368
- サイクル browserHostService.ts -> web.api.ts を削除。 PR #198221
- xtermTerminal.test.ts を閉じた系にする。 PR #198403
 
- @remcohaszing (Remco Haszing): Monaco のターゲットを es6 から es2018 に引き上げ PR #192050
- @ronakj (Ronak Jain): ナビゲーションの tsconfig 解決を修正 PR #192851
- @scripthunter7 (David): YAML に TMLanguage エイリアスを追加 PR #198300
- @SimonSiefke (サイモン・シーフケ)
- feature: クリップボードからファイルを貼り付けることを許可 PR #195730
- fix: ドロップダウンアクションでのメモリリーク PR #197769
- fix: コメントコントローラーでのメモリリーク PR #198237
 
- @tisilent (xiejialong)
- ターミナル検索に mousedown、contextmenu イベントを追加 PR #194817
- _adoptConfiguration* から hide assignment を削除 PR #197526
 
- @WardenGnaw (Andrew Wang)
- コンテキストなしで動的構成プロバイダーを表示 (ファイルが開かれている場合) PR #196768
- serverReadyAction を使用して DebugConfigurations を実行するためのサポートを追加 PR #197597
 
- @zobo (Damjan Cvetko): fix: 組み込みの PHP 検証プロバイダーで無効な endCharacter 値 PR #196166
vscode-css-languageserviceへの貢献者
- @dyhagho (Dyhagho Briceño): [scss] 部分ファイルサポートを含むパスリゾルバー PR #373
vscode-pull-request-githubへの貢献者
- @flpcury (Felipe Cury): createDraft および setAutoMerge の非推奨メッセージを修正 PR #5429
- @gjsjohnmurray (John Murray): githubIssues.useBranchForIssues設定の説明を Markdown として扱う (fix #5506) PR #5508
- @kurowski (Brandt Kurowski): デフォルトブランチ PR の無視を常に提案しない設定を追加 PR #5435
- @ThomsonTan (Tom Tan): アクティブな PR ごとの差分を順番にイテレート PR #5437