#' Render a pandoc template.
#'
#' This is a hacky way to access the pandoc templating engine.
#'
#' @param metadata A named list containing metadata to pass to template.
#' @param template Path to a pandoc template.
#' @param output Path to save output.
#' @return (Invisibly) The path of the generate file.
#' @examples
#' x <- rticles:::template_pandoc(
#' list(preamble = "%abc", filename = "wickham"),
#' rticles:::find_resource("rjournal_article", "RJwrapper.tex"),
#' tempfile()
#' )
#' if (interactive()) file.show(x)
template_pandoc <- function(metadata, template, output, verbose = FALSE) {
tmp <- tempfile(fileext = ".md")
on.exit(unlink(tmp))
cat("---\n", file = tmp)
cat(yaml::as.yaml(metadata), file = tmp, append = TRUE)
cat("---\n", file = tmp, append = TRUE)
cat("\n", file = tmp, append = TRUE)
rmarkdown::pandoc_convert(tmp, "markdown", output = output,
options = paste0("--template=", template), verbose = verbose)
invisible(output)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.