コードテンプレート

ReSharperは複数の種類のコードテンプレートをご提供し、一般的なコードの構文を速く書いたり、既存のコードをブロックで囲んだり、新しいファイルを作成したりするのをご支援いたします。 あなたのコーディング習慣やコードベースに合わせた独自のテンプレートを作成できます。

C#でのReSharperライブテンプレート

Live templates(ライブテンプレート)

ライブテンプレートは、Visual Studioのコードスニペットをよりインテリジェントにしたものです。

ライブテンプレートを適用するには、テンプレートの略語を入力し、補完リストでTabを押してテンプレートを展開してください。 その後、EnterまたはTabを使用してテンプレートのパラメータ間を移動します。 (Visual Studioのネイティブコード補完を使用する場合は、Ctrl+E、Lを押して、使用可能なライブテンプレートの一覧を表示してからテンプレートを展開します)。

コードスニペットとは異なり、ReSharperはコンテキストから、どの変数、フィールド、型が対応するテンプレートで使用できるかを予測できます。 ほとんどの場合、自分で何かを入力する必要はありません。 候補値の一覧から選択するだけです。 ちなみに、ReSharper では C# 用の Visual Studio コードスニペットをインポートしてライブテンプレートとして使用できます。

ReSharperは、ほとんどのサポート対象言語や技術に対応した、合計170種類以上の事前定義済みライブテンプレートをご提供しております。 このようなテンプレートには、コレクション全体の反復処理、アサーションメソッドの書き込み、新しい配列の作成、値の出力、LINQクエリのコーディング、自動プロパティの生成などがあります。

C#でのReSharper取り囲みテンプレート

Surround templates(取り囲みテンプレート)

取り囲みテンプレートは、式、単一のステートメント、または任意のコードブロックを、if...elsetry...catchまたはその他のコード構文ですばやく囲むために使用します。 ReSharperはコードをインテリジェントに再フォーマットし、選択範囲の調整やキャレットの位置変更を行い、テンプレートを適用してから即座に入力を続けられるようにします。

コードの一部を囲むには、該当部分を選択してからCtrl+E、Uを押すと、使用可能な取り囲みテンプレートが専用のポップアップで表示されます。 または、選択時にAlt+Enterを押すと、適切な取り囲みテンプレートだけでなく、コードフォーマッタやコンテキストアクションのような追加機能も含むコンテキストメニューが表示されます。

ASP.NETでのReSharperファイルテンプレート

File templates(ファイルテンプレート)

ReSharperでは、事前定義済みのコードの断片を含む、新しいファイルや新しいファイルセットを追加できます。 例えば、クラスの宣言、インターフェース、構造体の宣言などから新しいファイルを作成できます。 ファイルテンプレートの一覧から選択するには、テキストエディタを離れずにCtrl+Alt+Insを押してください。

複数のファイルを作成するファイルテンプレートの場合、ReSharperはこれらのファイルをソリューション内の指定箇所に追加し、それらの内容を同期されたパラメータを使用して初期化します。

C#でのReSharperの後置テンプレート

Postfix templates(後置テンプレート)

後置テンプレートを使うと、入力済みの式を戻ることなく変換するのに役立ちます。 例えば、現在の式を、ifwhilelockusingで囲み、returnyield returnawaitを現在の式の前に追加し、コレクション全体を反復し、switch文を生成し、式を特定の型にキャストしたり、式にフィールドやプロパティを導入したりもできます。

ReSharperによるソーステンプレートの適用

Source templates(ソーステンプレート、C#のみ)

プロジェクトのコード内の任意の場所で拡張メソッドとして作成可能な、カスタムソーステンプレートを使用して、後置テンプレートのリストを簡単に拡張できます。 ソーステンプレートは、複数のプロジェクト固有の型や任意の標準型用にJetBrains.Annotationsフレームワークの[SourceTemplate]属性を付けた公開拡張メソッドとして定義できます。

ソーステンプレートの使用例を示すため、double値がPiと等しいかどうかをチェックして、キャレットを次行のユニットテストに移動するのに役立つ、簡単なテンプレートを作ってみます。

これで、doubleを評価する任意の式の後にドットを入力して、作成したテンプレートを呼び出せるようになりました。

補完リストでテンプレートを選択すると、該当する式がテンプレートコードに置換され、キャレットがテンプレートで定められた位置に移動します。

テンプレートエディタ

テンプレートのカスタマイズ、設定、共有

独自のテンプレートを作成したり、ReSharperにバンドルされたテンプレートを変更したりできます。

テンプレートを編集できるよう、ReSharperはテンプレートエディタをご提供しております。これは、独立したVisual Studioコードペインで開き、コードとテンプレートの編集環境を切り替え、実環境でのテンプレートのテストを高速化できます。

テンプレートエクスプローラウィンドウ

テンプレートの管理には、ReSharper | Tools | Templates Explorerを選んで呼び出せるTemplates Explorerが使えます。

定義したテンプレートは、テンプレートエクスプローラを使用する2種類の方法で、チームメンバー間で簡単に共有できます。

チームメンバーとテンプレートを共有するもう一つの方法は、ReSharperの設定でコードテンプレートとして保存される、設定レイヤーの仕組みを使用する方法です。 同じ共有ソリューションで作業する他の開発者がテンプレートを使用できるようにするため、 チームで共有する設定レイヤーで新しいコードテンプレートを作成したり、既存のテンプレートを チームで共有する設定レイヤーにコピーしたりできます。

コードテンプレートをファイルにエクスポートしたり、他の開発者に配布または共有したりすることもできます。 そのため、他の開発者が作成または共有したコードテンプレートをインポートすることができます。

ショートカットに関する注意

このページに記載されたキーボードショートカットはすべて、ReSharperデフォルトの「Visual Studio」キーマップのものです。 ReSharperの2種類のキーマップの詳細は、ReSharperのドキュメントをご覧ください。