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で使えるプラグインなどがあればもう少し幸せになれるのん?とか考えつつ今日は寝ます…