使用github_document将.rmd转换为.md时,两个空格换行在GitHub上不起作用

时间:2016-05-12 12:57:55

标签: r github r-markdown github-flavored-markdown

我尝试将.rmd文档转换为.md,以便在我的YAML标头中使用output: github_document在GitHub上传。

显然,转换不尊重我在.rmd文件中用来强制换行的两个或多个空格。

示例:我创建了这个小.rmd文件:

---
title: "Line Break issue"
output: github_document
---

1.  My First point  
Another point right below  
and more

1.  My second point

我使用了两个空格来强制中断"我的第一个点"和另外一点......"和"以及更多"。当我编织时,预览很好,但是,当我上传到GitHub时,在.rmd文件中只能充分尊重换行符,因为您可以看到here但显然已经进入了.md文件你可以here

为什么?

编辑:

我在rmarkdown_0.9.6上的RStudio Version 0.99.1130中使用R 3.3.0

1 个答案:

答案 0 :(得分:2)

我认为GitHub的降价渲染器的行为已经改变了。以前GitHub Flavored Markdown会自动为Markdown中的任何换行符创建一个HTML换行符(即使没有2个尾随空格的换行符)。结果,pandoc转换为github_markdown剥离了2个尾随空格(因为它们在github_markdown中没有必要或有意义)。

今天在GitHub上发布了一些测试文件但看起来他们现在需要这两个空格才能产生换行符。我不知道这种变化是永久的还是暂时的(因为它肯定会打破一堆现有的代码)。为了解决这个问题,我在hard_line_breaks添加了github_document选项:

https://github.com/rstudio/rmarkdown/commit/0cbfcf7ebde5f587e70a064ae7c484cfd849ba6a

通过此更改,您的示例的YAML需要看起来像这样才能保留两个空格:

---
title: "Line Break issue"
output: 
  github_document:
    hard_line_breaks: false
---

如果这似乎是GitHub的永久性更改,那么我会将默认值更改为true,因此github_document默认会产生正确的降价。