2022年1月 (バージョン 1.64)
Update 1.64.1: この更新プログラムでは、これらのセキュリティ問題に対処しています。
Update 1.64.2: この更新プログラムでは、これらの問題に対処しています。
ダウンロード: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap
Visual Studio Code 2022年1月リリースへようこそ。このバージョンには多くの更新が含まれており、気に入っていただけることを願っています。主なハイライトは以下の通りです。
- 新しいサイドパネル - 新しいサイドパネルで、より多くのビューを一度に表示できるようになりました。
- 設定エディター検索 - 検索で単語全体の一致が優先されるようになりました。
- オーディオキュー - カーソルが折りたたみ領域、エラー、ブレークポイントに移動したことを音で知らせます。
- Unicode ハイライト - サポートされている言語で文字がハイライトされるのを防ぎます。
- 自動ターミナル応答 - 一般的なターミナルプロンプトに対して自動応答を作成します。
- ノートブック UI の改善 - Markdown と出力セルでテキストを検索します。
- バイナリデータビューのデバッグ - デバッグ中にバイナリデータを表示および編集します。
- Markdown パス候補 - 相対ファイルパスとヘッダーリンクを素早く挿入します。
- JS/TS のスニペットで囲む - 選択したコードをスニペット内に挿入します。
- Web 用 VS Code - vscode.dev と github.dev での署名済み GitHub コミットのサポート。
これらのリリースノートをオンラインで読みたい場合は、code.visualstudio.com の 更新 にアクセスしてください。
このバージョンの新機能のハイライトを視聴するには、VS Code チームのリリースパーティーをご覧ください。イベントの録画はYouTubeチャンネルでご覧いただけます。
Insiders: 新機能をいち早く試したいですか?夜間ビルドのInsidersをダウンロードして、利用可能になり次第、最新の更新を試すことができます。
Workbench
新しいサイドパネル
今回のマイルストーンでは、Side Bar の反対側に新しいワークベンチのサーフェスである Side Panel を導入しました。Side Bar や下部の Panel からのビューをここに配置できます。下部の Panel をエディターの左または右に移動するのとは異なり、新しい Side Panel は下部の Panel に加えて機能するため、一度により多くのビューセットを表示できます。
Side Panel を使用するには、いくつかのビューを Side Panel に移動する必要があります。最も多くの賛成票を得た機能リクエストの1つに基づいて、Side Bar から Outline ビューを Side Panel に移動したいと思うかもしれません。これは、ビューを Side Panel にドラッグ&ドロップすることで行えます。Side Panel が開いていない場合、下部の Panel と同様に、ビューをエディター領域の端にドラッグすると開きます。
以下の短いビデオでは、Outline ビューが右にドラッグされ、ドロップされて Side Panel が作成されます。ユーザーは、Side Bar でビューを切り替えながら (ここではグローバル検索ビューを開いています)、Outline ビューを表示したままにすることができます。
あるいは、コマンドパレットからビューの移動コマンドを使用することもできます。これにより、利用可能なビューのドロップダウンが表示されます。ビューを選択すると、新しいパネル/サイドバー/サイドパネルのエントリを作成するか、エクスプローラーやソース管理などの既存の場所にビューを配置することで、場所を選択できます。
ビューは、ビューアイコンを掴んで、パネル、サイドバー、サイドパネル間でドラッグ&ドロップできます。ビューアイコンを右クリックし、場所をリセットを選択することで、ビューの場所をデフォルトに戻すことができます。
すべてのビューをデフォルトのレイアウトに戻したい場合は、コマンドパレットからビュー: ビューの場所をリセットを実行できます。
パネルの位置の置き換え
前述のとおり、新しいサイドパネルはパネルを左右に移動するのと同様の機能を提供しますが、元のパネルの内容全体を移動しないことでこれを改善しています。パネル間のビューのドラッグアンドドロップと合わせて、新しいサイドパネルは下部パネルを移動するオプションに取って代わります。
それを踏まえ、workbench.panel.defaultLocation
設定とパネルの移動コマンドを廃止し、類似のコマンドを推奨しています。
- パネルからサイドパネルへビューを移動 (
workbench.action.movePanelToSidePanel
) - サイドパネルからパネルへビューを移動 (
workbench.action.moveSidePanelToPanel
)
古いパネルの移動コマンドは、同様の動作を提供する新しいコマンドに再マッピングされました。このマッピングがある場合でも、キーバインディングを新しいコマンドに更新することをお勧めします。
以下では、下部パネル全体がサイドパネルに移動され、その後元のパネルの位置に戻されます。
パネルの配置
別の人気の機能リクエストに応えて、パネル配置という新しいレイアウトオプションを追加しました。このオプションを使用すると、下部パネルがウィンドウのどの程度にわたって広がるかを設定できます。4つのオプションがあります。
- 中央 - これが従来の動作です。パネルはエディター領域の幅のみに広がります。
- 左 - パネルはウィンドウの左端からエディター領域の右端まで広がります。
- 右 - パネルはウィンドウの右端からエディター領域の左端まで広がります。
- 両端揃え - パネルはウィンドウの全幅に広がります。
すべてのオプションにおいて、アクティビティバーはウィンドウの端と見なされることに注意してください。
これらのオプションは、メニューの表示 > 外観 > パネルの配置、または新しいパネルの配置を...に設定コマンドを使用して設定できます。
レイアウトコントロールのカスタマイズ
これらすべての新しいレイアウトオプションにより、レイアウト設定の発見性と使いやすさを向上させる方法を模索してきました。そのため、タイトルバーに新しい試験的なレイアウト構成ボタンが表示される場合があります。これは、window.titleBarStyle
設定が custom
(Windows および macOS のデフォルト) で、workbench.experimental.layoutControl.enabled
が true
に設定されている場合にのみ表示されます。ボタンの表示は実験によって制御されていますが、手動で有効にしたい場合は、設定エディターでこれらの設定値を適用することで有効にできます (⌘, (Windows、Linux Ctrl+,))。
メニューの内容はまだ作業中ですが、現時点ではサイドバー、パネル、サイドパネルの表示を切り替える機能が表示されるはずです。さらに、新しいコマンドレイアウトのカスタマイズのエントリも表示されます。この新しいコマンドは、すべてのレイアウト設定を1箇所で制御できる新しいインタラクティブなクイックピックエクスペリエンスを起動します。
ぜひお試しいただき、イシュー #137633でフィードバックをお寄せください。
設定エディター
設定エディターの検索は、検索時に文字列および列挙型設定で文字列値の一致を検索するようになりました。
新しい検索アルゴリズムは、単語全体の一致を優先します。これは、Java と JavaScript の両方の拡張機能を持っている場合、「java」で検索すると Java の設定が最初に表示されることを意味します。
最後に、設定エディターのドロップダウン (files.autoSave
など) およびリストウィジェット (files.associations
など) がタッチスクリーンデバイスで動作するようになりました。
設定の同期
設定同期がユーザー タスクの同期をサポートするようになりました。
Web 用 VS Code のデフォルトの設定同期マシン名に、ブラウザーと製品名が含まれるようになりました。
エクスプローラー: 元に戻す操作の確認と無効化
ファイルエクスプローラーは、ファイルやフォルダーの編集 (名前変更、切り取り/コピー/貼り付け、移動、インポートなど) を元に戻すための Undo スタックを長年サポートしてきました。一部のユーザーはこの機能を予期せぬものと感じるため、エクスプローラーでの Undo を無効にする設定 (explorer.enableUndo
) が追加されました。
さらに、Undo を実行する際にエクスプローラーが確認を促す頻度を設定するための新しい設定 (explorer.confirmUndo
) が追加されました。デフォルトでは、破壊的な Undo が誤って発生しないように、エクスプローラーは以前よりも頻繁にプロンプトを表示しますが、この動作は値 "light"
で以前の動作に戻すことができます。また、すべての Undo アクションの前にプロンプトを表示するには "verbose"
に設定します。
エディター
オーディオキュー
オーディオキューは、現在の行にエラー、ブレークポイント、折りたたみテキスト領域などの特定のマーカーがあるかどうかを示します。
これらは、プライマリカーソルが行を変更したとき、または現在の行にマーカーが最初に追加されたときに再生されます。オーディオキューはスクリーンリーダーが接続されているときに自動的に有効になりますが、audioCues.enabled
を on
に設定することで手動でオンにすることもできます。
今後、さらに多くのオーディオキューが登場し、サウンドデザインを繰り返し改善していきます。
Unicode ハイライトの改善
11月のリリースで導入されたUnicode ハイライト機能を改善するため、誤検知をより適切に処理するための新しい設定が追加されました。
新しい設定 editor.unicodeHighlight.allowedLocales
は、1つまたは複数の設定されたロケールで一般的な文字を許可するために使用できます。デフォルトでは、これには現在の VS Code の表示言語と現在の OS 言語が含まれます。現時点では、vscode-loc 言語パックで翻訳されたロケールのみがサポートされています。
設定 editor.unicodeHighlight.includeStrings
は、文字列内の文字をハイライトするかどうかを制御します。値はデフォルトで true
ですが、文字列を無視するには false
に設定できます。
エディターの折りたたみ制限
新しい設定 editor.foldingMaximumRegions
により、ユーザーはエディターに表示される折りたたみ範囲の最大数を変更できます。デフォルトでは、制限は5000です。数値が大きいとパフォーマンスが低下する可能性があることに注意してください。
エディターが言語機能のタイミングに適応
拡張機能は、折りたたみ領域、CodeLens、インレイヒント、セマンティックトークンなどの組み込み機能を含む、ほぼすべての言語機能を強化しています。これらの機能はユーザーのジェスチャーによってトリガーされるのではなく、通常はタイムアウト後にタイピングによってトリガーされます。たとえば、入力すると CodeLens が更新され、セマンティックトークンも同様です。選択されたタイムアウト値は固定されており、多かれ少なかれ任意でした。このリリースでは、エディターは観測されたタイミングに適応するため、遅いマシンやネットワーク接続がリクエストで過負荷になることがなく、速いマシンがより有効に活用されます。
ターミナル
自動応答
ターミナルに、特定の文字シーケンスが受信されたときに自動的に応答するオプトイン機能が追加されました。これが役立つ良い例は、バッチスクリプトを実行中に Ctrl+C
を押した後の Windows バッチスクリプトメッセージ Terminate batch job (Y/N)?
です。Windows で Ctrl+C
を押したときにターミナルが自動的に Y
と Enter (\r
) で応答するようにするには、次の設定を追加します。
"terminal.integrated.autoReplies": {
"Terminate batch job (Y/N)?": "Y\r"
}
テーマ: Sapphire
その他の項目にカスタム応答を設定できますが、これはテキストを自動的にプロセスに送信するため、注意してください。たとえば、プロンプトが表示されたときに Oh My Zsh を自動的に更新するために使用できます。
"terminal.integrated.autoReplies": {
"[Oh My Zsh] Would you like to check for updates? [Y/n]": "Y\r"
}
もしClink を使用し、同様の機能を有効にしている場合、両方の機能が競合するのを避けるために、Clink または VS Code で応答を null
に設定することで無効にできます。
"terminal.integrated.autoReplies": {
"Terminate batch job (Y/N)": null
}
VT サポートの強化
Operating System Command (OSC) 4/10/11/12 エスケープシーケンスのサポートが追加され、アプリケーションがターミナルのテーマカラーを制御できるようになりました。
キーボードでナビゲート可能なリンク
以前は、ターミナルでのリンクナビゲーションにはマウスの使用が必要でした。現在では、以下のコマンドを使用してキーボードのみでリンクを開くことができます。
- ターミナル: 最後の Web リンクを開く... 例:
https://github.com/microsoft/vscode
- ターミナル: 最後のファイルリンクを開く... 例:
/Users/user/repo/file.txt
- ターミナル: 検出されたリンクを開く... すべてのリンク (Web、ファイル、単語) を表示
ソース管理
リポジトリ検出のより詳細な制御
コミュニティからのフィードバックに基づき、Git リポジトリの検出プロセスをより詳細に制御し、より多様なフォルダー構造に対応するための2つの新しい設定が追加されました。
git.repositoryScanMaxDepth
- スキャン時に使用する深さを制御します。git.repositoryScanIgnoredFolders
- スキャン中に無視すべきフォルダーのリストを制御します。
変更リストの並べ替えの改善
新しい設定 (scm.defaultViewSortKey
) は、ソース管理ビューの変更リストに使用されるデフォルトのソートキーを制御します。ソートキーの選択は、各フォルダー/ワークスペースごとに記憶されます。
オプションは次のとおりです
name
- 変更をファイル名で並べ替えます。path
- 変更をファイルパスで並べ替えます (デフォルト)。status
- 変更をソース管理ステータスで並べ替えます。
設定の変更を適用するには、VS Code ウィンドウをリロードする必要があります。
新しい Git stash コマンド
コマンドパレットに新しいコマンド、Git: すべてのスタッシュを破棄... が追加され、すべてのスタッシュエントリをクリアできるようになりました。永続的な結果を伴うGit操作と同様に、このコマンドは慎重に使用してください。
Git 出力 - git コマンドの実行時間と期間
パフォーマンスの問題を追跡するのに役立つように、Git 出力チャネルに、git コマンドが実行された時刻と、子プロセスの生成にかかった時間を除くコマンドの期間が表示されるようになりました。
ノートブック
レンダリングされた Markdown およびコードセルの出力でテキストを検索
VS Code は、Markdown セルのレンダリングされたビューとコードセルの出力でテキストを検索する機能をサポートするようになりました。この機能はデフォルトでは無効になっています。これは、すべての Markdown セルと出力をレンダリングする必要があり、ノートブックを開く際にコストがかかる可能性があるためです。この機能は、検索コントロール入力ボックスのフィルタードロップダウンからオプション (Markdown プレビュー、コードセル出力) を選択することで有効にできます。
現在、出力内のテキスト検索にはいくつかの制限があります。たとえば、VS Code 自体によってレンダリングされるストリーミング/テキスト出力を検索することはできません。次のイテレーションでこれを改善する予定です。
セルの折りたたみ UI
ノートブックのセルには、フォーカスされていることを示す左側に青いバーがあります。このバーはインタラクティブになり、上部をクリックしてセルの入力を折りたたみ、下部をクリックして出力を折りたたむことができます。
Markdown セルの折りたたみヒント
Markdown セルの領域が折りたたまれた場合、いくつかのセルが非表示になっていることをより明確にするために、折りたたまれたセルの数を示すメッセージが表示されます。
セルの実行ヒント
セルがいつ実行されているか、そしてどのセルが実行されているかをより明確にするために、いくつかの変更を加えました。
まず、セルが実行中であるがビューにスクロールされていない場合、エディターペインの上部にプログレスバーが表示されます。
次に、セルが実行中の場合、ノートブックツールバーに新しいボタン実行中のセルへ移動が追加されます。
第三に、notebook.outline.showCodeCells
および notebook.breadcrumbs.showCodeCells
設定を通じて、コードセルがアウトラインまたはブレッドクラムに表示されている場合、実行中にアニメーションの実行アイコンが表示されます。
デバッグ
バイナリデータの表示と編集
VS Code の汎用デバッガーは、バイナリデータ (別名「メモリ」) の表示と編集をサポートするようになりました。メモリの表示と編集が利用可能な変数は、変数ビューにインラインバイナリアイコンを表示し、それを選択するとHex Editorが開きます。
テーマ: Codesong
メモリの表示と編集は、Debug Adapter Protocol のメモリ関連機能に依存しており、VS Code で対応する UI を有効にするには、デバッグ拡張機能がこれらの機能を実装する必要があります。詳細については、以下のデバッガー拡張機能の作成セクションを参照してください。このリリースでは、組み込みの JavaScript デバッガーのみがバイナリデータの表示と編集をサポートしていますが、他のデバッグ拡張機能もまもなく追随すると予想しています。
JavaScriptデバッグ
ブレークポイントでの一時停止から呼び出し元を除外
ブレークポイントを設定したり、デバッガー ステートメントを追加したりする場合がありますが、特定のコードパスから呼び出された場合にのみ一時停止させたい場合があります。mousemove
のような DOM イベント ハンドラーは、その良い例です。このリリースでは、JavaScript デバッガーに、ブレークポイントまたはデバッガー ステートメントで一時停止することから「呼び出し元を除外する」機能が追加されました。
ある場所で一時停止しているときに、CALL STACK ビューのフレームを右クリックして呼び出し元を除外コマンドを選択できます。新しいEXCLUDED CALLERS ビューが表示され、除外された呼び出し元を表示および管理できるようになります。その後、除外された呼び出し元がコールスタックのどこかに表示された場合、プログラムはブレークポイントの場所で一時停止しなくなります。
Linux での Edge サポート
edge
デバッグタイプを介して、Linux でのMicrosoft Edge デバッグが利用可能になりました。
言語
Markdown パス IntelliSense
組み込みの Markdown 拡張機能に、リンクと画像のパス IntelliSense が含まれるようになりました。
パス候補は、CSS および HTML ファイルのパス IntelliSense と同様に機能します。/
で始まるパスは現在のワークスペースに対する相対パスとして解決され、./
で始まるパスまたはプレフィックスがないパスは現在のファイルに対する相対パスとして解決されます。パス候補は、/
を入力すると自動的に表示されるか、⌃Space (Windows、Linux Ctrl+Space) を使用して手動で呼び出すことができます。
パス IntelliSense は、現在のファイル内または別の Markdown ファイル内のヘッダーにリンクするのにも役立ちます。パスを #
で開始すると、ファイル内のすべてのヘッダーの補完が表示されます (設定によっては、これらを表示するために ⌃Space (Windows、Linux Ctrl+Space) を使用する必要がある場合があります)。
パス IntelliSense は "markdown.suggest.paths.enabled": false
で無効にできます。
Markdown の取り消し線サポート
VS Code は、Markdown エディターと組み込みの Markdown プレビューの両方で ~~取り消し線~~
テキストのレンダリングをサポートするようになりました。
取り消し線は、テキストを2つのチルダ文字で囲むことで記述されます。
VS Code の組み込みテーマはすべて取り消し線をサポートしていますが、Marketplace の一部のテーマでは、エディターで取り消し線テキストを正しくレンダリングするために更新が必要になる場合があります。
TS 4.5.5
VS Code は TypeScript 4.5.5 をバンドルするようになりました。
このマイナーアップデートでは、いくつかの重要なクラッシュとツール関連のバグが修正されています。
JS/TS のスニペットで囲む
JavaScript と TypeScript の多くのスニペットが、選択したテキストを囲む機能をサポートするように更新されました。
囲む機能を使用するには、まずテキストを選択し、次にスニペットの挿入を実行します。選択したテキストを置き換える代わりに、if
や forof
などのスニペットは、選択したテキストを新しいステートメントの本文として使用するようになりました。
HTML の等号の後に自動的に引用符を挿入
HTML でプロパティの後に =
を入力すると、言語サービスが自動的に引用符を挿入し、カーソルを引用符の間に配置するようになりました。設定 html.completion.attributeDefaultValue
を使用すると、引用符の種類 (単一または二重) を指定でき、デフォルトでは二重引用符が使用されます。
この機能は "html.autoCreateQuotes": false
を設定することで無効にできます。
JSON スキーマキャッシュをクリアコマンド
新しいコマンドスキーマキャッシュをクリアは、以前にダウンロードされたスキーマのキャッシュをクリアします。
LaTeX サポート
LaTeX の基本的な言語サポートが追加されました。これには、構文ハイライトと自動クローズペアが含まれます。
Web 用 VS Code
リモートリポジトリ
GitHub リポジトリ
Web 用 VS Code で作成されたコミットは、署名され、GitHub UI で検証済みとしてマークされるようになりました。さらに、メンテナーは Web 用 VS Code を使用する際に、フォークから提出されたプルリクエストにコミットできるようになりました。これは、新しい GitHub GraphQL createCommitOnBranch API のおかげです。
さらに、ソース管理ビューが複数選択をサポートするようになりました。
テーマ: One Monokai
以前は、空のコミットの作成は、GitHub リポジトリをローカルまたはリモートマシンにクローンした後でのみサポートされていました。Web 用 VS Code でも、GitHub Repositories: Commit Empty コマンドを使用して空のコミットを作成できるようになりました。
また、指定されたサイズ以下のリポジトリの全内容を自動的にダウンロードする新しい設定が追加されました。これにより、リポジトリ全体のテキスト検索や参照へ移動などの高度な機能が有効になります。設定 remoteHub.experimental.fs.maxAutoDownloadSize
は、全内容をダウンロードしようとする前にプロンプトが表示されるリポジトリのサイズ制限を制御します。デフォルトでは、プロンプトなしでダウンロードしないように、maxAutoDownloadSize
は設定されていません。
Azure Repos
Azure Repos のサポートは、GitHub リポジトリ拡張機能から、デスクトップにもインストールできる専用の拡張機能に移動しました。
プレリリース拡張機能の採用
Web 用 VS Code は、GitHub Pull Request and Issues と GitHub Repositories の両拡張機能のプレリリースバージョンをバンドルするようになりました。
PWA とオフラインサポート
Web 用 VS Code は PWA モデルを採用し、ホスト OS に PWA としてインストールできるようになりました。この採用により、一部のオフライン機能も有効にできるようになりました。vscode.dev または insiders.vscode.dev を一度訪れたことがあるユーザーは、オフライン時でもローカルファイルを編集するために使用できるようになりました。
拡張機能への貢献
Python
インタープリタークイックピックの改善
目的のインタープリターを選択しやすくするため、Python 拡張機能は、インタープリターの選択クイックピックでインタープリターをタイプ別にグループ化するようになりました。
また、ステータスバーのアクティブ/選択されたインタープリターを言語ステータス内に移動させる実験も行っていますので、表示されていない場合は右側のPythonステータスを確認してください。
'conda run' のサポートを追加
Anaconda ユーザーへのサポートを改善するため、過去にエラーを引き起こした出力をキャプチャしない --no-capture-output
パラメーターを使用して conda run
のサポートを実装しました。この機能は、リンター、テスト、およびフォーマット関数の実行に実装されています。
既知のバグイシュー #10972があり、Windows でパラメーターに特殊文字が含まれるリンティングとテストを実行するとエラーが発生します。これは、conda run
が特殊文字を含むパラメーターを読み取る方法に起因するため、settings.json
で指定したコマンドライン引数に影響を与える可能性があります。
Anaconda チームはこの問題に取り組んでおり、まもなく修正版をリリースする予定です。新しいバージョンがリリースされたら、Conda ウェブサイトで Anaconda のバージョンを更新できます。
スマート選択とより良い折りたたみサポート
Pylance 言語サーバーを介した Python コードの選択と折りたたみにも改善が加えられました。
キーボードで Python コードを選択する際に、コードのセマンティック情報が選択範囲の定義に考慮されるため、少ないキー入力で済むようになりました。
テーマ: Horizon Extended
折りたたみについては、以前はインデントのみで領域が定義されており、複数行文字列などの一部のケースでは理想的ではありませんでした。現在では、折りたたみ領域がセマンティック情報を適切に考慮し、#region
コメントもサポートしています。
Jupyter
リモート Jupyter サーバー
Jupyter 拡張機能は、ローカルとリモートの Jupyter サーバーを切り替える際に VS Code を再ロードする必要がなくなりました。さらに、この拡張機能は、カーネルピッカーでローカルとリモートの両方のカーネルを一緒に表示するようになりました。
Hex Editor
Hex Editor は、いくつかの重要なアーキテクチャ上のリファクタリングを受けました。特に、ほとんどの場合、パフォーマンスの問題なく任意のサイズのファイルを開くことができるようになりました。さらに、そのレイアウト幅が設定可能になり、より強力な検索/置換の実装が行われました。今後のイテレーションでも改善が継続される予定です。
リモート開発
コンテナ、リモートマシン、またはWindows Subsystem for Linux (WSL) をフル機能の開発環境として使用できるようにするリモート開発拡張機能の作業は継続しています。
新しい拡張機能とバグ修正については、リモート開発リリースノートで確認できます。
GitHub プルリクエストとイシュー
プルリクエストやイシューの作業、作成、管理を可能にするGitHub Pull Requests and Issues 拡張機能の作業は継続しています。ハイライトを確認するには、拡張機能の 0.36.0 リリース変更ログをご覧ください。
プレビュー機能
ターミナルシェル統合
ターミナルに実験的なシェル統合機能が搭載され、これまで不明だったターミナル内で何が起こっているかを VS Code が把握できるようになりました。設定 "terminal.integrated.enableShellIntegration": true
を使用して有効にすると、可能であればシェル統合スクリプトを実行するための引数がターミナルプロファイルに挿入されます。スクリプト自体は、ほとんどの場合、不可視のシーケンスをプロンプトに挿入し、プロンプト、コマンド、コマンド出力の場所、各コマンドの現在の作業ディレクトリ (cwd)、各コマンドの終了コードなどの情報を VS Code に提供します。
この情報を使用することで、既存の機能を様々な方法で強化できます。
- cwd を迅速に検出 - 以前は macOS と Linux でのみ可能で、その情報を取得するためにプロセスを起動したりファイルシステムをクエリしたりしていました。これは現在 Windows でも機能します。cwd は、リンク検出やターミナルタブを分割する際に cwd を継承するなどの機能で使用されます。
- コマンド追跡機能の改善 - この機能は以前から存在していましたが、macOS (
Cmd+Up/Down
) でのみデフォルトのキーバインディングがあり、Enter
が押されたときにどの行にいるかを推測する素朴なアプローチを使用していました。
シェル統合により、以下の新機能が有効になります。
- 最近のコマンドを実行 - どのようなコマンドが実行されたかを知っているため、クイックピックでそれらを表示して再度実行できるコマンドを公開できます。
- 最近のディレクトリへ移動 - 上記と同様に、過去のディレクトリへの移動も可能になりました。
- cwd に相対的なリンクサポート - ターミナルバッファ内の各行の cwd がわかるようになったため、アクティブ化された場所の cwd に相対的なターミナル内のリンクを開くことをサポートできます。以前は、リンクがクリックされると、その名前に一致するフォルダからの結果がクイックピックで開かれました。現在では、正確なファイルの一致が開かれます。
目標は、機能の信頼性が十分に高くなったら、シェル統合をデフォルトで有効にすることです。引数インジェクションに関して私たちが取っているアプローチは、可能な限り邪魔にならないようにすることです。たとえば、一部のターミナルのようにシェル初期化スクリプトを自動的に変更するのではなく、プロセスの作成を傍受し、引数を検査し、ターミナルがそれらで実行できると確信した場合にシェル統合引数を挿入します。ユーザーによる設定が不要で、既存のシェル設定と競合しないようにうまく機能することを目指しています。
現在サポートされているシェルは、Windows 用の pwsh、Linux および macOS 用の pwsh、bash、zsh です。
前述のとおり、これはまだ粗削りな実験的機能であり、いくつかの既知の問題があります。
$PS2
の行継続はまだサポートされていません。ただし、pwsh の行継続は機能します。- 右プロンプトはまだサポートされていません。
- zsh スクリプトは時々アクティブ化しないことが知られています。
- リモート VS Code ウィンドウのサポートは制限されています。
エクスプローラーのファイルネスト
エクスプローラーに、同じディレクトリ内のファイルを論理的にネストされたレイアウトで表示する実験的なサポートが追加されました。これは、関連するファイルを視覚的にグループ化し、ファイルを「ルート」ファイルに折りたたんで雑然とした表示を減らすのに役立ちます。この動作を制御するためにいくつかの新しい設定が追加されました。
explorer.experimental.fileNesting.enabled
: ファイルネストが有効かどうかを制御します。explorer.experimental.fileNesting.expand
: ファイルネストがデフォルトで展開されて表示されるかどうかを制御します。explorer.experimental.fileNesting.patterns
: ファイルがどのようにネストされるかを制御します。
たとえば、多くのリポジトリでは .ts
ファイルが、派生した .js
、.d.ts
、および/または .js.map
ファイルの隣に配置されています。派生ファイルを完全に非表示にすることは、files.exclude
を介して長い間可能でしたが、派生ファイルに素早くアクセスする方法があると便利であり、これはネストによって可能になりました。
以下では、エクスプローラーがデフォルトの explorer.experimental.fileNesting.patterns
設定を使用して .js
と .js.map
ファイルをネストしており、これらは対応する .ts
ファイルが展開されたときに表示されます。
テーマ: GitHub Light
拡張機能作成
言語のデフォルトアイコン
言語貢献者は、その言語のアイコンを定義できます。
{
"contributes": {
"languages": [
{
"id": "latex",
// ...
"icon": {
"light": "./icons/latex-light.png",
"dark": "./icons/latex-dark.png"
}
}
]
現在のファイルアイコンテーマがその言語に一般的なファイルアイコンしか持たない場合、アイコンが表示されます。
また、ファイルアイコンを表示しない Minimal
や None
のようなファイルアイコンテーマは、言語アイコンを使用しません。ファイルアイコンテーマに拡張子やファイル名に対するアイコンがある場合、それらが優先されます。
ファイルアイコンテーマは、テーマファイルに showLanguageModeIcons: true|false
を定義することで、新しい動作をカスタマイズできます。
showLanguageModeIcons: true
は、テーマがファイルアイコンを指定していない場合でも、デフォルトの言語アイコンを表示します。showLanguageModeIcons: false
は、デフォルトの言語アイコンが使用されるのを防ぎます。
QuickPickItem の区切り文字
拡張機能の作成者は、クイックピックに区切り文字を追加できるようになりました。これは、項目をグループ化したり、項目間に少しスペースを追加したりするのに便利です。
既存のクイックピックに区切り文字を追加するには、既存の項目リストに新しい QuickPickItem
を追加し、QuickPickItem
の kind
プロパティを QuickPickItemKind.Separator
に設定します。
上記の例では、項目リストに次のオブジェクトを追加します。
{
label: 'APIs',
kind: QuickPickItemKind.Separator
}
kind
プロパティを指定しない場合、または QuickPickItemKind.Default
に設定した場合、その項目は通常の QuickPickItem
として扱われます。
vscode.workspace.createFileSystemWatcher が任意のパスをサポートするように
既存の vscode.workspace.createFileSystemWatcher
API が改善され、ワークスペース外であっても、ファイル監視のために任意のファイルまたはフォルダーパスを渡すことができるようになりました。以前は、ファイルウォッチャーはワークスペース内の開いているフォルダーに制限されていました。
メソッドに渡すグロブパターンに応じて、ウォッチャーは再帰的 (例: **/*.js
) または非再帰的 (*.js
) のいずれかになります。再帰的ウォッチャーはより多くのリソースを必要とするため、可能な場合はシンプルなグロブパターンを使用することをお勧めします。
例
// Watch a folder non-recursively
vscode.workspace.createFileSystemWatcher(new vscode.RelativePattern(vscode.Uri.file(<path to folder outside workspace>), '*.js'));
// Watch the active text editor file
vscode.workspace.createFileSystemWatcher(new vscode.RelativePattern(vscode.window.activeTextEditor.document.uri, '*'));
注意: この変更の一環として、既存のファイルウォッチャーの動作が変更されました。グロブパターンのみで指示されたファイルウォッチャー (例: vscode.workspace.createFileSystemWatcher('**')
) は、ワークスペース外で変更されたファイルのイベントを受信しなくなります。ワークスペース内のパスからのファイルイベントのみを受信します。ユーザーがワークスペースを開いていない場合、このメソッドを介してイベントは配信されなくなります。これは、拡張機能がワークスペース外からの予期せぬイベントを受信しないようにするために行われました。
vscode.TerminalLocation
新しい TerminalLocation API を使用して、拡張機能ターミナルがどこに作成されるかを指定できます。
これにより、parentTerminal を指定して分割ターミナルを作成したり、エディター領域とパネルの間で選択したりすることが可能になります。
onWill イベントのキャンセル トークン
VS Code API は、onWillRenameFiles のようなファイル操作に参加するためのイベントを公開しています。この参加は長時間を要する可能性があり、ユーザーはそれをキャンセルできます。このリリースでは、対応するイベントのキャンセル トークンを介して、拡張機能がユーザー側のキャンセルを検出できるようになりました (例: FileWillRenameEvent#token)。これにより、拡張機能はコストのかかる下位レベルの操作もキャンセルできるようになります。
Git 拡張機能 API
- ファイルをステージングする機能を有効にするために、新しい
Repository.add
メソッドが追加されました。 - タグを作成および削除する機能を有効にするために、
Repository.tag
およびRepository.deleteTag
メソッドが追加されました。
onTaskType アクティベーションイベント
タスクを提供する拡張機能は、新しい onTaskType:foo
アクティベーションイベントを使用することで、不要なアクティベーションを制限できます。これは、onCommand:workbench.action.tasks.runTask
でアクティブ化するよりも改善されています。なぜなら、workbench.action.tasks.runTask
は通常、タスク提供拡張機能にとって積極的すぎるためです。
デバッガー拡張機能の作成
VS Code は Debug Adapter Protocol のメモリ関連機能を実装するようになりました
このリリースで、VS Code はDebug Adapter Protocolの以下のメモリ関連機能をサポートすることで、バイナリデータの表示と編集をサポートし始めました。
- VS Code は DAP 変数の
memoryReference
属性を尊重し、クライアント機能supportsMemoryReferences
をデバッグアダプターに渡すことでこれを通知します。 - VS Code がデバッグアダプターから機能
supportsReadMemoryRequest
を受け取ると、バイナリデータを表示するための UI を有効にし、データを取得するためにreadMemory
リクエストを発行します。 - VS Code がデバッグアダプターから機能
supportsWriteMemoryRequest
を受け取ると、バイナリデータを編集するための UI を有効にし、データを保存するためにwriteMemory
リクエストを発行します。 - VS Code は
memory
イベントを処理し、クライアント機能supportsMemoryEvent
をデバッグアダプターに渡すことでこれを通知します。
Language Server Protocol
Language Server Protocol の新しい次のバージョンが、対応する npm モジュールとともに公開されました。このバージョンには、ノートブックドキュメントの提案された実装が含まれています。仕様の部分はこちらで読むことができます。
提案された拡張API
すべてのマイルストーンには新しい提案された API が含まれており、拡張機能の作者はそれらを試すことができます。いつものように、皆様からのフィードバックを歓迎します。提案された API を試す手順は次のとおりです。
- 試したい提案を見つけて、その名前を
package.json#enabledApiProposals
に追加します。 - 最新のvscode-dtsを使用して、
vscode-dts dev
を実行してください。これにより、対応するd.ts
ファイルがワークスペースにダウンロードされます。 - これで提案に対してプログラミングできます。
提案された API を使用する拡張機能を公開することはできません。次のリリースで破壊的変更がある可能性があり、既存の拡張機能を壊すことは望ましくありません。
ターミナルの永続化を無効にする
ターミナルを作成する際に、TerminalOptions
または ExtensionTerminalOptions
で disablePersistence
を設定することにより、再起動およびリロード時のターミナル永続化をオプトアウトできます。
export interface TerminalOptions {
disablePersistence?: boolean;
}
インレイヒント API
インレイヒント API に興味のあるすべての人にお知らせです。これは完成に近づいており、インタラクティブなラベル部分のサポートが追加されました。これにより、ソースコードの場所をヒントにバインドできるようになり、コードナビゲーションなどの機能が有効になります。また、コマンドもサポートされるようになりました。この提案の最新の状態と開発状況は、vscode.proposed.inlayHints.d.ts にあります。
言語ステータス API
言語ステータスアイテム API は最終決定が予定されています。ぜひ試してみて、vscode.proposed.languageStatus.d.ts についてフィードバックをお寄せください。
テストに関する提案
テスト用の「更新」ハンドラーを実装する公式な方法を提案しています。vscode.proposed.testRefresh.d.ts をご確認ください。これにより、拡張機能は VS Code の標準的な「更新」ボタンの背後に統一され、独自のものを実装する必要がなくなります。
さらに、TestItem
に vscode.proposed.testSortText.d.ts で sortText
属性を持たせることを提案します。
インライン補完: 自動括弧補完
拡張機能がインライン補完アイテムを提供する際、そのプロパティ completeBracketPairs
を true
に設定できます。設定されている場合、VS Code はユーザーにインライン補完を表示する前に、補完テキスト内の無効な括弧を閉じたり削除したりして修復を試みます。
ツリーのドラッグ&ドロップ提案がエディターへのドラッグをサポート
ツリーのドラッグ&ドロップ提案は最終決定にほぼ準備ができており、TreeDragAndDropController
が "resourceurls"
MIME タイプをサポートしている場合、ツリービューからエディターへのドラッグをサポートするようになりました。詳細については、イシュー #141418 を参照してください。ぜひ試して、vscode.proposed.treeViewDragAndDrop.d.ts にフィードバックをお寄せください。
コメントタイムスタンプ
コメント API には、Comment
に新しい timestamp
プロパティが追加されました。API とともに、コメントのタイムスタンプの表示方法を制御する新しい設定 comments.useRelativeTime
があります。ぜひ試してみて、vscode.proposed.commentTimestamp.d.ts についてフィードバックをお寄せください。
エンジニアリング
vscode-bisect ツール
リリースされた VS Code Insiders バージョン (Web およびデスクトップ) を二分探索するための新しいツールが、問題の診断に役立つようになりました。
npx vscode-bisect
git bisect
と同様に、vscode-bisect
は過去のリリースされた Insiders ビルドの範囲を起動し、ビルドが問題を再現するかどうかを尋ねます。最終的な結果は、問題を引き起こしたコミットの範囲になります。インスタンスは、主要な開発環境に影響を与えないように、ユーザーデータ用に専用の新しいフォルダーを使用します。
ソースから Code Web & Server を実行
ソースから Web 用 VS Code および VS Code Server を実行するためのスクリプトが scripts
フォルダーに移動しました。
./scripts/code-web.sh|bat
はソースから Web 用 Code (別名「サーバーレス」) を起動し、ブラウザで開きます。詳細なオプションについては--help
を使用してください。./scripts/code-server.sh|bat
はソースから VS Code Server を起動します。さらに Web UI をブラウザで開くには--launch
を追加します。詳細なオプションについては--help
を使用してください。- リモートウェブテスト用の
./scripts/test-web-integration.sh|bat
。 - リモートテスト用の
./scripts/test-remote-integration.sh|bat
。
拡張機能
このマイルストーンでは、VS Code がサービスに行うクエリの数を最小限に抑えることで、マーケットプレイスとの対話が改善されました。
注目すべき修正点
- 91286 クライアント上の設定同期アクティビティのスロットリング
- 117648 Emmet で "gtc" を Sass 拡張機能で展開した結果が奇妙。
- 134466 存在しないデバッガー構成
- 135677 設定 UI リンクにカーソルを合わせると、先頭に # が表示される
- 138072 最近開いたワークスペースをグローバルストレージに保存
- 138805 大容量バイナリファイルを開くと全内容が読み込まれる
- 138850 ディスク上のファイル変更後、開いているエディターが空になることがある
- 139880 デバッグ: F5 でファイルを保存するように求められる
- 140003 異なるワークスペースフォルダにある起動構成からタスクを参照できない
- 140129 settings.json ファイルをダブルクリックすると毎回新しいタブが開く
- 140560 VS Code のデバッグ停止 API の問題
- 140967 Comment.body が Markdown としてレンダリングされる、プレーン文字列でも
ありがとうございます
最後に、VS Codeの貢献者の皆様に心からの感謝を申し上げます。
Web拡張機能
コードをWeb拡張機能として実行できる拡張機能の作成者 (以下のリストは2021年12月7日から2022年1月31日までの期間です)
- Tabulate (a5hk)
- Powder (Alexey Osipov)
- VCDrom (Aliaksei Chapyzhenka)
- Reveal Button (Andreas Weber)
- Digital Solutions (Andrew Tacon)
- lorem ipsum (aroary)
- Convert Selection (ArturoDent)
- Custom Language Properties (ArturoDent)
- Find and Transform (ArturoDent)
- Launch Configs (ArturoDent)
- Instant Documentation (atanasster)
- Couper Configuration (Avenga Germany GmbH)
- Argdown (Christian Voigt)
- ES7+ React/Redux/React-Native snippets (dsznajder)
- fantasy.markdown-all-in-one-for-web (fantasy)
- fink (fink)
- GitLens (Insiders) (GitKraken)
- Select by Indent (haberdashPI)
- Selection Utilities (haberdashPI)
- Python-Factory Web Search (HyunseungLee)
- Custom Element Scanner (alpha) (JanKretschmer)
- tomato extensions (jingjingwu)
- vscode-position (jtr)
- KCL for vscode.dev (kcl_extension_publisher)
- KL Language support (Kevlanche)
- Systemd Helper (Liu Yue)
- bett3r icons (Lucas)
- xpro-snippets (Maratib Ali Khan)
- Projen (MarkMcCulloh)
- Rainbow CSV (mechatroner)
- Blogview (mkizka)
- CodeSandpack (Mojojoji)
- Abracadabra, refactor this! (Nicolas Carlo)
- Office Script Extension (office-script)
- Better Fountain (Piers Deseilligny)
- Dothttp Http Client (Prasanth)
- 小説 (Public Theta)
- bojodog (RanolP)
- JSON Validate (rioj7)
- Remove Comments (rioj7)
- Everforest (sainnhe)
- Gruvbox Material (sainnhe)
- JetSet for VSCode (Sudhay)
- MathJax for Markdown (TANIGUCHI Masaya)
- WebEnv-Client (Theboys619)
- Graphviz Interactive Preview (tintinweb)
- LLL (tintinweb)
- Vyper (tintinweb)
- Sourcegraph - preview (TJ Kandala)
- Keyboard Macro Beta (tshino)
- WakaTime (WakaTime)
- MSCode (WebXT ES)
- DigitalJS (Yichao Yu)
- Better Snippets (zardoy)
- Fix All JSON (zardoy)
- Zardoy Experiments (zardoy)
問題追跡
問題追跡への貢献者
- John Murray (@gjsjohnmurray)
- Andrii Dieiev (@IllusionMH)
- ArturoDent (@ArturoDent)
- Simon Chan (@yume-chan)
- heartacker (@heartacker)
- Lemmingh (@Lemmingh)
プルリクエスト
vscode
への貢献者
- @btidor (Benjamin Tidor): テキスト検索結果の
undefined
を修正 PR #141522 - @ckline-tryptic (Christopher M Kline): git 拡張機能 API で 'tag' と 'deleteTag' を公開 PR #123815
- @DanielRosenwasser (Daniel Rosenwasser): TS/JS スニペットの「囲む」機能 PR #138565
- @dnicolson (Dave Nicolson): bisect メッセージの単数形を追加 PR #137626
- @eltociear (Ikko Ashimine): エディター - タイプミスを修正 PR #140320
- @Enzime (Michael Hoang): ripgrep: PCRE2 に非推奨フラグを使用しない PR #139721
- @gjsjohnmurray (John Murray)
- #118617 修正: 上流ブランチがない場合、「リモート」という用語を使用 PR #120467
screencastMode.keyboardShortcutsFormat
設定の説明を修正 (#_138644) PR #138645editor.hover.delay
の最大値と最小値を公開 (#_140215) PR #140216- SQL で
--#region
および--#endregion
をサポート (#_141257) PR #141264
- @iamkun: リファクタリング: 重複する if ステートメントを削除 PR #140085
- @imphil (Philipp Wagner): ripgrep バイナリを ppc64le と s390x を含むように更新 PR #140028
- @jeanp413 (Jean Pierre)
- workbench.extensions.installExtension を使用してバージョン付きで拡張機能をインストール PR #136314
- Firefox でターミナルを開いて閉じた後、Ctrl + Shift + {左、右、Home、End} が機能しない問題を修正 PR #139615
- vscode web でのキーボードレイアウト変更が機能しない問題を修正 PR #140295
- 接続トークンの解析を修正 PR #140532
- @jlelong (Jerome Lelong)
- 基本的な LaTeX 組み込み拡張機能 PR #138395
- LaTeX 言語の文法と設定を更新 PR #140801
- @jzyrobert (Robert Jin): html-language-features を doQuoteComplete を使用するように更新 PR #137080
- @KapitanOczywisty: PHP update-grammar.js を修正 PR #140619
- @KendallDoesCoding (Kendall Pinto): PRセクションの作成 PR #141130
- @KhaledSamir (Khaled): エスケープされたパーセント記号を検出する正規表現を修正。 PR #139437
- @lostintangent (Jonathan Carter): [Markdown] GitHub テーマの画像サポートを追加 PR #137820
- @Mai-Lapyst: 言語貢献にデフォルトのファイルアイコンサポートを追加 PR #118846
- @MaxGrekhov (Max Grekhov): 開いているエディター: fullPath でソート PR #133790
- @nrayburn-tech (Nicholas Rayburn): ソース管理ビューのソートをストレージに追加 PR #123232
- @OPY-bbt (zhangyan): fix(suggest): フォーカスされたラベルにのみ readmore アイコンを表示 PR #139792
- @orta (Orta Therox): 拡張機能がコマンドを介して typescript 拡張機能の tsserver にリクエストを行えるようにする PR #138279
- @PieterBranderhorst: 最大折りたたみ数を超えた場合にユーザーに通知し、最大折りたたみ数を設定可能にする。 PR #140480
- @samestep (Sam Estep): rg に --no-ignore-parent を渡さないオプションを追加 PR #140022
- @SeriousBug (Kaan Genç): hasCustomMarkdownPreview はコンテキストメニューの Markdown プレビューボタンを無効にする PR #139241
- @ShafinKhadem (Nafiur Rahman Khadem): スニペットの最後に元に戻す/やり直しの停止を追加 PR #140096
- @slidoooor (Hans)
- キャッシュされたトークンを取得する際に、同じ Markdown に対して異なる HTML コンテンツが生成される問題を修正 PR #138935
- 数ピクセルの行の重なりを修正 (#_139311) PR #139575
- testing: 各テスト実行前に自動保存を追加 PR #141254
- @smcenlly (Simon McEnlly): testing: TestItem に新しい API
sortText
プロパティを追加 PR #132099 - @SMSadegh19 (Mohammad Sadegh Salimi): README Markdown プレビューのための RTL 言語のサポートを追加。 PR #139644
- @SNDST00M (M.U.N.I.N):
FontStyle.Strikethrough
サポートを追加 PR #139413 - @somebee (Sindre Aarsaether): エディターが transform を介してスケーリングされている場合のデコレーションとマウスヒットテストを修正 PR #139282
- @stevenjoezhang (Mimi): 定義済み変数を使用した terminal.integrated.cwd の問題を修正 PR #137023
- @Timmmm (Tim): parseAddress 正規表現を修正 PR #140977
- @TwitchBronBron (Bronley Plumb): InstallAnotherVersionAction のパフォーマンス問題を修正 PR #136992
- @WaqasAliAbbasi (Waqas Ali): Markdown コードブロックとスパンでのリンクハイライトを防止 PR #140816
- @wengj9 (James Weng): スニペットピッカーに拡張機能情報を追加 PR #138880
- @Yash621 (Yash Goel): code-insiders --status がエラーになる PR #140152
- @zardoy (Vitaly):
showInformationMessage
,showWarningMessage
,showErrorMessage
のタイピングを文字列としてアイテムを厳密にする PR #137672
vscode-css-languageservice
への貢献者
- @fyangstudio (yangfan): Feat: 新しい解決インポート at-rules をサポート PR #255
- @romainmenke (Romain Menke): CSSカラー:hue rad|grad|turn のサポートを追加 PR #257
- @Semigradsky (Dmitry Semigradsky): 属性セレクターの大文字と小文字の区別をサポート PR #259
vscode-eslint
への貢献者
- @edupsousa (Eduardo Pereira de Sousa): ユーザーがサーバーエラーを無視できるようにする。 PR #1375
vscode-extension-samples
への貢献
- @laurentlb (Laurent Le Brun): comment-sample の「キャンセル」ボタンを修正 PR #492
vscode-html-languageservice
への貢献
- @zuochenxue (ZuoChenxue): docs: タイプミスを修正 PR #118
vscode-js-debug
への貢献者
vscode-pull-request-github
への貢献者
- @blindpirate (Bo Zhang)
- @joshuaobrien (Joshua O'Brien): すべての差分を開くコマンドを追加 PR #3238
vscode-textmate
への貢献
- @SNDST00M (M.U.N.I.N):
FontStyle.Strikethrough
を実装 PR #159
vscode-vsce
へのコントリビューション
- @hangxingliu (Liu Yue): fix: Dockerベースイメージは最新の
node:14-alpine
である必要がある PR #651 - @joerohde (Joe Rohde): feat: エントリポイントを検証するための健全性チェック PR #669
- @ritwickdey (Ritwick Dey): fix: JSタグなしのエントリポイント検証 PR #676
debug-adapter-protocol
への貢献者
- @Calindro: Emulicious Debuggerを追加 PR #230
- @cdaringe (Christopher Dieringer): docs(実装者): OCamlを追加 PR #228
- @ko1 (Koichi Sasada):
VSCode rdbg Ruby Debugger
を追加 PR #232
monaco-editor
へのコントリビューション
- @blutorange (Andre Wachsmuth): #2383 を実装 FreeMarkerテンプレート言語のシンタックスモードを追加 PR #2847
- @forensicmike (forensicmike1): サンプルをクローンして実行するためのステップバイステップのコマンドライン手順に「cd monaco-editor」を追加 PR #2894
- @juan-carlos-diaz: #2851 を修正 シェル言語の属性と識別子 (ダッシュ付き) を正しくハイライトする PR #2871
- @philipturner (Philip Turner)
- @rcjsuen (Remy Suen): Markdown構文でのハイフン付きHTMLタグをサポート PR #2864
- @resistdesign (Ryan Graff): doc: (サンプル) ブラウザESM Parcelビルドを簡素化 PR #2832
- @ValeraS (Valeriy)
node-jsonc-parser
への貢献
- @Marcono1234
- @P0lip (Jakub Rożek): findNodeAtLocation が不完全なプロパティペアを処理しない PR #44