2024-05-15 bouzuya/tempura
bouzuya/tempura をつくってみた。完成しなさそう。
Rust で書かれたファイルシステム用のテンプレートエンジン。 {{name}}.txt
に Hello,{{name}}
と書いておいて、 {"name":"World"}
を渡すと World.txt
に Hello,World
という出力がされる……そんな感じ。ファイル名やディレクトリ名にもテンプレートの変数が使える、というのが「ファイルシステム用」の意味するところ。
echo '{"name":"World"}' | tempura tmpl
のようなコマンドになる予定。引数はテンプレート。標準入力でデータを受け取る。出力先はカレントディレクトリ。オプションも機能も最小限にする。
以前に似たようなものを実装していて bouzuya/rust-sandbox の b の new サブコマンドがそう。これを外に切り出したもの……になる予定。
最初は README に example 書いておいて手で試せばいいやと思っていたけど、 crates:assert_cmd や crates:tempdir を使ってテストをできるようにした。面倒でも書いたほうがいいな、テスト。
今日のコミット。