diff options
author | Johannes Ranke <jranke@uni-bremen.de> | 2022-12-19 12:31:56 +0100 |
---|---|---|
committer | Johannes Ranke <jranke@uni-bremen.de> | 2022-12-19 12:38:07 +0100 |
commit | 886c9ef013124aa954d960c655b349b5340ff154 (patch) | |
tree | cc25364040ce87893d21581380de48c7e9bee422 /R/hierarchical_kinetics.R | |
parent | 0023df3c31fac29b5f9337ecd732a5dfd4d51a2d (diff) |
Rename template folder, create format
Instead of rmarkdown::pdf_document, mkin::hierarchical_kinetics is used
as a document format in the template. In this way, the template file can
be freed from some R code and yaml options that the average user does
not have to be aware of.
Diffstat (limited to 'R/hierarchical_kinetics.R')
-rw-r--r-- | R/hierarchical_kinetics.R | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/R/hierarchical_kinetics.R b/R/hierarchical_kinetics.R new file mode 100644 index 00000000..f7ffb333 --- /dev/null +++ b/R/hierarchical_kinetics.R @@ -0,0 +1,39 @@ +#' Hierarchical kinetics template +#' +#' R markdown format for setting up hierarchical kinetics based on a template +#' provided with the mkin package. +#' +#' @inheritParams rmarkdown::pdf_document +#' @param ... Arguments to \code{rmarkdown::pdf_document} +#' +#' @return R Markdown output format to pass to +#' \code{\link[rmarkdown:render]{render}} +#' +#' @examples +#' +#' \dontrun{ +#' library(rmarkdown) +#' draft("New analysis.rmd", template = "hierarchical_kinetics", package = "mkin") +#' } +#' +#' @export +hierarchical_kinetics <- function(..., keep_tex = FALSE) { + + if (getRversion() < "4.1.0") + stop("You need R with version > 4.1.0 to compile this document") + + if (!requireNamespace("knitr")) stop("Please install the knitr package to use this template") + if (!requireNamespace("rmarkdown")) stop("Please install the rmarkdown package to use this template") + knitr::opts_chunk$set(echo = FALSE, cache = TRUE, comment = "", tidy = FALSE) + knitr::opts_chunk$set(fig.align = "center", fig.pos = "H") + options(knitr.kable.NA = "") + + fmt <- rmarkdown::pdf_document(..., + keep_tex = keep_tex, + toc = TRUE, + includes = rmarkdown::includes(in_header = "header.tex"), + extra_dependencies = c("float", "listing", "framed") + ) + + return(fmt) +} |