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月リリースへようこそ。このバージョンには、皆様に気に入っていただけることを願う多くの更新が含まれており、主なハイライトは以下の通りです。
- 既定のブラウザー - VS Codeでリンクを開くために使用するブラウザーを設定します。
- PRの取り消し - マージされたPRに対して、簡単に取り消しPRを作成します。
- 拡張機能の更新 - 拡張機能の自動更新をより簡単に構成します。
- プロファイルのオーバーライド - プロファイルエディターで既存のプロファイルをオーバーライドします。
- CSSでのファイルの貼り付け - 貼り付けまたはドラッグアンドドロップでCSSファイル参照を素早く追加します。
- パネルを上部に移動 - パネルセクションをワークベンチの上部に配置します。
- CopilotがGPT-4oを使用 - GitHub Copilot ChatがOpenAIのGPT-4oにアップグレードされました。
これらのリリースノートをオンラインで読みたい場合は、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
パネルを上部に移動
これで、パネルをワークベンチのエディターエリアの上部に移動できるようになりました。デフォルトでは、パネルは下部に配置され、ターミナル、出力パネル、デバッグコンソールなどのビューが含まれています。この機能強化は、パネルを左、右、下部に配置する既存のオプションを補完します。
プロファイルエディターのプレビュー
このマイルストーンでは、プロファイルエディターをよりユーザーフレンドリーにし、設定エディターと一貫したルックアンドフィールを持たせることで、引き続き改善を続けました。
プロファイルエディターは、workbench.experimental.enableNewProfilesUI
設定の背後にある実験的な機能として利用できます。有効にすると、ウィンドウの左下隅にある設定ギアアイコンからプロファイルエディターにアクセスできます。
既存プロファイルのオーバーライド
既存のプロファイルを、デフォルトプロファイルを含めて、同じ名前で新しいプロファイルを作成することでオーバーライドできるようになりました。
拡張機能の更新エクスペリエンスの改善
拡張機能の更新エクスペリエンスにいくつかの改善を加え、拡張機能の更新をより細かく制御し、拡張機能の自動更新をより簡単に管理できるようにしました。
すべての拡張機能の自動更新
拡張機能ビューのタイトル領域にあるグローバルな拡張機能自動更新アクションを、すべての拡張機能の自動更新を有効にするおよびすべての拡張機能の自動更新を無効にするアクションに変更しました。これらのアクションにより、すべての拡張機能の自動更新を一括で有効または無効にできます。
個々の拡張機能の自動更新
個々の拡張機能の自動更新エクスペリエンスを改善し、拡張機能の自動更新を有効または無効にするアクションを常に表示するようにしました。これにより、拡張機能の自動更新を管理しやすくなります。
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
機能で説明したように、特別な処理とレンダリングが行われます。
リンクを開くブラウザーの構成
新しい設定workbench.externalBrowser
を使用すると、リンクを開くために使用するブラウザーを構成できます。デフォルトでは、オペレーティングシステムの標準ブラウザーが使用されます。この設定はワークスペースごとに構成でき、設定同期も有効になっています。
ブラウザー実行可能ファイルへの完全なパスを設定値として指定します。または、デバイス間での正しい動作を保証するために、edge
、chrome
、firefox
などのブラウザーエイリアスも使用できます。
ドラッグアンドドロップ時の自動ファイル開きを無効にする
以前は、ファイルをエクスプローラーにドラッグアンドドロップすると、エディターで自動的に開かれました。場合によっては、これは望ましくない可能性があります。新しい設定explorer.autoOpenDroppedFile
を使用すると、この動作を切り替えることができます。デフォルトでは、ファイルはドラッグアンドドロップ時に開かれ続けますが、false
に設定すると、この動作は無効になります。
Editor
電球コントロールの改善
時々、電球コントロールがエディターのコードをブロックすることがありました。これに対処するため、電球コントロールのヒューリスティックを改善しました。これにより、スペースがない場合はエディターのコードをブロックする代わりに、ガターに電球が表示されるようになりました。
エディター内の電球コントロールは、editor.lightbulb.enabled
設定で切り替えることができます。
Diff Editor
チャットでのよりコンパクトな差分
チャットビュー/インラインチャットの差分エディターのレイアウトを改善し、よりコンパクトにしました。
以前:
以後:
ソース管理
受信/送信変更グラフ
このマイルストーンでは、グラフを使用して受信および送信変更の視覚化を有効にしています。グラフには、現在のブランチ、現在のブランチのアップストリームブランチ、およびオプションのベースブランチが含まれます。グラフのルートは、これらのブランチの共通の祖先です。
履歴項目ホバーにいくつかの改善を加えました。
- 同じブランチに属する複数の履歴項目にわたる変更を表示するために、複数選択を有効にしました。
- リモート/ベースブランチからの履歴項目をフィルタリングするためのオプションを
...
メニューに追加しました。 - 履歴項目をフェッチ、プル、プッシュするアクションを追加しました。
ぜひお試しいただき、ご意見をお聞かせください!
受信/送信変更のグラフ表示は、scm.showHistoryGraph
設定を切り替えることで無効にできます。
ターミナルシェル統合
ソース管理ビューは、各ソース管理操作および特定のファイル/フォルダーにスコープされたファイルシステムイベントの後に更新されます。統合ターミナルでgitコマンドが実行された場合、コマンドの完了とソース管理ビューの更新の間に遅延が生じる可能性があります。この遅延を減らすため、このマイルストーンから、ターミナルシェル統合APIを使用して、統合ターミナルで実行された様々なgitコマンド(例: add
、checkout
、commit
、fetch
、pull
、push
など)の正常な完了を検出し、ソース管理ビューを更新しています。
ノートブック
複数セルコメント
ノートブックエディターは、一度に1つまたは複数のセルでコメントを切り替える機能をサポートするようになりました。1つまたは複数のセルコンテナを選択し、キーボードショートカット⌘/ (Windows, Linux Ctrl+/)を押すことで実行できます。
ターミナル
新しいスクロールバー
ターミナルのスクロールバーがエディターのスクロールバーと同じになりました。
概要ルーラーは以前と同じで、成功したコマンドは左、検索結果は中央、失敗したコマンドは右に表示されます。しかし、これでスクロールバーのスライダーと完全に一致するようになりました。
デバッグ
デバッグ中に変数型を表示
設定debug.showVariableTypes
がオンになっている場合、VS Codeはデバッグ中に変数のデータ型を表示するようになりました。
言語
貼り付け時にMarkdownリンクを更新
VS Codeは、コピー&ペーストされたテキスト内のリンクを更新することで、Markdownドキュメント間でテキストセクションを移動するのに役立つようになりました。この機能により、VS Codeはすべての相対パスリンク、参照リンク、および相対パスを持つすべての画像/動画を修正し、新しいドキュメントで機能するようにします。
この機能は、2つのMarkdownファイル間でリンク付きのテキストをコピー&ペーストするたびに動作します。更新できるリンクがある場合、貼り付け後に貼り付けウィジェットが表示されます。貼り付けてリンクを更新を選択すると、VS Codeがリンクを修正します。
markdown.updateLinksOnPaste
をfalse
に設定することで、この機能を完全に無効にできます。
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ユーザー向けにこれを段階的に展開しています。お使いの機械で有効になると、応答の最後に一致を表示リンク付きのメッセージが表示される場合があります。リンクを選択すると、一致するコード参照の詳細が表示されるエディターが開きます。
チャットリクエストでの添付ファイル
Copilot Chatは、コンテキストを添付 (⌘/ (Windows, Linux Ctrl+/)) コマンドを介して、チャットリクエストに明示的な添付ファイルを追加することをサポートしています。これらは現在、チャット履歴で送信されたチャットリクエストの一部としてレンダリングされます。ファイル添付ファイルを選択すると、エディターで対応するファイルと範囲が開きます。
さらに、コンテキストウィンドウをオーバーフローする大きな明示的な添付ファイルが、リクエストから部分的にまたは完全に省略された場合に、より明確に表示されるようになりました。
/new
の改善
/new
スラッシュコマンドを更新し、クイックファイル生成をサポートするようにしました。#selection
などのチャット変数を使用することで、ファイルまたはプロジェクト作成時にCopilotに追加のコンテキストを提供できます。さらに、/new
は、生成されたファイルとフォルダーを既存のワークスペースに保存できるように強化されました。
チャットからVS Codeコマンドにアクセス
@vscode
チャット参加者に新しいスラッシュコマンド/runCommand
が追加され、コアVS Codeコマンドを検索して実行できるようになりました。たとえば、開発者ツールを切り替えるには、次のようになります。
この新しいスラッシュコマンドは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デバッグ体験を向上させるインライン値機能が導入されました。インライン値を使用すると、デバッグセッション中にエディターで対応するコード行の横に、変数の値をインラインで表示できます。これにより、変数をホバーしたり、実行とデバッグビューの変数セクションをチェックしたりすることなく、プログラムの状態を素早く理解するのに役立ちます。
この機能を有効にするには、ユーザー設定で構成値debugpy.showPythonInlineValues
をtrue
に設定します。
注: この機能は現在探索段階であり、改善が続けられています。vscode-python-debuggerリポジトリでフィードバックをお寄せください!
デバッグウェルカムビューの改善
デバッグウェルカムビューには、エディターでPythonファイルが開いている場合に、Pythonの自動構成にすばやくアクセスするためのボタンが含まれるようになりました。
GitHubプルリクエストとイシュー
プルリクエストとイシューの作業、作成、管理を可能にするGitHubプルリクエスト拡張機能がさらに進歩しました。新機能には以下が含まれます。
- マージされたPRのプルリクエストの説明にある元に戻すボタンを使用して、プルリクエストを元に戻す。
- ブランチが削除されたPRも、プルリクエストビューで表示できるようになりました。
- 複数のPRがチェックアウトされている場合でも、GitHub.comでプルリクエストを開くアクションが表示されます。
その他のハイライトについては、拡張機能の0.94.0リリースの変更履歴を確認してください。
拡張機能作成
ネットワークプロキシの基本認証
https
Node.jsモジュールを使用する拡張機能は、基本認証を必要とするネットワークプロキシを使用できるようになりました。
プレビュー機能
真のインライン差分
このイテレーションでは、diffEditor.experimental.useTrueInlineView
設定(デフォルトでオフ)を導入しました。この設定を有効にしてインラインビューを使用すると、単一行の変更がインラインでレンダリングされます。
この実験的フラグがオンになっていない場合のインラインビューは次のようになります。
この機能は実験的なものであり、今後の変更が予想されます。
PowerShell用のVS CodeネイティブIntelliSense
VS CodeネイティブのPowerShell IntelliSense実験機能は、このリリースでいくつかの重要な改善が見られました。WindowsまたはmacOSでこの機能を有効にするには、次のようにします。
"terminal.integrated.suggest.enabled": true
この機能がはるかに信頼性が高くなっただけでなく、以下に示すように他の多くの改善も行われました。
補完が切り詰められない
補完は、切り詰められたバージョンではなく、入力された内容を正確に表示するようになりました。たとえば、ディレクトリ名を検索する場合、.\
が含まれるようになり、正しく強調表示されます。
以前:
以後:
ディレクトリナビゲーションに最適化された補完
ディレクトリ名に末尾の\
または/
が含まれるようになり、補完すると新しいディレクトリの補完が更新されます。
Enterキーの動作を構成
新しいterminal.integrated.suggest.runOnEnter
設定を使用すると、特定の条件が満たされた場合にコマンドを実行するようにEnter
動作を構成できます。以下の値が利用可能です。
"always"
: 常にEnter
で実行します。"exactMatch"
: 提案が完全にタイプされたときにEnter
で実行します。"exactMatchIgnoreExtension"
(デフォルト): 提案が完全にタイプされたとき、またはファイルが拡張子なしでタイプされたときにEnter
で実行します。"never"
(以前の動作):Enter
で実行しません。
この変更は、既存の筋記憶を壊さないようにするために特に重要です。多くの場合、これにより機能が有効になっていない場合と同じキーストロークセットになります。これの有用な例は、cd ..
を実行する場合です。この変更前は、cd ..<enter><enter>
と入力する必要がありましたが、この新しい設定のおかげで、今は1回のEnter
で済みます。
ファイル補完の改善
ファイル補完は、ファイル名の長さ昇順、ファイル名のアルファベット順、次にファイル拡張子のアルファベット順にソートされるようになりました。コマンド(引数ではない)として実行されるファイル補完も、ファイル拡張子と現在のオペレーティングシステムに応じてブーストされます。たとえば、Windowsで実行される場合、.ps1
、.bat
、.cmd
ファイルはブーストされ、リストの上位に表示されます。
これらの変更は、上位項目の関連性を向上させるだけでなく、ネイティブ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固有の改善が加えられています。以下は、補完の動作例です。
その他の改善点は次のとおりです。
-
エイリアスは右側に展開された状態を表示します
-
ブランチ、タグ、スタッシュ、リモート用のGit固有のアイコン
-
右側のサブコマンドの説明
また、code
とcode-insiders
の組み込み補完も提供していますが、これらは非常に基本的なものであり、将来のリリースで改善される予定です。
これらの補完は、他の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ウェブサイトのデザインを刷新し、ライトテーマとダークテーマのサポートを追加しました。
ウェブサイトの新しいデザインは、システムのテーマ(ライトモードまたはダークモード)をデフォルトとし、右上隅にある太陽/月のアイコンを使用して手動で切り替えることもできます。
皆様からのフィードバックをお待ちしております!機能リクエストやバグは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の貢献者の皆様に心からの感謝を申し上げます。
問題追跡
問題追跡への貢献者
- @gjsjohnmurray (John Murray)
- @IllusionMH (Andrii Dieiev)
- @manav014 (Manav Agarwal)
- @RedCMD (RedCMD)
- @starball5 (スターボール)
- @ArturoDent (ArturoDent)
プルリクエスト
vscode
への貢献者
- @a-stewart (Anthony Stewart): Ensure titlebar is at least as tall as the bounding rect of WCO PR #211440
- @aaronchucarroll: Adds support for Github-style fenced math blocks in markdown editor and preview PR #213750
- @c-claeys (Cristopher Claeys): Fix exponential runtime in service instantiation PR #218393
- @cobey (Cody Beyer): adding js/py lib for tagging PR #219213
- @etcadinfinitum (Lee Zee): shellscript: Register .eclass extension as shell-like PR #219631
- @gabritto (Gabriela Araujo Britto): [typescript-language-features] Add diagnostics performance telemetry PR #220127
- @gjsjohnmurray (John Murray)
- Hide Local History commands when
"workbench.localHistory.enabled": false
PR #212936 - Hide Panel Maximize when at top but not center-aligned PR #221549
- Implement /spam issue triaging command PR #221940
- Hide Local History commands when
- @hotpxl (Yutian Li): Use the builtin local command in shell integration scripts PR #221772
- @jeanp413 (Jean Pierre): Fix port label not applied when forwarding port with vscode.env.asExternalUri PR #220029
- @kapodamy (kapodamy): fix: place regex in variables on
shellIntegration-bash.sh
script PR #221998 - @Krzysztof-Cieslak (Krzysztof Cieślak)
- Inline edit - implement side by side rendering of suggestions PR #219444
- Inline edit - UI fixes for side-by-side rendering PR #221352
- Inline edits - UI fixes for word wrap and scrolling PR #223076
- @mering (Marcel): Setup rust in Devcontainer PR #221301
- @mxts (Teik Seong): add option to dock terminal at top PR #207721
- @Parasaran-Python (Parasaran): Fixes #218254 PR #219312
- @rehmsen (オーレ)
- Support comments on notebook markup cells PR #219657
- Show the first comment on a notebook cell, for any owner. PR #219926
- Update notebook comment view in response to mutations PR #219927
- @scop (Ville Skyttä): Fix terminal
__vsc_first_prompt
errors with bash innounset
mode PR #221980 - @SimonSiefke (サイモン・シーフケ)
- feature: add setting whether or not to auto open a file after dropping it into the explorer PR #213498
- reduce impact of memory leaks related to editor PR #219297
- fix: memory leak in extension tabs PR #219726
- feature: allow configuring default browser PR #219885
- fix: memory leak in SelectBoxList PR #221507
- fix: memory leak in settings widget PR #221518
- fix: memory leak in StickyScrollFocus PR #221622
- @syi0808 (Sung Ye In): fix(terminal): remove fixedRows line in add scrollbar PR #221976
- @tisilent (xiejialong)
- Add Icons. PR #219816
- Window title use execution path. PR #221258
- Add revealTerminal and focusInstance in terminalService PR #221684
- @wdhongtw (Weida Hong): Reset shell-type context when the type is unknown PR #221277
vscode-black-formatter
への貢献
- @shayhurley (Shay Hurley): Update README.md PR #524
vscode-hexeditor
への貢献
- @tomilho (Tomás Silva): fix: removes duplicate webview/context PR #527
vscode-languageserver-node
への貢献者
- @benmcmorran (Ben McMorran): Add supportThemeIcons in MarkdownString PR #1504
vscode-markdown-tm-grammar
への貢献
- @RedCMD (RedCMD): Fix
FrontMatter
integration PR #162
vscode-pull-request-github
への貢献者
- @Santhoshmani1 (Santhosh Mani ): Feature : Add open pr on github from pr description node PR #6020
vscode-textmate
への貢献
- @aleclarson (Alec Larson): feat: add child combinator ">" (and fix a specificity bug) PR #233
debug-adapter-protocol
への貢献者
- @dawedawe (dawe): Update overview.md to link to renamed package PR #489
language-server-protocol
への貢献者
- @asukaminato0721 (Asuka Minato)
- @flaribbit (梦飞翔): Update servers.md PR #1968
- @PrasangAPrajapati (Prasang A Prajapati): Add implementor for JCL LSP Server PR #1955
- @StachuDotNet (Stachu Korick): Clarify deltaLine and deltaStart of SemanticTokens payload PR #1966
monaco-editor
へのコントリビューション
- @ScottCarda-MS (Scott Carda): Update Q# Keywords PR #4586
node-request-light
への貢献
- @remcohaszing (Remco Haszing): Add package exports PR #25
python-environment-tools
への貢献
- @cclauss (Christian Clauss): interpreterInfo.py: Create the object in a single operation PR #93
- @hamirmahal (Hamir Mahal): style: simplify string formatting PR #88