2024年1月 (バージョン 1.86)
更新 1.86.2: この更新プログラムでは、これらの問題が解決されています。
更新 1.86.1: この更新プログラムでは、これらの問題が解決されています。
ダウンロード: Windows: x64 Arm64 | Mac: Universal Intel Silicon | Linux: deb rpm tarball Arm snap
Visual Studio Code 2024年1月リリースへようこそ。このバージョンには多くの更新があり、皆様に気に入っていただけることを願っています。主なハイライトは次のとおりです。
- ウィンドウごとのズームレベル - 各ウィンドウのズームレベルを個別に調整します。
- Hey Code 音声コマンド - 音声コマンドでチャットセッションを開始します。
- 複数ファイル差分エディター - 差分エディターで複数のファイルの差分をすばやく確認します。
- トリガーされたブレークポイント - ブレークポイントの依存関係による効率的なデバッグ。
- Sticky Scroll サポートの拡張 - ツリービューとノートブックでの Sticky Scroll。
- Markdown 貼り付けオプション - リンク、ビデオ、オーディオ要素のリッチな貼り付けをサポート。
- 柔軟な自動保存オプション - エラー時の自動保存をスキップしたり、特定のファイルタイプのみを保存したりできます。
- ソース管理入力 - コミット入力と、言語ごとのエディター設定をカスタマイズします。
- 拡張機能の通知 - 拡張機能ごとの通知無効化をきめ細かく制御します。
- GitHub Copilot の更新 - 改善されたデフォルトコンテキスト、ファイルコンテキストの追加、AI の修正。
これらのリリースノートをオンラインで読みたい場合は、code.visualstudio.com の 更新 にアクセスしてください。
Insiders: 新機能をいち早く試したいですか?夜間ビルドのInsidersをダウンロードして、利用可能になり次第、最新の更新を試すことができます。
アクセシビリティ
アラート
スクリーンリーダーおよび点字ユーザーは、デバッグブレークポイントにヒットしたとき、現在の行にエラーがある場合など、より多くの設定可能なアラートを利用できるようになりました。これらはaccessibility.alert
で始まる設定、またはヘルプ: アラートを一覧表示コマンドを使用して探索および設定できます。
"Hey Code" 音声コマンドを使用する
新しいaccessibility.voice.keywordActivation
設定により、VS Code で「Hey Code」音声コマンドをリッスンして Copilot Chat との音声セッションを開始できます。音声認識はローカルマシンで処理され、サーバーには送信されません。
利用可能なオプション:
chatInView
: チャットビューから音声チャットを開始quickChat
: クイックチャットコントロールからクイック音声チャットを開始inlineChat
: エディターのインラインチャットから音声チャットを開始chatInContext
: フォーカスがエディターにある場合はインラインチャットから音声を開始、それ以外の場合はチャットビューから音声チャットを開始
次の例は、inlineChat
オプションが構成された「Hey Code」を示しています
ステータスバーの小さなマイクアイコンは、VS Code が「Hey Code」を認識するためにマイクを使用しているときに表示されます。
音声チャットセッションが完了すると、VS Code は再び「Hey Code」をリッスンして再開します。
この新機能を使用するには、以下の拡張機能が必要です
注: 音声認識はローカルマシンで実行され、サーバーには送信されません。
ワークベンチ
補助ウィンドウの復元
このリリースでは、メインウィンドウに関連付けられたすべての開いているフローティングウィンドウが、アプリケーションの再起動時に復元されます。これには、開いているエディター、および補助ウィンドウのサイズと位置が含まれます。
ツリービューでの Sticky Scroll
エディターでの Sticky Scroll の成功を基に、この機能をすべてのツリービューに拡張し、ユーザーがプロジェクトツリーをより簡単にナビゲートできるようにしました。ツリービューの Sticky Scroll は、workbench.tree.enableStickyScroll
設定で有効または無効にできます。
Sticky Scroll がスペースを取りすぎないように、ビューの高さの最大40%に制限されています。さらに、ユーザーはworkbench.tree.stickyScrollMaxItemCount
(デフォルトでは7に設定)を構成することで、スティッキー要素の最大数をカスタマイズできます。表示できる数よりも多くのスティッキー要素がある場合、ツリービューがこの機能をサポートしていれば、Sticky Scroll は最後のスティッキー要素をまとめて統合します。
ツリーのナビゲーション体験を向上させるために、スティッキー要素を選択すると、ツリー内のその要素に直接ジャンプできます。また、親要素のシェブロンを押すと、すべての子要素を非表示にできます。さらに、Sticky Scroll が有効になっている場合、チェックボックスやアクション項目へのアクセスが容易になります。
ウィンドウごとのズームレベルの設定
新しい設定window.zoomPerWindow
(デフォルトで有効) により、ズームコマンド (拡大、縮小、ズームのリセット) をアクティブなウィンドウのみに適用し、開いているすべてのウィンドウには適用しないように構成できます。以前は、これらのコマンドを使用すると、開いているすべてのウィンドウに適用されるだけでなく、window.zoomLevel
設定も更新されました。
これらのコマンドの使用は、たとえばプレゼンテーションを行う際など、よりアドホックなジェスチャーであると考えており、そのため、それらが呼び出されたウィンドウにのみ適用されるべきです。
この例からわかるように、アクティブなウィンドウのズームレベルのみが変更され、他のウィンドウは変更されません
ウィンドウのカスタムズームレベルがwindow.zoomLevel
設定値と一致しない場合、ステータスバーにズームレベルインジケーターが表示されます。ステータスバーのインジケーターを選択すると、ズームレベルの変更、ズームレベルのリセット、または関連設定への迅速な移動のためのコントロールが見つかります。
カスタムズームレベルのウィンドウは、再起動後もワークスペースの変更後もそのズームレベルを保持します。
注: 以前のズームレベルの動作に戻すには、
window.zoomPerWindow
をfalse
に構成してください。
より強力で柔軟な自動保存オプション
VS Code は長らく自動保存オプションを提供してきました。このリリースでは、この機能をさらに強力にしました。
リソースまたは言語ごとの自動保存の設定
すべての自動保存設定をフォルダーまたは言語ごとに構成できるようになり、特定の言語またはフォルダーに対してのみ自動保存を選択的に有効にできます。
以下の例では、設定は次のように構成されています
{
"[markdown]": {
"files.autoSave": "afterDelay"
}
}
ご覧のとおり、編集中の Markdown ファイルはすぐに保存されますが、TypeScript ファイルは未保存のままです。
エラー時の自動保存を無効にする
新しいfiles.autoSaveWhenNoErrors
設定により、自動保存が通常エディターを保存する際にファイル内にエラーマーカーがある場合、自動保存を無効にできます。
これは、ファイル変更を監視する外部ツールがあり、それらのツールがエラーを含む変更されたファイルに対して動作するのを避けたい場合に役立ちます。
ワークスペースファイルのみの自動保存
最後に、自動保存をワークスペース内のファイルのみに制限する新しい設定files.autoSaveWorkspaceFilesOnly
が追加されました。
拡張機能ごとの通知無効化を許可
拡張機能からの通知を無効にするための、よりきめ細かな制御を提供します。通知トーストから、拡張機能の通知を無効にできます
通知センターには、通知をトリガーしたすべての拡張機能の通知有効化を管理するための一元的な場所があります
この新機能は、すべての通知をグローバルに無効にする既存の「おやすみモード」を補完します。グローバルスイッチと同様に、エラー通知は常に表示され、無効にすることはできません。
左右の差分エディターのスワップを許可
2つのファイルを比較する際 (例えばファイルエクスプローラーから)、差分エディターの左右を入れ替える新しいアクションが表示されます。
注: 編集可能な2つのファイルを比較すると、どちらの側でも変更を行うことができます。
コマンドラインから標準入力 (stdin) を読み取る際に--wait
を強制しない
ターミナルを使用する際、プロセスの出力を直接 VS Code に渡してエディターとして開くことができます。例えば、
- Linux または macOS で
ps aux | grep code | code -
- Windows で
echo Hello World | code -
これまでは、これは--wait
フラグも意味していました。つまり、エディターウィンドウを閉じるか、VS Code を完全に終了するまでターミナルプロンプトに戻れないことを意味していました。このマイルストーンでは、標準入力からの読み取り時に--wait
を強制しなくなったため、すぐにターミナルプロンプトに戻ることができます。
注: 以前の動作に戻すには、コマンドラインの呼び出しに
--wait
を追加するだけです。
ネイティブタイトルバーでのカスタムタイトルバーのサポート
window.customTitleBarVisibility
設定を導入しました。これにより、ネイティブタイトルバーが使用されている場合でもカスタムタイトルバーを表示できます。これは、ネイティブタブを好む macOS ユーザーにとって特に便利です。この新しい設定により、ネイティブタイトルバーのユーザーは、次のようなカスタムタイトルバーの機能にアクセスできるようになりました。
- コマンドセンター: カスタムタイトルバーからコマンドセンターに直接簡単にアクセスできます。
- レイアウトコントロール: ワークスペースのレイアウトをより柔軟にカスタマイズできます。
- アクティビティバーのカスタマイズ: アクティビティバーのアクションを上部に移動できます。
- エディターアクションのカスタマイズ: エディターアクションをカスタムタイトルバーに再配置できます。
さらに、フルスクリーンモードで整理されたビューを好むユーザー向けに、window.customTitleBarVisibility: "windowed"
オプションを使用すると、フルスクリーンモード時にカスタムタイトルバーを非表示にできます。この機能により、より集中力が高まり、邪魔の少ないコーディング環境が確保され、フルスクリーンモードでない場合でもカスタムタイトルバーの機能を使用するオプションが提供されます。
システムカラーテーマを強制する新しい設定
新しい設定window.systemColorTheme
を使用すると、macOS のメニューやダイアログなどの VS Code のネイティブ要素に適用されるシステムカラーテーマを明示的にオーバーライドできます。この設定は以下の値をサポートしています
default
: カラーテーマはオペレーティングシステムのものと一致します (デフォルトオプション)。auto
: VS Code のテーマに応じて、light
またはdark
を選択しますlight
:light
システムテーマを選択しますdark
:dark
システムテーマを選択します
以下は、macOS のコンテキストメニューにこれがどのように適用されるかの例です。上部がlight
、下部がdark
で表示されています
無題のワークスペースを承認なしで閉じられるようにする
新しい設定window.confirmSaveUntitledWorkspace
により、無題のワークスペースがあるウィンドウを閉じる際に確認ダイアログを表示しないように設定できます。また、ダイアログに表示を無効にするチェックボックスも追加されました。window.confirmSaveUntitledWorkspace
設定は、現在の動作を維持するためにデフォルトで有効になっています。
注: 無題のワークスペースについては、ドキュメントで詳しく知ることができます。
出力パネルでワードラップを切り替える
出力パネルが表示: ワードラップの切り替えコマンドを使用してワードラップの切り替えをサポートするようになりました。これは、出力パネルで長いテキスト行を表示するのに役立ちます。
新しいウィンドウで出力パネルを開く
出力パネルのパネルタイトルメニューに、出力パネルを別のウィンドウで表示するための新しいウィンドウで出力を開くアクションが追加されました。
CLI から拡張機能を更新
--update-extensions
引数を使用して、コマンドラインから拡張機能を更新できるようになりました。これにより、インストールされているすべての拡張機能が最新バージョンに更新されます。
Quick Pick のホバーでカスタムホバーを使用するように変更
Quick Pick のいくつかのホバーを、ネイティブレンダリングの代わりにカスタムホバーを使用するように変更しました。これにより、よりリッチなレンダリングと製品全体での一貫性が向上します。
差分エディターでの複数ファイルレビュー
このリリースから、マルチ差分エディターがすべてのユーザーに対して有効になりました。マルチ差分エディターを使用すると、複数のファイルの変更を1つのスクロール可能なビューで確認できます
現在、マルチ差分エディターは、ローカルの変更、ステージングされた変更、入出力の変更、スタッシュ、およびプルリクエストからの変更をレビューするために使用できます。これは、マルチファイル差分アイコンで識別できる、さまざまな新しい変更を表示アクションを選択することで開くことができます。
ソース管理ビューから差分エディターを開くと、ファイルが変更またはステージングされるとビューが動的に更新されます。
マルチ差分エディターはまだ開発中であるため、今後のリリースでさらなる改善とバグ修正が期待されます。
GitHub Pull Requests 拡張機能の複数ファイル差分
GitHub Pull Requests and Issues拡張機能がインストールされている場合、プルリクエストを開いたときにマルチファイル差分エディターを自動的に開くように"githubPullRequests.focusedMode": "multiDiff"
を設定できます。
github.dev の設定が済んでいる場合、GitHub のプルリクエスト上で.
を押すと、github.dev がマルチファイル差分エディターで開かれ、変更をレビューできます。
エディター
テキスト/HTML コンテンツを貼り付け
形式を選択して貼り付け... コマンドで、クリップボードのtext/html
コンテンツを貼り付けられるようになりました。
たとえば、ウェブページからコンテンツをコピーした場合、これをプレーンテキストとして貼り付ける代わりに、コンテンツの HTML を貼り付けるのに使用できます。
ソース管理
コミット入力のカスタマイズ
このマイルストーンでは、コミット入力フィールドの初期の高さを制御するために使用できる新しい設定scm.inputMinLineCount
を追加しました。コミット入力フィールドの最大サイズを制御する設定は、同様の設定の命名規則に一致するようにscm.inputMaxLines
からscm.inputMaxLineCount
に名前が変更されました。
ユーザーは、言語固有のエディター設定を使用して、コミット入力フィールドをさらにカスタマイズできるようになりました。言語固有のエディター設定は、エディターのルールを定義したり、ワードラップを無効にしたりするために使用できます。
"[scminput]": {
"editor.rulers": [
50,
72
],
"editor.wordWrap": "off"
}
ソース管理リポジトリビューの改善
多数のリポジトリを持つワークスペースをより適切に管理するために、リポジトリのコンテキストメニューに新しいコマンドその他のリポジトリを閉じるを追加しました。また、リポジトリを閉じるとその他のリポジトリを閉じるの両コマンドに複数選択のサポートを追加したため、ユーザーは複数のリポジトリを一度に閉じたり、いくつかのリポジトリを除いてすべてのリポジトリを閉じたりできます。
ソース管理リポジトリビューは、拡張機能によって提供されるアクションで混雑する可能性があります。これを解消するため、アクションを右クリックして非表示を選択することで、提供されたアクションを非表示にする機能を追加しました。非表示のアクションは...メニューに移動します。チェックアウトと同期を除くすべてのアクションを非表示にできます。
受信/送信変更の改善
ソース管理ビューの受信/送信変更セクションの磨き上げを続けています。このマイルストーンでは、現在のブランチに追跡リモートブランチがある場合にのみ受信変更ノードが表示されるように変更しました。
受信変更ノードにフェッチとプルアクションを、送信変更ノードにプッシュアクションを追加しました。
各個別のコミットと、マルチファイル差分エディターを活用したすべての受信/送信変更を表示するアクションを追加しました。
ユーザーは新しい設定scm.showChangesSummary
を使用して、すべての変更エントリを非表示にできるようになりました。
タグのマージ機能
タグをマージする機能を追加することで、長年の機能リクエストに対応しました。コマンドパレットに新しいコマンドGit: マージ...が追加され、これはGit: ブランチをマージ...コマンドを置き換えます。Git: マージ...コマンドを呼び出すと、ブランチとタグの両方をリストするクイックピックコントロールが表示されます。
スタッシュ表示コマンド
新しいコマンドGit: スタッシュを表示...を追加しました。これにより、ユーザーはリポジトリの任意のスタッシュをマルチファイル差分エディターで表示できます。Git スタッシュを表示している場合、エディターのタイトルメニューにはスタッシュを適用/ポップまたはドロップするアクションが含まれます。
SSH キーを使用したコミット署名
このマイルストーンでは、パスフレーズ付き SSH キーを使用してコミットに署名する機能を追加しました。SSH キーでコミットに署名する際、VS Code は画面上部にクイックピックコントロールを表示してパスフレーズを要求します。VS Code はパスフレーズをキャッシュせず、コミットに署名するたびにパスフレーズを要求します。
ノートブック
フローティングウィンドウのサポート
ノートブックエディターがフローティングウィンドウで開けるようになりました。ノートブックタブをメインウィンドウの外にドラッグして新しいウィンドウで開くか、表示: エディターを新しいウィンドウに移動コマンドを使用できます。
組み込みの変数ビュー
拡張機能が提供する場合、ノートブックカーネルからの変数を表示するために使用できる実験的な変数ビューを、実行およびデバッグビューに追加しました。この機能はこの設定で有効にできます
"notebook.experimental.variablesView": true
ノートブックの Sticky Scroll
ノートブックエディターの Sticky Scroll 機能は、ワークベンチの他の部分とのスタイルを合わせるために大幅に磨き上げられ、各 Markdown 要素に折りたたみコントロールが追加されました。
ターミナル
選択範囲の下に背景を表示
GPU アクセラレーションが有効な場合、デフォルト以外の背景色のセルは、通常の選択色「の下」にレンダリングされるようになりました。
マウスホイールでターミナルをズーム
この設定を有効にすると、Ctrlキーを押しながらマウスホイールでターミナルを拡大縮小できるようになりました。
"terminal.integrated.mouseWheelZoom": true
複数行貼り付け警告の改善
以前のバージョンでは、terminal.integrated.enableMultiLinePasteWarning
はtrue
(デフォルト) またはfalse
のいずれかを受け入れていました。true
がアクティブな場合、ブラケットペーストモードが有効になっている場合、または行が\n
文字で終わる場合を除き、常に警告を表示していました。この設定は、以下のオプションを持つ文字列を受け入れるようになりました
auto
: 以前の true の動作always
: 常に警告を表示never
: 警告を表示しない
さらに、ダイアログに新しいボタンが追加され、文字列を単一行として貼り付けることができるようになりました。これにより、すべての\r
および\n
文字が削除されます。
リンクの改善
ファイルプロトコル URI (file://
) は、他のほとんどのリンクと同様に、末尾に行番号と列番号の拡張をサポートするようになりました。新しい#<line>
形式もサポートされています。
ターミナル音声コマンド
新しいターミナル: ターミナル音声を開始およびターミナル: ターミナル音声を停止コマンドにより、ターミナルで音声テキスト変換セッションを有効にできます。
この新機能を使用するには、VS Code Speech 拡張機能をインストールしてください。
タスク
パス区切り変数へのショートハンド
新しい${/}
変数は、既存の${pathSeparator}
変数のショートハンドとして使用できます。
デバッグ
トリガーされたブレークポイント
別のブレークポイントにヒットすると自動的に有効になるブレークポイントを設定できるようになりました。たとえば、特定の前提条件の後でのみ発生するコードの失敗ケースを診断する際に役立ちます。トリガーされたブレークポイントはすべての言語で機能し、条件付きブレークポイントもトリガーとして使用できます。
トリガーされたブレークポイントは、グリフマージンを右クリックし、トリガーされたブレークポイントを追加...を選択し、このブレークポイントを有効にする他のブレークポイントを選択することで設定できます。
テーマ: Codesong (vscode.devでプレビュー)
セッション終了時に読み取り専用ファイルを閉じる
デバッガーにアタッチされている場合、ディスク上に存在しない内部または仮想のソースファイルが読み取り専用で開かれることがあります。新しい設定debug.closeReadonlyTabsOnEnd
があり、セッション終了時にデバッグセッションから開かれた読み取り専用ファイルを VS Code が自動的に閉じるようにします。
テスト
テストを実行するその他の方法
テストデコレーションをクリックしながらAltキーを押し続けると、利用可能な場合、そのテストがデバッグモードで実行されるようになりました。
エクスプローラービューにコンテキストメニューアクションが追加され、ファイルまたはフォルダー内で宣言されたすべてのテストを実行するために使用できます。
拡張機能作者向けのTestRunProfile.isDefault/onDidChangeDefault
API が最終化されました
以前は、TestRunProfile.isDefault
はテスト実行プロファイルの初期デフォルト状態のみを制御し、それ以降変更または読み取られることはありませんでした。
このリリースでは、ユーザーが選択したプロファイルを変更すると、TestRunProfile.isDefault
プロパティに反映され、対応するTestRunProfile.onDidChangeDefault
イベントが発行されます。同様に、拡張機能がisDefault
を変更すると、UI の選択されたプロファイルが更新されます。
言語
URL を貼り付けて Markdown リンクを自動作成
コピーしたリンクを Markdown リンクに変換したいですか?テキストが選択された状態で Markdown ファイルに URL を貼り付けると、VS Code が自動的に Markdown リンクを挿入するようになりました
この機能はmarkdown.editor.pasteUrlAsFormattedLink.enabled
設定によって制御されます。この動作をカスタマイズするために変更できます
smartWithSelection
— デフォルト。これは、テキストが選択されており、コードブロックなどの特殊な要素内にない場合にこの機能を有効にします。smart
—smartWithSelection
と同じですが、選択を必要としません。always
— 常に URL を Markdown リンクとして貼り付けます。never
— Markdown リンクとしての貼り付けを無効にします。
値を貼り付けた後でも、貼り付けコントロールを使用して別の方法でコンテンツを貼り付けるようにいつでも切り替えることができます。
Markdown のオーディオ/ビデオ スニペットの設定
新しいmarkdown.editor.filePaste.audioSnippet
とmarkdown.editor.filePaste.videoSnippet
設定を使用すると、ドラッグ&ドロップまたは貼り付け時にオーディオファイルとビデオファイルを Markdown に挿入する方法をカスタマイズできます。スニペットでは以下の変数を使用できます
${src}
— オーディオ/ビデオファイルの解決されたパス。${title}
— オーディオ/ビデオに使用されるタイトル。この変数にはスニペットプレースホルダーが自動的に作成されます。
新しい Less 文法
以前の Less 文法はアーカイブされ、VS Code は Less の構文ハイライトにBetter-Lessの文法を使用するようになりました。
新しい Go 文法
Go の構文ハイライト文法が、以前の文法よりも活発にメンテナンスされているGo Syntaxを使用するように変更されました。
リモート開発
リモート開発拡張機能を使用すると、開発コンテナー、SSH 経由のリモートマシン、またはリモートトンネル、あるいはWindows Subsystem for Linux (WSL) をフル機能の開発環境として使用できます。
主なハイライトは次のとおりです。
- ユーザーデータフォルダーに
devcontainer.json
を作成します。 - Dockerfile を使用する際に、
devcontainer.json
でビルドオプションを指定します。
これらの機能の詳細については、リモート開発リリースノートをご覧ください。
拡張機能への貢献
GitHub Copilot
editor.inlineSuggest.fontFamily
設定を使用することで、インラインサジェストのフォントファミリーを変更できるようになりました。
保存前のインラインチャットの確認
私たちは AI の責任ある使用、特にソースコードに関してこれを重視しています。そのため、Copilot によって生成されたコードを保存する前にユーザーに確認を求める新しい設定を追加しました。この設定inlineChat.acceptedOrDiscardBeforeSave
はデフォルトで有効になっています。
テーマ: GitHub Light Default (vscode.devでプレビュー)
この設定が有効な場合、ファイルの保存は、ユーザーが保留中のインラインチャットセッションを承諾または破棄するまで待機します。これは自動保存が有効な場合にも適用され、インラインチャットが終了するまで一時的に無効になります。
話すためのホールドモード
少し前に、VS Code に音声サポートを追加しました。VS Code Speech 拡張機能をインストールすると、チャット入力フィールドに音声テキスト変換サポートが追加されます。
インラインチャットに「話すためのホールド」を追加しました。これは次のように機能します。
- Cmd+I または Ctrl+I を押してインラインチャットをトリガーします。
- キーを押し続けると、音声録音が自動的に開始されることに注意してください。
- キーを離して録音を停止し、リクエストを Copilot に送信します。
テーマ: GitHub Light Default (vscode.devでプレビュー)
この新しいモードには、デフォルトで有効になっている設定も付属していますが、inlineChat.holdToSpeech
で無効にできます。
プレビュー: インラインチャット クイックボイス
「話すためのホールド」に加えて、この機能のより軽量な代替 UI を実験しています。Cmd+K または Ctrl+K を押してからI
を押し続けることでクイックボイスをアクティブにします。I
を押し続けている間、より軽量な録音 UI が表示されます。キーを離すと、リクエストが送信されます。
インラインチャット ライブモード
前回のリリースには、live3
という新しい実験的なインラインチャットモードがありました。これは、よりスムーズなストリーミング体験と、より理解しやすい差分ビューを提供します。これは今回正式版となり、以前のlive
モードを置き換えました。デフォルトは依然としてlivePreview
ですが、ユーザーにはlive
を試すことをお勧めします。また、どのモードが最適かを学ぶための実験も実施しています。
AI 修正の電球アイコン (きらめき)
Copilot を呼び出すには、エディターの電球アイコンも使用できます。選択を行うか、カーソルを新しい行に移動し、電球を選択してから、Copilot で変更またはCopilot で生成を選択します。
他にコードアクションがない場合、電球はきらめきとして表示され、直接インラインチャットが開きます。
#file
コンテキスト変数
チャット入力で#
と入力することで既に使用できるいくつかのコンテキスト変数があり、チャットプロンプトのコンテキストとしてワークスペース内の指定されたファイルを含めることができるように#file
を追加しました。入力のサジェストコントロールから#file
を選択し、表示されるクイックピックからファイルを選択します。
可能な場合、ファイルの全コンテンツが含まれます。コンテキストウィンドウに収まらないほど大きい場合は、実装なしで関数とその説明を含むファイルの概要が含まれます。概要も大きすぎる場合、そのファイルはプロンプトの一部になりません。
チャットのデフォルトコンテキスト
以前は、デフォルトでアクティブなコードエディターから2種類のコンテキストをチャットリクエストに含めていました
- テキスト選択がある場合、その選択が含まれます
- 選択がない場合、アクティブなエディターの表示領域内のコード範囲が含まれます
2番目のタイプは、一般的な質問をしたい場合でも、LLM がコンテキストとして含まれたエディター内のコードに関する質問として解釈するため、混乱を招く可能性があることがわかりました。デフォルトではビューポート内のコードを含めず、選択されたコードのみを含める実験を行っています。
もちろん、エディターで見えるコードについて質問したい場合が多いので、新しいコンテキスト変数#editor
を追加しました。
「すべてのワークスペースチャットをクリア」コマンドを追加
+
ボタンを使用して新しいチャットを開始するたびに、以前のチャットはワークスペースチャット履歴に保存され、チャットビューのヘッダーにある時計アイコンを使用してアクセスできます。利便性を考慮して、過去のチャット履歴をすべてクリアするすべてのワークスペースチャットをクリアコマンドを追加しました。
コミットメッセージの言語
Git コミットメッセージを生成するコードは、特定の言語でコミットメッセージを生成するためにgithub.copilot.chat.localeOverride
設定を使用するようになりました。
プライベートリポジトリに対する追加権限の要求
プライベートリポジトリの追加のワークスペース検索機能を有効にするには、追加の権限が必要です。これらの権限がまだないことを検出した場合、起動時にそれらを要求します。一度許可されると、セッションは将来のために安全に保存されます。
Python
Python Debugger 拡張機能がデフォルトでインストールされるように
The Python Debugger 拡張機能が、Python 拡張機能とともにデフォルトでインストールされるようになりました。
Python Debugger 拡張機能は、互換性の問題を防止するためにデバッグ機能を主要な Python 拡張機能から分離することを目的としています。これにより、Python 拡張機能が古い Python バージョン (例えば Python 3.7) のサポートを終了しても、Python 拡張機能をダウングレードすることなく、これらのバージョンでプロジェクトのデバッグを続行できます。また、プラットフォーム固有のビルドを提供することで、特定のオペレーティングシステムに関連するコンポーネントのみを受け取ることが保証され、ダウンロード時間と不要なオーバーヘッドが削減されます。
この新しい拡張機能は、主要な Python 拡張機能で利用可能なすべての機能を複製し、さらに多くの機能を提供します。
新しい Python Debugger 拡張機能を使用していることを確認するには、launch.json
構成ファイルで"type": "python"
を"type": "debugpy"
に置き換えてください。将来的には、Python 拡張機能はデバッグサポートを提供しなくなり、すべてのデバッグ機能を Python Debugger 拡張機能に移行します。
Python インタープリタークイックピックでの環境作成オプション
Python インタープリターのクイックピックから Python 環境をより便利に作成できるようになりました。Python: インタープリターを選択コマンドを実行し、環境を作成オプションを選択して、プロジェクト用の新しい仮想環境を作成します。
テーマ: Catppuccin Mocha (vscode.devでプレビュー)
ワークスペース conda 環境の表示を改善
Python インタープリターのクイックピックに、ワークスペース内の conda 環境の名前が表示されるようになり、識別しやすくなりました。
多段階 pytest クラスのサポート
多段階 pytest クラスを使用する場合、テストエクスプローラーにトップレベルのクラスが表示されるようになりました。以前は、下位レベルのクラスのみが表示されていました。
テーマ: Catppuccin Mocha (vscode.devでプレビュー)
Jupyter
拡張機能作者向け Jupyter Kernel 実行 API が最終化されました
Jupyter 拡張機能の Jupyter カーネルに対してコードを実行するための API が最終化されました。拡張機能はこの API を使用してカーネルに対してコードを実行できます。
API の使用例は、Jupyter Kernel Execution Sample で確認できます。
npm パッケージ@vscode/jupyter-extension
には、すべての TypeScript 型定義が含まれています。
拡張機能が Jupyter カーネルにアクセスしようとすると、ユーザーはカーネルへのアクセスを許可または取り消すようプロンプトが表示されます。Jupyter カーネルへのアクセスは、拡張機能ごとにユーザーによって付与されます。つまり、ユーザーは拡張機能A
にアクセスを許可し、拡張機能B
へのアクセスを取り消すことができます。
ユーザーは、Jupyter: Jupyter カーネルへのアクセスを管理コマンドを通じて、拡張機能ごとに Jupyter カーネルへのアクセスを管理 (許可/取り消し) できます。
GitHub Pull Requests and Issues
GitHub Pull Requests and Issues 拡張機能では、プルリクエストや Issue の作業、作成、管理ができるようになり、さらに進展がありました。新機能には以下が含まれます。
- 現在チェックアウトされている PR の競合を解決します。
- Issue クエリ用の
groupBy
プロパティ。 - チェックアウトされた PR 内のパーマリンクをクリックすると、エディターでファイルが開きます。
- コメントのリアクションにホバーすると、誰がリアクションしたかを表示します。
"githubPullRequests.focusedMode": "multiDiff"
を設定すると、チェックアウト時に PR 内のすべてのファイルがマルチ差分エディターで開かれます。
その他のハイライトについては、拡張機能の0.80.0 リリースの変更履歴を確認してください。
プレビュー機能
TypeScript 5.4 ベータサポート
TypeScript 5.4 のベータリリースをサポートするようになりました。このリリースの詳細については、TypeScript 5.4 ベータブログ投稿およびイテレーション計画を確認してください。主なハイライトは次のとおりです。
- AI 駆動型リファクタリングの初期作業。
- ライブラリおよび型作者が誤った型推論を停止するのに役立つ新しい
NoInfer
intrinsic。 - 型の絞り込みと型チェックの改善。
TypeScript 5.4 ベータを使い始めるには、TypeScript Nightly 拡張機能をインストールするだけです。フィードバックを共有し、TypeScript 5.4 でバグに遭遇した場合はお知らせください。
クイック検索の改善
バージョン 1.82 では、ピッカーから検索できるクイックアクセス テキスト検索 ("クイック検索")を導入しました。🔎
クイック検索には以下の機能があります
- アクティブなピックでのエディタープレビュー。閲覧中にエディターのコンテキストで結果を確認できます。
- クイック検索から検索ビューへのナビゲーションが容易に。入力の横のボタンまたは結果を選択して、検索ビューに結果を転送できます。
テーマ: Night Owl (vscode.devでプレビュー)
提案されたAPI
すべてのマイルストーンには新しい提案された API が含まれており、拡張機能の作者はそれらを試すことができます。いつものように、皆様からのフィードバックを歓迎します。提案された API を試す手順は次のとおりです。
- 試したい提案を見つけて、その名前を
package.json#enabledApiProposals
に追加します。 - 最新の@vscode/dtsを使用し、
npx @vscode/dts dev
を実行します。これにより、対応するd.ts
ファイルがワークスペースにダウンロードされます。 - これで提案に対してプログラミングできます。
提案された API を使用する拡張機能を公開することはできません。次のリリースで破壊的変更がある可能性があり、既存の拡張機能を壊すことは望ましくありません。
テストカバレッジ API
このマイルストーンで、テストカバレッジの API とエディター内エクスペリエンスが機能的に完成しました。VS Code 1.87 リリースでの最終化が予測される前に、拡張機能の作者にそれらを試してフィードバックを提供するよう推奨します。
API はここに含めるには長すぎますが、かなり分かりやすいものと考えており、issue #123713でのご提案をお待ちしております。
チャットエージェント API
拡張機能の作者が独自のチャットエージェントを VS Code のチャットビューに提供できるようにする API の開発に取り組んできました。API にいくつかの変更を加えました。以下を含みます:
- チャットエージェントに渡される履歴コンテキストは、特定のメッセージによってどのチャットエージェントとコマンドが呼び出されたか、履歴メッセージ内の変数の値、および結果が何であったかを適切に表すようになりました。
ChatAgentTask
は削除され、同じシナリオをカバーするためにレスポンスストリームの途中でChatProgressMessage
を使用できるようになりました。- すべての「slashCommand」関連の用語は「subCommand」に名前が変更されました。
この API を試してみたい場合は、サンプルチャットエージェント拡張機能から始め、API の更新についてはissue #199908を購読してください。
コードアクションハイライト API
メソッドの抽出やファイルへの移動などのリファクタリングの場合、アクションがどのコードに適用されるかが常に明確であるとは限りません。これは、ユーザーの現在の選択範囲をインテリジェントに拡張しようとする TypeScript のような言語で特に当てはまります。
この API により、コードアクションは適用される可能性のある1つまたは複数の範囲 (Range[]
) を提供できます。ユーザーがコードアクションリストにホバーしたり矢印で移動したりすると、その範囲が強調表示されます。
- リファクタリングの場合、この範囲は、リファクタリングの影響を受ける現在のファイル内のコードになります。
- クイックフィックスの場合、関連する診断をハイライトできます。これは、
editor.codeActionWidget.includeNearbyQuickFixes
から呼び出されるクイックフィックスですでに行われています。
Issue Reporter API
提案された API への小さな追加により、IssueUriRequestHandler
とIssueDataProvider
の両方を一緒に使用できるようになりました。
また、vscode.commands.openIssueReporter
コマンドにも改善が加えられ、追加の拡張機能データを提供したり、GitHub Issue の送信先 URL を変更したりできるようになりました。
API およびopenIssueReporter
コマンドの更新または変更については、issue #197863を購読してください。
コメントリアクションリアクター API
CommentReaction
インターフェースに新しいreactors
プロパティが追加され、拡張機能が誰がコメントにリアクションしたかを示すことができるようになりました。これらのreactors
は現在、コメントリアクションのホバーに表示されます。
この API の進捗状況を追跡するには、issue #201131を参照してください。
最終化された API
新しいworkspace.save
およびworkspace.saveAs
API
新しい最終化された API workspace.save
とworkspace.saveAs
により、拡張機能はエディターの保存フローをトリガーできるようになりました。これは、そのリソースに保存するか、ユーザーにリソースの提供を求めるか、どちらかです。
保存のためのすべてのメソッドは、結果のUri
を返します。操作がキャンセルされた場合はundefined
を返します。無題のファイルは、パスが既に関連付けられている場合を除き、常にユーザーに保存先を尋ねます。
FileSystemProvider
API の読み取り専用メッセージ
registerFileSystemProvider
でFileSystemProvider
を登録する際、options
を設定してファイルシステム全体を読み取り専用としてマークできます。今回、isReadonly
オプションがMarkdownString
に設定されている場合、ユーザーがファイルシステム内のファイルを編集しようとすると、そのメッセージがエディターに表示されるようになりました。
エンジニアリング
整理整頓
12月初旬に、年次の整理整頓を行いました。これにより、リポジトリ全体で1891件の Issue が純減しました。以下のチャートは、年次の整理整頓の必要性と影響をよく示しています。
Markdown Language Service 0.4 リリース
Markdown Language Service パッケージは、VS Code の組み込み Markdown サポートを強化しています。新しい 0.4 リリースには、過去半年間で私たちが行った多くの改善がバンドルされており、他のツールやエディターも恩恵を受けることができます。主なハイライトは次のとおりです。
- Markdown 内の HTML フラグメントに対するドキュメントリンク、参照、および名前変更を有効にします。
- 正規表現における壊滅的なバックトラックの可能性を修正。
- 補完時に余分なエンコーディングを追加しないようにします。
- ワークスペースシンボル検索にファジーマッチングを使用します。
- リンク検出/検証に関するいくつかのケースを修正。
ILocalizedString
の作成をより簡単にする新しいlocalize2
関数
VS Code のコアコードベースでは、ローカライズされた文字列と英語の文字列の両方を並べてレンダリングするために、ILocalizedString
という型を使用しています。言語パックを使用している場合、コマンドパレットを開くとこれを見たことがあるかもしれません。
以前は、これらの式を次のように記述する必要がありました
const str = { value: localize('id', 'Hello World'), original: 'Hello World' };
これは次のように表現できるようになりました
const str = localize2('id', 'Hello World');
これにより、ローカリゼーションパイプラインがこれらのlocalize2
の出現を認識します。
Electron 27 への更新
このマイルストーンでは、Electron 27 への更新を安定版リリースユーザーに展開しています。この更新には Chromium 118.0.5993.159 と Node.js 18.17.1 が含まれています。Insiders ビルドでセルフホストし、早期のフィードバックを提供してくださった皆様に感謝いたします。
Linux の最小要件の更新
このマイルストーンでは、デスクトップクライアントをビルドするためのツールチェインを更新しました。このリリース以降、VS Code デスクトップは glibc 2.28 以降および glibcxx 3.4.25 以降 (Debian 10、RHEL 8、Ubuntu 20.04 など) に基づく Linux ディストリビューションとのみ互換性があります。
Linux ディストリビューションをアップグレードできない場合、推奨される代替案は当社のWeb クライアントを使用することです。デスクトップ版を使用したい場合は、VS Code リリース 1.85 をダウンロードできます。お使いのプラットフォームに応じて、そのバージョンに留まるために更新を無効にしてください。推奨されるのは、ポータブルモードでインストールを設定することです。
注目すべき修正点
ありがとうございます
最後に、VS Codeの貢献者の皆様に心からの感謝を申し上げます。
問題追跡
問題追跡への貢献者
- @gjsjohnmurray (John Murray)
- @IllusionMH (Andrii Dieiev)
- @starball5 (スターボール)
- @RedCMD (RedCMD)
- @okineadev (Okinea Dev)
プルリクエスト
vscode
への貢献者
- @a-stewart (Anthony Stewart)
editor.action.clipboardPasteAction
で入力イベントを発生 PR #198822getCustomBuiltinExtensionsFromLocations
のエラーメッセージでlocation
ではなくextensionLocation
をログに記録 PR #200748
- @Ajaykumbhare (Ajay Kumbhare): fix: エディター領域でターミナルの名前変更が期待どおりに機能しない PR #202270
- @andrewbranch (Andrew Branch): preferTypeOnlyAutoImports のプリファレンスゲッターを修正 PR #201376
- @aramikuto (Aleksandr Kondrashov): IExplorerView インターフェースを更新 PR #201992
- @audreygao (Audrey Ya Gao): #193468 を修正 - 展開不可能な参照項目で「l」を押したときのエラー通知のバグを修正 PR #199996
- @bricker (Bryan Ricker): ドキュメントのタイプミスを修正 PR #202429
- @callumok2004 (Callum OKane): package.json のデフォルトファイルネスティングに
bun.lockb
を追加 PR #201065 - @CGNonofr (Loïc Mangeonjean): 事前に作成されたモデルを考慮する PR #199652
- @chartrandf (Francis Chartrand): タイムライン: 名前変更後もファイルを追跡するフォローオプションを使用 PR #187174
- @conwnet (netcon): fix:
workbench.editorAssociations
がworkbench
のconfigurationDefaults
で動作しない PR #194087 - @cpendery (Chapman Pendery)
- fix: ターミナルのサジェスト位置 PR #199420
- fix: ターミナルの補完カーソル位置の受け入れ PR #199706
- build: 'shellIntegration.suggestEnabled' が true の場合にサジェストを有効にする PR #199821
- refactor: xterm サジェストアドオンを
terminalContrib
にリファクタリング PR #200107
- @DiscreteTom (DiscreteTom): #193746 を修正 PR #197523
- @effectivecui: item.children が空の場合に無限ループに入るのを避ける PR #201701
- @Flanker32 (Hanxiao Liu): Java ワークスペースタグを更新 PR #197729
- @gayanper (Gayan Perera): ブレークポイントの依存関係のサポートを追加 PR #166202
- @GenericTSDeveloper: サジェスト詳細ウィジェットの位置ずれの問題を修正 (https://github.com/microsoft/monaco-editor/issues/3373) PR #198730
- @gjsjohnmurray (John Murray)
- リストの検索/フィルター一致間のキーボードナビゲーションを実装 PR #180078
- Git ブランチ/タグクイックピックをフィルタリングする際にソート順を保持 (fix #199471) PR #199473
Git: ブランチをマージ...
ピッカーが説明でブランチ名を重複させる (fix #199562) PR #199742- アクティビティバーに関連する
レイアウトのカスタマイズ
のバグを修正 (fix #200571) PR #200572
- @gregvanl (Greg Van Liew): 欠落しているコンマを追加 PR #201137
- @harbin1053020115 (ermin.zem): fix: 開発モードで現在のカラーテーマに従ってテーマを選択する PR #190035
- @hsfzxjy (Xie Jingyi):
onDidStyleChange
をReplが可視になるまで延期 PR #200473 - @iisaduan (Isabel Duan): fix typescript/54492: ファイルの名前変更が拡張子を変更するかどうかを確認 PR #200220
- @impressivewebs (Louis Lazaris)
- 一部の CSS 用語を修正 PR #202125
- CSS ホバーのドキュメントテキストを修正 PR #202142
- @irgendwr (Jonas Bögle): Git SCM メニューに「その他のリポジトリを閉じる」を追加 PR #130931
- @jacekkopecky (Jacek Kopecký): #198566 を修正: 左端を切り詰めた検索プレビューを省略 PR #198567
- @jaraco (Jason R. Coombs): xonsh から環境を抽出するサポートを追加 PR #201036
- @jeanp413 (Jean Pierre)
- vscode.tasks.executeTask エラー「Unexpected: Task does not exist after task.terminate()」を修正 PR #200872
- 単一タブのコンテキストメニューアクションが時々動作しない問題を修正 PR #201021
- タスクの進行状況インジケーターが初回以降表示されない問題を修正 PR #201064
- 単一ターミナルタブの名前変更アクションが動作しない問題を修正 PR #201128
- @johnsoncodehk (Johnson Chu):
optionalReplacementSpan
が補完エントリに適用されない問題を修正 PR #200945 - @JoyceGu (Joyce Gu): JS ベクター DB ライブラリを追加 PR #199980
- @jtbandes (Jacob Bandes-Storch): Swift.tmLanguage を更新 PR #200698
- @keerthivasansa (Keerthi Vasan S A): ツリーのファジー検索切り替えのワークベンチアクション PR #175137
- @khreenberg (Kim Reenberg): fix: 実行不可能な libc.so.6 の文字列へのフォールバック PR #202581
- @kkocdko (kkocdko): Node.js 21 以降のプラットフォーム検出を修正 PR #200935
- @ksg97031 (KSG): docs: Go To コマンドの複数引数の説明のタイプミスを修正 PR #201122
- @Leask (Sixia "Leask" Huang): fix: ldconfig 呼び出しの要件チェックを調整 PR #202645
- @loganrosen (Logan Rosen): CONTRIBUTING.md の Stack Overflow タグを更新 PR #126199
- @mahmoudsalah1993 (Mahmoud Salah): 開いている差分エディターの場合、基になる元のエディターを解決して設定… PR #201597
- @Malix-off (Malix):
extensions/git/src/api/git.d.ts
の未使用のインポートを削除 PR #200797 - @marrej (Marcus Revaj): #
partialAccepts
の削除を修正 PR #199663 - @MaxBR97:
scm.inputMinLines
設定を追加 PR #200551 - @mohammadamin16 (Mohammad Amin): debug: デバッグセッション終了時に読み取り専用タブを閉じる PR #199898
- @mrienstra (Michael Rienstra): docs: 新しい
configuration.markdown.copyFiles.destination
オプションをドキュメント化 PR #203391 - @MrJithil (Jithil P Ponnan): chore: 非推奨の8進エスケープシーケンスを16進数に置き換え PR #197518
- @ngarside (Nathan Garside):
*.repo
ファイルの構文ハイライトを追加 PR #199859 - @nrayburn-tech (Nicholas Rayburn): npm 拡張機能 -
findFiles
の前にルートの package.json をチェック PR #124803 - @poeck (Paul Köck): chore: 著作権年を更新 PR #202344
- @r3m0t (Tomer Chachamu): 貼り付けコマンドで貼り付けが完了するまで待機 (fixes #196161) PR #196516
- @RedCMD (RedCMD)
- 小文字の
l
を大文字のL
に変更。asp-vb-net.tmLanguage.json
PR #201981 onDidChangeEmmiter
が不必要に常に発火する PR #202198
- 小文字の
- @remcohaszing (Remco Haszing):
bigNumbersDelta
を削除 PR #194712 - @RobbyCBennett (Robby Bennett):
gotoErrorWidget
のrelatedInformation
のスタイリングをmarkerHoverParticipant
のそれとより一貫させる PR #195409 - @robertohuertasm (Roberto Huertas): feat(stash): スタッシュの結果を返す PR #177732
- @ronakj (Ronak Jain): カスタムノードパス使用時の tsserver のクラッシュを修正 PR #201966
- @russelldavis (Russell Davis): ファイルを閉じる際のプロブレムの復元における競合状態を修正 PR #183271
- @samhanic: [CLI] 拡張機能更新コマンド PR #199893
- @shubhisroking (Shubh): 非推奨の
canceled
をCancellation Error
に置き換え PR #197605 - @SimonSiefke (サイモン・シーフケ)
- fix: メニューバーのメモリリーク PR #198052
- fix: defaultWorkerFactory のメモリリーク PR #198710
- @sparxooo (sparxooo): #200257 の修正と既存の末尾非数字正規表現の修正 PR #200919
- @Splizard (Quentin Quaadgras): モバイル/Android: ペン/スタイラスでのテキスト選択をサポート PR #198578
- @susiwen8 (susiwen8)
- fix: #200046 PR #200485
- fix:
npm script
内のinstall
は開くべきではない PR #201082
- @VDisawal: #198975:
saveValue
=>historyNavigator.add
PR #199142 - @wenfangdu (Wenfang Du): feat(git): 言語構成ファイルに
autoClosingPairs
を追加 PR #131403 - @Yesterday17 (Yesterday17): ExtHostLabelService のタイプミスを修正 PR #198855
- @yiliang114 (易良): fix: fetchUrl のコンソール形式 PR #198909
- @zWingz (zWing):
registerProfileContentHandler
のタイプミスを修正 PR #183197
vscode-flake8
へのコントリビューション
- @maxg203 (Max Goodridge): README.md のリンクを修正 PR #269
vscode-hexeditor
への貢献
- @IngilizAdam (Hasan Tuna): オフセット間で選択 PR #470
vscode-languageserver-node
への貢献者
- @debonte (Erik De Bonte):
workspace/applyEdit
でWorkspaceEditMetadata
をサポート PR #1390 - @MariaSolOs (Maria José Solano)
- @rroessler (Reuben Roessler): Node クライアントの成功終了通知を変更 PR #1404
- @sh-cho (Seonghyeon Cho): Azure パイプラインでビルドステータスバッジを更新 PR #1392
- @werat (Andy Hippo):
unregister()
で常にフィーチャープロバイダーを削除する PR #1380
vscode-pull-request-github
への貢献者
- @Balastrong (Leonardo Montini): Markdown テンプレートから Issue を作成 PR #5503
- @joshuaobrien
- @pouyakary (Pouya Kary ✨): #5620 を修正 PR #5621
vscode-vsce
へのコントリビューション
- @sebas2day (Sebastiaan Brouwer): feat: yarn ワークスペースのサポート PR #493
- @whosafe: 他のプラットフォームからのデータをフィルタリング PR #912
language-server-protocol
への貢献者
- @alcarney (Alex Carney)
- @asukaminato0721 (Asuka Minato): vscoq を追加 PR #1869
- @BeardedFish (Darian Benam): Language Server 実装リストに Apache Dispatcher Config を追加 PR #1875
- @DanTup (Danny Tuppeny): スニペットのエスケープルールを明確化 PR #1868
- @Fomys (Louis Chauvet): CompletionItem.textEdit の注記を明確化 PR #1722
- @mhanberg (Mitchell Hanberg): workspace/configuration のタイプミスを修正 PR #1823
monaco-editor
へのコントリビューション
- @kokovtsev (Dmitry Kokovtsev): fix: JSON 補完詳細で Markdown を有効にする PR #4210
- @mevisioam: JSON ワーカーを公開 PR #4299
- @nora-soderlund (Nora Söderlund): chore(docs): monaco.d.ts のリンクを修正 PR #4243
- @OfekShilon (Ofek)
- @soof-golan (Soof Golan): feat: Python 3.12 キーワードのサポート PR #4212
- @tamayika: JSON シンボル情報をドキュメントシンボルに変更 PR #3894
node-jsonc-parser
への貢献
- @H4ad (Vinicius Lourenço): perf(format): 改行とスペースを可能な限りキャッシュする PR #81