Haml

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania
Haml
Silnik szablonów
Haml 1-5 logo.png
Logo programu
Producent Nathan Weizenbaum, Hampton Catlin
System operacyjny Cross-platform
Aktualna wersja stabilna 4.0.3 21 maj, 2013
Licencja MIT License
haml-lang.com

Haml (XHTML Abstraction Markup Language) jest językiem znaczników używanym do prostego i przejrzystego opisywania XHTML. Został stworzony, aby obejść wiele niedoskonałości tradycyjnych systemów szablonów używając zarazem eleganckiej składni. Głównym zadaniem Hamla jest zastąpienie dotychczasowych systemów szablonów, jak PHP, RHTML czy ASP.

Odpowiednikiem Hamla dla CSS jest Sass, który jest rozpowszechniany razem z Hamlem.

Przykład zastosowania[edytuj | edytuj kod]

Uwaga: Ta wersja może odbiegać nieco od najnowszej wersji języka!

!!!
%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

W rezultacie da XHTML:

<!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>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>

Powszechny użytek[edytuj | edytuj kod]

Haml jest powszechnie używany w kilku projektach Open Source (na przykład How'd They Vote czy Contentopolis), jest także wykorzystywany przez strony o charakterze komercyjnym.

Zobacz też[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]