このブログはoctpressなので記事はmarkdownで書いているが、一時期静的サイトジェネレータのnanocを使ってたことがありその時にHamlで書いていたのだが
どうにも使いにくい印象があった。
slimは高速に書くことができるということなので試してみる。middlemanはSlimで書くことができるのだがoctpressは書くことができるのだろうか。
試した結論からいうとMarkdownと同じぐらいいやそれ以上に簡単!
Slimeの特徴をあげると
- Ruby製のテンプレートエンジン
- 高速、軽量
- タブによりHTMLのタグ構造を表すので、必要最低限のコードだけで良いのでコーディング時間が減る
- 上記と関係があるがタブにより構造を表すのでインデント必須
- デフォルトでHTMLエスケープをするので安全
- erbに比べて、スピードが速い
Slimの環境
Rubyのgemなので、Rubyの環境が整っていればgem install slim
でさくっとインストールできる。
1 2 3 4 5 6 |
|
では通常どおりHTMLを書くと。。。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
これをSlimで書くとこうなる
1 2 3 4 5 6 7 8 9 10 11 |
|
slimからhtmlへの変換は以下のコマンドを実行
1
|
|
変換後のコードは以下のようになる
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
Slim文法
- DOCTYPE宣言は
doctype html
と書く - HTMLから<, >, /> を除去。タグ名をそのまま書く
- id名やclass名は、CSSのように#, .が使える。
- 2種類のコメントがあり。
- / このコメントは変換後表示されない
- /! このコメントは変換後、HTMLコメントになる
- 複数行に渡るテキストは|(パイプ)の後に書く