VS Codeのエージェントモードを拡張するには、を試してください!

2024年7月 (バージョン 1.92)

更新 1.92.1: この更新は、これらの問題に対処しています。

更新 1.92.2: この更新は、これらの問題に対処しています。

ダウンロード: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap


Visual Studio Code 2024年7月リリースへようこそ。このバージョンには、皆様に気に入っていただけることを願う多くの更新が含まれており、主なハイライトは以下の通りです。

これらのリリースノートをオンラインで読みたい場合は、code.visualstudio.com更新にアクセスしてください。Insiders: 新しい機能をできるだけ早く試したいですか?毎晩のInsidersビルドをダウンロードして、最新の更新が利用可能になったらすぐに試すことができます。

アクセシビリティ

デバッグ体験の改善

アクセシビリティヘルプダイアログ

実行とデバッグビューおよびデバッグコンソールにアクセシビリティヘルプダイアログを追加しました。いずれかのビューがフォーカスされたときに、アクセシブルヘルプダイアログを開くためのヒントが表示されます。このヒントは設定accessibility.verbosity.debugで構成できます。

デバッグコンソールのアクセシブルビュー

コマンドアクセシブルビューを開く (⌥F2 (Windows Alt+F2, Linux Shift+Alt+F2)) を実行して、デバッグコンソールの内容を文字ごと、行ごとに検査します。

設定debug.autoExpandLazyVariablesは、変数の値にすぐにアクセスできるよう、スクリーンリーダー最適化モードで有効になりました。

デバッグコンソールで式が評価されると、その値がスクリーンリーダーユーザーにアナウンスされるようになりました。

動的ウォッチ変数のアナウンス

スクリーンリーダーを有効にしてデバッグする際、ウォッチ変数の値が変更されたときに通知されるようになりました。これはaccessibility.debugWatchVariableAnnouncementsで構成できます。

キーバインディングアクションの構成

前回のマイルストーンで、アクセシビリティヘルプダイアログに未割り当てのキーバインディングを構成するアクションを導入しました。今回、このアクションを補完するために割り当て済みキーバインディングの構成コマンド (⌥A (Windows, Linux Alt+A)) を追加しました。

Workbench

パネルを上部に移動

これで、パネルをワークベンチのエディターエリアの上部に移動できるようになりました。デフォルトでは、パネルは下部に配置され、ターミナル、出力パネル、デバッグコンソールなどのビューが含まれています。この機能強化は、パネルを左、右、下部に配置する既存のオプションを補完します。

プロファイルエディターのプレビュー

このマイルストーンでは、プロファイルエディターをよりユーザーフレンドリーにし、設定エディターと一貫したルックアンドフィールを持たせることで、引き続き改善を続けました。

Profiles Editor showing all user profiles and their settings.

プロファイルエディターは、workbench.experimental.enableNewProfilesUI設定の背後にある実験的な機能として利用できます。有効にすると、ウィンドウの左下隅にある設定ギアアイコンからプロファイルエディターにアクセスできます。

Settings menu showing the Profiles menu item to open the Profiles Editor.

既存プロファイルのオーバーライド

既存のプロファイルを、デフォルトプロファイルを含めて、同じ名前で新しいプロファイルを作成することでオーバーライドできるようになりました。

拡張機能の更新エクスペリエンスの改善

拡張機能の更新エクスペリエンスにいくつかの改善を加え、拡張機能の更新をより細かく制御し、拡張機能の自動更新をより簡単に管理できるようにしました。

すべての拡張機能の自動更新

拡張機能ビューのタイトル領域にあるグローバルな拡張機能自動更新アクションを、すべての拡張機能の自動更新を有効にするおよびすべての拡張機能の自動更新を無効にするアクションに変更しました。これらのアクションにより、すべての拡張機能の自動更新を一括で有効または無効にできます。

Manage Auto Updating Extensions.

個々の拡張機能の自動更新

個々の拡張機能の自動更新エクスペリエンスを改善し、拡張機能の自動更新を有効または無効にするアクションを常に表示するようにしました。これにより、拡張機能の自動更新を管理しやすくなります。

Auto update configuration per extension.

VSIX経由でインストールされた拡張機能の自動更新を無効にする

VSIX経由で拡張機能をインストールすると、その拡張機能の自動更新はデフォルトで無効になります。これにより、インストールしたバージョンの拡張機能を自動的に更新することなく作業できます。

拡張機能の更新に関するより詳細な制御

インストール済みの拡張機能バージョンで実行可能コードがないものから、実行可能コードがあるバージョンに更新する場合、ユーザーの同意が必要になりました。これにより、更新が適用される前に確認する制御が与えられます。以下のビデオは、コードのない拡張機能をコードのあるバージョンに更新する際のエクスペリエンスを示しています。

レビューボタンを選択すると、ブラウザで拡張機能の変更履歴または拡張機能リポジトリが開きます。変更をレビューし、拡張機能を更新するかどうかを決定できます。

設定エディターのジャンプ問題が修正されました

以前の設定エディターは、設定を変更して別の設定にフォーカスを移すとジャンプする傾向がありました。そして、設定を変更する前にスクロールすればするほど、このジャンプはひどくなりました。設定エディターが変更後に設定を再レンダリングする方法を変更したため、設定を変更しても設定エディターがジャンプすることはなくなりました。

テーマ: Light Pink (vscode.devでプレビュー)

設定のURL処理

VS Codeは、vscode://settings/setting.name (Insidersの場合はvscode-insiders://settings/setting.name、OSSバージョンの場合はcode-oss) の形式の「設定」URLを処理できるようになり、指定された設定に設定エディターを開きます。設定が指定されていない場合でも、設定エディターは開かれます。リリースノートで設定URLを持つアンカータグが使用され、リリースノートがVS Codeで開かれている場合、以前のcodesetting機能で説明したように、特別な処理とレンダリングが行われます。

Setting URL in release notes

新しい設定workbench.externalBrowserを使用すると、リンクを開くために使用するブラウザーを構成できます。デフォルトでは、オペレーティングシステムの標準ブラウザーが使用されます。この設定はワークスペースごとに構成でき、設定同期も有効になっています。

ブラウザー実行可能ファイルへの完全なパスを設定値として指定します。または、デバイス間での正しい動作を保証するために、edgechromefirefoxなどのブラウザーエイリアスも使用できます。

Configure the browser to open links.

ドラッグアンドドロップ時の自動ファイル開きを無効にする

以前は、ファイルをエクスプローラーにドラッグアンドドロップすると、エディターで自動的に開かれました。場合によっては、これは望ましくない可能性があります。新しい設定explorer.autoOpenDroppedFileを使用すると、この動作を切り替えることができます。デフォルトでは、ファイルはドラッグアンドドロップ時に開かれ続けますが、falseに設定すると、この動作は無効になります。

Editor

電球コントロールの改善

時々、電球コントロールがエディターのコードをブロックすることがありました。これに対処するため、電球コントロールのヒューリスティックを改善しました。これにより、スペースがない場合はエディターのコードをブロックする代わりに、ガターに電球が表示されるようになりました。

Lightbulb overlaps with code (left) versus positioned in the gutter (right).

エディター内の電球コントロールは、editor.lightbulb.enabled設定で切り替えることができます。

Diff Editor

チャットでのよりコンパクトな差分

チャットビュー/インラインチャットの差分エディターのレイアウトを改善し、よりコンパクトにしました。

以前:

Previous diff editor layout, which is less compact.

以後:

More compact diff editor layout.

ソース管理

受信/送信変更グラフ

このマイルストーンでは、グラフを使用して受信および送信変更の視覚化を有効にしています。グラフには、現在のブランチ、現在のブランチのアップストリームブランチ、およびオプションのベースブランチが含まれます。グラフのルートは、これらのブランチの共通の祖先です。

履歴項目ホバーにいくつかの改善を加えました。

  • 同じブランチに属する複数の履歴項目にわたる変更を表示するために、複数選択を有効にしました。
  • リモート/ベースブランチからの履歴項目をフィルタリングするためのオプションを...メニューに追加しました。
  • 履歴項目をフェッチ、プル、プッシュするアクションを追加しました。

ぜひお試しいただき、ご意見をお聞かせください!

受信/送信変更のグラフ表示は、scm.showHistoryGraph設定を切り替えることで無効にできます。

Source control view showing a graph visualization of the incoming and outgoing changes.

ターミナルシェル統合

ソース管理ビューは、各ソース管理操作および特定のファイル/フォルダーにスコープされたファイルシステムイベントの後に更新されます。統合ターミナルでgitコマンドが実行された場合、コマンドの完了とソース管理ビューの更新の間に遅延が生じる可能性があります。この遅延を減らすため、このマイルストーンから、ターミナルシェル統合APIを使用して、統合ターミナルで実行された様々なgitコマンド(例: addcheckoutcommitfetchpullpushなど)の正常な完了を検出し、ソース管理ビューを更新しています。

ノートブック

複数セルコメント

ノートブックエディターは、一度に1つまたは複数のセルでコメントを切り替える機能をサポートするようになりました。1つまたは複数のセルコンテナを選択し、キーボードショートカット⌘/ (Windows, Linux Ctrl+/)を押すことで実行できます。

ターミナル

新しいスクロールバー

ターミナルのスクロールバーがエディターのスクロールバーと同じになりました。

The terminal scroll bar now looks just like the editor's scroll bar

概要ルーラーは以前と同じで、成功したコマンドは左、検索結果は中央、失敗したコマンドは右に表示されます。しかし、これでスクロールバーのスライダーと完全に一致するようになりました。

デバッグ

デバッグ中に変数型を表示

設定debug.showVariableTypesがオンになっている場合、VS Codeはデバッグ中に変数のデータ型を表示するようになりました。

Show variable data types in the Variables section while debugging.

言語

VS Codeは、コピー&ペーストされたテキスト内のリンクを更新することで、Markdownドキュメント間でテキストセクションを移動するのに役立つようになりました。この機能により、VS Codeはすべての相対パスリンク、参照リンク、および相対パスを持つすべての画像/動画を修正し、新しいドキュメントで機能するようにします。

この機能は、2つのMarkdownファイル間でリンク付きのテキストをコピー&ペーストするたびに動作します。更新できるリンクがある場合、貼り付け後に貼り付けウィジェットが表示されます。貼り付けてリンクを更新を選択すると、VS Codeがリンクを修正します。

markdown.updateLinksOnPastefalseに設定することで、この機能を完全に無効にできます。

CSSにファイルを貼り付け、ドロップ

CSSで画像を使用する必要がありますか?画像をCSSエディターにドラッグアンドドロップまたはコピー&ペーストするだけで、url()参照を素早く挿入できるようになりました。

リモート開発

Remote Development拡張機能を使用すると、開発コンテナー、SSH経由のリモートマシン、リモートトンネル、またはLinux用Windowsサブシステム (WSL) をフル機能の開発環境として使用できます。

主なハイライトは次のとおりです。

  • GPG keyboxdのサポート
  • ローカルポート範囲の構成

これらの機能の詳細については、Remote Developmentリリースノートを参照してください。

拡張機能への貢献

GitHub Copilot

Copilot ChatのGPT-4oアップグレード

Copilot ChatビューをGPT-4-TurboからGPT-4oにアップグレードしました。これはOpenAIのこれまでで最も強力なモデルです。我々の実験では、GPT-4oがCopilotのコーディング能力を大幅に向上させ、より速く、より正確で、より高品質なコードと説明をエディターに直接提供することが示されています。これはロールアウト中に明らかであり、開発者はCopilot Chatビューをますます使用し、そのコード提案をより多く取り入れました。

私たちは、品質、安全性、セキュリティにコミットしつつ、パフォーマンスと能力のバランスを取りながら、さまざまなタスクに最適なモデルを特定するために常に実験を行っています。GitHub CopilotにおけるGPT-4oの導入の詳細については、GitHubの変更履歴をご確認ください。

チャットでの公開コードマッチング

GitHub CopilotがGitHub.com上の公開コードと一致する可能性のあるコードを返すことを許可できます。この機能が組織サブスクリプションまたは個人サブスクリプションで有効になっている場合、Copilotのコード補完はすでに検出された一致の詳細を提供しています。Copilot Chatでも公開コードの一致を表示できるように取り組んでいます。

Copilot Chatユーザー向けにこれを段階的に展開しています。お使いの機械で有効になると、応答の最後に一致を表示リンク付きのメッセージが表示される場合があります。リンクを選択すると、一致するコード参照の詳細が表示されるエディターが開きます。

Chat code referencing example.

チャットリクエストでの添付ファイル

Copilot Chatは、コンテキストを添付 (⌘/ (Windows, Linux Ctrl+/)) コマンドを介して、チャットリクエストに明示的な添付ファイルを追加することをサポートしています。これらは現在、チャット履歴で送信されたチャットリクエストの一部としてレンダリングされます。ファイル添付ファイルを選択すると、エディターで対応するファイルと範囲が開きます。

Attachments in chat requests

さらに、コンテキストウィンドウをオーバーフローする大きな明示的な添付ファイルが、リクエストから部分的にまたは完全に省略された場合に、より明確に表示されるようになりました。

Warning and hover for large attachments

/newの改善

/newスラッシュコマンドを更新し、クイックファイル生成をサポートするようにしました。#selectionなどのチャット変数を使用することで、ファイルまたはプロジェクト作成時にCopilotに追加のコンテキストを提供できます。さらに、/newは、生成されたファイルとフォルダーを既存のワークスペースに保存できるように強化されました。

Create a new single file with /new in Copilot Chat.

チャットからVS Codeコマンドにアクセス

@vscodeチャット参加者に新しいスラッシュコマンド/runCommandが追加され、コアVS Codeコマンドを検索して実行できるようになりました。たとえば、開発者ツールを切り替えるには、次のようになります。

Toggle Developer Tools with the /runCommand slash command in Copilot Chat.

この新しいスラッシュコマンドはgithub.copilot.chat.runCommand.enabledで有効にできます。

Python

python-environment-toolsを使用したPython検出の改善

前回のリリースで、パフォーマンスに焦点を当ててPython検出インフラストラクチャを再設計したPython環境ツールを発表しました。このアプローチにより、情報をプローブするためにPythonバイナリを実行する必要性が減り、パフォーマンスが向上します。

このリリースから、この機能強化を実験の一部として展開しています。試してみたい場合は、ユーザーsettings.json"python.locator""native"に設定し、VS Codeウィンドウを再ロードしてください。この機能、進行中の作業、およびフィードバックの提供については、python-environment-toolsリポジトリをご覧ください。

ネイティブREPLの実行ステータス表示

実験的なネイティブREPL ("python.REPL.sendToNativeREPL": true) が、実行結果に応じて、Jupyterセルと同様に成功/失敗のUIを表示するようになりました。さらに、出力が生成されないセルで空行を表示しないように改善しました。

ソースコードでのインライン変数値

Pythonデバッガー拡張機能に、Pythonデバッグ体験を向上させるインライン値機能が導入されました。インライン値を使用すると、デバッグセッション中にエディターで対応するコード行の横に、変数の値をインラインで表示できます。これにより、変数をホバーしたり、実行とデバッグビューの変数セクションをチェックしたりすることなく、プログラムの状態を素早く理解するのに役立ちます。

Show Python Inline Variables.

この機能を有効にするには、ユーザー設定で構成値debugpy.showPythonInlineValuestrueに設定します。

: この機能は現在探索段階であり、改善が続けられています。vscode-python-debuggerリポジトリでフィードバックをお寄せください!

デバッグウェルカムビューの改善

デバッグウェルカムビューには、エディターでPythonファイルが開いている場合に、Pythonの自動構成にすばやくアクセスするためのボタンが含まれるようになりました。

GitHubプルリクエストとイシュー

プルリクエストとイシューの作業、作成、管理を可能にするGitHubプルリクエスト拡張機能がさらに進歩しました。新機能には以下が含まれます。

  • マージされたPRのプルリクエストの説明にある元に戻すボタンを使用して、プルリクエストを元に戻す。
  • ブランチが削除されたPRも、プルリクエストビューで表示できるようになりました。
  • 複数のPRがチェックアウトされている場合でも、GitHub.comでプルリクエストを開くアクションが表示されます。

その他のハイライトについては、拡張機能の0.94.0リリースの変更履歴を確認してください。

拡張機能作成

ネットワークプロキシの基本認証

https Node.jsモジュールを使用する拡張機能は、基本認証を必要とするネットワークプロキシを使用できるようになりました。

プレビュー機能

真のインライン差分

このイテレーションでは、diffEditor.experimental.useTrueInlineView設定(デフォルトでオフ)を導入しました。この設定を有効にしてインラインビューを使用すると、単一行の変更がインラインでレンダリングされます。

True Inline View in the diff editor.

この実験的フラグがオンになっていない場合のインラインビューは次のようになります。

Default Inline View in the diff editor.

この機能は実験的なものであり、今後の変更が予想されます。

PowerShell用のVS CodeネイティブIntelliSense

VS CodeネイティブのPowerShell IntelliSense実験機能は、このリリースでいくつかの重要な改善が見られました。WindowsまたはmacOSでこの機能を有効にするには、次のようにします。

"terminal.integrated.suggest.enabled": true

この機能がはるかに信頼性が高くなっただけでなく、以下に示すように他の多くの改善も行われました。

補完が切り詰められない

補完は、切り詰められたバージョンではなく、入力された内容を正確に表示するようになりました。たとえば、ディレクトリ名を検索する場合、.\が含まれるようになり、正しく強調表示されます。

以前:

Before the completion for "src" would show "src"

以後:

After the completion for "src" would show ".\src"

ディレクトリナビゲーションに最適化された補完

ディレクトリ名に末尾の\または/が含まれるようになり、補完すると新しいディレクトリの補完が更新されます。

Enterキーの動作を構成

新しいterminal.integrated.suggest.runOnEnter設定を使用すると、特定の条件が満たされた場合にコマンドを実行するようにEnter動作を構成できます。以下の値が利用可能です。

  • "always": 常にEnterで実行します。
  • "exactMatch": 提案が完全にタイプされたときにEnterで実行します。
  • "exactMatchIgnoreExtension" (デフォルト): 提案が完全にタイプされたとき、またはファイルが拡張子なしでタイプされたときにEnterで実行します。
  • "never" (以前の動作): Enterで実行しません。

この変更は、既存の筋記憶を壊さないようにするために特に重要です。多くの場合、これにより機能が有効になっていない場合と同じキーストロークセットになります。これの有用な例は、cd ..を実行する場合です。この変更前は、cd ..<enter><enter>と入力する必要がありましたが、この新しい設定のおかげで、今は1回のEnterで済みます。

ファイル補完の改善

ファイル補完は、ファイル名の長さ昇順、ファイル名のアルファベット順、次にファイル拡張子のアルファベット順にソートされるようになりました。コマンド(引数ではない)として実行されるファイル補完も、ファイル拡張子と現在のオペレーティングシステムに応じてブーストされます。たとえば、Windowsで実行される場合、.ps1.bat.cmdファイルはブーストされ、リストの上位に表示されます。

Results are now sorted by extensions with platform-specific boosts

これらの変更は、上位項目の関連性を向上させるだけでなく、ネイティブPowerShellのタブ補完により近い動作にすることで、筋記憶を助けます。たとえば、Windows上のVS Codeコードベースで一般的に実行されるコマンドは./scripts/code.batです。これらの変更により、./sc<tab>/c<enter>./scripts/code.batが補完され、実行されます。

グローバル補完キャッシュ

コマンドのグローバル補完はセッション間でキャッシュされるため、シェルの起動パフォーマンスが大幅に向上します。これにより、再接続されたターミナルで補完が正しく機能しない問題も修正されました。現在、これらはTerminal: Clear Suggest Cacheコマンドを実行することでクリアおよび更新できます。Intel i7-12700KFで測定したところ、シェル統合をアクティブ化するのにかかる時間が約600msから約50msに短縮されました。

PowerShellの組み込みターミナル補完

gitの組み込み補完を提供するようになりました。これらはposh-gitプロジェクトのものに基づいていますが、いくつかの一般的およびVS Code固有の改善が加えられています。以下は、補完の動作例です。

その他の改善点は次のとおりです。

  • エイリアスは右側に展開された状態を表示します

    Aliases show their expanded state on the right

  • ブランチ、タグ、スタッシュ、リモート用のGit固有のアイコン

    Branches and tabs have their own icon beside the completions

  • 右側のサブコマンドの説明

    Subcommands like 'checkout' show their description on the right

また、codecode-insidersの組み込み補完も提供していますが、これらは非常に基本的なものであり、将来のリリースで改善される予定です。

code now shows basic completions for everything in code --help

これらの補完は、他のPowerShellモジュールの補完と競合する場合があります。次の設定で無効にすることができます。

"terminal.integrated.suggest.builtinCompletions": {
  "pwshCode": false,
  "pwshGit": false
}

TypeScript 5.6のサポート

このリリースには、次期TypeScript 5.6のサポートが含まれています。このリリースに何が予定されているかの詳細については、TypeScript 5.6イテレーション計画を確認してください。

TypeScript 5.6のプレビュービルドの使用を開始するには、TypeScript Nightly拡張機能をインストールしてください。フィードバックを共有し、TypeScript 5.6でバグに遭遇した場合はお知らせください。

提案されたAPI

QuickInputButtonLocationで入力の右側にボタンを表示

このマイルストーンでは、QuickInputButtonに提案されたAPIが導入され、拡張機能がボタンをレンダリングする場所を選択できるようになりました。オプションは次のとおりです。

  • Title: クイックピックのタイトルバーにボタンをレンダリングします。これはデフォルトの動作であり、ボタンの既存の動作を維持します。
  • Inline: 入力ボックスの右側にボタンをレンダリングします。これは、タイトルバーを何も使用しないがボタンを表示したい場合に便利です。

この機能は、Git拡張機能のブランチを作成入力ボックスに採用され、git.branchRandomName.dictionaryで有効にできます。

詳細と更新については、vscode#221397をご確認ください。

テスト機能強化

コードとテストの関連付け

拡張機能がコードをテストに関連付けたり、その逆を可能にするAPIに取り組んでいます。これにより、ユーザーは両方を切り替えることができ、カーソル位置でテストを実行などのアクションが実装コードでも機能するようになります。APIが開発されるにつれて、さらに多くのエクスペリエンスを構築する予定です。

詳細と更新については、vscode#126932をご確認ください。

テスト失敗時のコールスタック

単体テストの失敗に豊富なコールスタックを関連付けることができるAPIに取り組んでいます。これにより、ユーザーは失敗に至ったコードを一目で確認できます。

詳細と更新については、vscode#214488をご確認ください。

属性付きテストカバレッジ

テストごとにテストカバレッジを割り当てるためのAPIに取り組んでいます。これにより、ユーザーはどのテストがどのコードを実行したかを確認でき、エディターに表示されるカバレッジとテストカバレッジビューの両方をフィルタリングできます。

詳細と更新については、vscode#212196をご確認ください。

検索API

過去数ヶ月間、提案されている3つの検索APIの最終決定に取り組んできました。

  • FindTextInFiles: VS Codeのテキスト検索を使用してワークスペースファイル内のテキストを検索します。
  • FileSearchProvider: VS Codeの既存の検索機能では適切に検索できないカスタムファイルスキームのファイル検索結果を提供します。たとえば、仮想ファイルシステム内からクイックオープンで検索すると、拡張機能が提供する結果が表示される場合があります。
  • TextSearchProvider: FileSearchProviderと同様ですが、テキスト検索結果用です。たとえば、仮想ファイルシステム内から検索ビューで検索すると、拡張機能が提供する結果が表示される場合があります。

さらに、VS Codeのワークスペースファイル検索を使用してファイルを検索するworkspace.findFiles APIを刷新しています。新しいバージョンでは、より多くのオプションが許可され、除外オプションがより明確に処理されるはずです。刷新されたバージョンが導入されても、既存の関数シグネチャは引き続き機能します。

この表は、異なるAPIがどのように関連しているかを示しています。

検索にAPIを使用 結果提供にAPIを使用
ファイル用 FindFiles FileSearchProvider
ファイル内のテキスト用 FindTextInFiles TextSearchProvider

ご興味があれば、上記のリンクにアクセスしてフィードバックをお寄せください!

Website

VS Codeウェブサイトのデザインを刷新し、ライトテーマとダークテーマのサポートを追加しました。

VS Code website light mode.

ウェブサイトの新しいデザインは、システムのテーマ(ライトモードまたはダークモード)をデフォルトとし、右上隅にある太陽/月のアイコンを使用して手動で切り替えることもできます。

VS Code website dark mode.

皆様からのフィードバックをお待ちしております!機能リクエストやバグはvscode-docsリポジトリにファイルしてください。

エンジニアリング

Markdown言語サーバーを別のリポジトリに移動

VS Codeに組み込まれたMarkdown IntelliSenseを強化する言語サーバーを独自のレポジトリに移動しました。以前は、このプロジェクトはメインのVS Codeレポジトリのサブフォルダーから公開されていました。この変更により、プロジェクトへの貢献が容易になります。

このプロジェクトは、npmで引き続き同じ名前で公開されています: vscode-markdown-languageserver

VS CodeでのESM使用の進捗

このマイルストーンでは、VS CodeコアでのESM採用作業を再開しました。将来の目標は、ECMAScript Modules (ESM) のロードを使用し、AMDを完全に廃止することです。これは、全体のコードのロードとバンドルを近代化するための複数マイルストーンにわたる取り組みです。

xterm.jsがVS Codeに依存

ターミナルに新しいスクロールバーを実装するには、舞台裏でかなりの作業が必要でした。VS Codeのターミナルは、xterm.js OSSプロジェクト上に構築されており、次期リリースでは、VS Codeのコードベースの一部、特にbase/フォルダの一部も提供されます。

Electron 30の更新

このマイルストーンでは、Electron 30の更新を安定版リリースユーザーに展開しています。この更新には、Chromium 124.0.6367.243とNode.js 20.14.0が含まれています。Insidersビルドで自己ホストし、早期にフィードバックを提供してくださった皆様に感謝いたします。

.batまたは.cmdファイルを生成する際のAPI互換性のない変更に関する通知

このElectronアップデートに含まれるNodeバージョンには、CVEに対応した互換性のない変更が含まれており、Windowsで.batまたは.cmdファイルを実行している場合に影響を受ける可能性があります。これらのファイルをshellオプションを使用して生成する際には、Node.jsが設定したガイドラインに従うことができます。

簡易ソースコードスキャンに基づいて影響を受ける可能性のある拡張機能には事前に通知しましたが、見落としがある可能性もあります。影響を受ける場合、Windowsで.batまたは.cmdファイルを生成する際にEINVAL例外が発生します。これらの処理方法については、Node.jsドキュメントを参照してください。

拡張機能の作者は、これらの変更を事前に把握するために、常にInsidersリリースで拡張機能をテストすることをお勧めします。

注目すべき修正点

  • 211199 ターミナルでCtrl+cを実行しても、スムーズスクロールが有効な場合に一番下までスクロールしない

ありがとうございます

最後に、VS Codeの貢献者の皆様に心からの感謝を申し上げます。

問題追跡

問題追跡への貢献者

プルリクエスト

vscodeへの貢献者

vscode-black-formatterへの貢献

vscode-hexeditorへの貢献

vscode-languageserver-nodeへの貢献者

vscode-markdown-tm-grammarへの貢献

vscode-pull-request-githubへの貢献者

vscode-textmateへの貢献

debug-adapter-protocolへの貢献者

language-server-protocolへの貢献者

monaco-editorへのコントリビューション

node-request-lightへの貢献

python-environment-toolsへの貢献