有没有好的 HAML -> ERB/H​​TML 转换器?

Posted

技术标签:

【中文标题】有没有好的 HAML -> ERB/H​​TML 转换器?【英文标题】:Is there a good HAML -> ERB/HTML converter? 【发布时间】:2010-11-01 07:44:04 【问题描述】:

我正在寻找将 HAML 模板转换为等效 ERB/H​​TML 模板的可靠方法?

有人遇到过吗?

【问题讨论】:

命令行中的haml input.haml output.html 怎么样? 您会得到 `error_messages_for' 的未定义方法异常等。 【参考方案1】:

我建议您使用HAML2ERB 服务。它真的很酷,可以生成有效的 ERB/H​​TML 代码!好处是:

    HTTPS - 如果您的标记需要一些安全性; API - 您可以为您的 IDE 编写插件或其他东西; 简单 - 只需将您的 HAML 代码放入文本框并点击“转换”即可; 项目处于活动状态 - 作者目前正在处理它。

项目在真实生产应用程序的大型 HAML 视图(超过 800 行标记)上进行了测试,对我来说效果很好。

祝你好运!

【讨论】:

链接关闭(403 禁止)【参考方案2】:

我刚刚在 Haskell 中编写了一个 HAML 到 ERB 的翻译器。 https://github.com/danchoi/herbalizer

如果您仍在尝试找到解决此问题的工具,请告诉我它是否足够好。

【讨论】:

我安装在 Ubuntu 13.04 上并且运行良好。谢谢丹!你是摇滚! sudo apt-get install ghc6 ghc6-prof ghc6-doc cabal-installcabal updatecabal install herbalizersudo ln ~/.cabal/bin/herbalizer /usr/bin/herbalizer【参考方案3】:

有 our fork of haml2erb 不支持所有的 HAML 语法,但它足以让我们用 HAML 编写 Rhomobile 视图。

【讨论】:

【参考方案4】:

你试过 W2tags,你甚至可以在现场测试它:w2tags.heroku.com

【讨论】:

w2tags 似乎不处理 idclass 以外的 html 属性,例如,当你有 %script :type => "text/javascript", :src =>"/bootstrap/js/jquery.js" 时,它返回 <script :type => "text/javascript", :src =>"/bootstrap/js/jquery.js" :type => "text/javascript", :src =>"/bootstrap/js/jquery.js" type="text/javascript" charset="utf-8"> 应用程序已于 2015 年 1 月关闭【参考方案5】:

显然,将 HAML 转换为 ERB 存在一些具有挑战性的问题,因为 HAML 支持一些在不解析 Ruby 代码的情况下不容易转换回 ERB 的细节。使用 HAML 引擎的简单实现在这里:

HAML to HTML demo

【讨论】:

以上是关于有没有好的 HAML -> ERB/H​​TML 转换器?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 HAML 中发表评论

有没有办法使用WAPr的haml文件

如何使用 HAML 提高 Sinatra 性能?

可用于 Python 的 HAML 或 Jade 模板语法?

Rails 3.2 - haml vs. erb。haml是否更快?(2012年2月)

HTML 之于 HAML 就像 XSLT 之于 ...?