• Like
Liquid の紹介
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Published

Jekyll で使用されてる テンプレートエンジンの簡単な紹介。

Jekyll で使用されてる テンプレートエンジンの簡単な紹介。

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,504
On SlideShare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
4
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Liquid の紹介2013-03-02 広島Ruby勉強会
  • 2. LiquidテンプレートエンジンJekyll で利用されている
  • 3. Jekyll って?静的サイトジェネレータ動的に HTML を生成しない ローカルで HTML を生成Github Pages で利用可能
  • 4. テンプレートエンジンって? 差し込み印刷みたいなもの 雛形を用意しておいて一部を置き換える 変数の利用 分岐や繰り返しを行うことも タグを用いてマークアップ
  • 5. 変数の出力{{ 変数名 }}
  • 6. 変数の出力hoge = “goro” の場合{{ hoge }} # => goro
  • 7. 変数の出力Hashが束縛されている場合
  • 8. 変数の出力{{ 変数名.キー }}
  • 9. 変数の出力hoge = { goro: “mogu” }{{ hoge.goro }} # => mogu
  • 10. フィルタヘルパ関数みたいなものシェルのパイプのように引数がある場合は : でつなぐ引数が複数ある場合は , でつなぐ
  • 11. フィルタ{{ 変数 ¦ フィルタ ¦ フィルタ }}
  • 12. フィルタhoge = “gorogoro”{{ hoge | replace_first: ‘goro’, ‘mogu’ }}# => mogugoro
  • 13. フィルタ{{ ‘5’ | plus:’1’ | times:’4’ }# => 24 # 5 + 1 * 4
  • 14. 分岐{% if 条件 %}ifのとき{% endif %}
  • 15. 分岐{% if hoge == ‘goro’ %} ぐるぐる{% endif %} # => ぐるぐる
  • 16. 繰り返し{% for 変数名 in リスト %} 繰り返す内容{% endfor %}
  • 17. その他のタグ、フィルタリファレンスなどをhttps://github.com/Shopify/liquid/wiki/Liquid-for-Designers
  • 18. カスタムタグRubyでがりがりとかく
  • 19. {{ }} vs {% %}{% %} を使用した場合 未定義の変数だと例外が飛びます
  • 20. ERB じゃダメなん?ERBだと Rubyでできることなんでもできてしまう サービスを利用する人が使う場合 機能制限したい
  • 21. Jekyll on Githubなにもしなくても使えますカスタムタグの作成はできない
  • 22. プログラムで使うtemplate = “Hello {{ hoge }}”binding = { hoge: “World” }Liquid::Template.parse(template).render binding# => Hello World
  • 23. ご清聴ありがとうございます