HAML表达式附近的符号

问题描述:

在HAML中,我经常希望在标签之后立即使用带有标点符号的标签。例如,我可能想要以粗体显示某些内容,但有一个右括号。格式将如下所示:(加粗文字的例句)HAML表达式附近的符号

请注意,'粗体文本'以粗体显示,但句号和右括号'。''不是。

明显HAML是这样的:

(Example sentence with 
%span.important bold text 
\.) 

但这会导致 '粗体文本' 之间的额外空间 ')。'。下面是做这件事,而不是一个办法:

(Example sentence with 
%span.important bold text 
%span>\.) 

凡封闭与>跨度使得空间消失“)。”。但是,这需要一个不必要的跨度。

是否有任何方法获得所需的输出,没有额外的跨度?

+0

引入haml FAQ涵盖了几乎这个确切的问题:http://haml-lang.com/docs/yardoc/file.FAQ.html#q-punctuation - 答案是basicall y与下面的Daves相同:内联html或过滤器。 – matt 2011-05-25 02:05:25

+0

我已经调整了示例以使其更清晰,谢谢@Dave。 – Peter 2011-05-25 03:46:16

+1

http://chriseppstein.github.com/blog/2010/02/08/haml-sucks-for-content/这可能会帮助你以某种方式:)它只是支持马特和戴夫的断言,你可以使用内联/降价为inline tags..because haml用于布局 – corroded 2011-05-25 03:52:30

即初始代码段不应在HAML在所有的工作:

(Example sentence with 
%b bold text 
.) 

第三行会导致Illegal element: classes and ids must have values错误。它应该是:

(Example sentence with 
%b bold text 
\.) 

但是,这只是修复代码错误。它仍然显示你抱怨的方式。我只知道两种方法来解决这个问题:

  1. 只需使用内嵌HTML代码会在HAML文件:(Example sentence with <b>bold text</b>.)
  2. 安装maruku(或其他降价宝石)并执行以下操作:
:markdown 
    (Example sentence with **bold text**.) 
+0

绝对正确的'\ .'(谢谢)。然而,对于我来说,'%b'不完全的解决方案只是一个例子,我想要处理一般的标签,包括自定义标签。 – Peter 2011-05-25 03:38:13