チュートリアル: 変数と関数を含むライブテンプレートを作成する
このチュートリアルでは、 変数と 関数を含むシンプルな ライブテンプレートを作成して使用する方法を学習します。
サンプルプロジェクトとして Spring ペットクリニック(英語)アプリケーションを使用します。 作成されるライブテンプレートは以下のようになります。
Petクラスを拡張する新しい Java クラスを作成します。値がリストから選択される、
foodという文字列属性を定義します。メッセージを出力する
petFood()メソッドを実装します。
まず、IntelliJ IDEA で Spring PetClinic アプリケーションを開きます。 ローカルにインストールされていない場合は、GitHub からアプリケーションのクローンを作成してください。
サンプルプロジェクトのクローンを作成する
アプリケーションのソースコードは、GitHub の https://github.com/spring-projects/spring-petclinic でホストされています。
メインメニューで へ移動します。
リポジトリの URL を指定して、 クローン をクリックします。
必要に応じて、クローンプロジェクトを新しいウィンドウで開くことに同意します。
それでは、新しいライブテンプレートを作成しましょう。 テンプレート内で変数と関数がどのように機能するかを示すために、テンプレートテキストに以下の変数を追加します。
$ClassName$:Petクラスを拡張する新しいクラスの名前。 定義済みの値はないため、テンプレートを挿入した後、IntelliJ IDEA はクラス名の入力を求めます。$Food$:3 つの可能な値のリスト:meat、grass、およびfruit。enum()関数を使用して、このリストを定義します。 テンプレートを挿入すると、IntelliJ IDEA がエディターで値のいずれかを選択するよう求めます。$PetName$: クラス名を小文字で始めることで、文中で使用できるようになります。 これは、decapitalize()関数を別の変数に適用する方法を示しています。
変数を含むライブテンプレートを作成する
Ctrl+Alt+S を押して設定を開き、 を選択します。
Java グループを選択し、
をクリックして、 ライブテンプレート を選択します。
略語 フィールドで、テンプレートの展開に使用される文字を指定します。 例:
pet。テンプレートテキスト フィールドに、次のテンプレートを貼り付けます。
type $TypeName$ struct { food string } func (p *$TypeName$) PetFood() { food := "$Food$" println("The $typeName$ eats " + food) }class $ClassName$ extends Pet { String food = "$Food$"; public void petFood() { System.out.println("The $PetName$ eats " + food); } }
適用可能なコンテキストがありません 警告がある場合は、 定義 をクリックし、 Java を選択して、ライブテンプレートをこのコンテキストでのみ使用できるようにします。
変数の編集(E)… をクリックし、 テンプレート変数の編集 ダイアログで変数を構成します。
$ClassName$: 式 フィールドは空のままにしてください。 テンプレートを使用する場合、IntelliJ IDEA はテンプレートを挿入した後にユーザーにクラス名の入力を求めます。$Food$: 式 フィールドに「enum("meat","grass", "fruit")」と入力します。 テンプレートを使用すると、IntelliJ IDEA はエディターにこれらの値のリストを表示し、そこから選択できるようになります。$PetName$: 式 フィールドに「decapitalize (ClassName)」と入力します。 この関数は、$ClassName$変数値の最初の文字を小文字に変換します。値は自動的に導出され、ユーザー入力を必要としないため、 定義済みはスキップ を選択します。

作成したテンプレートを使用する
プロジェクト ツールウィンドウで、
所有者パッケージに移動し、 新しい Java クラスを作成します。 クラス名としてHorseを指定します。エディターで、テンプレートの省略形 (この例では
pet) の入力を開始し、補完ドロップダウンから選択します。クラスの名前を変数の値として入力します:
Horse。 Tab を押して、次の変数に移動します。キーボードの矢印を使用して、
food文字列の値としてgrassを選択し、 Enter を押します。