【转】RStudio+Markdown+Pandoc的中文配置

原文地址
之前的博客有写到过Markdown轻量级标记语言,也提到过RStudio,还有神奇的Pandoc。今天就介绍一下用RStudio来搭配Markdown的写作环境,并利用Pandoc来导出Word或者PDF格式的文档。

1. Markdown

Markdown是一种轻量级标记语言,需要学习语法可以参考Markdown: Syntax,不过个人觉得没有太大必要,毕竟不同的编辑器使用和支持的语法不太一样,可以随用随学,随学随用。

2. R And RStudio

R是用于统计分析、绘图的语言和操作环境。RStudio就是R语言的一个IDE。想使用RStudio来编辑Markdown首先要安装R,可以在r-project找到R的下载地址here,也可以直接直接在这里下The Comprehensive R Archive Network。下载之后安装就好。RStudio的安装包可以在RStudio下载,最好下载最新的版本,支持比较完善。我下载的是Open Source Edition版本。同样,下载之后安装就好。如果不安装R直接安装RStudio,就无法打开RStudio。

3. RStudio+Markdown

用RStudio来编辑Markdown需要R的knitr包,如果安装的是新版的RStudio,则应该已经包含了这个包了。安装新版RStudio后,打开Tools->Global Options->Sweave进行如图1配置:
【转】RStudio+Markdown+Pandoc的中文配置_第1张图片
图1:RStudio Sweave配置

其中主要是Weave Rnw files using要选择knitr,Typeset LaTex into PDF using要选择XeLaTex,其他部分可根据实际情况具体配置。配置完成之后,可以通过File->New File->R Markdown来新建R Markdown文件进行编写,如图2
【转】RStudio+Markdown+Pandoc的中文配置_第2张图片
图2:RMD文件创建
可以通过点击工具条上的Knit HTML进行预览(图3红箭头),可以通过选项选择是在Pane中还是独立窗口中预览(图3方框),图3所示为在Pane中预览效果。
【转】RStudio+Markdown+Pandoc的中文配置_第3张图片
图3:RMD文件编写
可以将Markdown文件保存为RMD格式。关于RMD格式更多参见knitr作者yihui 的文档:自动化报告。关于RStudio+Markdown的信息也可参见阳志平的博客:Markdown写作浅谈。

4. Pandoc

前文说明了使用RStudio进行Markdown编写的方式,有时我们还需要将编写好的Markdown文件转换为别的格式。从图3中可以看到在生成KnitHTML的地方还有Knit PDF和Knit Word两个功能,此时就需要Pandoc的转换功能。Pandoc是由John MacFarlane开发的标记语言转换工具,可实现不同标记语言间的格式转换。Pandoc的安装可以参考Markdown写作进阶:Pandoc入门浅谈的介绍进行基于Haskell的安装,也可以直接从Pandoc项目或Pandoc的官方网战下载适合自己系统的安装包,直接安装。安装之后可以进入命令行(比如CMD、PowerShell)敲个pandoc –help看看安装成功了没有。Pandoc安装成功后,Knit Word就可以使用了,可以将编写好的Markdown文件转为Word文件。但Knit PDF的使用还需要Latex的支持。

5. TexLive

在工欲善其事,必先利其器一文中我提到过TexLive,更多的TexLive的信息可以参见维基百科——TexLive和Tex Live指南。关于TexLive的安装过程,可以参考TeX Live 2014安装引导流程——知呼专栏。TexLive安装成功之后,无需什么特殊配置即可使用Kint PDF功能。但有一个很重要的问题是此时的Kint PDF在使用XeLatex UTF-8编码的情况下只能转英文的PDF,PDF中的中文会消失,如果需要包含中文的PDF还需要进行一步配置。

6. RStudio 中Knitr 输出中文的问题

Knit PDF包含中文的问题着实让我困扰了很久,最后在knitr作者yihui的GitHub页面上找到了解决方案,参见RStudio 中Knitr 输出中文的问题,需要安装安装rticles包。具体做法如下:
在RStudio中输入devtools::install_github(“rstudio/rticles”)。此处可能需要先到这里下载并手动安装Rtools,之后手动安装devtools包等东西,由于我已经安过一遍,不方便重现,遇到问题的朋友可以按指导安装。

新建文件是选择File->New File->R Markdown->From Template->CTeX Documents(如图4),此时建立的文件转为PDF格式时可以包含中文。
【转】RStudio+Markdown+Pandoc的中文配置_第4张图片
图4:CTeX Documents
此模版具有较多内容,如果不需要,又不想每次都手动删除,可以找到此模版配置文件,进行更改。考虑到可能涉及作者knitr的版权问题什么的,此处就不描述具体做法了。还有个问题,似乎Pandoc对中文文件名支持有些问题,所以保存RMD文件时候,文件名要使用纯英文。通过上述配置,我们终于可以使用RStudio愉快的编写Markdown文件,并转换Word或者PDF文档了。

References
http://www.yangzhiping.com/tech/r-markdown-knitr.html——Markdown写作浅谈
http://www.yangzhiping.com/tech/pandoc.html——Markdown写作进阶:Pandoc入门浅谈
https://github.com/yihui/r-ninja/blob/master/11-auto-report.md——自动化报告
http://zhuanlan.zhihu.com/LaTeX/19779481——TeX Live 2014安装引导流程——知呼专栏
https://github.com/yihui/knitr/issues/889——RStudio 中Knitr 输出中文的问题
https://github.com/rstudio/rticles——Knitr templates

你可能感兴趣的:(【转】RStudio+Markdown+Pandoc的中文配置)