Windows環境でRubyインストールからslimを使うところまでのメモ
Windows環境でRubyインストールからslimを使うところまでのメモ。
・経緯
HTMLを記述するのがめんどいので、
簡単にできる方法がないかとぐぐったところ、
なんかそれっぽいことができそうな言語があったんですが、Ruby+Macの組み合わせばかり!
RubyユーザはUnixからの流れでMac使い多そうだもんな。
そもそも僕はRuby知らないしなあ。
むしろこのご時世、Web業界だとデフォで使われてそうだな。
ということで、Windows環境ではどうするかを調べたのでまとめときます。
HTML出力の言語を使うメリット
・タグづけの冗長さや閉じ忘れエラーなどから解放される気がします
・DOCTYPE宣言のわずらわしさから解放される気がします
・変数やIFなど柔軟さを持ち合わせている気がします
・連番を振る機能があればかなり便利ですよね
デメリット
・生成用のプログラムが必要。
(Ruby on Railsだと組み込まれているみたい。そりゃ流行るわけだ)
で、いま流行っているのは haml と slim とのこと。
(hamlはハムルって発音するんでしょうか。ネトゲユーザなら思うところがありますね(辛い思い出
hamlについてはこちらがわかりやすかったです。
http://fukuyama.co/haml2
slimは日本語訳が読みやすかったです。
https://github.com/yterajima/slim/blob/README_ja/README.md
おおきな違いとしては、
hamlは独自な書き方になってて、slimはhamlの反省点+Ruby的に処理を埋め込めると。
これからはじめるなら後発であるslim採用がよろしいかなと。
・Windows環境にインストール
Windowsで動作させるには Ruby が必要なので、公式サイトから
http://www.ruby-lang.org/ja/downloads/
ActiveScriptRuby 安定版 のリンクをたどって、
http://www.artonx.org/data/asr/
Ruby-2.0.0-p0 Microsoft Installer Package(2013-02-24) をダウンロードしました。
msi形式なので、ダブルクリックでインストーラーを起動させます。
インストール時のフォルダは、デフォルトでは「C:\Program\Ruby-2.0.0\」となっていますが
後手順のslimのインストール時に、
ユーザによっては権限エラー(Permission Error)となるため、
別フォルダにいれるか、
インストール後にフォルダにアクセス権をつけるかで対応します。
Rubyのインストールが完了したら、次はslimをインストールします。
スタートメニューの Ruby-2.0.0 の Ruby-2.0 console を起動して
コンソールウィンドウで下記を実行。
gem install slim
これでインストールできました。
-
- 追記ここから--
エンコーディングでエラーがでることがありますので、環境変数に「set RUBYOPT=-EUTF-8」を入れましょう。
参考:http://sugamasao.hatenablog.com/entry/2013/08/24/224521
-
- 追記ここまで--
slimからHTMLに変換するには下記のような感じで。
slimの実行バッチファイルはruby/bin/slimrb.batになります。
slimrb 読込ファイル名.slim 出力ファイル名.html
毎回Rubyのコンソールを起動しておいて都度実行ってのもいいですが
以下のbatファイルのショートカットを作って、送るメニューに入れるとよい感じ。
(windows7 だと C:\Users\xxx\AppData\Roaming\Microsoft\Windows\SendTo)
@ECHO OFF @"C:/program/Ruby-2.0.0/bin/ruby.exe" "C:/program/Ruby-2.0.0/bin/slimrb" %~p1%~n1.slim %~p1%~n1.html IF %ERRORLEVEL% == 1 PAUSE
slimの記述はREADMEを見つつやってますが、詰まったところをメモ
・繰り返しをしたいときは、- をつけると、後ろにRuby記述ができます
- aryHeader = ["頭部","胴体","腕部","脚部"] - for x in aryHeader do td | #{x}
こんなかんじで運用中です。
Eclipseで使えるプラグインなどがあればもう少し幸せになれるのん?とか考えつつ今日は寝ます…