Files
zeekay c2437e058a fix(font): the italic that ships is the italic that renders
Zen-Italic-Variable.woff2 has been in the package all along and no binding
reached it. `./sans` and `./mono` each named one file, and zen.css wrote
font-style:normal into every rule, so every surface in the estate has been
rendering italic as a slanted roman while the drawn italic sat unreferenced in
the same directory.

Nothing reports this. document.fonts.check("italic 16px 'Zen'") answers true
either way, because the browser will synthesise what it cannot load; only the
network tells you which happened. Before: one request, Zen-Variable.woff2.
After: two, and Zen/italic is a loaded face.

The root export was also the ladder — eighteen static cuts per family, which is
byte-for-byte what sans-non-variable and mono-non-variable already are. One
binding under two names, with the heavier of the two on the path everyone
imports by default. The root is now the variable pair; the ladder keeps the two
names that say what it is.

FAMILY gains `css` beside `stem` because the two differ (ZenMono on disk, 'Zen
Mono' in a stylesheet) and the CSS family name had been spelled out separately
from the table that owns it.
2026-08-28 17:46:45 -07:00

29 lines
561 B
JavaScript

// Generated by scripts/next.mjs. Do not edit.
import localFont from "next/font/local";
export const Zen = localFont({
src: [
{
path: "./fonts/zen-sans/Zen-Variable.woff2",
weight: "100 900",
style: "normal",
},
{
path: "./fonts/zen-sans/Zen-Italic-Variable.woff2",
weight: "100 900",
style: "italic",
},
],
variable: "--font-zen-sans",
fallback: [
"ui-sans-serif",
"system-ui",
"-apple-system",
"Segoe UI",
"Roboto",
"Helvetica Neue",
"Arial",
"sans-serif",
],
});