ライブテンプレート変数
ライブテンプレートの省略形を展開すると、その変数は値を入力できる入力フィールドとして表示されるか、値に置き換えられます。 これらは、変更可能なデフォルト値、または 関数を使用して計算された値である場合があります。
テンプレート内で変数を宣言するには、次の形式を使用します: $VAR$
式では、ドル文字 $ を開閉せずに変数名を使用します(例: lowercaseAndDash(ComponentName))。
式を使用して各変数を定義し、式が評価に失敗した場合のデフォルト値を指定します。
この式には、次の構成が含まれる場合があります:
二重引用符で囲まれた文字列定数
ライブテンプレートで定義されている他の変数の名前
可能な引数を持つ 定義済み関数
テンプレート変数を設定する
設定 ダイアログ(Ctrl+Alt+S )で、 に移動します。
変数を設定するテンプレートを選択します。
テンプレートテキストで変数を指定し、 Edit Variables… をクリックします。
テンプレート変数の編集 ダイアログでは、各変数に対して以下の操作を実行できます。
変数名を変更します。
定義済み関数を使用して式を定義します。
式の評価が失敗した場合のデフォルト値を指定します。 デフォルト値は二重引用符で囲む必要があります。
式が正常に評価された場合にユーザーに入力を求めるときに変数をスキップするかどうかを指定します。

定義済みのテンプレート変数
PyCharm は、変更できない以下の定義済みライブテンプレート変数をサポートしています:
$END$はコードスニペットが完了したときのキャレットの位置を示し、 Tab を押して次の変数にジャンプすることはできなくなります。$SELECTION$は囲みテンプレートで使用され、ラップされるコードフラグメントを示します。 テンプレートが展開されると、テンプレートで指定されたとおりに選択されたテキストがラップされます。 例として、コード内でEXAMPLEを選択し、割り当て済みの略語で"$SELECTION$"テンプレートを呼び出すか、 Ctrl+Alt+T を押してリストから目的のテンプレートを選択すると、PyCharmは次のように選択部分を二重引用符でラップします:"EXAMPLE"。
ライブテンプレート変数で使用される関数
ライブテンプレート変数を定義するには、次の関数を使用できます:
関数 | 説明 |
|---|---|
| 現在の言語コンテキストでのブロックコメントの終わりを示す文字を返します。 |
| 現在の言語コンテキストでのブロックコメントの開始を示す文字を返します。 |
| 文字列を キャメルケースに変換します。 例: |
| 文字列の最初の文字を大文字にします。 例: |
| 文字列のすべての文字を大文字にし、パーツ間にアンダースコアを挿入します。 例: |
| システムクリップボードの内容を返します。 |
|
|
| 現在の言語コンテキストでコメントの終わりを示す文字を返します。 行コメントのある言語の場合、戻り値は空です。 |
| 現在の言語コンテキストでコメントの開始を示す文字を返します。 行コメントのある言語の場合、戻り値は lineCommentStart() と同じように行コメントの始まりです。 |
| 変数の位置で コード補完を呼び出します。 |
| 変数の位置で スマート型補完を呼び出します。 |
| パラメーターとして関数に渡されたすべての文字列を連結した結果を返します。 例: |
| 現在のシステム日付を返します。 デフォルトでは、パラメーターなしで、現在のシステム形式で日付を返します。 別の形式を使用するには、 SimpleDateFormat(英語) 仕様に従ってパラメーターを指定します。 例: |
| テーブルまたはビューの列のリストを返します。 |
| テーブルまたはビューの名前を返します。 |
| 文字列の最初の文字を対応する小文字に置き換えます。 例: |
| 式が return 文で使用されている場合は、デフォルト値を返します。 式がエラー・型である場合は、 |
| 利用可能な Django ブロックの補完ポップアップを表示します。 |
| 使用可能な Django フィルターの補完ポップアップを表示します。 |
| 利用可能な Django テンプレートタグの comFpletion ポップアップを表示します |
| 利用可能な Django 変数の補完ポップアップを表示します。 |
| テンプレートが展開されたときに補完候補として提案される文字列のリストを返します。 例: |
| 結果を Java 文字列で使用できるように特殊文字をエスケープします。 例: タブ文字を |
| テンプレートが展開される式の予想される型を返します(割り当ての右側、 Java コンテキストでのみ使用できます。 |
| 現在のファイルの名前とその拡張子を返します。 |
| 現在のファイルの名前を拡張子なしで返します。 |
| 現在のファイルへの絶対パスを返します。 |
| 現在のプロジェクトに相対的な現在のファイルパスを返します。 特定のファイルの相対パスを確認するには、ファイルを右クリックして 参照をコピー を選択するか、 Ctrl+Alt+Shift+C を押します。 |
| パラメーターとして渡された文字列の最初の単語を返します。 例: |
| 文字列として渡された Groovy スクリプトを実行します。 最初の引数は、スクリプトのテキストまたはスクリプトを含むファイルへのパスを含む文字列です。 この関数は、他のオプションの引数を 次の例は、指定された文字列 (別の変数
groovyScript("_1.toUpperCase()", MyVar)
次の例は、選択したテキストを単語に分割し、番号付きリストとして表示する
groovyScript("def result = ''; _1.split().eachWithIndex { item, index -> result = result + index.next() + '. ' + item + System.lineSeparator() }; return result;", SELECTION)
最後の例では、テキストを選択して Ctrl+Alt+T (囲む) を押して適用する必要があることを意味する |
| 現在の JavaScript 配列の名前を返します。 |
| 現在の JavaScript クラスの名前を返します。 |
| 現在の JavaScript コンポーネントの型を返します。 |
| モジュールの名前に基づいて、 |
| 現在の JavaScript メソッドの名前を返します。 |
| 現在の JavaScript クラスの完全な名前を返します。 |
| Boolean パラメーターは、現在のコンテキストで定数が許可されるかどうかを決定します。 パラメーターが指定されていない場合は、定数が許可されます。 テンプレートが展開されると、TypeScript および ES6 の場合は |
| ファイル名に基づいて、タイプ |
| 最も一般的に使用される名前( |
| 変数の命名規則を参照するコードスタイル設定に従って、変数の型と初期化式に基づいて、変数の推奨名を返します。 例として、反復内の要素を保持する変数であれば、PyCharmは反復されるコンテナー名を考慮して、最も適切な名前を推測します。 |
| 現在の言語コンテキストでの行コメントの開始を示す文字を返します。 |
| 現在の行番号を返します。 |
| 文字列を小文字に変換し、セパレータとして n ダッシュを挿入します。 例: |
| 現在の Python クラス(テンプレートが展開されているクラス)の名前を返します。 |
| 現在の Python 関数の名前を返します。 |
| 反復可能変数のスコープ固有の補完を有効にします。 ![]() |
|
例えば、 |
| 関数またはメソッドにパラメーターを追加するときにパラメーターの詳細を返します。 使用例 ![]() |
| 文字列を snake_case に変換します。 例えば、 |
| 区切り文字としてスペースを含む指定された文字列を返します。 例: |
| パラメーターとして渡された文字列内のスペースをアンダースコアに置き換えます。 例: |
| 指定された区切り文字までの部分文字列を返します。 これは、テストファイル名の拡張子を削除できます。 例: component-test.js という名前のファイルで使用されている場合、 |
| 現在のシステム時刻を返します。 デフォルトでは、パラメーターなしで、現在のシステム形式で時刻を返します。 別の形式を使用するには、 SimpleDateFormat(英語) 仕様に従ってパラメーターを指定します。 例: |
| パラメーターとして渡された変数の型を返します。 Java コンテキストでのみ使用できます。 |
| 下線付きの文字列(snake_case など )を camelCase に変換します。 例: |
| 文字列のアンダースコアをスペースに変換します。 例: |
| 現在のユーザーの名前を返します。 |
サンプル
変数と 関数を使用して簡単なライブテンプレートを作成しましょう。 定義済みのクラス変数とメソッドを使用して Python クラスを作成します。 テンプレートには、次の 3 つの変数が含まれます。
$ClassName$:新しいクラスの名前$Food$: 3 つの可能な値のリスト: 「肉」「草」「蜂蜜」$AnimalName$: 文中で使用できるように小文字で始まるクラス名
変数を使用してテンプレートを作成する
Ctrl+Alt+S を押して設定を開き、 を選択します。
Python グループを選択し、
をクリックして、 ライブテンプレート を選択します。
略語 フィールドで、テンプレートの展開に使用される文字を指定します。 例:
animal。テンプレートテキスト フィールドに、次のテンプレートを貼り付けます。
class $ClassName$(Animal): food = "$Food$" def animal_food(self): print(f"The $AnimalName$ eats {self.food}.")
No applicable contexts 警告が表示された場合は、 定義 をクリックして、このライブテンプレートを使用可能にするコンテキストを選択します。 例: Python:

Edit Variables… をクリックし、 Edit Template Variables ダイアログで変数を構成します。
$ClassName$は変更されていないため、ユーザーがこのテンプレートを適用するときに値を入力する必要があります。$Food$: 式 フィールドに、enum("meat","grass","honey")と入力します。 この関数を使用すると、ユーザーがこのテンプレートを適用するときに、事前定義された値の 1 つを選択できます。$AnimalName$: 式 フィールドに、decapitalize(ClassName)と入力します。 この関数は、ClassName変数の値を受け取り、その最初の文字を小文字に変換します。 ユーザーに入力を求める必要がないため、 定義済みはスキップ を選択します。

ライブテンプレートを使用する
ライブテンプレートの名前の入力を開始します(この例では
animal)。変数の値(この例ではクラス名)を入力し、 Tab を押して次の変数に移動します。
キーボードの矢印を使用して、
food文字列の値の 1 つを選択します。

