ReSharper 2021.1 ヘルプ

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

ReSharper | 編集 | テンプレートで囲む…
Alt+Control+J
ReSharper_SurroundWith

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

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

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

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

    • 選択したコードブロックの左側にサラウンドアクションインジケーター Themed icon surround template screen gray表示されたら、すぐに 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

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

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

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

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

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

ASP.NET MVC 特有の機能 | ReSharper

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

言語による ReSharper: MS ビルド | ReSharper

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

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

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