Skip to content

Feature Matrix ​

Quick reference mapping every MaTiSSe feature to its activation mechanism and backend support. Columns:

  • CLI flag — command-line option
  • YAML key — metadata or theme YAML key
  • Markdown directive — source-level syntax
  • impress — supported by the default impress.js backend
  • reveal — supported by the reveal.js backend (--backend reveal)

Document structure ​

FeatureMarkdown directiveimpressreveal
Chapter# heading✓✓
Section## heading✓✓
Subsection### heading✓✓
Slide#### heading✓✓
Title page$titlepage / $titlepage[plain]✓✓
File inclusion$include(path)✓✓

CLI options ​

FeatureFlagimpressreveal
Input file-i FILE✓✓
Output directory-o DIR✓✓
Backend selection--backend {impress|reveal}✓✓
Generate sample--sample FILE✓✓
Apply built-in theme--theme NAME✓✓
Offline bundling--offline✓✗
PDF-friendly output--pdf✓✗ (use ?print-pdf URL)
Code highlight style--code-style STYLE✓✓
TOC at chapter start--toc-at-chap-beginning DEPTH✓✓
TOC at section start--toc-at-sec-beginning DEPTH✓✓
TOC at subsection start--toc-at-subsec-beginning DEPTH✓✓
List built-in themes--print-themes✓✓
List code styles--print-code-styles✓✓
Verbose build output--verbose✓✓
Print expanded source--print-parsed-source✓✓
Install shell completion--install-completion {bash|zsh|fish}✓✓

Metadata keys ​

KeyTypeDescriptionimpressreveal
titlestringPresentation title✓✓
subtitlestringSubtitle✓✓
authorslistFull author names✓✓
authors_shortlistAbbreviated authors✓✓
emailslistAuthor emails✓✓
affiliationslistFull affiliations✓✓
affiliations_shortlistAbbreviated affiliations✓✓
datestringPresentation date✓✓
conferencestringConference name✓✓
conference_shortstringAbbreviated conference✓✓
sessionstringSession name✓✓
session_shortstringAbbreviated session✓✓
locationstringVenue location✓✓
location_shortstringAbbreviated location✓✓
logostringLogo image path✓✓
max_timeintegerTimer duration (minutes)✓✓
dirs_to_copylistAsset directories to copy✓✓
css_overthemelistCustom CSS files✓✓

Theme sections ​

SectionYAML keyDescription
Colour variablestheme.paletteNamed variables referenced as $varname
Viewport backgroundtheme.canvasBody background behind all slides
List stylingtheme.listsBullets, counters, markers
TOC stylingtheme.tocActive entry emphasis per hierarchy level
Slide containertheme.layout.slideDimensions, transitions, impress.js data-*
Content areatheme.layout.contentFont, colour, padding of the text region
Header bandstheme.layout.header-NFull-width bands above content
Footer bandstheme.layout.footer-NFull-width bands below content
Sidebar bandstheme.layout.sidebar-NVertical bands left/right of content
Environment defaultstheme.entitiesbox, note, table, figure, video
Code blockstheme.codePygments style + code container CSS
Per-slide overrideovertheme:Same schema as theme + copy-from-theme

Content environments ​

EnvironmentSyntaximpressreveal
Box$box … $endbox✓✓
Note$note … $endnote✓✓ (→ speaker note)
Figure$figure … $endfigure✓✓
Table$table … $endtable✓✓
Video$video … $endvideo✓✓
Columns$columns … $endcolumns✓✓
Callout::: {.callout-TYPE}✓✓
Theorem / lemma / …::: {#PREFIX-id}✓✓
Proof::: {.proof}✓✓
Mermaid diagram```{mermaid}✓✓
Graphviz diagram```{dot}✓✓

Incremental reveals ​

FeatureSyntaximpressreveal
Incremental list::: {.incremental}✓ (substep)✓ (fragment)
Pause token. . .✓✓
Substep block$substep … $endsubstep✓✗
Ordered substeps$substep[order:N]✓✗

Inline formatting extensions ​

FeatureSyntaximpressreveal
Strikethrough~~text~~✓✓
Superscript^text^✓✓
Subscript~text~✓✓
Quarto span[text]{.classname}✓✓
Legacy span!!classname|text!!✓✓
Footnotes[^ref] / [^ref]: …✓✓
Definition listTerm\n: definition✓✓
Image attributes![alt](img){width="60%"}✓✓
Underline span[text]{.underline}✓✓
Highlighted span[text]{.mark}✓✓
Small caps span[text]{.smallcaps}✓✓

Math and code ​

FeatureSyntax / flagimpressreveal
Inline math$...$✓✓
Display math$$...$$✓✓
Literal dollar\$✓✓
Code highlightingfenced ``` blocks✓✓
Highlight style (CLI)--code-style NAME✓✓
Highlight style (theme)theme.code.style✓✓
Per-slide code styleovertheme.code.style✓✓
GFM checklists- [x] item✓✓

Built-in themes ​

impress.js themes ​

NameStructureColours
matisseRight sidebar + header + footerBlue gradient
sapienzaHeader + footerSapienza red
draculaLeft sidebar + header + footerDracula dark
solarized-darkLeft sidebar + header + footerSolarized dark
beamer-antibesThree stacked headersBeamer blue
beamer-berkelyLeft sidebar + headerBeamer blue
beamer-berlinThree headers + two footersBeamer dark blue
beamer-madridHeader + footerBeamer blue

reveal.js themes (built into reveal.js) ​

black, white, moon, sky, beige, night, serif, solarized, dracula, blood, league, simple


Cross-reference labels ​

PrefixDisplay label
figFigure
tblTable
eqEquation
secSection
diaDiagram
thmTheorem
lemLemma
corCorollary
prpProposition
defDefinition
exmExample
exrExercise
remRemark

Syntax: label with {#PREFIX-id}, reference with @PREFIX-id. See Theorems & Proofs.