VS Codeのエージェントモードを拡張するには、を試してください!

UX ガイドライン

これらのガイドラインは、VS Code のネイティブインターフェースとパターンにシームレスに統合する拡張機能を作成するためのベストプラクティスを網羅しています。これらのガイドラインでは、以下のような内容を見つけることができます。

  • VS Code の全体的な UI アーキテクチャと要素の概要
  • 拡張機能によって提供される UI の推奨事項と例
  • 関連するガイドとサンプルのリンク

詳細に入る前に、VS Code のさまざまなアーキテクチャ UI 部分がどのように組み合わされ、拡張機能がどのように、どこに貢献できるかを理解することが重要です。

コンテナ

VS Code のインターフェースは、大まかに2つの主要な概念に分けられます: コンテナアイテムです。一般的に、コンテナは、1つ以上のアイテムをレンダリングするVS Codeインターフェースのより大きなセクションと考えることができます。

Overview of Visual Studio Code containers elements

アクティビティバー

アクティビティバーは、VS Code の主要なナビゲーションサーフェスです。拡張機能は、ビューコンテナとして機能し、プライマリサイドバーにビューをレンダリングするアイテムをアクティビティバーに提供できます。

プライマリサイドバー

プライマリサイドバーは、1つ以上のビューをレンダリングします。アクティビティバーとプライマリサイドバーは密接に結合しています。提供されたアクティビティバーアイテム(ビューコンテナと読み替えてください)をクリックすると、プライマリサイドバーが開き、そのビューコンテナに関連付けられた1つ以上のビューがレンダリングされます。具体的な例としては、エクスプローラーがあります。エクスプローラーアイテムをクリックすると、プライマリサイドバーが開き、フォルダー、タイムライン、アウトラインのビューが表示されます。

セカンダリサイドバー

セカンダリサイドバーも、ビューを持つビューコンテナをレンダリングするサーフェスとして機能します。ユーザーは、ターミナルや問題ビューなどのビューをセカンダリサイドバーにドラッグして、レイアウトをカスタマイズできます。

エディター

エディター領域には、1つ以上のエディターグループが含まれます。拡張機能は、エディター領域で開くカスタムエディターまたはWebviewを提供できます。また、エディターツールバーに追加のアイコンボタンを公開するためにエディターアクションを提供することもできます。

パネル

パネルもビューコンテナを公開するための別の領域です。デフォルトでは、ターミナル、問題、出力などのビューは、パネル内で一度に1つのタブで表示できます。ユーザーは、エディターで行うのと同じように、ビューを分割レイアウトにドラッグすることもできます。さらに、拡張機能は、アクティビティバー/プライマリサイドバーではなく、パネルに特化してビューコンテナを追加することも選択できます。

ステータスバー

ステータスバーは、ワークスペースおよび現在アクティブなファイルに関するコンテキスト情報を提供します。これは、2つのグループのステータスバーアイテムをレンダリングします。

アイテム

拡張機能は、上記のさまざまなコンテナにアイテムを追加できます。

Overview of Visual Studio Code containers elements

ビュー

ビューは、ツリービューウェルカムビュー、またはWebviewビューの形式で提供でき、インターフェースの他の領域にドラッグして移動できます。

ビューツールバー

拡張機能は、ビューツールバーにボタンとして表示されるビュー固有のアクションを公開できます。

ビューコンテナ全体にスコープされたアクションも、サイドバーツールバーで公開できます。

エディターツールバー

拡張機能は、エディターにスコープされたエディターアクションをエディターツールバーに直接提供できます。

パネルツールバー

パネルツールバーは、現在選択されているビューにスコープされたオプションを公開できます。たとえば、ターミナルビューは、新しいターミナルを追加したり、ビューレイアウトを分割したりするアクションなどを公開します。問題ビューに切り替えると、異なる一連のアクションが公開されます。

ステータスバーアイテム

左側では、ステータスバーアイテムはワークスペース全体にスコープされます。右側では、アイテムはアクティブなファイルにスコープされます。

共通 UI 要素

コマンドパレット

拡張機能は、コマンドパレットに表示されるコマンドを提供して、特定の機能をすばやく実行できます。

Overview of the Command Palette element

クイックピック

クイックピックは、ユーザーの入力をいくつかの異なる方法で取得します。単一選択、複数選択、または自由形式のテキスト入力を要求できます。

Overview of the Quick Pick element

通知

通知は、情報、警告、エラーメッセージをユーザーに伝えるために使用されます。また、進行状況を示すためにも使用できます。

Overview of the Notification element

Webview

Webviewは、VS Codeの「ネイティブ」APIを超えるユースケースのために、カスタムコンテンツと機能を表示するために使用できます。

Overview of the Webview element

コンテキストメニュー

コマンドパレットの一貫した場所とは対照的に、コンテキストメニューは、特定の場所からアクションを実行したり、何かを設定したりする機能をユーザーに提供します。

Overview of the Context Menu element

ウォークスルー

チュートリアルは、豊富なコンテンツを特徴とする複数ステップのチェックリストを通じて、ユーザーを拡張機能にオンボーディングするための一貫したエクスペリエンスを提供します。

Overview of the Walkthrough API

設定

設定を使用すると、ユーザーは拡張機能に関連するオプションを構成できます。

Overview of the Settings page