ReSharper 2024.1 ヘルプ

コードフラグメントをテンプレートで囲む

サラウンドテンプレートは、式、単一のステートメント、または任意のコードブロックを if...elsetry...catch またはその他のコード構造ですばやく囲むために使用されます。テンプレートが拡張されると、ReSharper はコードをインテリジェントに再フォーマットし、選択を調整し、最後にキャレットを再配置して、便利な位置から入力を続行できるようにします。

ReSharper は、サポートされているすべての言語で多数のサラウンドテンプレートをすぐに使用できますが、特定のケースに合わせてサラウンドテンプレートを作成することもできます。

サラウンドテンプレートを適用する

  1. エディターで、テンプレートで囲むコードブロックを選択します。

  2. 以下のいずれか 1 つを実行します:

    • 選択したコードブロックの左側にサラウンドアクションインジケーター ThemedIcon.SurroundTemplate.Screen.(Gray).png が表示されたら、Alt+Enter を押すかインジケーターをクリックして、アクションリストから目的のサラウンドテンプレートを選択します。

      ReSharper: Surround templates in the action list (Alt+Enter)

      囲む ... に表示されるのは、指定されたニーモニック数字を持つテンプレートのみであることに注意してください。

    • Alt+Control+J を押すか、メインメニューで ReSharper | 編集 | テンプレートで囲む…を選択します。表示される囲むポップアップで、目的のテンプレートを選択するか、テンプレート名の入力を開始してリストを絞り込みます。

    • 選択が完了したら、テンプレート名の入力を開始します。もちろん、最初は選択範囲は消えますが、補完リストでテンプレートを選択して Enter を押すと、テンプレートで囲まれた選択範囲が再び表示されます。

      ReSharper: Surround templates in the completion list
  3. テンプレートに編集可能なパラメーターがある場合(つまり、ユーザー入力が必要な場合)、ReSharper はエディターにホットスポットセッションをデプロイし、最初のパラメーターに入力位置を設定します。次に下記のことを実行できます。

    • ReSharper が現在のパラメーターの値を提案している場合は、UpDown の矢印キーを使用して推奨値のリストを移動するか、目的の値を入力してください。

    • Tab または Enter を押して値を受け入れ、次のパラメーターの入力位置に移動します。これが最後のパラメーターである場合、ホットスポットセッションは完了し、キャレットはセッション用に定義された終了位置に移動します。

    • Shift+Tab を押すと、入力フォーカスが前のパラメーターの入力位置に移動します。

    • Esc を押してホットスポットセッションを終了します。この場合、すべてのセッションパラメーターはデフォルト値で初期化されます。

以下のコード断片を考えてみましょう。

var fileStream = new FileStream("file.txt", FileMode.Open);

ステートメントを using ディレクティブで囲みます。ReSharper は、この操作を合理化するために、対応する事前定義されたテンプレートを便利に提供します。このコードブロックを選択した後に Alt+Control+J を押すと、使用可能なテンプレートのリストが開きます。

ReSharper: Surrounding statments with 'using'

使用するテンプレートを選択するには、次のいずれかを実行できます。

  • マウスでクリックします。

  • 矢印キーを使用して対応するメニュー項目に移動し、Enter を押します。

  • ポップアップが開いたら、usi... と入力し始めます。

  • テンプレートの横に表示されているテンプレートニーモニックディジットに対応するキーを押します。

テンプレートのパラメーターに値を指定できるように、ReSharper はテンプレートコードを挿入し、エディターにホットスポットセッションを配置します。

ReSharper: Surrounding statments with 'using'

最初のパラメーターで必要な使い捨てリソースを指定し、Tab または Enter を押してホットスポットセッションを完了します。キャレットと選択は、テンプレートデザイナーが指定した位置に移動されるため、作成した using ステートメントの内部で入力を続けることができます。

この機能は、次の言語とテクノロジーでサポートされています。

ここで説明する手順と例では、C# の機能の使用について説明します。他の言語の詳細については、言語別 ReSharper セクションの対応するトピックを参照してください。

関連ページ:

入力支援

補完リストでスマートな提案を提供することによってあなたの時間を節約することに加えて、ReSharper はあなたのコードをさらに速く作成して、編集することを可能にする他のタイピング支援機能を提供します。一致する区切り文字を自動挿入:デフォルトでは、開始区切り文字、またはを入力するたびに、対になった文字が自動的に挿入されます (適切な場合)。気が変わって Backspace を押して開始区切り文字を削除すると、その終了ペアも削除されます。一致する終了区切り文字がすでに存在する場合、ReSharper...

ライブ / サラウンドテンプレートを作成する

ライブ / サラウンドテンプレートは、既存のファイルにコードを生成したり、(テンプレート本体にパラメーターがある場合)ステートメントなどのテンプレートコードでコードフラグメントを囲むために使用できます。各ライブテンプレートは、ショートカット(などの短い文字列)によって識別されます。この文字列をエディターに直接入力して、テンプレートを呼び出すことができます。ライブ / サラウンドテンプレートは、単体テスト用のクラス、DTO、スケルトンの作成など、さまざまな用途に使用できます。ライブ / サラウンド...

アクションインジケーターとアクションリスト

ReSharper が Visual Studio テキストエディターに追加する最も注目すべきものの中には、アクションインジケータとアクションリストがあります。これらは、ReSharper でサポートされているすべてのファイル(C#、VB.NET、XML、CSS、JavaScript、ASP.NET など)に表示され、使用可能なアクションについて通知し、適用できます。アクションインジケータ:アクションインジケーターは、設定に応じて、アクションバー、テキストエディターの左マージンおよび / また...

ASP.NET MVC 特有の機能

ReSharper には、一般的な ASP.NET 機能に加えて、ASP.NET MVC での作業をより簡単にサポートする特殊機能があります。構文のハイライト:ASP.NET MVC メソッド呼び出しとパラメーターの特別な構文のハイライト: コード補完:文字列リテラルでアクションとコントローラーを参照するための専用コード補完: ナビゲーションと検索:さまざまなナビゲーション機能がアクションとコントローラーでも機能します。コード生成:使用箇所から新しいコントローラーとアクションを作成する: 最終...

言語による ReSharper: MS ビルド

MSBuild は、アプリケーションを構築するために広く使用されているプラットフォームです。特定の XML タグを使用して、プロジェクトの構築方法や実行方法を定義できます。ReSharper を使用すると、より速く行うことができます。コード検査:あらかじめ定義された要素またはその属性の名前を誤って入力した場合、ReSharper はそのような不一致についてハイライト表示します。まだ定義されていないプロパティを参照しようとすると、ReSharper はそのようなケースも検出します。MSBuild...

言語による ReSharper: Google プロトコルバッファ (プロトブフ)

ReSharper は、Google プロトコルバッファ(Protobuf)バージョン 2.x および 3.0 の .proto ファイルで IDE サポートを提供します。ReSharper は、.proto ファイルの言語構文をハイライトし、エラーを検出してハイライトします。基本コード補完と他のタイピング支援機能はエディターで利用可能です。型と値の宣言に行き、それらの用法を検索し、他のナビゲーション機能を楽しむことができます。Protobuf コードを再フォーマットしてシンボルの名前を変更することも...