rmdformats
This R package provides ready-to-use HTML output formats and templates for RMarkdown documents. The goal is to produce clean documents "out of the box", with or without the RStudio IDE.
Formats gallery
The package provides several HTML output formats. You can click on an image to see a real HTML output sample.
material format
Format taken from the Material design theme for Bootstrap 3. Document is split into pages at each <h1> header, and the table of contents allows an animated navigation between these pages (you can use the cards: false preamble parameter to disable the splitting and display all the cards at once).
readthedown format
Adapted from the corresponding readtheorg theme of the org-html-themes project, fully responsive with dynamic table of contents and collapsible navigation.
html_clean format
Simple and clean template with dynamic table of contents, very similar to the one from the great knitrBootstrap package by Jim Hester.
html_docco format
Simple template, no table of contents. CSS heavily inspired from the default one of the docco project.
Features and helpers
Some extra features are available depending on the format :
readthedownis fully responsive, with collapsible navigationhtml_cleanandreadthedownprovide an automatic and dynamic table of contentshtml_cleanandhtml_doccoprovide automatic thumbnails for figures with lightbox display- code folding and tabsets are supported like in RStudio's HTML template
The package also provides a create.doc() function as well as RStudio document
templates to easily generate an empty and ready to use rmarkdown file with
several configuration directives.
Finally, it also provides the pilltabs() helper function, which allows to display a crosstab dynamically. See one of the output samples for a live example.
Installation
You can install the latest stable release from CRAN :
install.packages("rmdformats")Or the latest development snapshot from GitHub :
install.packages(remotes) # if necessary
remotes::install_github("juba/rmdformats")Creating a new document
Within RStudio
Choose File > New File... > R Markdown..., then select From Template.
You should then be able to create a new document from one of the package
templates.
Without RStudio
The create.doc() function allows you to create a new directory with a clean
ready-to-use RMarkdown file. create.doc() gets two main arguments :
dirnameis the name of the folder and RMarkdown file to be createdformatis the format name ("html_clean"or"html_docco")
By default, a Makefile file will be created in the new folder for direct
rendering from the command line.
Rendering
With RStudio
Rendering from within RStudio should be quite simple : just click the Knit button.
Rendering from R
You can render your document into HTML directly from within R with the
render() function from the rmarkdown package :
library(rmarkdown)
render("mydocument.Rmd")Rendering with the Makefile
If you created your .Rmd file with the create.doc() function, you can then
generate HTML or PDF files with :
make html
make pdfYou can also clean out any generated files and cache with :
make cleanCredits
- Magnific popup lightbox plugin
- The code of
create.doc()is heavily inspired by thecreate.project()function of the ProjectTemplate package - The CSS for the
html_doccoformat is heavily inspired from the default one of the docco project. - The CSS and JavaScript for
readthedownis adapted from the correspondingreadtheorgtheme of the org-html-themes project, which is itself inspired by the Read the docs Sphinx theme. - The CSS and JavaScript for
materialhas been taken from the Material design theme for Bootstrap 3 project and its presentation page - JavaScript and HTML code for code folding and tabbed sections are taken from the RStudio's default
rmarkdownHTML template
The html_clean styling and features are very similar to the ones from the great
knitrBootstrap package by Jim
Hester.