toolero 0.4.0
New features
- Added
arborize()for rendering syntactic trees as standalone PNG images using Quarto’s Typst engine. Accepts two input formats via thetree_notationargument:-
"simple"(default) – bracket notation string, uses@preview/syntree:0.2.1 -
"structured"– nestedtree()call string, uses@preview/lingotree:1.0.0Output PNG files can be embedded in any document format without requiring a LaTeX installation. Requires Quarto 1.4+ with Typst support and thepdftoolspackage (in Suggests).
-
toolero 0.3.0
CRAN release: 2026-04-27
Breaking changes
-
create_qmd():filenameis now the first argument and has no default – it must be supplied explicitly.pathis now the second argument and defaults to".", allowing natural calls likecreate_qmd("analysis.qmd"). -
write_by_group(): sanitized output filenames now use-(dash) as the separator instead of_(underscore), consistent with the package convention that file names use dashes. Existing workflows that reference output paths by name will need to update accordingly. -
init_project(): thefile_pathargument has been renamed topathfor consistency withcreate_qmd()and the broader package API. Calls usingfile_path =by name will error; positional calls are unaffected.
New features
- Added
generate_kb_xml()to produce UW-Madison KB-importable XML files from rendered Quarto documents. Extracts metadata from the.qmdYAML header and re-renders with embedded resources for self-contained import. -
create_qmd(): addeduse_purlargument (defaultTRUE) that scaffolds a_quarto.ymlpost-render hook and apurl.Rscript for extracting R code from rendered documents intoR/.
Bug fixes
-
init_project(): now runsrenv::snapshot()and creates.renvignoreafterrenv::init(), ensuring the lockfile is populated and.qmdfiles are excluded from dependency scanning at project creation time. -
create_qmd():_quarto.ymlis now copied frominst/templates/rather than written from a hardcoded string, so changes to the template are reflected automatically. -
create_qmd():purl.Ris now correctly placed inR/instead of the project root, consistent with_quarto.ymlcallingRscript R/purl.R. -
create_qmd(): fixed YAML boolean serialization whenyaml_datais supplied.yaml::as.yaml()was convertingtrue/falsetoyes/no, which Quarto does not recognize. A custom handler now forces unquotedtrue/falseoutput. -
inst/templates/purl.R: replacedQUARTO_DOCUMENT_PATHenvironment variable approach withfs::dir_ls()glob scan, which works reliably regardless of how Quarto invokes the post-render script.
toolero 0.2.0
CRAN release: 2026-04-24
Breaking changes
-
create_qmd():pathis now a required argument with no default. PassingNULLor omitting it raises an error. Usetempdir()for temporary output. -
write_by_group():output_diris now a required argument with no default. PassingNULLor omitting it raises an error. Usetempdir()for temporary output. -
init_project():opennow defaults toFALSEinstead ofTRUEto avoid disrupting the current RStudio session in non-interactive contexts.
New features
- Added
detect_execution_context()to identify whether code is running in an interactive R session, aquarto rendercall, or a plainRscriptinvocation. Returns one of"interactive","quarto", or"rscript". - Added
create_qmd()to scaffold a new Quarto document from a reproducible template, including a sample dataset, UW-Madison branded assets, and three-context input resolution viadetect_execution_context(). Optionally pre-populates the YAML header from a user-supplied YAML config file. - Added
write_by_group()to split a data frame by a single grouping column and write each group to a separate CSV file. Filenames are derived from sanitized group values. Optionally writes amanifest.csvlisting output files, group values, and row counts.
toolero 0.1.1
New features
- Added
uw_brandingargument toinit_project(). WhenTRUE, creates anassets/folder in the new project and populates it with UW-Madison RCI branding files (styles.css,header.html,rci-banner.png).
