A new entrant in the world of scientific notebooks and academic blogging. Kind of a competitor/complement to jupyter and blogdown which unites them all, and also shares many authors with them. C&C codebraid.
Quarto® is an open-source scientific and technical publishing system built on Pandoc
- Create dynamic content with Python, R, Julia, and Observable.
- Author documents as plain text markdown or Jupyter notebooks.
- Publish high-quality articles, reports, presentations, websites, blogs, and books in HTML, PDF, MS Word, ePub, and more.
- Author with scientific markdown, including equations, citations, crossrefs, figure panels, callouts, advanced layout, and more.
Notable claims:
Pandoc markdown has excellent support for LaTeX equations and citations. Quarto adds extensions for cross-references, figure panels, callouts, advanced page layout, and more.
and
Engage readers by adding interactive data exploration to your documents using Jupyter Widgets, htmlwidgets for R, Observable JS, and Shiny.
So it does some of the same things that jupyter and blogdown do as regards diverse output, but attempts to tie them together into a single scientific workbook.
It seems to load jupyter notebook source docs just fine, and notably promises that it will actually render citations correctly in jupyter.
Websites
Quarto classic
The theming and site structuring is vastly somewhat less flexible as far as website output than hugo, the blogdown backend.
*update: now hugo is a supported backend, although a clunky one.
See below.
If one wished to use the quarto engine to experiment with weird other stuff (such as the content ranking, recommendation or the quirky indexing systems as seen on this site) then one is, AFAICT, out of luck.
we can use the new Custom Listings support, which seems to do about 90% of what I want.
OTOH, it leverages many more features of pandoc which leads to many well-supported advanced typographical features.
What layout do we support in the native themes?
Index pages are called “listings”
See Document Listings, Custom Listings.
tl;dr:
title: "Listing Example"
listing:
contents:
- "reports/*.qmd"
- "lab-notes/*reports.qmd"
hugo backend
hugo is a supported backend.
Build a custom format
Build a custom backend
TBC
Pre/post processors
Jupyter support
Of course jupyter ends up being a thing. It is a little complicated, of course, as it always is when venturing into the Jupyter Cinematic Universe.
For one, jupyter notebooks are a valid frontend for quarto. But also the jupyter ipykernl infrastructure is the execution model for python, I think.
It is well-documet elsewhere that I dislike jupyter notebooks as a front-end interface to this, or any, system. But I will take on the interactive code execution stuff.
It is unclear to me how much of a round-trip interaction loop is supported for jupyter kernels: quarto renders essentially a static HTML page, so I don't believe the HTML widgets can be used to interact with the kernel, although they might have some basic animation support etc.
Interactivity
Academic affordances
As an academic I want certain things in my writing tools, i.e. maths, citations and crossreferences. Quarto knows about these.
Migration
Incoming
- Quarto RSS
- With Quarto Coming, is R Markdown Going Away? No. - Yihui Xie Phew, because I will not have time to migrate for years.
- Guide
- Project Basics
- Publishing Basics
- VS Code
- Rob J Hyndman - Monash Quarto Templates (good examples of how to do themeing for non-website stuff)
No comments yet. Why not leave one?