Haml不同于emmet,它是一个命令行工具。需要先安装Ruby语言,再安装Haml。
gem install haml
使用时,用命令行将haml文件一次性转为html文件。
haml input.haml output.html
haml的简化规则如下
1. !!! 5 代表 <!DOCTYPE html>
2. %E 代表HTML标签。
3. %E#id 代表id属性。
4. %E.class 代表class属性。
5. %E(attr="xxx") 代表某一个特定属性。
6. %E XXX 代表插入标签的内容。
7. %E %N 代表N是E的子元素。N如果写在第二行,需要缩进。
下面是Haml的代码示例,代码块的层级关系用缩进表示。
!!! 5 %html{lang: 'en'} %head %title Haml Demo %body %h1 Hello World %a{:href=>'http://wikipedia.org', :title=>"Wikipedia"} 维基百科
对应的HTML代码为:
<!DOCTYPE html> <html lang='en'> <head> <title>Haml Demo</title> </head> <body> <h1>Hello World</h1> <a href='http://wikipedia.org' title='Wikipedia'>维基百科</a> </body> </html>
注:在Haml中,"/ "起首的行表示HTML注释,"-# "起首的行表示Haml注释。
相关推荐
基本用法Haml可以从命令行使用,也可以作为Ruby Web框架的一部分使用。 第一步是安装gem: gem install haml 写了一些Haml之后,您可以运行haml document.haml 将其编译为HTML。 有关这些命令的更多信息,请查看haml...
用法 要将haml-rs包含在您的项目中,请在Cargo.toml中添加以下内容: [dependencies] hamlrs = "0.4.2" 然后将以下内容添加到您的代码中: extern crate haml; 例子 图书馆 extern crate haml; fn main () { let ...
建立状态测试范围概要在Julia中使用HAML的最简单方法是haml""宏的形式。 只需内联编写HAML代码,它将扩展为字符串: julia > using HAMLjulia > link = " https://youtu.be/dQw4w9WgXcQ "julia > haml """ %...
法姆 Haml模板语言的更快实现。安装将此行添加到您的应用程序的Gemfile中: gem 'faml' 然后执行: $ bundle或将其自己安装为: $ gem install faml用法您可以通过Faml::Engine.options设置几个选项。 # Render in ...
在使用hamlet-compiler时,开发者首先需要安装这个库,然后就可以开始编写Haml模板。Haml的语法结构清晰,如 `%tagname` 用于定义HTML标签,`#id` 和 `.class` 分别用于指定ID和类名,`= expression` 用于插入表达式...
用法 您可以使用此库中包含交互(提示)和非交互模式的二进制文件。 您也应该能够直接将代码用作lib。 例子 每个文件。 您可以直接在代码中使用lib,例如: begin @ex1 = Haml::I18n::Extractor.new(haml_path) @...
多目标 HAML - IDE 编译器(减少运行时间) MtHaml 是的 PHP 实现,可以针对多种语言。 这是基于 MtHaml 和 MtHaml-more(如果需要,支持两个运行时)的 fork 这个 fork 的主要目标 - 在 IDE 中实现将 haml 文件编译...
例如,如果您想使用诸如或类的库向某些元素添加一些自定义样式,则没有简便的方法可以做到这一点。 编写这样的东西将是很棒的: # Main Title %h2.f2.helvetica.strike Fancy title ** with some bold ** Some...
虽然我认为 HAML 是防止我再次使用 HTML 的一个很好的步骤,但我认为它不足以利用现有的技术和替代方法。 我也不认为 HAML 足够容易访问,因为他们的 DSL 是由 Ruby 解析的,其他的很少。 通过让 JSHOL 成为 JSON ...
2. Haml:Haml是一种简洁、结构化的HTML模板语言,可以与Sinatra结合使用。通过`haml`助手函数渲染Haml模板。 3. Slim:Slim是另一种高效的HTML模板引擎,其语法简洁,注重效率。在Sinatra中,我们可以配置使用Slim...
它影响了Python,Javascript,HAML,YAML和Jade模板语言。 Mañana使用略微修改的Jison版本来生成其解析器。 通过允许词法分析器一次返回一组标记而不是一次返回一个标记,在Jison中添加了几行以允许使用Python...
5. **视图和模板**:Rails使用ERB(Embedded Ruby)或Haml等模板语言来生成HTML。书中会讲解如何创建视图,使用部分视图,以及如何应用布局和辅助方法。 6. **测试驱动开发(TDD)**:Rails支持集成测试、单元测试和...
7. **erb和haml模板**:Rails使用erb(Embedded Ruby)作为默认的视图模板引擎,也可以选择haml,这是一种更简洁的HTML模板语言。理解这两种模板引擎的工作原理,可以有效地编写视图代码。 8. **测试驱动开发(TDD)*...
结合这两个信息,我们可能假设“shakeit.so”可能与一个使用Haml的Web应用有关,可能是一个用于处理特定请求的后端组件,或者是一个与用户界面交互的库。例如,它可能包含了图像抖动算法,用于图片处理,而Haml则是...
6. **视图和模板**:介绍如何使用erb、haml等模板语言创建动态页面,以及局部变量、辅助方法和布局的应用。 7. **测试驱动开发**:强调Rails对测试的重视,包括单元测试、集成测试和功能测试的编写。 8. **Ajax和...
HAML,全称HTML Abstraction Markup Language,是由Hampton Catlin创建的一种模板语言,其语法简洁且类似CSS。HAML摒弃了传统HTML的繁琐标签,用更直观的方式表示HTML结构。如上所述,一段简单的HAML代码: ``` #...
9. **辅助方法与局部变量**:在视图中,辅助方法和局部变量可以增强代码的可读性和复用性。 10. **Ajax与JavaScript**:Rails内置了Prototype JavaScript库,也支持jQuery等其他库,方便实现异步更新和页面交互。 ...
4. **视图**:涵盖模板语言ERB和Haml的使用,以及如何利用辅助方法和布局来美化界面。 5. **模型**:讨论ActiveRecord的查询接口,关联关系,以及如何进行数据验证。 6. **测试**:讲解RSpec和Cucumber等测试工具的...
4. **方法定义**:Ruby提供了多种定义方法的方式,如`def`关键字,或者使用`define_method`动态定义。 5. **模块**:Ruby的模块(Module)用于封装命名空间,实现类的多重继承,并提供混合(mixin)功能。 6. **元...
最开始的语法叫做“缩进语法”,与Haml类似,使用缩进来区分代码块,并且用回车将不同规则分隔开。而较新的语法叫做“SCSS”,使用和CSS一样的块语法,即使用大括号将不同的规则分开,使用分号将具体的样式分开。...