jhudsl / ottrpal

Tools for converting OTTR courses into Leanpub or Coursera courses :otter:
https://jhudatascience.org/ottrpal/
GNU General Public License v3.0
3 stars 1 forks source link

Persisting state across Rmd file execution #101

Open psychemedia opened 2 years ago

psychemedia commented 2 years ago

I have various complex builds that embed knitrd documents from templated sub-documents, as well as Rmd files that rely on state set in previously run Rmd files from earlier in the same book build.

Is there a default setting in the ottrpal::bookdown_to_leanpub() function that clears state when each new Rmd file is executed? I can build books fine in RStudio via the book build tools, but using ottrpal::bookdown_to_leanpub() I get not found errors where state set from other files is not available.

cansavvy commented 2 years ago

Hi @psychemedia sorry for my slow response. Thanks for your interest in ottrpal and your idea contributions here!

The inner workings of bookdown_to_leanpub depend on bookdown which run each file individually and sequentially based on what's in the _bookdown.yml file.

I'm not sure I completely understand the ask here. Do you think you could link me to an example or write a toy example?

psychemedia commented 2 years ago

I don't have a minimal example to hand, but the idea was along lines of suppose I have a book constructed from two Rmd files. The first sets a = 1, the second uses a. Ideally, I'd like to run both files in the same scope so variables set from the first Rmd file can be referenced by the second.

psychemedia commented 2 years ago

In passing, I think that quarto offers a leanpub flavoured markdown output, so for future rather than legacy projects, .qmd and the quarto publishing route look promising for LeanPub publications.

cansavvy commented 2 years ago

In passing, I think that quarto offers a leanpub flavoured markdown output, so for future rather than legacy projects, .qmd and the quarto publishing route look promising for LeanPub publications.

We do hope to offer Quarto compatibility and have started work on it. https://github.com/jhudsl/quarto_ottr_test

But I can't tell you how quickly we'll get this going as we have other pots on the burner right now as well.