【轉(zhuǎn)】RStudio+Markdown+Pandoc的中文配置

原文地址
之前的博客有寫到過Markdown輕量級標(biāo)記語言,也提到過RStudio,還有神奇的Pandoc。今天就介紹一下用RStudio來搭配Markdown的寫作環(huán)境,并利用Pandoc來導(dǎo)出Word或者PDF格式的文檔。

1. Markdown

Markdown是一種輕量級標(biāo)記語言,需要學(xué)習(xí)語法可以參考Markdown: Syntax,不過個(gè)人覺得沒有太大必要,畢竟不同的編輯器使用和支持的語法不太一樣,可以隨用隨學(xué),隨學(xué)隨用。

2. R And RStudio

R是用于統(tǒng)計(jì)分析、繪圖的語言和操作環(huán)境。RStudio就是R語言的一個(gè)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,則應(yīng)該已經(jīng)包含了這個(gè)包了。安裝新版RStudio后,打開Tools->Global Options->Sweave進(jìn)行如圖1配置:
圖1:RStudio Sweave配置

其中主要是Weave Rnw files using要選擇knitr,Typeset LaTex into PDF using要選擇XeLaTex,其他部分可根據(jù)實(shí)際情況具體配置。配置完成之后,可以通過File->New File->R Markdown來新建R Markdown文件進(jìn)行編寫,如圖2
圖2:RMD文件創(chuàng)建
可以通過點(diǎn)擊工具條上的Knit HTML進(jìn)行預(yù)覽(圖3紅箭頭),可以通過選項(xiàng)選擇是在Pane中還是獨(dú)立窗口中預(yù)覽(圖3方框),圖3所示為在Pane中預(yù)覽效果。
圖3:RMD文件編寫
可以將Markdown文件保存為RMD格式。關(guān)于RMD格式更多參見knitr作者yihui 的文檔:自動(dòng)化報(bào)告。關(guān)于RStudio+Markdown的信息也可參見陽志平的博客:Markdown寫作淺談。

4. Pandoc

前文說明了使用RStudio進(jìn)行Markdown編寫的方式,有時(shí)我們還需要將編寫好的Markdown文件轉(zhuǎn)換為別的格式。從圖3中可以看到在生成KnitHTML的地方還有Knit PDF和Knit Word兩個(gè)功能,此時(shí)就需要Pandoc的轉(zhuǎn)換功能。Pandoc是由John MacFarlane開發(fā)的標(biāo)記語言轉(zhuǎn)換工具,可實(shí)現(xiàn)不同標(biāo)記語言間的格式轉(zhuǎn)換。Pandoc的安裝可以參考Markdown寫作進(jìn)階:Pandoc入門淺談的介紹進(jìn)行基于Haskell的安裝,也可以直接從Pandoc項(xiàng)目或Pandoc的官方網(wǎng)戰(zhàn)下載適合自己系統(tǒng)的安裝包,直接安裝。安裝之后可以進(jìn)入命令行(比如CMD、PowerShell)敲個(gè)pandoc –help看看安裝成功了沒有。Pandoc安裝成功后,Knit Word就可以使用了,可以將編寫好的Markdown文件轉(zhuǎn)為Word文件。但Knit PDF的使用還需要Latex的支持。

5. TexLive

在工欲善其事,必先利其器一文中我提到過TexLive,更多的TexLive的信息可以參見維基百科——TexLive和Tex Live指南。關(guān)于TexLive的安裝過程,可以參考TeX Live 2014安裝引導(dǎo)流程——知呼專欄。TexLive安裝成功之后,無需什么特殊配置即可使用Kint PDF功能。但有一個(gè)很重要的問題是此時(shí)的Kint PDF在使用XeLatex UTF-8編碼的情況下只能轉(zhuǎn)英文的PDF,PDF中的中文會消失,如果需要包含中文的PDF還需要進(jìn)行一步配置。

6. RStudio 中Knitr 輸出中文的問題

Knit PDF包含中文的問題著實(shí)讓我困擾了很久,最后在knitr作者yihui的GitHub頁面上找到了解決方案,參見RStudio 中Knitr 輸出中文的問題,需要安裝安裝rticles包。具體做法如下:
在RStudio中輸入devtools::install_github(“rstudio/rticles”)。此處可能需要先到這里下載并手動(dòng)安裝Rtools,之后手動(dòng)安裝devtools包等東西,由于我已經(jīng)安過一遍,不方便重現(xiàn),遇到問題的朋友可以按指導(dǎo)安裝。

新建文件是選擇File->New File->R Markdown->From Template->CTeX Documents(如圖4),此時(shí)建立的文件轉(zhuǎn)為PDF格式時(shí)可以包含中文。
圖4:CTeX Documents
此模版具有較多內(nèi)容,如果不需要,又不想每次都手動(dòng)刪除,可以找到此模版配置文件,進(jìn)行更改??紤]到可能涉及作者knitr的版權(quán)問題什么的,此處就不描述具體做法了。還有個(gè)問題,似乎Pandoc對中文文件名支持有些問題,所以保存RMD文件時(shí)候,文件名要使用純英文。通過上述配置,我們終于可以使用RStudio愉快的編寫Markdown文件,并轉(zhuǎn)換Word或者PDF文檔了。

References
http://www.yangzhiping.com/tech/r-markdown-knitr.html——Markdown寫作淺談
http://www.yangzhiping.com/tech/pandoc.html——Markdown寫作進(jìn)階:Pandoc入門淺談
https://github.com/yihui/r-ninja/blob/master/11-auto-report.md——自動(dòng)化報(bào)告
http://zhuanlan.zhihu.com/LaTeX/19779481——TeX Live 2014安裝引導(dǎo)流程——知呼專欄
https://github.com/yihui/knitr/issues/889——RStudio 中Knitr 輸出中文的問題
https://github.com/rstudio/rticles——Knitr templates

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文原載于 陽志平的個(gè)人網(wǎng)站,經(jīng)作者授權(quán)轉(zhuǎn)載于簡書。本文作者為 陽志平。 廢話 寫作會碰到什么難題?Markdow...
    簡書閱讀 71,076評論 15 483
  • Pandoc 使用 前段時(shí)間換了電腦,直接拷過來的MarkDownPad出了點(diǎn)問題,再加上VSCode的MarkD...
    haop閱讀 37,182評論 2 17
  • markdown現(xiàn)在已經(jīng)是一種常見的寫作方式,在CSDN等博客網(wǎng)站上都已經(jīng)有了markdown編輯模式,本人也經(jīng)常...
    會口遁的naruto閱讀 24,601評論 1 31
  • 備份自:http://blog.rainy.im/2015/05/16/rmarkdown-in-rstudio/...
    蛙聲一爿閱讀 50,051評論 1 17
  • 我們在那個(gè)燦爛的午陽下再遇 墻上的鐘有些慢了,分針才走到“11”的位置,下課鈴就響了。 老師今天沒有拖堂,...
    也琴閱讀 500評論 0 0

友情鏈接更多精彩內(nèi)容