/rticles

LaTeX Journal Article Templates for R Markdown

Primary LanguageTeX

Build Status Downloads from the RStudio CRAN mirror

Installation

You can install and use rticles from CRAN as follows:

install.packages("rticles")

If you wish to install the development version from GitHub (which often contains new article formats), you can do this:

remotes::install_github("rstudio/rticles")

If you want to install a locally modified version, clone this repo and do:

remotes::install_local("path/to/local/repo")

Overview

The rticles package provides a suite of custom R Markdown LaTeX formats and templates for various formats. Most of the templates are provided and maintained by the community, and anyone can contribute a new template. See How to contribute below.

Currently included templates and their contributors are the following:

Journal Contributors Pull request Output format
ACM: Association for Computing Machinery @ramnathv #8 acm_article()
ACS @yufree #15 acs_article()
AEA: American Economic Association @sboysel #86 aea_articles()
AGU @eliocamp #199 agu_article()
AMS: American Meteorological Society @yufree #96 ams_article()
ASA: American Statistical Association #111 asa_article()
arXiv pre-prints based on George Kour's template @alexpghayes #236 arxiv_article()
Bioinformatics @ShixiangWang #297 bioinformatics_article()
Biometrics @daltonhance #170 biometrics_article()
Bulletin de l'AMQ @desautm #145 amq_article()
Copernicus Publications @nuest, @RLumSK #172, #342 copernicus_article()
CTeX ctex()
Elsevier @cboettig #27 elsevier_article()
Frontiers @muschellij2 #211 frontiers_article()
IEEE Transaction @Emaasit, @espinielli, @nathanweeks, @DunLug #97, #169, #227, #263, #264, #265 ieee_article()
JOSS: Journal of Open Source Software JOSE: Journal of Open Source Education @noamross #229 joss_article()
JSS: Journal of Statistical Software jss_article()
LIPIcs @nuest #288 lipics_article()
MDPI @dleutnant #147 mdpi_article()
MNRAS: Monthly Notices of the Royal Astronomical Society @oleskiewicz #175 mnras_article()
OUP: Oxford University Press @dmkaplan #284 oup_articles()
PeerJ: Journal of Life and Environmental Sciences @zkamvar #127 peerj_article()
PLOS @sjmgarnier #12 plos_article()
PNAS: Proceedings of the National Academy of Sciences @cboettig #72 pnas_article()
RSOS: Royal Society Open Science @ThierryO #135 rsos_article()
RSS: Royal Statistical Society @carlganz #110 rss_article()
Sage @oguzhanogreden #181 sage_article()
Springer @strakaps #164 springer_article()
SIM: Statistics in Medicine @ellessenne #231 sim_article()
Taylor & Francis @dleutnant #218 tf_article()
The R Journal rjournal_article()

You can also get the list of available journal names with rticles::journals().

Under the hood, LaTeX templates are used to ensure that documents conform precisely to submission standards. At the same time, composition and formatting can be done using lightweight markdown syntax, and R code and its output can be seamlessly included using knitr.

Using rticles requires the prerequisites described below. You can get most of these automatically by installing the latest release of RStudio (instructions for using rticles without RStudio are also provided).

Using rticles from RStudio

To use rticles from RStudio:

  1. Install the latest RStudio.

  2. Install the rticles package.

  3. Use the New R Markdown dialog to create an article from one of the templates:

    New R Markdown

Using rticles outside of RStudio

  1. Install Pandoc using the instructions for your platform.

  2. Install the rticles packages.

  3. Use the rmarkdown::draft() function to create articles:

    rmarkdown::draft("MyJSSArticle.Rmd", template = "jss_article", package = "rticles")
    rmarkdown::draft("MyRJournalArticle", template = "rjournal_article", package = "rticles")

How to contribute?

Most of the templates are contributed directly by the users in the community. If you want rticles to offer a new journal format, you can contribute by the following way.

Suggest an idea for new format opening an issue.

You may not feel confident enough or may not have time to contribute a new format. By opening a new issue, you can share the idea for this format, and see if someone in the community can help on it.
This is not the best way to quickly get your format included but at least it is a great way to see if others are insterested too.

To see the existing suggested formats, just filter issues with the help wanted label. You can then add a 👍 or help to add the template 😉.

Contribute a new template format opening a pull request.

To contribute a new format, you need to open a new pull request (PR). When opening the PR, you'll see the PR template explaining how to proceed and what is important to check. Please follow it.
Even if you are just starting or you are not finished, you share your work by creating a draft PR. It is a great way to let us know that you are still working on it (like these opened ones), and it is also a great way to ask for help from the community.
When you are ready, you can submit the PR for review, and we will iterate until it is merged.

Technical resources helpful to contribute a template

The best way to get started is to look at the previous examples of submitted PR. You'll find links to them in the table above.

All the rticles format are build similarly by providing a new pandoc tex template to replace the default one. You'll learn more about pandoc templates in these places:

You can study existing formats to see how all this works.