Visual Studio エディターでは、その機能に追加する拡張機能がサポートされています。 たとえば、次のような拡張機能があります。
- 既存の言語でコードを挿入および変更します。
- CodeLens などの特定のエディター機能の動作をカスタマイズします。
Visual Studio エディターは、通常、任意の種類のテキスト ファイル (ドキュメントと呼ばれます) を編集する機能を指します。 編集用に個々のファイルを開くことができます。 開いているエディター ウィンドウは、テキスト ビューと呼ばれます。
エディター オブジェクト モデルの詳細については、「 エディターの拡張機能の概念」を参照してください。
次のセクションでは、 VisualStudio.Extensibility
がサポートする高度なエディター拡張シナリオの概要を示します。 これらのシナリオはそれぞれ、概念と API が豊富です。 個別のより詳細なセクションには、API の詳細な説明とその使用方法を示すリンクが含まれています。
エディターでテキストを読み取り、変更を観察する
Visual Studio エディターの最も基本的な機能拡張ポイントは、エディターでテキストを読み取るか、テキストを編集してテキストを操作する方法です。 これらのシナリオは、エディター ベースの拡張機能の中核です。 たとえば、警告やエラーなどの診断情報を提供するには、拡張機能でエディターでコードを読み取り、解釈する必要があります。 拡張機能では、エディター内のテキストがいつ変更されたか、新しいファイルが開かれたか、開いているファイルが閉じられたかどうかを検出する方法も必要です。
VisualStudio.Extensibility
を使用してテキストを読み取り、テキストの変更を追跡する方法のチュートリアルについては、「エディターでテキストを操作する」を参照してください。
エディターでテキストを編集する
テキストの自動挿入 (GUID の自動作成や挿入など) によって編集の生産性を向上させる拡張機能には、挿入する場所と内容を定義するための API が必要です。
VisualStudio.Extensibility
拡張機能モデルでは、プロセス外で非同期的にコードが実行されるため、テキスト編集拡張機能を開発するときに特定の原則に準拠する必要があります。
VisualStudio.Extensibility
を使用してテキストを編集する方法のチュートリアルについては、「エディターでテキストを変更する」を参照してください。
エディター機能を拡張する
拡張機能は、コンテキスト情報を提供するエディターの多くの機能にプラグインすることもできます。 次のセクションでは、拡張できるエディターのさまざまな機能の概要を示します。
テキスト ビューの余白
拡張機能は、Visual Studio エディターに新しいテキスト ビューの余白を提供できます。 テキスト ビューの余白は、四辺のいずれかのテキスト ビューにアタッチされた四角形の UI コントロールです。 これらの UI コントロールは、一目で詳細情報を提供します。これにより、開発者はエディターで作業するときに生産性を維持できます。 Visual Studio エディターで最も一般的な機能の多くは、ズーム コントロール、ブレークポイント インジケーター、行番号インジケーターなどのテキスト ビューの余白を使用します。
拡張機能を使用してテキスト ビューの余白をカスタマイズする方法のチュートリアルについては、「 Visual Studio エディターを新しい余白で拡張する」を参照してください。
CodeLensの
拡張機能は、Visual Studio エディターに新しい CodeLenses を提供できます。 CodeLens は、操作可能なコンテキスト情報を提供するためにテキスト行の上に表示される視覚的なインジケーターです。 たとえば、コード要素への参照の数、最後の単体テスト実行の結果、単体テストを実行またはデバッグするためのアクションなどがあります。 一般的な CodeLenses には、コード参照 CodeLens が含まれています。CodeLens は、特定のコード ブロックを参照するコードのさまざまな部分に関する情報を提供します。 コード履歴 CodeLens は、ソース管理でコードの特定のブロックがどのように変更されたかに関する情報を提供します。
独自の CodeLens に拡張機能を提供する方法のチュートリアルについては、「 Visual Studio エディターを新しい CodeLens で拡張する」を参照してください。
タガー
拡張機能は、Visual Studio エディターに新しいタガーを提供できます。 タガーは、データをテキストの範囲に関連付けるために使用されます。 その他の Visual Studio 機能 ( CodeLens や 分類など) では、このデータが使用されます。
拡張機能で独自のタガーを提供する方法のチュートリアルについては、「 Visual Studio エディターを新しいタガーで拡張する」を参照してください。
関連コンテンツ
- エディターの 概念におけるエディターのインターフェイスと種類について説明します。
- DocumentSelectorSample の単純なエディター ベースの拡張機能のサンプル コードを確認します。
- 上級ユーザーは、 エディター RPC のサポートについて知りたい場合があります。