## lesson-md : convert Rmarkdown files to markdown
lesson-md : ${RMD_DST}
-# Use of .NOTPARALLEL makes rule execute only once
-${RMD_DST} : ${RMD_SRC}
- @bin/knit_lessons.sh ${RMD_SRC}
+_episodes/%.md: _episodes_rmd/%.Rmd
+ @bin/knit_lessons.sh $< $@
## lesson-check : validate lesson Markdown.
lesson-check : lesson-fixme
install.packages(missing_pkgs)
}
- ## find all the Rmd files, and generate the paths for their respective outputs
- src_rmd <- list.files(pattern = "??-*.Rmd$", path = "_episodes_rmd", full.names = TRUE)
- dest_md <- file.path("_episodes", gsub("Rmd$", "md", basename(src_rmd)))
+ ## get the Rmd file to process from the command line, and generate the path for their respective outputs
+ args <- commandArgs(trailingOnly = TRUE)
+ if (length(args) != 2){
+ stop("input and output file must be passed to the script")
+ }
+ src_rmd <- args[1]
+ dest_md <- args[2]
+
## knit the Rmd into markdown
- mapply(function(x, y) {
- knitr::knit(x, output = y)
- }, src_rmd, dest_md)
-
+ knitr::knit(src_rmd, output = dest_md)
+
# Read the generated md files and add comments advising not to edit them
vapply(dest_md, function(y) {
con <- file(y)
# The Makefile passes in the names of files.
if [ $# -ne 0 ] ; then
- Rscript -e "source('bin/generate_md_episodes.R')"
+ Rscript -e "source('bin/generate_md_episodes.R')" $*
fi