Haml

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
image illustrant l’informatique
Cet article est une ébauche concernant l’informatique.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

Haml
Logo

Développeurs Hampton Catlin, Nathan Weizenbaum
Dernière version 4.0.3 ()Voir et modifier les données sur Wikidata
Environnements Multiplate-forme
Type Moteur de template
Licence Licence MIT
Site web http://haml.info

Le Haml (HTML Abstraction Markup Language) est un langage de balisage léger pour templates. Il est utilisé pour générer des documents XHTML sans utiliser la syntaxe HTML. Il se veut élégant et minimaliste. À la façon de Python ou de Yaml, l'espacement est important : il permet la fermeture automatique des balises et blocs de code. Haml s'intègre bien à Ruby on Rails et Padrino.

L'équivalent de Haml pour les feuilles de style en cascade est Syntactically Awesome Stylesheets (Sass).

Avantages[modifier | modifier le code]

  • Les documents n'étant plus encombrés par de nombreux symboles HTML (<, >, id="", class=""…), ceux-ci sont, pour certains, plus faciles à lire (notamment lors du maintien de nombreux templates structurant tout un site). Les deux documents suivants sont équivalents :
<div id="sidebar">
  <ul class="main">
    <li class="active">
      <a href="accueil.html">
        Accueil
      </a>
    </li>
    <li>
      <a href="nouvelles.html">
        Nouvelles
      </a>
    </li>
    <li class="disabled">
      <a>Membres</a>
    </li>
  </ul>
</div>
#sidebar
  %ul.main
    %li.active
      %a{"href" => "accueil.html"}
        Accueil
    %li
      %a{"href" => "nouvelles.html"}
        Nouvelles
    %li.disabled
      %a Membres
  • L'espacement strict permet de se rendre compte plus rapidement des erreur : le document HTML final ne se génère pas s'il y a une erreur syntaxique. Cela peut par exemple éviter de perdre du temps à la compréhension de bogues JavaScript interagissant avec le DOM.

Inconvénients[modifier | modifier le code]

  • Haml est « whitespace active », et s'appuie sur l'espacement uniforme pour chaque niveau de tiret. Tabulations et espaces doivent être maintenues constantes tout au long du document.
  • Il n'y a pas d'éditeur Haml WYSIWYG, considérant qu'il existe de nombreux éditeurs HTML et XHTML. Toutefois, la communauté croissante des utilisateurs Haml a publié de nombreux addons sur Aptana, jEdit, NetBeans, Sublime Text et les éditeurs comme TextMate et vi. Cela permet aux développeurs de modifier du code Haml dans un environnement qui est au courant de l'indentation des règles et de la syntaxe.

Notes et références[modifier | modifier le code]