ためのツールを作りました。記載されたテンプレートに従ってファイルを生成するものとなっています。具体的には次のようなテンプレートです。一式を吐き出すようなテンプレートになっています。ファイルを定義します。つのテンプレートで複数のファイルを生成することができるため、分類毎にテンプレートファイルを纏められるようになっています。以外はテンプレートとして扱われないため、コメントやメモなどを残しておけるのも地味に便利かもしれません。ドキュメントとしても機能させることができそうです。ファイルを開いた状態です。コマンドに食わせるとテンプレートがいい感じに解釈されて、展開される仕組みとなっています。作成することが多いです。ファイルなど、一回作ったものをコピペでもいいですが、ミスも増えるし数が多いと面倒なので。ものだと、必要最低限のものだけを作るのでそれほど手間ではありませんが、そろそろ使い回しがしやすいものを作っておこうかなぁと思ってガッと実装した次第です。要件として満たしたかったのは、以下のとおりです。テンプレートで複数のファイルが出力できる必要最低限のテンプレート構文を持つよく使うであろう関数を用意しておくそれぞれ、簡単にではありますが後述します。使ってもほとんど同様です。してインストールすることを推奨します。インストールするだけで使えないと不便なので前述した方法がオススメです。サブコマンドを使うことで、テンプレート用のディレクトリと初期テンプレートを生成することができます。いうディレクトリになります。書かれたテンプレートファイルはこのディレクトリへ入れておく必要があります。参照いただけると嬉しいです。この記事では基本的な使い方と、お気に入りの機能について紹介します。いうテンプレートを使用しているデモです。以下のユーザ入力を受けて、ファイルを出力します。入力は特に制限はありません。入力した内容がクラス名になったり、ファイル名になったりします。基本的にはこの値を使って、バリエーションを生成するイメージです。いう変数として渡されます。サブコマンドを使うのが便利です。使われるような構文を採用しました。bazとして出力されます。ここらへんは馴染み深い方も多いかと思います。入力された値の加工をしたい場合は関数を使用することができます。いう値の場合FooBarといった具合に展開されます。シェルのパイプのように次々に処理を適用するような仕組みをとっています。}}最後のパイプ処理の結果が展開されます。つの関数を提供しています。これはテンプレートファイルからの相対パスを、出力先ファイルからの相対パスへ変換する機能を持ちます。したい場合などに重宝します。次のような前提を置いた場合。ように一段深くなった場合は、相対パスが一つずれてしまうことになります。関数を使うと、テンプレートファイルからの相対パスで自動的に解決することができます。相対パスで書くと../../../utilities/stringsまたは../../../../utilities/stringsのように解決されます。個人的に地味に便利だなと感じている機能です。さいごに簡単ではありますが、基本機能とモチベーションについて紹介しました。実装するにあたり、大量のコンポーネントを実装する必要があったのが発端で作成しました。こちらの作業にお正月を持っていかれたため、本題の方の進捗は皆無で終わりました。