2024年7月 (バージョン 1.92)
アップデート 1.92.1: このアップデートでは、以下のissueに対処しています。
アップデート 1.92.2: このアップデートでは、以下のissueに対処しています。
ダウンロード: 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: 最新機能をいち早く試したいですか? nightly Insiders ビルドをダウンロードして、最新のアップデートをいち早くお試しください。
アクセシビリティ
デバッグ体験の向上
アクセシビリティ ヘルプ ダイアログ
実行とデバッグ ビューおよびデバッグ コンソールにアクセシビリティ ヘルプ ダイアログを追加しました。いずれかのビューにフォーカスがある場合、アクセシブル ヘルプ ダイアログを開くためのヒントが表示されます。このヒントは、設定 accessibility.verbosity.debug
で設定できます。
デバッグ コンソール アクセシブル ビュー
アクセシブル ビューを開く コマンドを実行 (⌥F2 (Windows Alt+F2, Linux Shift+Alt+F2)) すると、デバッグ コンソールの内容を文字単位、行単位で検査できます。
設定 debug.autoExpandLazyVariables
は、スクリーン リーダー最適化モード
の場合、変数値をすぐに確認できるように有効になりました。
デバッグ コンソールで式が評価されると、その値がスクリーン リーダー ユーザーにアナウンスされるようになりました。
動的ウォッチ変数のアナウンス
スクリーン リーダーを有効にしてデバッグする場合、ウォッチ変数の値が変更されると通知されるようになりました。これは、accessibility.debugWatchVariableAnnouncements
で設定できます。
キーバインド設定アクション
前のマイルストーンでは、アクセシビリティ ヘルプ ダイアログで未割り当てのキーバインドを設定するアクションを導入しました。このアクションを補完するために、割り当て済みキーバインドの設定 コマンド (⌥A (Windows, Linux Alt+A)) を追加しました。
ワークベンチ
パネルを上部に移動
パネルをワークベンチの上部、エディター領域の上に移動できるようになりました。デフォルトでは、パネルは下部に配置され、ターミナル、出力パネル、デバッグ コンソールなどのビューが含まれています。この機能強化は、パネルを左、右、下に配置する既存のオプションを補完するものです。
プロファイル エディターのプレビュー
今回のマイルストーンでは、プロファイル エディターをよりユーザーフレンドリーにし、設定エディターと一貫性のあるルックアンドフィールを持つようにすることで、プロファイル エディターの改善を継続しました。
プロファイル エディターは、workbench.experimental.enableNewProfilesUI
設定の背後にある試験的な機能として利用できます。有効にすると、ウィンドウの左下隅にある設定ギア アイコンからプロファイル エディターにアクセスできます。
既存のプロファイルのオーバーライド
デフォルト プロファイルを含む既存のプロファイルを、同じ名前で新しいプロファイルを作成することでオーバーライドできるようになりました。
拡張機能のアップデート体験の向上
拡張機能のアップデート体験を改善し、拡張機能のアップデートをより細かく制御できるようにし、拡張機能の自動更新をより簡単に管理できるようにしました。
すべての拡張機能の自動更新
拡張機能ビューのタイトル領域にあるグローバルな拡張機能の自動更新アクションを、すべての拡張機能の自動更新を有効にする および すべての拡張機能の自動更新を無効にする アクションに変更しました。これらのアクションを使用すると、すべての拡張機能の自動更新を一度に有効または無効にできます。
個々の拡張機能の自動更新
個々の拡張機能の自動更新体験を改善し、拡張機能の自動更新を有効または無効にするアクションを常に表示するようにしました。これにより、拡張機能の自動更新の管理が容易になります。
VSIX 経由でインストールされた拡張機能の自動更新を無効にする
VSIX 経由で拡張機能をインストールすると、その拡張機能の自動更新はデフォルトで無効になります。これにより、自動的に更新されることなく、インストールした拡張機能のバージョンを使用できます。
拡張機能の更新をより細かく制御
実行可能コードを持たないインストール済み拡張機能のバージョンを、実行可能コードを持つバージョンに更新する場合は、ユーザーの同意が必要になりました。これにより、更新を適用する前に確認することができます。次のビデオは、コードのない拡張機能をコードのあるバージョンに更新する際のエクスペリエンスを示しています。
レビュー ボタンを選択すると、拡張機能の変更ログまたは拡張機能リポジトリがブラウザーで開きます。変更内容を確認してから、拡張機能を更新するかどうかを決定できます。
設定エディターのジャンプ問題の修正
設定エディターは、設定を変更した後、別の設定にフォーカスを変更するとジャンプすることがありました。そして、このジャンプは、設定を変更する前にスクロールするほど悪化していました。設定エディターが変更後に設定を再レンダリングする方法を変更したため、設定エディターは設定を変更した後でもジャンプしなくなりました。
テーマ: ライトピンク (vscode.dev でプレビュー)
設定の URL 処理
VS Code は、vscode://settings/setting.name
形式 (Insiders の場合は vscode-insiders://settings/setting.name
、OSS バージョンの場合は code-oss
) の "settings" URL を処理できるようになり、設定エディターを指定された設定で開きます。設定が指定されていない場合でも、設定エディターは開かれます。リリースノートで設定 URL を持つアンカータグが使用され、リリースノートが VS Code で開かれている場合は、前の codesetting
機能で説明したように、特別な処理とレンダリングを行います。
リンクを開くブラウザーの設定
新しい設定 workbench.externalBrowser
を使用すると、リンクを開く際に使用するブラウザーを設定できます。デフォルトでは、オペレーティング システムの標準ブラウザーが使用されます。この設定は、ワークスペース レベルで設定でき、設定同期も有効になっています。
設定値としてブラウザー実行可能ファイルへのフルパスを指定します。または、デバイス間で正しく機能するように、edge
、chrome
、firefox
などのブラウザーエイリアスを使用することもできます。
ドラッグアンドドロップ時のファイルの自動オープンを無効にする
以前は、ファイルをエクスプローラーにドラッグアンドドロップすると、エディターで自動的に開いていました。場合によっては、これが望ましくない場合があります。新しい設定 explorer.autoOpenDroppedFile
を使用すると、この動作を切り替えることができます。デフォルトでは、ファイルはドラッグアンドドロップ時に引き続き開かれますが、false
に設定すると、この動作は無効になります。
エディター
電球コントロールの改善
電球コントロールがエディターでコードをブロックする場合があります。これに対処するために、電球コントロールのヒューリスティックを改善しました。スペースがない場合は、エディターでコードをブロックする代わりに、ガターに電球を表示します。
エディターの電球コントロールは、editor.lightbulb.enabled
設定で切り替えることができます。
差分エディター
チャットでのよりコンパクトな差分
チャット ビュー/インライン チャットの差分エディターのレイアウトを反復処理し、よりコンパクトにしました。
以前:
以後:
ソース管理
受信/送信変更グラフ
今回のマイルストーンでは、グラフを使用した受信および送信変更の視覚化を有効にしています。グラフには、現在のブランチ、現在のブランチの上流ブランチ、およびオプションのベース ブランチが含まれています。グラフのルートは、これらのブランチの共通の祖先です。
履歴項目ホバーにいくつかの改善を加えました。
- 同じブランチに属する複数の履歴項目にわたる変更を確認するための複数選択を有効にしました。
- リモート/ベース ブランチから履歴項目をフィルター処理するためのオプションを
...
メニューに追加しました。 - 履歴項目をフェッチ、プル、プッシュするアクションを追加しました。
ぜひお試しいただき、ご意見をお聞かせください!
受信/送信変更のグラフ表示は、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 拡張機能を使用すると、Dev Container、SSH 経由のリモート マシンまたは Remote Tunnels、または Windows Subsystem for Linux (WSL) をフル機能の開発環境として使用できます。
ハイライトは次のとおりです。
- GPG keyboxd のサポート
- ローカル ポート範囲の設定
これらの機能の詳細については、Remote Development リリースノートを参照してください。
拡張機能への貢献
GitHub Copilot
Copilot Chat の GPT-4o へのアップグレード
Copilot Chat ビューを GPT-4-Turbo から OpenAI の最新モデルである GPT-4o にアップグレードしました。私たちの実験では、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 バイナリを実行する必要性が減り、パフォーマンスが向上します。
今回のリリースから、この機能強化を実験の一部としてロールアウトしています。これを試してみたい場合は、User settings.json
で "python.locator"
を "native"
に設定し、VS Code ウィンドウをリロードできます。この機能、進行中の作業、およびフィードバックの詳細については、python-environment-tools リポジトリを参照してください。
ネイティブ REPL の実行ステータスを表示する
実験的なネイティブ REPL ("python.REPL.sendToNativeREPL": true
) は、実行結果に応じて、Jupyter セルと同様に成功/失敗 UI を表示するようになりました。さらに、出力が生成されないセルに空行が表示されないように改善しました。
ソース コード内のインライン変数値を表示する
Python デバッガー 拡張機能は、Python デバッグ エクスペリエンスを向上させるためのインライン値機能を紹介しました。インライン値を使用すると、デバッグ セッション中に、コードの対応する行の横にあるエディターで変数の値をインラインで表示できます。これにより、変数にカーソルを合わせたり、実行とデバッグ ビューの [変数] セクションを確認したりすることなく、プログラムの状態をすばやく理解できます。
この機能を有効にするには、User 設定で構成値 debugpy.showPythonInlineValues
を true
に設定します。
注意: この機能は現在、探索状態であり、改善が続けられています。フィードバックがある場合は、vscode-python-debugger リポジトリで提供してください!
デバッグ ウェルカム ビューの改善
デバッグ ウェルカム ビューに、Python ファイルがエディターで開いている場合に、自動 Python 構成にすばやくアクセスできるボタンが含まれるようになりました。
GitHub Pull Requests and Issues
GitHub Pull Requests 拡張機能でさらに進捗がありました。この拡張機能を使用すると、プルリクエストと issue の作業、作成、管理を行うことができます。新機能には以下が含まれます。
- マージされた PR のプルリクエストの説明にある リバート ボタンを使用して、プルリクエストをリバートする
- ブランチが削除された PR をプルリクエスト ビューで表示できるようになりました。
- 複数の PR をチェックアウトしている場合でも、GitHub.com でプルリクエストを開く アクションが表示されます。
その他のハイライトについては、拡張機能の 0.94.0 リリースの変更ログを確認してください。
拡張機能の作成
ネットワーク プロキシの基本認証
https
Node.js モジュールを使用する拡張機能は、基本認証を必要とするネットワーク プロキシを使用できるようになりました。
プレビュー機能
真のインライン差分
今回のイテレーションでは、diffEditor.experimental.useTrueInlineView
設定 (デフォルトはオフ) を導入しました。この設定を有効にしてインライン ビューを使用すると、1 行の変更がインラインでレンダリングされます。
これは、この実験的なフラグがオンになっていない場合のインライン ビューの外観です。
この機能は実験的なものであり、将来の変更が予想されます。
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 で測定したところ、シェル統合のアクティブ化にかかる時間が約 600 ミリ秒から約 50 ミリ秒に短縮されました。
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
と同様ですが、テキスト検索結果用です。たとえば、拡張機能が提供する結果は、仮想ファイル システム内から検索ビューで検索するときに表示される可能性があります。
さらに、workspace.findFiles
API を刷新しています。これは、VS Code のワークスペース ファイル検索を使用してファイルを検索します。新しいバージョンでは、より多くのオプションが可能になり、除外オプションをより明確に処理する必要があります。既存の関数シグネチャは、刷新されたバージョンを導入するときでも引き続き機能するはずです。
次の表は、異なる API の関連性を示しています。
API を使用して検索 | API を使用して結果を提供 | |
---|---|---|
ファイルの場合 | FindFiles | FileSearchProvider |
ファイル内のテキストの場合 | FindTextInFiles | TextSearchProvider |
興味がある場合は、上記のリンクにアクセスしてフィードバックをお寄せください!
ウェブサイト
VS Code ウェブサイトのデザインを刷新し、ライトおよびダーク テーマのサポートを追加しました。
ウェブサイトの新しいデザインは、システムのテーマ (ライトモードまたはダークモード) がデフォルトになり、右上にある太陽/月アイコンを使用して手動で切り替えることもできます。
皆様からのフィードバックをお待ちしております。機能リクエストまたはバグは、vscode-docs リポジトリにファイルしてください。
エンジニアリング
Markdown 言語サーバーを別のリポジトリに移動
VS Code の組み込み Markdown IntelliSense を強化する言語サーバーを 独自のリポジトリ に移動しました。以前は、このプロジェクトはメインの VS Code リポジトリのサブフォルダーから公開されていました。この変更により、プロジェクトへの貢献が容易になります。
プロジェクトは、npm で同じ名前 vscode-markdown-languageserver
で引き続き公開されています。
VS Code での ESM の使用に関する進捗
今回のマイルストーンでは、VS Code コアに ESM を採用する作業を再開しました。将来の目標は、ECMAScript モジュール (ESM) ローディングを使用して AMD を完全に削除することです。これは、コード ローディングとバンドル全体を最新化する複数マイルストーンの取り組みです。
VS Code に依存する xterm.js
ターミナルの新しいスクロールバーには、かなりの舞台裏作業が必要でした。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.js のバージョンには、CVE に対応するための破壊的な変更が含まれています。Windows 上で .bat
または .cmd
ファイルを実行している場合、影響を受ける可能性があります。shell
オプションを使用してこれらのファイルを実行する際のNode.js が定めるガイドラインに従ってください。
影響を受ける可能性のある拡張機能については、簡単なソースコードスキャンに基づいて事前に通知しましたが、見落としがある可能性もございます。もし影響を受けている場合、Windows 上で .bat
または .cmd
ファイルを実行する際に EINVAL 例外が発生します。これらの処理方法については、Node.js のドキュメントを参照してください。
拡張機能の作者の皆様には、これらの変更を事前に把握するために、常にInsiders リリースで拡張機能をテストすることを推奨します。
注目すべき修正
- 211199 スムーズスクロールが有効になっている場合、ターミナルで Ctrl+c を押しても一番下までスクロールしない
謝辞
最後になりましたが、VS Code のコントリビューターの皆様に心から感謝申し上げます。
Issue tracking
Issue tracking への貢献
- @gjsjohnmurray (John Murray)
- @IllusionMH (Andrii Dieiev)
- @manav014 (Manav Agarwal)
- @RedCMD (RedCMD)
- @starball5 (starball)
- @ArturoDent (ArturoDent)
プルリクエスト
vscode
への貢献
- @a-stewart (Anthony Stewart): タイトルバーが WCO の bounding rect と同じ高さ以上になるようにする PR #211440
- @aaronchucarroll: Markdown エディターとプレビューで Github スタイルのフェンス付き数式ブロックのサポートを追加 PR #213750
- @c-claeys (Cristopher Claeys): サービスインスタンス化における指数関数的なランタイムを修正 PR #218393
- @cobey (Cody Beyer): タギング用の js/py ライブラリを追加 PR #219213
- @etcadinfinitum (Lee Zee): shellscript: .eclass 拡張子をシェルライクとして登録 PR #219631
- @gabritto (Gabriela Araujo Britto): [typescript-language-features] 診断パフォーマンスのテレメトリを追加 PR #220127
- @gjsjohnmurray (John Murray)
"workbench.localHistory.enabled": false
の場合、ローカルヒストリーコマンドを非表示にする PR #212936- パネルが上部にあり、中央揃えでない場合は、パネルの最大化を非表示にする PR #221549
- /spam issue トリアージコマンドを実装 PR #221940
- @hotpxl (Yutian Li): シェル統合スクリプトで組み込みの local コマンドを使用 PR #221772
- @jeanp413 (Jean Pierre): vscode.env.asExternalUri でポートを転送する際にポートラベルが適用されない問題を修正 PR #220029
- @kapodamy (kapodamy): fix:
shellIntegration-bash.sh
スクリプトで正規表現を変数に配置 PR #221998 - @Krzysztof-Cieslak (Krzysztof Cieślak)
- インライン編集 - サジェストのサイドバイサイドレンダリングを実装 PR #219444
- インライン編集 - サイドバイサイドレンダリングの UI 修正 PR #221352
- インライン編集 - 単語折り返しとスクロールの UI 修正 PR #223076
- @mering (Marcel): Devcontainer に Rust をセットアップ PR #221301
- @mxts (Teik Seong): ターミナルを上部にドッキングするオプションを追加 PR #207721
- @Parasaran-Python (Parasaran): #218254 を修正 PR #219312
- @rehmsen (Ole)
- ノートブックマークアップセルでのコメントをサポート PR #219657
- すべての所有者に対して、ノートブックセルの最初のコメントを表示する PR #219926
- 変更に応じてノートブックコメントビューを更新 PR #219927
- @scop (Ville Skyttä):
nounset
モードの bash でのターミナル__vsc_first_prompt
エラーを修正 PR #221980 - @SimonSiefke (Simon Siefke)
- feature: ファイルをエクスプローラーにドロップした後、自動的にファイルを開くかどうかを設定する設定を追加 PR #213498
- エディターに関連するメモリリークの影響を軽減 PR #219297
- fix: 拡張機能タブのメモリリーク PR #219726
- feature: デフォルトブラウザーを設定できるようにする PR #219885
- fix: SelectBoxList のメモリリーク PR #221507
- fix: 設定ウィジェットのメモリリーク PR #221518
- fix: StickyScrollFocus のメモリリーク PR #221622
- @syi0808 (Sung Ye In): fix(terminal): スクロールバーを追加する際に fixedRows 行を削除 PR #221976
- @tisilent (xiejialong)
- アイコンを追加。 PR #219816
- ウィンドウタイトルで実行パスを使用。 PR #221258
- terminalService に revealTerminal と focusInstance を追加 PR #221684
- @wdhongtw (Weida Hong): タイプが不明な場合、シェルタイプコンテキストをリセット PR #221277
vscode-black-formatter
への貢献
- @shayhurley (Shay Hurley): README.md を更新 PR #524
vscode-hexeditor
への貢献
- @tomilho (Tomás Silva): fix: 重複した webview/context を削除 PR #527
vscode-languageserver-node
への貢献
- @benmcmorran (Ben McMorran): MarkdownString で supportThemeIcons を追加 PR #1504
vscode-markdown-tm-grammar
への貢献
- @RedCMD (RedCMD):
FrontMatter
統合を修正 PR #162
vscode-pull-request-github
への貢献
- @Santhoshmani1 (Santhosh Mani ): 機能: PR 説明ノードから github で PR を開く機能を追加 PR #6020
vscode-textmate
への貢献
- @aleclarson (Alec Larson): feat: 子結合子 ">" を追加 (および特異性のバグを修正) PR #233
debug-adapter-protocol
への貢献
- @dawedawe (dawe): overview.md を更新して、名前が変更されたパッケージへのリンクを修正 PR #489
language-server-protocol
への貢献
- @asukaminato0721 (Asuka Minato)
- @flaribbit (梦飞翔): servers.md を更新 PR #1968
- @PrasangAPrajapati (Prasang A Prajapati): JCL LSP サーバーの実装者を追加 PR #1955
- @StachuDotNet (Stachu Korick): SemanticTokens ペイロードの deltaLine と deltaStart を明確化 PR #1966
monaco-editor
への貢献
- @ScottCarda-MS (Scott Carda): Q# キーワードを更新 PR #4586
node-request-light
への貢献
- @remcohaszing (Remco Haszing): パッケージのエクスポートを追加 PR #25
python-environment-tools
への貢献
- @cclauss (Christian Clauss): interpreterInfo.py: オブジェクトを単一の操作で作成 PR #93
- @hamirmahal (Hamir Mahal): style: 文字列のフォーマットを簡略化 PR #88