3

我无法获得换行符 <br>,即使内容中有空格和换行符。有什么办法可以在红地毯上启用。

http://daringfireball.net/projects/markdown/syntax#p

“当你确实想
使用 Markdown 插入中断标签时,你可以用两个或多个空格结束一行,然后键入 return。”

为什么 redcarpet 没有检测到空白行?

Loading development environment (Rails 3.2.3)
irb(main):001:0> rendere = Redcarpet::Render::HTML.new(:hard_wrap => true)
=> #<Redcarpet::Render::HTML:0xa2cc414>
irb(main):002:0> markdown = Redcarpet::Markdown.new(rendere, :autolink => true, :space_after_headers => true)
=> #<Redcarpet::Markdown:0x98ab0c0>
irb(main):003:0> markdown.render("hi how are you doing\n      \nFirst line in the next paragraph\n            \nFirst line in the third paragraph\n")
=> "<p>hi how are you doing</p>\n\n<p>First line in the next paragraph</p>\n\n<p>First line in the third paragraph</p>\n"
irb(main):004:0> markdown.render("hi how are you doing\r\n      \r\nFirst line in the next paragraph\r\n            \r\nFirst line in the third paragraph\r\n")
=> "<p>hi how are you doing</p>\n\n<p>First line in the next paragraph</p>\n\n<p>First line in the third paragraph</p>\n"
irb(main):005:0>
4

1 回答 1

4

如果该<br>行是段落中的最后一行,则不会添加元素 - 仅当下一行有内容时。例如这个降价(所有行都有两个尾随空格):

Has trailing spaces, but no br.  

Several lines, all with trailing spaces.  
All but the last have br elements at the end.  
This line has spaces, but no br.  

使用 Redcarpet 生成此 HTML:

<p>Has trailing spaces, but no br.  </p>

<p>Several lines, all with trailing spaces.<br>
All but the last have br elements at the end.<br>
This line has spaces, but no br.  </p>

您的示例由三个单行段落组成,因此每一行都是段落中的最后一行,并且没有<br>添加。

此行为与原始 Markdown.pl 相同(基本上 - 输出不相同,但<br>s 被添加到相同的行)。

于 2013-12-12T00:26:06.790 回答