Chapter: 7 Publications

7.1 R Markdown and knitr

Markdown is a simple, human-readable, language designed to be easily converted into other more practical markup languages such as HTML. A markup language is one where the syntactic elements have implied meaning in terms of how they are organized and displayed. In HTML, these elements are defined with tags, where in Markdown, they are defined by visually friendly syntax.

R Markdown is an extension of this widely used markup language, but the rmarkdown package helps users create dynamic analysis documents that combine code, rendered output (such as figures), and prose (Allaire et al. 2020). Specifically, knitr is the engine that makes it possible to combine runnable text and code in a readable document. R Markdown documents can easily be converted to manifold other formats such as HTML, PowerPoint presentations, Word documents, well formatted PDFs, interactive notebooks (compare to Jupyter) and a few others specific to R which we discuss below.

The Definitive Guide to R Markdown(Xie, Allaire, and Grolemund 2018) can be found here.

7.2 Vingettes

Vingettes, or so-called “long-form documentation”, is the best way to provide end-to-end examples of your package code to a user. More information about writing vingettes can be found in Chapter 9 of R Packages (Wickham and Bryan 2019).

7.3 Bookdown

7.4 Citation Managment

7.4.1 Zotero

7.4.2 Better BibTeX

7.4.3 citr


Allaire, JJ, Yihui Xie, Jonathan McPherson, Javier Luraschi, Kevin Ushey, Aron Atkins, Hadley Wickham, Joe Cheng, Winston Chang, and Richard Iannone. 2020. Rmarkdown: Dynamic Documents for R.

Wickham, Hadley, and Jennifer Bryan. 2019. R Packages.

Xie, Yihui, J. J. Allaire, and Garrett Grolemund. 2018. R Markdown: The Definitive Guide. Boca Raton, Florida: Chapman; Hall/CRC.