All changes included in 1.8:
Regression fixes
(#6607): Add missing beamer template update for beamer theme options:
colorthemeoptions
,fontthemeoptions
,innerthemeoptions
andouterthemeoptions
.(#12625): Fire resize event on window when light/dark toggle is clicked, to tell widgets to resize.
(#12657): Load Giscus in generated script tag, to avoid wrong-theming in Chrome.
(#12780):
keep-ipynb: true
now works again correctly and intermediate.quarto_ipynb
is not removed.(#13051): Fixed support for captioned Markdown table inside Div syntax for crossref. This is special handling, but this could be output by function like
knitr::kable()
with old option support.
Backwards-compatibility breaking changes
(#13104): Remove
posit-cloud
asquarto publish
destination. See https://docs.posit.co/cloud/whats_new/#october-2024 for details.
Dependencies
Update
bootstrap-icons
to version v1.13.1 from v1.11.1.
Formats
html
(#678): a11y - Provide appropriate
aria-label
to search button.(#726): a11y - Provide
.screen-reader-only
callout type when callout text doesn't naturally include the type.(#5538): Fix code-copy button style so that scrolling behaves properly.
(#5879): Improve font rendering of
kbd
shortcode on macOS.kbd
will now also be stricter in converting keyboard shortcuts to macOS icons.(#8568) Default inline code background color to the code block background color if not specified; foreground color is
$pre-color
in dark mode and (remains) purple in light mode.(#10983): Fix spacing inconsistency between paras and first section headings.
(#11982): Ensure brand.yml logos are resolved correctly when document is in a subdirectory.
(#12259): Fix conflict between
html-math-method: katex
and crossref popups (author: @benkeks).(#12341): Enable light and dark logos for html formats (sidebar, navbar, dashboard).
(#12501): Enable
source: file
forbrand.yml
fonts in HTML.(#12643): Ensure brand.yml logos using urls are rendered correctly by passing them through when resolving brand
processedData
, and not processing them as paths.(#12734):
highlight-style
now correctly supports setting a differentlight
anddark
.(#12747): Ensure
th
elements are properly restored when Quarto's HTML table processing is happening.(#12766): Use consistent equation numbering display for
html-math-method
andhtml-math-method.method
for MathJax and KaTeX (author: @mcanouil)(#12797): Allow light and dark brands to be specified in one file, by specializing colors with
light:
anddark:
.(#12919): Ensure
kbd
shortcode output has hover tooltip.(#12981): Brand should be applied in dark mode when dark mode is enabled by the theme, not the brand.
(#13004): Brand logo shortcode automatically applies
.light-content
and.dark-content
classes, inserts both light and dark logo if brand mode is not specified, and uses alt text from brand logo spec.
revealjs
(#10933): Revealjs supports alt text on logo, as well as customization of light and dark logos at the document level, consistent with other formats.
(#12550): Revealjs supports
brand-mode
, allowing to select either the light or the dark brand.(#12598): Ensure
.fragment
on an image with caption applies to whole figure.(#12716): Correctly resolve
"brand"
set intheme
configuration for document in subdirectory from project root.Use
cdn.jsdelivr.net
for mathjax dependencies to ensure consistent CDN usage across formats. Previously,cdnjs.cloudflare.com
was used forrevealjs
mathjax dependencies, whilecdn.jsdelivr.net
was used for html format.#13316:
code-line-numbers: "1"
correctly highlight the first line now.
docx
(#8392): Fix
docx
generation issues in tables
typst
(#12180): Typst schema / autocomplete for
logo
option haspath
andalt
.(#12554): CSS properties
font-weight
andfont-style
are translated to Typsttext
properties.(#12695): Resolve Typst
font-paths
that start with/
relative to project root.(#12739): Remove unused variable
heading-background-color
andheading-decoration
from Typst's templates. They are leftover from previous change, and not part of Brand.yml schema for typography of headings.(#12815): Do not crash when floats have no content.
(#13119): Expose
brand.logo
metadata as Typst dictionaries.(#13133): Allow customization of light and dark logos at document level, consistent with other formats.
(#13297): Ensure brand.yml logos are resolved correctly when Typst document is in a subdirectory.
beamer
(#12775): Convert Quarto-native layouts (divs with
layout
syntax) to Beamer columns, equivalent to using the Pandoc-native syntax of div withcolumns
andcolumn
classes.
pdf
(#12732): Correctly detect missing definition files in multiline babel error for search package to auto-install.
hugo-md
(#12676): Add support for rendering layout panels that are not floats.
docusaurus-md
#13316:
code-line-numbers: "1"
correctly highlight the first line now.
markdown
formats
([#12630])(https://github.com/quarto-dev/quarto-cli/issues/12630)): emit image element for
video
shortcodes targeting local videos.
Projects
website
(#10284): a11y - Fix keyboard navigation for tabset panels when using an HTML theme. Tabs now properly receive keyboard focus.
(#12551): Improve warning issued when
aliases
would overwrite an existing document.(#12616): find SVG images in image discovery for listings.
(#12693): Prevent resource exhaustion on large websites by serializing
NotebookContext
information to file instead of the environment.(#12949): Ensure redirects preserve
hash
andsearch
when possible.
Crossrefs
(#12615): Adds
algorithm
to theorem environments. (author: @jeremy9959)
Lua Filters and API
(#11750): Extend filter path resolution to support
at
/path
filters from extensions.(#12727): Do not crash in the presence of malformed tabset contents.
(#12806): Use pandoc APIs to handle codepage conversion on Windows.
(#12811): Add support for YouTube Shorts in
video
shortcode.(#13112): Add
quarto.format.format_identifier()
API entry.(#13128): Avoid meta shortcode crash on bad input.
(#13246): Add
quarto.variables.get()
andquarto.metadata.get()
APIs.
Commands
inspect
(#12733): Add installed extensions to
quarto inspect
project report.
add
(#12627): Don't actually install extension when user responds
yes
to first prompt butno
to second.
create
(#12965): Prevent automatic opening of new editor sessions when creating projects in Posit Workbench context. The
--open
flag is now ignored in this environment to avoid issues with Workbench session management.
Extensions
(#12559): New extension type:
brand
for distributing brand.yml configurations with associated assets.
Engines
(#13171): Provide execution information to all engines uniformly via QUARTO_EXECUTE_INFO environment variable. It points to a file on disk containing a JSON object describing the execution environment for code cells to use.
jupyter
(#12753): Support change in IPython 9+ and import
set_matplotlib_formats
frommatplotlib_inline.backend_inline
in the internalsetup.py
script used to initialize rendering with Jupyter engine.(#12839): Support for
plotly.py
6+ which now loads plotly.js using a cdn in script as a module.(#13026, #13151), #13184: Use
jsdelivr
CDN for jupyter widgets dependencies.
knitr
Correctly detect R binary on Windows when
R_HOME
is set - this fixes issue withquarto::quarto_render()
that will now correctly use the same R version as the R session it is called from.
julia
(#12870): Update
julia
engine from0.17.0
to0.17.3
to improvejuliaup
detection on Windows systems and correctly setBase.source_path()
output to match REPL and script usage.
Languages
(#13098): Fox a minor inappropriate phrasing in the Chinese localization of
environment-proof-title
(@sun123xyz).
Other fixes and improvements
(#11321): Follow recommendation from LaTeX project and use
lualatex
instead ofxelatex
as the default PDF engine.(#12782): fix bug on
safeRemoveDirSync
's detection of safe directory boundaries.(#12853): fix replaceAll() escaping issue with embedded notebooks containing
$
in their Markdown.(#12939): Upgrade
mermaidjs
to 11.6.0.(#13031): Add
.quarto_ipynb
files to.gitignore
by default.(#13085): Avoid
kbd
shortcode crashes on unknown OS keys.(#13164): add
julia
to execute schema to allow autocomplete suggestions. (@mcanouil)(#13121): Allow
contents
shortcode to find inline elements.(#13216): Properly disable
downlit
(code-link
) and enablecode-annotations
when non-R code blocks are present.