に参加して、VS Code の AI 支援開発について学びましょう。

2021年3月 (バージョン 1.55)

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

更新 1.55.2: この更新では、これらのセキュリティ問題に対処しています。

ダウンロード: Windows: x64 Arm64 | Mac: ユニバーサル Intel シリコン | Linux: deb rpm tarball Arm snap


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

これらのリリースノートをオンラインで読みたい場合は、code.visualstudio.com更新 にアクセスしてください。

このリリースの新機能のデモをご覧いただき、ライブで質問をしたい方は、日本時間4月9日(金)午前0時 (ロンドン時間午後4時) に開催されるVS Codeチームのライブストリームにぜひご参加ください。

Insiders: 新機能をいち早く試したいですか?夜間ビルドのInsidersをダウンロードして、利用可能になり次第、最新の更新を試すことができます。

アクセシビリティ

マルチカーソル対応

複数カーソルの初期スクリーンリーダーサポートを追加しました。新しいカーソルが追加されるたびに、VS Codeはカーソルの行と列の位置とともにそれをアナウンスするようになりました。VS Codeは、セカンダリカーソルが削除されたときにもアナウンスします。今後もフィードバックを受けながら、マルチカーソルのアクセシビリティをさらに改善していく予定です。

スクリーンリーダーの制限を1000行に増加

上流の問題が修正されたおかげで、「すべて読み上げる」コマンドが読み取れる行数を増やしました。以前は、スクリーンリーダーが一度にアナウンスできる行数は100行という厳密な制限がありましたが、この制限を1000行に増やしました。完全に制限をなくすためには、さらなる上流の修正が必要です。

この変更により、設定editor.accessibilityPageSizeは非推奨になりました。この設定は次の数回のリリースでは引き続きサポートされますが、将来的には完全に削除する予定です。

Workbench

Windowsでの暗号化の更新

Windowsでのシークレットの暗号化方法を変更しました。これは、設定の同期とsecrets APIを使用する拡張機能に影響します。Windowsユーザーは更新時に自動的にサインアウトされ、再度認証する必要があります。

macOS Big Sur向けに更新されたブランドアイコン

Brand icons on macOS Big Sur

VS CodeのmacOSブランドアイコンをBig Surの新しい視覚スタイルに合わせる作業を進めてきました。コミュニティからのすべてのフィードバックに感謝し、StableおよびInsiders向けの新しいロゴをリリースできることを嬉しく思います。また、すべてのプラットフォームで同じロゴを使用しています。

Stable Insiders 探索
Stable icon Insiders icon Exploration icon

サッシュのカスタマイズを改善

新しいworkbench.sash.hoverDelay設定により、サッシュのホバーフィードバックの遅延を定義できます。既存のworkbench.sash.size設定は、UIをすっきりさせながら、タッチデバイス用の大きなグラブ領域を提供するように改善されました。

リスト/ツリーナビゲーションの改善

リストとツリーは、ノートブックなどの特定の領域でより自然に動作するカスタムキーボードナビゲーションモードをサポートするようになりました。

さらに、Shift+Click範囲選択はより決定論的に動作するようになりました。

タブの装飾がデフォルトで有効に

エディターのタブ装飾がデフォルトで有効になりました。これらを構成するには、workbench.editor.decorations.colorsおよびworkbench.editor.decorations.badgesを使用します。

ファイルに警告があり、gitで変更されていることを示す装飾付きのエディタータブ テーマ: GitHub Light Theme

キーボードショートカットエディターでの列のサイズ変更

キーボードショートカットエディターは、新しいテーブルウィジェットを使用するようにリファクタリングされ、ユーザーがエディターで列のサイズを変更できるようになりました。

拡張機能管理の改善

  • VS Codeは、VS Code CLIを介してインストール/アンインストールされた拡張機能を検出するようになりました。拡張機能はアクティブなウィンドウ (インスタンス) でアクティブ化/非アクティブ化でき、拡張機能ビューに正しく表示されます。

  • VS Codeは、extensionPackプロパティを設定する拡張機能に含まれる拡張機能セットを、拡張機能が拡張機能パックとして分類されていない場合でも、別の拡張機能パックタブに表示するようになりました。

Extension that is not an extension pack but includes other extensions

テーマ: GitHub Light Theme

問題ビューでのネガティブテキストフィルタリング

問題ビューから、フィルタテキストの前に!を付けて、特定のテキストを含まない問題をフィルタリングできるようになりました。

マーケットプレイスの問題の報告

先月、拡張機能マーケットプレイスに関連する問題のための新しい公開リポジトリがあることを強調しました。現在、VS Codeの問題レポートは、このリポジトリで問題を作成することをサポートしています。

ツリーのホバー遅延の構成

拡張機能が提供するツリービューのホバー遅延は、workbench.hover.delayで構成できるようになりました。

Emmet

emmet.extensionsPath設定は文字列配列のみを受け入れるようになり、設定エディターで直接編集できます。

開いているエディターでの検索

ワークスペース検索で開いているエディターのみを検索チェックボックスを切り替えることで、ワークスペース全体を検索する代わりに、エディタータブで開いているファイルのみを検索するように変更できるようになりました。これは以前はオプトインで有効になっていましたが、このイテレーションでは、VS Codeセッションにまだロードされていないファイルでの動作を強化し、デフォルトで有効にしました。

ソース管理入力のフォントサイズの制御

新しいscm.inputFontSize設定を使用して、ソース管理入力のフォントサイズを変更できるようになりました。

統合ターミナル

ターミナルプロファイル

ターミナルは、デフォルト以外のシェルを便利に起動するために、ターミナルのドロップダウンに表示される定義済みのプロファイルをサポートするようになりました。

Terminal profiles show up below the terminal processes and above the configuration items

VS Codeは、このメニューを通じて一般的に使用されるシェルの一部を自動的に検出し、表示しますが、それらはterminal.integrated.profiles.設定を使用して構成することもできます。この設定を使用すると、新しいプロファイルの追加、既存のプロファイルの変更、およびデフォルトプロファイルの削除が可能です。例えば、

"terminal.integrated.profiles.windows": {
  // Add a PowerShell profile that doesn't run the profile
  "PowerShell (No Profile)": {
      // Some sources are available which auto detect complex cases
      "source": "PowerShell",
      "args": ["-NoProfile"],
      // Name the terminal "PowerShell (No Profile)" to differentiate it
      "overrideName": true
  },
  // Remove the builtin Git Bash profile
  "Git Bash": null,
  // Add a Cygwin profile
  "Cygwin": {
    "path": "C:\\cygwin64\\bin\\bash.exe",
    "args": ["--login"]
  }
}

プロファイルを最初に追加する推奨される方法は、デフォルトプロファイルの選択コマンドです。これにより、既存のプロファイルまたは検出された他のシェルに基づいてプロファイルを作成できます。

The Select Default Profile command shows all configured and detected profiles

WindowsでのWSLプロファイルの自動検出とデフォルトの改善

新しいプロファイル機能に加えて、WSLプロファイルを自動検出し、デフォルトでリストに表示するようになりました。これはterminal.integrated.useWslProfiles設定で無効にできます。

Cygwinも自動検出され、デフォルトプロファイルの選択コマンドに表示されるようになり、Git Bashはログインシェルとして実行されます (~/.bash_profileが実行されます)。

WebGLレンダラーが新しいデフォルトに

ターミナルは、2019年11月のリリースで実験的なWebGLレンダラーを初めて導入しました。当時の計算に基づくと、これは標準の2Dキャンバスコンテキストでのレンダリングに問題がある環境であれば、パフォーマンスを最大900%向上させ、さらにそれ以上向上させることができました。

それ以来、WebGLレンダラーは安定性を徐々に改善し、機能のギャップを埋めてきました。今が移行するのに最適な時期だと判断しましたが、問題報告がないか注視していきます。

この作業の一環として、いくつかのフォールバックロジックも追加しました。"terminal.integrated.rendererType": "auto"の場合、次のようになります。

  1. WebGLレンダラーが起動を試みます。
  2. OS/ブラウザのサポート不足などが原因で失敗した場合
    • キャンバスレンダラーが有効になり、フレームのレンダリングにかかる時間の測定が開始されます。
  3. 最初の20フレームのレンダリングが遅い場合 (例えば、ハードウェアの問題やGPUレンダリングが無効になっている場合)
    • DOMレンダラーが有効になります。

次のリリースでは、rendererType設定を完全に削除し、より分かりやすい"terminal.integrated.gpuAcceleration": "auto" | "on" | "off"に置き換える予定です。

シームレスなターミナルの再起動

前回のリリースでは、拡張機能が環境を変更したい場合にターミナルが自動的に再起動される機能を導入しました。今回のリリースでは、再起動時に発生していたちらつきを防ぐようになりました。新しいターミナルの出力が前回のターミナルの出力と同一である場合、再起動によってフィードバックや注意散漫が引き起こされることはありません。

この自動再起動を完全に無効にする新しい設定terminal.integrated.environmentChangesRelaunchも追加されました。

Editor

新しい自動閉じかっこ削除

自動閉じかっこの内部でBackspaceを押したときの動作が変更されました。エディターは、その文字を自動挿入した場合にのみ、対応する閉じかっこまたは閉じ引用符を削除するようになりました。この動作は、新しく導入されたeditor.autoClosingDeleteという設定で制御され、以前の動作を得るには"always"に構成できます。

デバッグ

ブレークポイントの改善

条件とヒット数を編集するためのインラインメニュー

関数ブレークポイントの条件とヒット数を編集するためのインラインメニューが表示されるようになりました。以前は、インライン編集ボタンは編集する条件を自動的に選択していました。これにより、フローがより簡単になり、ユーザーがより多くの制御できるようになります。

Breakpoint condition menu

データブレークポイントのすべてのアクセスタイプに対応

VS Codeの汎用デバッガーUIは、VARIABLESビューのコンテキストメニューアクションとして、Debug Adapter Protocolで定義されているすべてのデータブレークポイントのアクセスタイプをサポートするようになりました。

  • 値の読み取り時に中断: 変数が読み取られるたびにブレークポイントがヒットします。
  • 値の変更時に中断: 変数が変更されるたびにブレークポイントがヒットします (このアクションは以前から利用可能でした)。
  • 値のアクセス時に中断: 変数が読み取られるか変更されるたびにブレークポイントがヒットします。

デバッグ拡張機能は、個々のアクションを利用可能にするために、この機能をオプトインする必要があることに注意してください。今のところ、Mock Debug拡張機能のみが3つのすべてのアクセスタイプを (シミュレートされた) サポートしていますが、Java拡張機能などの他のデバッグ拡張機能もすぐに追随すると予想しています。

Data breakpoints break on access types

デバッグ対象の起動前にターミナルをクリア

一部のデバッグ拡張機能では、VS Codeの統合ターミナルでデバッグ対象を起動できます。統合ターミナルの数を少なく保つために、VS Codeはまだ実行中のコマンドによってブロックされていない場合、ターミナルを再利用しようとします。このアプローチの結果、以前のコマンドとプログラムの出力がターミナルに表示されたままであり、これが混乱を招くことがあります。

今回のリリースでは、新しいデバッグセッションを開始する前に統合ターミナルを自動的にクリアする新機能を導入しました。この機能は、新しい設定debug.terminal.clearBeforeReusingによって制御されます。

JavaScriptデバッグ

いつものように、変更点の完全なリストはvscode-js-debug変更ログにあります。

デバッグの開始とエントリーでの停止

昨年、新しいデバッガーに移行した際、デバッグ: デバッグの開始とエントリーでの停止は置き去りにされていました。これが再び動作するようになり、デバッガーにNode.jsプログラムの最初の行で一時停止するように要求します。デフォルトではF10にバインドされています。

シンボリックリンクの処理を改善

シンボリックリンクを持つNode.jsプログラムのデバッグでは、プログラムに特別なフラグを渡す必要がある場合があります。これらのフラグがないと、ブレークポイントが未バインドのままで、何が問題なのかを把握するのが困難でした。今後は、デバッガーがこれらのケースを自動的に検出し、役立つ通知を提供します。

Notification that says "It looks like you have symlinked files. You might need to update your configuration to make this work as expected," with buttons to "Read More" and "Ignore"

ノートブック

複数セルの選択

マウス (Shift+Click) またはキーボードショートカット (Shift+Arrow) を使用して、ノートブックで複数のセルを選択できるようになりました。複数のセルが選択されたら、選択したセルをコピー/カット/ペースト/移動/複製できます。

Notebook multiple cells selection

複数のセルをまとめてドラッグ&ドロップすることもできます。

Notebook multiple cells selection drag and drop

制限事項: 複数の異なる範囲のセルが選択されている場合、ほとんどのコマンドは最初の範囲またはフォーカスされた範囲に対してのみ実行されます。今後のリリースでこのエクスペリエンスを改善し続けます。

また、新しいカラートークンnotebook.inactiveSelectedCellBorderを追加しました。これはデフォルトの色はありませんが、背景色の代わりに境界線を使用して複数選択を好むテーマで利用できます。

Notebook cells being multi-selected via border instead of background colors

差分エディターでの出力とメタデータの違いの表示/非表示

ユーザーからは、ノートブックの変更を確認する際に、ノートブックセルのメタデータや出力の変更が煩わしい、または関係ないという意見が寄せられています。VS Codeでは、設定notebook.diff.ignoreMetadataおよびnotebook.diff.diffOutputsを使用して、差分エディターでのメタデータまたは出力の変更の表示を制御できるようになりました。これらは、エディターのタイトルツールバーから出力/メタデータの差分を表示コマンドを使用しても切り替えることができます。

Notebook show metadata/outputs differences

プレビュー機能

ノートブックでの拡張可能なMarkdownレンダラーの継続的な改善

ノートブックでのMarkdownレンダラーの拡張のサポートを引き続き改善しました。このイテレーションでの私たちの焦点は、新しいレンダラーのパフォーマンス向上でした。また、新しいレンダラーが導入した多くの回帰を修正しました。

Emoji and a math formula being rendered in a notebook cell

新しいレンダラーはデフォルトではまだ無効になっていますが、すぐに有効にできると確信しています。今日の新しい拡張可能なMarkdownレンダラーは、非公式のnotebook.experimental.useMarkdownRenderer: true設定で試すことができます。この設定を有効にしてVS Codeを再起動すると、Markdownセルで:emoji:とKaTeX $math$数式を使用できるようになります。

はじめに

私たちは、デフォルトのスタートアップエディターを全面的に見直し、関連する拡張機能からのヒントやウォークスルーを提供することで、VS Codeのコア機能と拡張機能の両方を新規ユーザーにとってより身近なものにすることを目指しています。多くのInsidersユーザーはすでにこの機能を目にしているかもしれませんが、このイテレーション中に徐々に多くのStableユーザーに展開される予定です。workbench.startupEditor設定をgettingStartedに変更するか、それ以外の値に変更することで、いつでもこの新しい動作をオプトインまたはオプトアウトできます。

スタートアップ体験のウォークスルー テーマ: GitHub Light

拡張機能への貢献

リモート開発

リモート開発拡張機能の作業が続けられています。これにより、コンテナ、リモートマシン、または Windows Subsystem for Linux (WSL) をフル機能の開発環境として使用できます。

1.55の主な機能ハイライトは以下の通りです。

  • ダブルクリックでポートに名前を付ける
  • デフォルトのポート検出動作を構成する
  • コンテナーボリュームでリポジトリをクローンする際の体験を更新

新しい拡張機能の機能とバグ修正については、Remote Development リリースノートで確認できます。

GitHub Pull Requests and Issues

GitHub Pull Requests and Issues拡張機能の作業が続いており、プルリクエストとイシューの作業、作成、管理が可能です。

すべての新機能と更新の詳細については、拡張機能の0.25.0リリースの完全な変更ログを参照してください。

拡張機能作成

カスタムエディターおよびノートブック用の無題ファイルAPI

カスタムエディターとノートブックには、オープンコンテキストにuntitledDocumentDataプロパティが含まれるようになりました。これには、ユーザーが再開をトリガーした無題ファイルに含まれるデータのバッファが含まれます。URIが、無題ファイルの場合にディスク上のファイルを指さないため、このプロパティが設定されている場合は、URIの代わりにこのプロパティを読み取る必要があります。

インライン値プロバイダーAPI

前回のマイルストーンで導入された提案中のインライン値プロバイダーAPIが最終決定され、マーケットプレイスで公開されている拡張機能で使用できるようになりました。

新しい「コピーとして」サブメニュー

UIにコピーとしてサブメニューとして表示される新しいメニュー場所が2つあります。

  • menuBar/edit/copy - タイトルバーの編集メニュー用
  • editor/context/copy - エディターのコンテキストメニュー用

Copy As submenu

ExtensionContextに新しいextensionプロパティ

拡張機能の作成者は、拡張機能のactivate関数に渡されるExtensionContext上の新しいextensionプロパティを使用できるようになりました。これは、vscode.extensions.getExtension()が返すのと同じExtensionインスタンスを返します。これには、拡張機能のID、バージョン、および拡張機能のpackage.jsonファイルから直接データにアクセスできるシリアル化されたpackageJSONプロパティなどのプロパティが含まれます。

Docker compose言語

新しいDocker compose言語が追加されました。これによってユーザー側の大きな変更はありませんが、拡張機能の作成者はDocker composeファイルをターゲットにするためにこれを使用できるようになりました。言語IDはdockercomposeです。

テレメトリー有効化API

拡張機能は、telemetry.telemetryLevelの設定値を通じて、ユーザーがテレメトリーを無効にしているかどうかを常に確認できましたが、ユーザーがCLIフラグ--disable-telemetryを使用しているかどうかを確認することはできませんでした。このマイルストーンでは、拡張機能APIのenvオブジェクトにさらに2つのプロパティを追加しました。isTelemetryEnabledonDidChangeTelemetryEnabledです。前者はCLIフラグと現在の設定値を考慮に入れます。後者は、isTelemetryEnabledが変更されるたびに発生するイベントです。

ワークスペース信頼の開発

数回のイテレーションにわたり、私たちはワークスペース信頼と呼ぶセキュリティ機能を検討してきました。リリースが近づくにつれて、拡張機能の作成者に関与してオンボーディングプロセスを開始し、フィードバックを得たいと考えています。現時点では、ワークスペース信頼を処理するように更新されていない拡張機能は、安全なデフォルト設定を継承します。ただし、最適なユーザーエクスペリエンスのために、拡張機能の作成者には問題#106488で詳細を読み、次のイテレーションを進めるにつれて更新を購読するようお願いしています。

提案された拡張API

各マイルストーンには新しい提案された API があり、拡張機能の作成者はそれらを試すことができます。いつものように、皆様のフィードバックをお待ちしております。提案された API を試すには、次の手順を実行する必要があります。

  • 提案APIは頻繁に変更されるため、Insiders版を使用する必要があります。
  • 拡張機能のpackage.jsonファイルに次の行が必要です: "enableProposedApi": true
  • 最新バージョンのvscode.proposed.d.tsファイルをプロジェクトのソース場所にコピーします。

提案された API を使用する拡張機能を公開することはできません。次のリリースで破壊的変更がある可能性があり、既存の拡張機能を壊すことは望ましくありません。

テスト

今月は、テストAPIのプロバイダー部分の解決に焦点を当てました。主に、テストをオンデマンドで非同期的にロードできるようにするアプローチへの移行です。非同期アプローチへの移行は、拡張機能ホストAPIにとって新しいセマンティクスが必要となる課題を提示しました。このイテレーションでは変更をマージし、来月にかけてそれらを洗練させます。4月のイテレーションでは、テストAPIの一部を最終決定し始めたいと考えています。

CodeActionContext.triggerKind

CodeActionContextの提案されたtriggerKindプロパティは、CodeActionProviderからコードアクションが要求されている理由を追跡します。このプロパティの可能な値は次のとおりです。

  • Invoke: コードアクションは、キーボードショートカットまたはコマンドによって明示的に要求されました。

  • Automatic: コードアクションは、明示的なユーザーアクションなしで要求されました。これには、ドキュメントの内容が変更されたときにコードアクションを要求することも含まれます。

プロバイダーはtriggerKindを使用して、コードアクションが要求された方法に応じて異なる結果セットを返すことができます。たとえば、自動的にトリガーされるリファクタリングコードアクションプロバイダーは、コードアクションの電球が表示される頻度を制限するために、現在の正確な選択に対するリファクタリングのみを返す場合があります。ただし、コードアクションが明示的に要求された場合、同じプロバイダーは、ユーザーが現在の場所で関心を持つ可能性のあるすべてのリファクタリングを表示しようとして、現在の選択を自動的に展開する場合があります。

PortAttributesProvider

ポートでリッスンするプロセスを開始し、VS Codeリモート拡張機能と組み合わせて優れたエクスペリエンスを提供したいすべての拡張機能は、フィードバックを提供し、新しいPortsAttributesProvider APIを採用することを検討する必要があります。VS Codeは、リモート拡張機能のいずれかを使用しているときにポートを検出して自動的に転送するため、ポートでリッスンするすべての拡張機能は、それらのポートが自動的に転送されます。ただし、多くの場合、これらのポートは拡張機能の内部動作にとってのみ重要であり、ユーザーがこれらのポートを転送されるのは役に立ちません。このAPIは、ポートが検出されたときの動作を設定するために使用でき、ユーザーに公開すべきでないポートの不要な自動転送を防ぐことができます。

クイック入力オプションのタイトル

showQuickPickに渡されるQuickPickOptionsshowInputBoxに渡されるInputBoxOptionsには、以前はcreateQuickPick APIでのみ利用可能だったオプションのtitleプロパティが追加されました。このプロパティが設定されている場合、クイック入力に指定したタイトルを持つタイトルバーが表示されます。

Language Server Protocol

診断プルモデル仕様のドラフト版が、フィードバックのために公開されています。

Debug Adapter Protocol

停止イベントがヒットしたブレークポイントを報告できるようになりました

停止イベントに、イベントをトリガーしたブレークポイントのIDを含むオプション属性hitBreakpointIdsが追加されました。

VS Codeはまだこの情報を何らかの形で表示しているわけではないことに注意してください。可能なUIのアイデアについては、問題#118743で議論しています。

エンジニアリング

Snapの起動が高速化

Snapパッケージはlzo圧縮アルゴリズムを使用するようになり、起動時間が短縮されました。詳細については、Ubuntuのアルゴリズムに関するブログ投稿を参照してください。

Electronサンドボックスの進捗

このマイルストーンでは、VS CodeウィンドウをElectronのサンドボックスおよびコンテキスト分離機能を有効にする準備を継続しました。

具体的には

  • レンダラーで必要だったネイティブモジュールの一部を他のプロセスに移行することができました。
  • サンドボックスオプションが有効になっている場合でも、より多くのコンポーネントとサービスが利用できるようになりました。

ドキュメント

教室でのVS CodeとJavaScript

タイのナレスアン大学のコンピュータサイエンスの講師が、JavaScriptとNode.jsを使用したウェブ開発入門クラスでVS Codeを使用しているケーススタディを読んでください。彼が生徒に推奨する設定と拡張機能、および役立つNode.jsとJavaScript教育拡張機能パックについて学びましょう。

Raspberry Pi

Raspberry PiにVS Codeをインストールする方法を説明する新しいトピックが追加されました。

Raspberry Pi logo

注目すべき修正点

  • 74505: Emmet組み込みプラグインのチートが@から始まる場合にブロック内でのみ展開される
  • 97632: 純粋なXMLドキュメントの編集時にEmmetが起動する
  • 107506: デバッグ変数をビューに、名前がユニークでない場合に複数の変数が表示されない
  • 112675: Emmetの省略記法が.scssファイルで機能しない
  • 113801: タブラップ - 新しい行に折り返すときに、タブが余分なスペースをすべて埋めるべきではない
  • 115814: 統合ターミナルで中国語が入力できない
  • 117350: Home/End、PageUp/PageDownもアクション内を移動すべきか?
  • 117967: コピー + ペーストで自動的に新しいタブでファイルが開く
  • 118210: デバッグコンソールは、メッセージのソース場所が異なる場合にメッセージを折りたたむべきではない
  • 118557: ネストされたフォルダーを持つワークスペースでのfiles.excludeの奇妙な動作
  • 118839: スクリーンリーダーがステータスバーのリモート接続情報を見つけられない
  • 119585: ファイルを閉じるとすべての問題が消える

ありがとうございます

最後に、今月 VS Code に貢献してくださった以下の皆様に、心からの感謝を申し上げます。

問題追跡への貢献者

vscodeへの貢献者

vscode-emmet-helperへの貢献

vscode-eslintへの貢献者

vscode-hexeditorへの貢献

vscode-html-languageserviceへの貢献

vscode-js-debugへの貢献者

vscode-languageserver-nodeへの貢献者

vscode-mock-debugへの貢献

vscode-textmateへの貢献

vscode-vsceへのコントリビューション

debug-adapter-protocolへの貢献者

language-server-protocolへの貢献者

© . This site is unofficial and not affiliated with Microsoft.