Haml
Haml | |
---|---|
Тип | Язык разметки |
Разработчики | Хамптон Катлин[вд] и Натан Вейзенбаум[вд] |
Написана на | Ruby (официальная версия) |
Последняя версия |
|
Репозиторий | github.com/haml/haml |
Лицензия | MIT License |
Сайт | haml.info (англ.) |
Haml (HTML abstraction markup language) — язык разметки для упрощённой генерации HTML. HAML компилируется в HTML.
Эквивалент Haml для CSS — это LESS или Sass.
Пример
!!! %html{ html_attrs('ru') } %head %title Мой блог %meta(http-equiv="Content-Type" content="text/html; charset=utf-8") = stylesheet_link_tag "main" %body #header %h1 Мой блог %h2 Записи #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.copyright Все права защищены © Иван
Результат выполнения предыдущего кода. Данные наполнения взяты из объекта entries на бэкэнде:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html lang='ru' xml:lang='ru' xmlns='http://www.w3.org/1999/xhtml'> <head> <title> Мой блог </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> Мой блог </h1> <h2> Записи </h2> </div> <div id='content'> <div class='entry'> <h3 class='title'> Хеллоуин </h3> <p class='date'> Четверг, 31 октября, 2006 </p> <p class='body'> Ох уже эти американские праздники. </p> </div> <div class='entry'> <h3 class='title'> Новый язык ВКУСНЕЕ$ </h3> <p class='date'> Пятница, 11 августа, 2006 </p> <p class='body'> Haml — супер круто и жутко удобен. Моя Rails-душа наполнена счастьем. </p> </div> </div> <div id='footer'> <p class='copyright'> Все права защищены © Иван </p> </div> </body> </html>
Реализации
Официальная реализация Haml написана на Ruby.
Реализации на других языках:
PHP
- phpHaml (PHP5)
- Fammel (PHP)
- pHAML (PHP)
- phamlp (PHP)
- Drupal filter module
.NET
- NHaml (.NET)
- MonoRail NHaml (ASP.NET)
- NHaml (.NET)
Другие
- JHaml (Java)
- haml-js (JavaScript)
- LuaHaml (Lua)
- Text::Haml (Perl)
- HamlPy (Python)
- Scalate (Scala)
См. также
- BBCode
- Markaby
- pHAML
- Slim (язык)
Примечания
- ↑ Release 6.3.0 — 2023.
Ссылки
- Официальный сайт
- HAML на GitHub
- рассылка Haml (англ.)
- Интервью с создателем Haml в Rails-подкасте