跳到主要内容

config-common

The common configurations of the slides.

Parameters

breakable : bool​

Whether to allow slide content to overflow to the next page. When true (default), content that exceeds the slide height will automatically create new pages. When false, content is constrained to a single page using a non-breakable block, which is useful for ensuring a strict one-to-one mapping between source slides and output pages in agentic workflows. Default is true.

clip : bool​

Whether to clip overflowing slide content when breakable is false. When true, content that exceeds the slide height will be visually truncated. When false, overflowing content remains visible but does not create new pages. Only takes effect when breakable is false. Default is false.

detect-overflow : bool​

Whether to detect and warn on slide content overflow when breakable is false. When true, a layout measurement is performed and a warning is emitted if the content height exceeds the available slide height, which is useful for catching overflow early in agentic workflows without aborting compilation. When false, no overflow detection is performed. Only takes effect when breakable is false. Default is true.

handout : bool​

Whether to enable the handout mode. By default, it retains only the last subslide of each slide, but this can be overridden via handout-subslides. Default is false.

handout-subslides : none | int | array | str​

The subslides to include in handout mode. Accepts the same format as visible-subslides (e.g. 2, (1, 3), "2-", "1, 3-5"). When none, the last subslide is used (default behavior). Default is none.

slide-level : int​

The level of the slides. Default is 2, which means the level 1 and 2 headings will be treated as slides.

slide-fn : function​

The function to create a new slide.

new-section-slide-fn : function​

The function to create a new slide for a new section. Default is none.

new-subsection-slide-fn : function​

The function to create a new slide for a new subsection. Default is none.

new-subsubsection-slide-fn : function​

The function to create a new slide for a new subsubsection. Default is none.

new-subsubsubsection-slide-fn : function​

The function to create a new slide for a new subsubsubsection. Default is none.

receive-body-for-new-section-slide-fn : bool​

Whether to receive the body for the new section slide function. Default is true.

receive-body-for-new-subsection-slide-fn : bool​

Whether to receive the body for the new subsection slide function. Default is true.

receive-body-for-new-subsubsection-slide-fn : bool​

Whether to receive the body for the new subsubsection slide function. Default is true.

receive-body-for-new-subsubsubsection-slide-fn : bool​

Whether to receive the body for the new subsubsubsection slide function. Default is true.

show-strong-with-alert : bool​

Whether to show strong with alert. Default is true.

datetime-format : auto | str​

The format of the datetime. Default is auto.

appendix : bool​

Is touying in the appendix mode. The last-slide-counter will be frozen in the appendix mode. Default is false.

freeze-slide-counter : bool​

Whether to freeze the slide counter. Default is false.

zero-margin-header : bool​

Whether to show the full header (with negative padding). Default is true.

Whether to show the full footer (with negative padding). Default is true.

auto-offset-for-heading : bool​

Whether to add an offset relative to slide-level for headings. Default is true.

enable-pdfpc : bool​

Whether to add <pdfpc-file> label for querying. Default is true. You can export the .pdfpc file directly using: typst query --root . ./example.typ --field value --one "<pdfpc-file>" > ./example.pdfpc

enable-mark-warning : bool​

Whether to enable the mark warning. Default is true.

reset-page-counter-to-slide-counter : bool​

Whether to reset the page counter to the slide counter. Default is true.

show-only-notes : bool​

Whether to show the speaker notes as the main content with the slide shown as a small thumbnail in the top right corner. Default is false. This is similar to LaTeX Beamer's \setbeameroption{show only notes}. It is useful for using speaker notes with presentation tools that let you load two PDFs and synchronize them, one to display on the main screen and one on the auxiliary screen.

show-notes-on-second-screen : none | alignment​

Whether to show the speaker notes on the second screen. Default is none. Currently, the alignment can be none, bottom, and right.

horizontal-line-to-pagebreak : bool​

Whether to convert horizontal lines to page breaks. Default is true. You can use markdown-like syntax --- to divide slides.

reset-footnote-number-per-slide : bool​

Whether to reset the footnote number per slide. Default is true.

nontight-list-enum-and-terms : bool​

Whether to make tight argument always be false for list, enum, and terms. Default is false.

align-list-marker-with-baseline : bool​

Whether to align the list marker with the baseline. Default is false.

align-enum-marker-with-baseline : bool​

Whether to align the enum marker with the baseline. Default is false. It will only work when the enum item has a number like 1..

scale-list-items : none | float​

Whether to scale the list items recursively. For example, scale-list-items: 0.8 will scale the list items by 0.8. Default is none.

enable-frozen-states-and-counters : bool​

Whether to enable the frozen states and counters. It is useful for equations, figures, and theorems. Default is true.

show-hide-set-list-marker-none : bool​

Whether to set the list marker to none for hide function. Default is true.

show-bibliography-as-footnote : bool​

Whether to show the bibliography as footnote. Default is none. It receives a bibliography function like bibliography(title: none, "ref.bib"), or a dict like (numbering: "[1]", bibliography: bibliography(title: none, "ref.bib")).

frozen-states : array​

The frozen states for the frozen states and counters. Default is ().

default-frozen-states : function​

The default frozen states for the frozen states and counters. Default is state for ctheorems package.

frozen-counters : array​

The frozen counters for the frozen states and counters. You can pass some counters like (counter(math.equation),). Default is ().

default-frozen-counters : array​

The default frozen counters for the frozen states and counters. The default value is (counter(math.equation), counter(figure.where(kind: table)), counter(figure.where(kind: image))).

label-only-on-last-subslide : array​

We only label some contents in the last subslide, which is useful for ref equations, figures, footnotes, and theorems with multiple subslides. Default is (figure, math.equation, footnote).

preamble : function​

The function to run before each slide. Default is none.

default-preamble : function​

The default preamble for each slide. Default is a function to check the mark warning and add pdfpc file.

slide-preamble : function​

The function to run before each slide. Default is none.

default-slide-preamble : function​

The default preamble for each slide. Default is none.

subslide-preamble : function​

The function to run before each subslide. Default is none.

default-subslide-preamble : function​

The default preamble for each subslide. Default is none.

page-preamble : function​

The function to run before each page. Default is none.

default-page-preamble : function​

The default preamble for each page. Default is a function to reset the footnote number per slide and reset the page counter to the slide counter.

default-composer : auto | function | array​

The default composer for slides. It is used when the composer argument of the slide function is auto. Default is auto, which falls back to using cols.with(lazy-layout: false). For example, config-common(default-composer: cols.with(lazy-layout: false, gutter: 2em)) sets the default gutter between columns to 2em for all slides.

Returns: dictionary