もっちブログ

鶴田浩之の個人ブログ | since 2005

Page 21 of 94

3年目

尊い命が失われたことに深い哀悼の意を表するとともに、被災された皆様へ心よりお見舞いを申し上げます。

3年という月日は、早いものでした。それ以前の自分が考えていたことや、何を価値観として生きていたかということは、今となっては簡単には思い出せません。僕があの夜、停電中の小さな避難所で、寒さに震えながら毛布の中で立ち上げた prayforjapan.jp というWebサイトは、現在までに世界200ヶ国近くから、1000万人以上が訪れて、12の言語に対応しています。

『PRAY FOR JAPAN - 3.11 世界中が祈りはじめた日』初稿のゲラ(2011年4月初旬頃)

『PRAY FOR JAPAN – 3.11 世界中が祈りはじめた日』初稿ゲラ

2014年3月11日現在までに、サイトをもとに発刊された『PRAY FOR JAPAN – 3.11 世界中が祈りはじめた日』の書籍、アプリ、電子書籍も含めた印税から、5,017,480円 を被災地の被災遺児・被災孤児の支援を目的とした4つの団体・自治体に対して寄附しました。本を手にとって頂いた皆様、本書を作るためにご寄稿を快諾頂いた皆様、80名を超える世界各国の翻訳ボランティアの皆様(ネット上だけで一度も会ったことがないにも関わらず、本当に献身的にご協力を頂きました)、すべての関係者の皆様に、深く感謝を申し上げます。

Continue reading

Rails4/viewsのerbをSlimに一括変換するRubyワンライナー

Githubに公開されているRuby gem 'html2slim'

Githubに公開されているRuby gem ‘html2slim’

slimとSassに慣れると、普通のCSSやHTMLを書くモチベーションが湧いてきません。ソースコードのサイズは40%縮小、コーディング時間も3割くらい早くなるのではないでしょうか。学習コストも低いのでRailsプロジェクトで頻繁にみかけるようになりました。

Githubには html2slimのような、viewファイルの記法を変換してくれるGemがいくつか公開されていますが、Usageを見てもファイルを1つずつ指定する必要があり、Railsのapp/views/以下の erbファイルをslimに一括変換するためのワンライナー については、ネット上ではほとんど記述が見当たりません。

hamlの場合は、erb2hamlを入れて、rakeコマンド

# rake haml:convert_erbs

で一括変換できるっぽいんですが、Slim ではまだ情報源が少なかったので、作成して動作できたものを以下にメモしておきます。

1. HTML/erbをslimに変換するGem「html2slim」を入れる

slim-templateで公開されている html2slim は、htmlやerbを、slimに変換してくれます。あくまでコンバーターなので、プロジェクトのGemfile(development) に記述するより、ローカル内で入れておいて良いかと思います。

# gem install html2slim

Gemをインストールすると、html2slim と erb2slim のコマンドが使えるようになります

2. app/views/以下の.erbをslimに一括変換するRubyワンライナー

Gemが入った状態で以下のRubyのワンライナーをコマンドラインで打つと変換してくれます。一括変換されるので 念のため直前のコミットに戻れるようにGit推奨。

# for i in app/views/**/*.erb; do erb2slim $i ${i%erb}slim && rm $i; done

これでスリムになります。処理的にはファイルの書き換えではなく、同名の.slimファイルを新規に作成し、古い.erbファイルを削除しています。erb2slim にある -d option は使っていません。

html2slimを使う場合は、erbをhtmlに置き換えてください。Rails以外のフレームワークでもhtmlをslimにしたり、haml2slimというGemもあるらしいので、いろいろ使えそうです。

https://github.com/slim-template

追記:Deviseを使っていてviews/deviseフォルダがある場合は、合わせて以下のワンライナーも試して下さい。

# for file in app/views/devise/**/*.erb; do erb2slim $file ${file%erb}slim && rm $file; done
« Older posts Newer posts »

© 2024 もっちブログ

Theme by Anders NorenUp ↑