redoc is a package to enable a two-way R Markdown-Microsoft Word workflow. It generates Word documents that can be de-rendered back into R Markdown, retaining edits on the Word document, including tracked changes.
redoc is not yet stable (and currently in suspended mode); its core engine and API are still subject to change. It’s been overhauled a few times already! I welcome your contributions and feedback (though it’ll take a bit to get to them).
Install the redoc package with the remotes (or devtools) package:
Note that redoc requires a recent version of Pandoc (>= 2.1.2). If you have RStudio version 1.2 or higher, you should have this by default.
redoc provides an R Markdown output format,
redoc(), built on top of
rmarkdown::word_document(). You will typically call it via the YAML header in your R Markdown document. You have the option of highlighting the outputs (both chunk and inline) in the Word Document.
redoc() output resembles typical R Markdown Word output, but has some key differences:
highlight_outputs = FALSE)
.Rmdand all code is stored internally in Word document for later retrieval.
library(redoc) print(basename(redoc_example_docx())) #>  "example.docx" dedoc(redoc_example_docx()) #>  "./example.Rmd"
If the Word document has tracked changes,
dedoc() will, by default, convert these to back to Critic Markup syntax. However, tracked changes are not necessary. You can view the changes between the original R Markdown file and the de-rendered one using the
redoc has three RStudio Addins to simplify workflow when working with R Markdown documents:
redoc_diff()in the RStudio viewer.
The package also contains a
dedoc R Markdown template.