Skip to contents

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 the tree_notation argument:
    • "simple" (default) – bracket notation string, uses @preview/syntree:0.2.1
    • "structured" – nested tree() call string, uses @preview/lingotree:1.0.0 Output PNG files can be embedded in any document format without requiring a LaTeX installation. Requires Quarto 1.4+ with Typst support and the pdftools package (in Suggests).

toolero 0.3.0

CRAN release: 2026-04-27

Breaking changes

  • create_qmd(): filename is now the first argument and has no default – it must be supplied explicitly. path is now the second argument and defaults to ".", allowing natural calls like create_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(): the file_path argument has been renamed to path for consistency with create_qmd() and the broader package API. Calls using file_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 .qmd YAML header and re-renders with embedded resources for self-contained import.
  • create_qmd(): added use_purl argument (default TRUE) that scaffolds a _quarto.yml post-render hook and a purl.R script for extracting R code from rendered documents into R/.

Bug fixes

  • init_project(): now runs renv::snapshot() and creates .renvignore after renv::init(), ensuring the lockfile is populated and .qmd files are excluded from dependency scanning at project creation time.
  • create_qmd(): _quarto.yml is now copied from inst/templates/ rather than written from a hardcoded string, so changes to the template are reflected automatically.
  • create_qmd(): purl.R is now correctly placed in R/ instead of the project root, consistent with _quarto.yml calling Rscript R/purl.R.
  • create_qmd(): fixed YAML boolean serialization when yaml_data is supplied. yaml::as.yaml() was converting true/false to yes/no, which Quarto does not recognize. A custom handler now forces unquoted true/false output.
  • inst/templates/purl.R: replaced QUARTO_DOCUMENT_PATH environment variable approach with fs::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(): path is now a required argument with no default. Passing NULL or omitting it raises an error. Use tempdir() for temporary output.
  • write_by_group(): output_dir is now a required argument with no default. Passing NULL or omitting it raises an error. Use tempdir() for temporary output.
  • init_project(): open now defaults to FALSE instead of TRUE to 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, a quarto render call, or a plain Rscript invocation. 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 via detect_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 a manifest.csv listing output files, group values, and row counts.

toolero 0.1.1

New features

  • Added uw_branding argument to init_project(). When TRUE, creates an assets/ folder in the new project and populates it with UW-Madison RCI branding files (styles.css, header.html, rci-banner.png).

toolero 0.1.0

  • Initial CRAN submission.