Ornamental fonts
Decorative pictograms for fiction: fleurons between scenes, ornamental chapter
openers, floral separators, and pointing-hand manicules. Keystone ships three
ornamental font families that plug into the font
shortcut like any other family — no new syntax.
| Key | Glyphs |
|---|---|
fourier-ornaments |
Fleurons, aldine leaves, manicules, swashes |
imfell-flowers-1 |
Square foliate printer's blocks |
imfell-flowers-2 |
Floral headers, dividers, manicules, florets |
These are single-variant faces — no bold or italic — and render in PDF and EPUB only. DOCX and ODT have no ornament fallback; see Cross-format behavior.
Placing an ornament
Wrap the character in a .font span and point family= at an ornament face:
An inline fleuron [❦]{.font family="fourier-ornaments"} between clauses.
The catch is which character produces which ornament, and it differs per
font. An ornament font does not map ornaments to the Unicode code points you
might expect (✿ U+273F, ❀ U+2740, …); it maps them to whatever slots its
designer chose — usually Latin letters and digits. Type the character the font
actually carries, not the Unicode ornament you have in mind. A character the
font does not carry renders as a missing glyph.
fourier-ornamentscarries three real Unicode fleurons —❦(U+2766),❧(U+2767), and☙(U+2619) — so those work directly. Its remaining ornaments live onA–Z,0–9, andc d e m n.imfell-flowers-1andimfell-flowers-2carry no Unicode ornaments. Every ornament sits on a Latin letter — and, inimfell-flowers-2, a few digits. Use the glyph reference to pick one.
Apply .font to the ornament characters themselves, not to running prose. An
ornament font has no normal letters, so wrapping a whole paragraph turns it into
boxes and stray ornaments.
Recipes
Each recipe is a thin shortcut over an existing handler — see
Writing your own shortcuts. Define them in
your project's shortcuts.yaml; they are not built-in, because ornaments compose
from the font registry and existing handlers, so the convenience layer is yours
to name. The scene-break recipes pair the ornament with
scene-break, which supplies centering and page-break
protection.
Scene break with a fleuron. The body injects the ornament; scene-break
handles placement.
fleuron-break:
class: scene-break
body: |
[❦]{.font family="fourier-ornaments"}
::: fleuron-break
:::
Scene break with an aldine leaf pair.
aldine-break:
class: scene-break
body: |
[☙]{.font family="fourier-ornaments"} · [❧]{.font family="fourier-ornaments"}
Scene break with flowers. fourier-ornaments puts a five-petal flower on E
(the Unicode flower ✿ is not in the font):
flower-break:
class: scene-break
body: |
[E E E]{.font family="fourier-ornaments"}
Overridable scene break. Leave the body off and choose the glyph inline.
Author content takes priority over body injection, so the glyph is
author-controlled while scene-break still centers and protects it.
ornament-break:
class: scene-break
::: ornament-break
[❧]{.font family="fourier-ornaments"}
:::
Chapter decoration. A symmetric header centered on its own line.
imfell-flowers-2's E is a complete floral header ornament:
chapter-ornament:
class: align
interface:
style:
bind: class.style
default: center
body: |
[E]{.font family="imfell-flowers-2"}
Or swap the body for smaller fourier-ornaments glyphs — an aldine leaf, a
fleuron, a leaf:
body: |
[G · ❧ · H]{.font family="fourier-ornaments"}
Glyph reference
Each table lists the decorative slots worth using; preview the full set to see everything a font carries.
fourier-ornaments
| Character | Ornament |
|---|---|
❦ ❧ ☙ |
Floral-heart fleurons (Unicode U+2766 / U+2767 / U+2619) |
G H |
Aldine leaf (hedera) pointing right / left |
I J |
Filled leaf pointing right / left |
K L |
Slim leaf, right / horizontal |
E F |
Five-petal flower with foliage |
9 A B |
Floral pairs |
C c D d |
Curled leaves and doves |
M N |
Manicule (pointing hand) right / left, outline |
m n |
Manicule right / left, solid |
O P Q R |
Horizontal swash and wave ornaments |
U |
Four-petal floral cross |
V X |
Four-pointed star, open / filled |
W |
Pendant bud ornament |
S T |
Crossed swords, outline / filled |
The remaining slots are non-decorative pictograms (0 no-entry, 1 warning,
8 bomb, e euro, Y frown, …) — usable but rarely what a novel wants.
imfell-flowers-1
Each of A–Z and a–c is a distinct square foliate printer's block —
dense symmetric ornaments suited to borders and heavy separators. They have no
individual names; pick one by previewing the full set.
The PUA slots (U+E001, U+E002) are empty.
imfell-flowers-2
The richest family for fiction. Highlights:
| Character | Ornament |
|---|---|
1 2 |
Manicule (pointing hand) right / left |
E F |
Symmetric floral header ornament (chapter opener) |
H I g |
Wide ornate floral band |
Y r v |
Floral crown spray |
Z z B b U |
Horizontal divider with central motif |
A a |
Large solid paisley leaf |
O o |
Five-petal flower |
C c |
Four-petal floret |
Q q w |
Trefoil / clover |
N n |
Floral vine spray |
J–M, j–m |
Individual swirl flourishes |
x |
Butterfly floral |
The digits 3 4 5 and the PUA slots (U+E000–U+E002) are empty.
Previewing the full set
To see every glyph a font carries, set a run of its letters and digits in the ornament family and build a PDF — this block is glyphs to inspect, not prose. Each position shows the glyph on that slot, or a blank where the slot is empty:
::: {.font family="imfell-flowers-1"}
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9
:::
Cross-format behavior
| Format | Ornament rendering |
|---|---|
| Embedded and rendered exactly | |
| EPUB | Embedded with an @font-face rule; renders in readers that honor embedded fonts |
| DOCX / ODT | No ornament fallback exists, so the character renders in the document font: a letter- or digit-mapped ornament shows that plain character, a Unicode ornament a missing glyph. Treat ornaments as a PDF/EPUB feature |
An ornament font has no web-safe equivalent, so there is nothing to fall back to in a word processor.
Zero-setup fleurons
Two of the classic fleurons need no ornament font at all: Linux Libertine, the
default document font, already covers ☙ (U+2619) and ❧ (U+2767). If you only
need an occasional fleuron and are not changing fonts, type those characters
directly with no .font wrapper. The ornament families exist for the much wider
decorative repertoire and for consistent rendering regardless of document font.
See also
- Typography & fonts — the document font, the
fontshortcut, and the built-in families - Breaks & spacing — the
scene-breakshortcut - Writing your own shortcuts — the interface system and body injection