ライブテンプレート変数
ライブテンプレートの略語を展開すると、その変数は値を入力できる入力フィールドとして表示されるか、値に置き換えられます。これらは、変更可能なデフォルト値または関数を使用して計算された値です。
テンプレート内で変数を宣言するには、次の形式を使用します: $VAR$
式では、ドル文字 $
を開閉せずに変数名を使用します(例: lowercaseAndDash(ComponentName)
)。
式を使用して各変数を定義し、式が評価に失敗した場合のデフォルト値を提供します。
この式には、次の構成が含まれる場合があります。
二重引用符で囲まれた文字列定数
ライブテンプレートで定義されている他の変数の名前
可能な引数を持つ事前定義された関数
テンプレート変数を設定する
設定 / 環境設定ダイアログ(Ctrl+Alt+S)で、 に移動します。
変数を設定するテンプレートを選択します。
テンプレートテキストで変数を指定し、変数の編集…をクリックします。
テンプレート変数の編集ダイアログでは、各変数に対して以下の操作を実行できます。
変数名を変更します。
定義済み関数を使用して式を定義します。
式の評価が失敗した場合のデフォルト値を指定します。デフォルト値は二重引用符で囲む必要があります。
式が正常に評価された場合にユーザーに入力を求めるときに変数をスキップするかどうかを指定します。
定義済みのテンプレート変数
JetBrains Rider は、変更できない以下の定義済みライブテンプレート変数をサポートしています。
$END$
は、コードスニペットが完了したときのキャレットの位置を示します。Tab を押して次の変数に移動することはできなくなります。$SELECTION$
はサラウンドテンプレートで使用され、ラップされるコードフラグメントを示します。テンプレートが展開されると、テンプレートで指定されたとおりに選択されたテキストがラップされます。例: コードでEXAMPLE
を選択し、割り当てられた略語で"$SELECTION$"
テンプレートを呼び出すか、Ctrl+Alt+T を押してリストから目的のテンプレートを選択すると、JetBrains Rider は選択を二重引用符で次のようにラップします:"EXAMPLE"
ライブテンプレート変数で使用される関数
ライブテンプレート変数を定義するには、次の関数を使用できます。
機能 | 説明 |
---|---|
| 文字列をキャメルケースに変換します。 例: |
| 文字列の最初の文字を大文字にします。 例: |
| 文字列のすべての文字を大文字にし、パーツ間にアンダースコアを挿入します。 例: |
| 変数の位置でコード補完を呼び出します。 |
| 変数の位置でスマート型補完を呼び出します。 |
| パラメーターとして関数に渡されたすべての文字列の連結を返します。 例: |
| 現在のシステム日付を返します。 デフォルトでは、パラメーターなしで、現在のシステム形式で日付を返します。別の形式を使用するには、SimpleDateFormat(英語) 仕様に従ってパラメーターを指定します。例: |
| テーブルまたはビューの列のリストを返します。 |
| テーブルまたはビューの名前を返します。 |
| 文字列の最初の文字を対応する小文字に置き換えます。 例: |
| 式が return 文で使用されている場合は、デフォルト値を返します。式がエラー・型である場合は、 |
| テンプレートが展開されたときに補完が提案される文字列のリストを返します。 例: |
| 結果を Java 文字列で使用できるように、特殊文字をエスケープします。 例: タブ文字を |
| テンプレートが展開される式の予想される型を返します(割り当ての右側、 Java コンテキストでのみ使用できます。 |
| 現在のファイルの名前とその拡張子を返します。 |
| 現在のファイルの名前を拡張子なしで返します。 |
| 現在のファイルへの絶対パスを返します。 |
| 現在のプロジェクトに相対的な現在のファイルパスを返します。特定のファイルの相対パスを確認するには、ファイルを右クリックして参照をコピーを選択するか、Ctrl+Alt+Shift+C を押します。 |
| パラメーターとして渡された文字列の最初の単語を返します。 例: |
| 現在の行番号を返します。 |
| 文字列を小文字に変換し、セパレータとして n ダッシュを挿入します。例: |
| 例: |
| 文字列を snake_case に変換します。例: |
| 区切り文字としてスペースを含む指定された文字列を返します。例: |
| パラメーターとして渡された文字列内のスペースをアンダースコアに置き換えます。例: |
| 指定された区切り文字までの部分文字列を返します。これは、テストファイル名の拡張子を削除できます。例: component-test.js という名前のファイルで使用されている場合、 |
| 現在のシステム時刻を返します。 デフォルトでは、パラメーターなしで、現在のシステム形式で時刻を返します。別の形式を使用するには、SimpleDateFormat(英語) 仕様に従ってパラメーターを指定します。例: |
| 下線付きの文字列(snake_case など)を camelCase に変換します。例: |
| 文字列のアンダースコアをスペースに変換します。例: |
| 現在のユーザーの名前を返します。 |
サンプル
デフォルトの a-component
と同様に、Angular コンポーネントの ngcomp
テンプレートを作成しましょう。テンプレートには 3 つの変数があります。
最初の
$ComponentName$
は、新しいコンポーネントクラスの名前のプレースホルダーになります。2 番目の
$selector$
は、コンポーネントセレクターの名前になります。3 番目の
$END$
は、テンプレートが展開され、$ComponentName$ および$selector$
プレースホルダーが入力された後の、最後にキャレットが配置される場所を示します。
エディターで、テンプレートで使用するコードを選択し、Ctrl+Shift+A を押して、「ライブテンプレートとして保存…」アクションを呼び出します。
テンプレートを呼び出すために使用する略語(
ngcomp
など)を入力し、テンプレートの説明(新しい Angular コンポーネントなど)を追加します。テンプレートに変数を追加します。
SearchComponent
を$ComponentName$
に置き換えます。Component({})
内にselector: $selector$,
を追加します。$END$
をngOnInit(){}
に追加します。
Angular スタイルガイド(英語)によると、セレクター名は通常、コンポーネント名の破線バージョンであるため、最初にコンポーネント名を指定するのが理にかなっています。ただし、セレクターはコードの最初にあります。
この問題を解決するには、変数の編集…をクリックし、矢印アイコンを使用して変数の順序を調整します。これで、
ComponentName
が最初に来て、テンプレートの展開時にキャレットが最初にそれに移動します。クラス名のみを指定し、クラス名の変換によってセレクター名を自動的に入力できると便利です。これを行うには、
selector
変数の横にある式フィールドをクリックし、リストからlowercaseAndDash
関数を選択して、パラメーターとしてComponentName
と入力します。オプション:
selector
の隣に定義済みはスキップを選択できます。この場合、コンポーネント名を編集して Enter を押すと、キャレットは$selector$
ではなく$END$
の位置に移動します。
新しいテンプレートの動作を見てみましょう。
関連ページ:
.NET 固有のテンプレート
このセクションには、C#、VB.NET、ASP.NET、Razor、XAML コードの作成に使用できる .NET 固有のコードテンプレートのドキュメントが含まれています。テンプレートの種類、テンプレートスコープ、テンプレート変数、テンプレートマクロ、テンプレートを適用するライブテンプレートを使用してソースコードを作成する、コードフラグメントをテンプレートで囲む、テンプレートからファイルを作成する、テンプレートを作成および編集するライブ / サラウンドテンプレートを作成する、ファイルテンプレートを...
ライブテンプレートを共有する
JetBrains Rider はカスタムライブテンプレートグループの定義と事前定義済みテンプレートグループに追加されたテンプレートを自動的に生成された XML 設定ファイルに保存します。カスタムグループの場合、ファイルには、グループに含まれるすべてのテンプレートの定義が含まれます。変更済みの定義済みグループの場合、ファイルには追加(または変更)されたライブテンプレートの定義のみが含まれます。ライブテンプレートグループ設定ファイルは、IDE 構成ディレクトリの templates ディレクトリに格納...