Haml
Haml (HTML Abstraction Markup Language) ist eine unter der MIT-Lizenz veröffentlichte vereinfachte Auszeichnungssprache, die benutzt wird, um auf klare und einfache Art das XHTML eines Web-Dokuments zu beschreiben, ohne dabei mittels Inline-Codierung ausführbaren Programmcode hineinmischen zu müssen. Es wurde entwickelt, um viele der Schwächen traditioneller Template-Mechanismen zu vermeiden und um Markup-Sprache möglichst elegant zu machen. Haml fungiert als Ersatz für Inline-Template-Mechanismen, wie sie bei PHP, JSP, RHTML oder ASP üblich sind. Haml vermeidet die Notwendigkeit, XHTML explizit in Templates zu codieren, weil es selbst eine Beschreibung für XHTML mit einigem Code für dynamischen Inhalt ist. Zum Umfang von Haml gehörte mit Sass auch ein Analogon zu CSS. Heute werden aber Sass und Haml getrennt entwickelt, versioniert und ausgeliefert.[2] Prinzipien
Nachteile
BeispielAnmerkung: Man beachte bitte, dass dieses Beispiel nicht zwingend den heutigen Entwicklungsstand von Haml wiedergibt. !!! %html{ :xmlns => "http://www.w3.org/1999/xhtml", :lang => "en", "xml:lang" => "en"} %head %title BoBlog %meta{"http-equiv" => "Content-Type", :content => "text/html; charset=utf-8"} = stylesheet_link_tag 'main' %body #header %h1 BoBlog %h2 Bob's Blog #content - @entries.each do |entry| .entry %h3.title= entry.title %p.date= entry.posted.strftime("%A, %B %d, %Y") %p.body= entry.body #footer %p All content copyright © Bob Der obige Haml-Text sollte das folgende XHTML ergeben: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
<head>
<title>BoBlog</title>
<meta content='text/html; charset=utf-8' http-equiv='Content-Type' />
<link href="/stylesheets/main.css" media="screen" rel="Stylesheet" type="text/css" />
</head>
<body>
<div id='header'>
<h1>BoBlog</h1>
<h2>Bob's Blog</h2>
</div>
<div id='content'>
<div class='entry'>
<h3 class='title'>Halloween</h3>
<p class='date'>Tuesday, October 31, 2006</p>
<p class='body'>
Happy Halloween, glorious readers! I'm going to a party this evening... I'm very excited.
</p>
</div>
<div class='entry'>
<h3 class='title'>New Rails Templating Engine</h3>
<p class='date'>Friday, August 11, 2006</p>
<p class='body'>
There's a very cool new Templating Engine out for Ruby on Rails. It's called Haml.
</p>
</div>
</div>
<div id='footer'>
<p>
All content copyright © Bob
</p>
</div>
</body>
</html>
ImplementierungenDie offizielle Haml-Implementierung wurde für Ruby mit Plugins für Ruby on Rails und Merb entwickelt, aber die Ruby-Implementierung funktioniert auch unabhängig (ohne Rails und ohne Merb). Es existieren auch Implementierungen in anderen Programmiersprachen:
EntwicklungHaml wurde im Mai 2006 von Hampton Catlin erfunden. Er entwickelt zusammen mit Nathan Weizenbaum die Codebasis weiter. Siehe auchWeblinks
Einzelnachweise
|
Portal di Ensiklopedia Dunia