Hamlなるものを触ってみる

最近、サークルのwebページ製作に向けてゆっくりではありますが動き出しています。とりあえず試験的にHTML直打ちで作っていたのですが、直打ちは結構手間がかかる(´・ω・`)というのが正直な所で、最近はwebページ一つ作るにもいろんな方法があるけど、何かいいものはなかったりしないんだろうか、と思っていました。
そんな時、同じ大学の編入生から「HamlとScss使ったらいいよー」とTwitterでリプライが。それまでHamlもScssも全く聞いたことも触ったこともなかったのですが、せっかくの機会なのでHamlをとりあえず触ってみました。

Hamlって?

HTML Abstraction Markup Languageの略。HTMLをシンプルかつ美しく書くためのマークアップ言語。Hamlを書いて動かすにはRubyをPCにインストールする必要があります。RubyHamlのインストールについては検索すれば出てくるのでここでは割愛。

まずはやっぱり世界一有名なHello World

ということで、早速非常に簡単なHamlコードを書いてみました。

!!!
%html
	%body
		hello world!

このHamlコードをHTMLに変換すると

<!DOCTYPE html>
<html>
  <body>
    hello world!
  </body>
</html>

というような内容のHTMLが生成されます。(この例のようにHTML5の書式にするにはオプション指定が必要)
Hamlは慣れるまでがなかなか大変だが、使いこなせればもうHaml抜きでHTML書くとか考えられない、という旨の記述をどこかのwebサイトで目にした気がするんですが、この例だけ見ていても終了タグを書かなくて済むのは地味に便利だなぁ、と。

ところで、Hamlコードのインデントにはきちんと意味があって(Pythonみたいですね)、インデントを守らないと不適切な構造のHTML文書が生成されてしまいます。このサンプルコードを動かしていた時もインデントの指定を間違ったためにHTMLファイル上ではの後にhello world!が書かれたものを生成してしまっていました。

という感じで、ゆっくりHamlの勉強をしていこうかなと思いました。

ところで…

Haml自体は少なくとも2008年には登場していたみたいなのですが、高専にいた時Hamlの話題は全く耳にしませんでした。所属学科が学科だけに余計不思議な感じがします。