ruby - HAML 模板助手中的多行字符串

标签 ruby haml

我希望能够将多行字符串传递给 haml 助手。

我有一个函数 format_code,它接受一个字符串和一组要突出显示的行号。

此函数的目的是将原始源代码转换为带高亮行、行号、换行符转换为 brs 等的格式化 HTML。

如果我这样调用它:

%p Some HAMl

=format_code("def something
  a = b
  b = c
end", :highlight_line => 2)

%p Some more HAML

这样做的原因是为了将代码示例嵌入到 HAML 文档中。

HAML 提示在纯文本中嵌套。嵌套发生在一个字符串中,所以我认为这是可以的。同样的调用在 irb 中工作正常。

我会使用助手,但我希望能够传递参数哈希。有什么想法吗?

最佳答案

我假设您想将代码示例硬编码到 HAML 模板中,因此您确实想要一些东西,我的第一 react 是:“你不想要这个”。在那种情况下,我可能会选择:

:ruby
  code = <<-CODE
    def something
      a = b
      b = c
    end
  CODE

%p Some HAMl

=format_code(code, :highlight_line => 2)

%p Some more HAML

关于ruby - HAML 模板助手中的多行字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10830482/

相关文章:

ruby-on-rails - 如何在模板 Slim 中添加带有 JavaScript 代码的 html 文件?

java - 哪个可互操作的 JavaScript 和 Grails/Java 模板框架?

sass - 在 GitHub 页面上为 Jekyll、Haml、Sass 配置 Grunt

ruby-on-rails - 在 RVM 错误下安装 Gems

ruby-on-rails - 在 Rails 中使用集合选择

ruby - 如何在 Ruby 中更新 XML 文件?

ruby-on-rails - 同步两个 YAML 文件

ruby - rb-libsvm 中的零概率

javascript - 如何在 haml 的内联 JavaScript 中使用 Ruby 变量?

ruby - 在 HAML 中迭代 ruby​​ 哈希数组