gulpでSlimのビルド環境作る
本当はいろいろやるつもりだったんですが、nodeの更新でミスってnpmが行方不明になったりして時間食われてしまったので、実際のコード書くには至らなかった(´・ω・`)
とりあえず、gulpでSlimビルドできるようにしたのでメモ
Slimとは
最近Railsでerbの代替として使われ始めている、HTMLテンプレートエンジン。短い記述で書けるので大変ラク。
Hamlから%抜いたやつだと思えばよいです。gem install slim
とかやれば入る。
Slim - A Fast, Lightweight Template Engine for Ruby
すばらしい。
Railsなくても、単にマークアップツールとしての使用は可能なので、これで爆速でHTML書けると思われる。
gulpfile
SlimをHtmlへビルドするには、slimrb -p "slim_file" > "export/file_name.html"
とかやればよさげ。つまり、gulpでコマンド叩ければ良いわけです。
gulpでコマンド叩くには、gulp自体のインストールした上で、gulp-shellを使うのが楽です。npm install --save-dev gulp && npm install --save-dev gulp-shell
で入れる。
gulp.pipe()
中で、shell(["command"])
とかやれば実行できます。
gulp-shellには、fileオブジェクトが渡されます。gulp-shellのドキュメント内にある「shell(commands, options) 」の項目見ると、
A command can be a template which can be interpolated by some file info (e.g. file.path).
とあり、wearefractal/vinyl · GitHubで書かれている通り、file.relative
とかやれば元のファイル名が取得できます。
このファイル名の拡張子"slim"を"html"に変換してあげれば、普通にビルド通ってHTMLが生成されます。