2013-12-11 32 views
2

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

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

“当你要插入使用降价一
休息标签,你行尾有两个或多个空格,然后键入的回报。”

为什么红地毯没有检测到空的空间线?

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

<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. 

产生这个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被添加到相同行中)相同。