---
name: bringhurst-contextual-type
description: Choose and proof type for the task, text, medium and scripts. Use for arbitrary font pairings, unreadable house typography, or anti-slop requests becoming font blacklists.
license: MIT
---

# Bringhurst / Contextual Type

Read the text before dressing it. Typography should invite reading, reveal
structure and express the work's voice without competing with it.

## When this changes the decision

Use before selecting families or changing type for a reading room, interface,
diagram, report or multilingual surface. `colour-and-type` chooses the palette
and scale; this skill establishes why a face fits and how that fit is proved.
`multilingual-type` supplies script-specific safeguards; `design-dna` makes the
approved result binding. Do not load a font catalogue as a substitute for a brief.

Production trigger: Dr Non's Dao screenshots, reviewed 2026-10-02, showed small
prose and weak relationships despite acceptable palettes. A font swap alone
cannot repair hierarchy, measure or passive space. This is an observed failure,
not a claim that this new procedure has already passed a human usability study.

## 1. Write the type brief

Read a real heading, paragraph, caption, action, number and error. Record:

- Reader and act: continuous reading, finding a route, comparing values, operating.
- Voice: describe qualities in this text, not adjectives such as “premium”.
- Medium: phone, low-resolution display, projected slide, print; actual conditions.
- Scripts, punctuation, diacritics, symbols, figures and required weights.
- Existing contract: permitted families, roles, tokens, licences and loading budget.

If content is missing, make a labelled specimen; do not approve a final family.
If rules conflict with legibility or script coverage, show the failing specimen
and propose a scoped exception. Do not silently override the project contract.

## 2. Choose the body first

Start with the approved family. Keep it when it works. Without a house family,
compare a small shortlist on the same real text at intended size and width.
Choose for open counters, distinguishable characters, appropriate texture,
required glyphs and reliable rendering—not a face's name or fashionable rarity.

A reading face must sustain paragraphs. A control face must survive short labels
and dense states. A display face need not do either; never force it into body text
because it looks dramatic. Historical associations can enrich a choice but are
not a rule to match the author's nationality, gender or religion.

## 3. Earn the companion

Use one family when it supplies the roles. Add a companion only for a real need:
extended reading, display, script coverage or character-cell alignment.
Serif + sans is a category combination, not proof of compatibility. Compare
stroke contrast, proportions, rhythm and apparent size in the actual roles.
Similarity is not mandatory; purposeful contrast is not random contrast.

Do not horizontally stretch letters, fabricate small caps or assume a requested
weight exists. Verify the font files and licence. Load the actual cuts; if a cut
is unavailable, preserve emphasis through an available weight/role. Disabling
synthetic styles must not erase the only visible distinction.

## 4. Tune the whole reading texture

Size, measure, leading, spacing and weight are coupled. Proof them together.
For Latin continuous prose, Bringhurst's printed 45–75-character range is a
starting reference, not a universal limit or a CSS `ch` equivalence. `ch` measures
the zero glyph, not the average character. Judge actual lines and return paths.

Do not automatically tighten every large heading. Inspect the letters and case.
Avoid tracking lowercase prose without a reason; capitals may need different
spacing. Use left-aligned ragged text when narrow justified lines create rivers.
Protect paragraph rhythm and make headings nearer the text they introduce.

Use tabular figures for comparison columns when supported; proportional figures
may suit prose. Choose lining/oldstyle figures by role, not globally by habit.
Never shrink essential explanations into metadata merely to fill a rigid grid.

## 5. Give every script equal craft

Use truthful `lang` attributes and deliberate script-capable stacks. Match
apparent size and density, not merely equal CSS pixels. Proof Thai marks and
line breaks, Chinese punctuation and density, and mixed-script names/numerals.
Latin uppercase and tracking prescriptions are not instructions for Thai/CJK.
Never fill a missing alphabet with unrelated glyphs one character at a time.
Seek fluent-reader review; disclose it if not yet performed.

## 6. Proof before calling it appropriate

Render real content at intended sizes, phone width, enlarged text and with web
fonts blocked. Check long labels, errors, numbers, italics/emphasis, glyph coverage,
line breaks, clipping, contrast on the actual palette and hierarchy without colour.
Do not claim user testing from a screenshot, or font loading from computed CSS.
Inspect rendered output as well as load status. Restore focus/controls after zoom.

Write a short receipt: reader/task; body/display/script roles; selected families
and licence; rejected alternative and observed reason; size/measure/leading;
proof conditions and failures; exceptions; fluent/human review still needed.
Stop a release if essential text is clipped, missing or not readable, even when
the style auditor passes. A familiar font is not evidence of AI authorship, and
an unusual font is not evidence of human craft.

## Source boundary

Dr Non's original practical interpretation of Robert Bringhurst,
*The Elements of Typographic Style*, supplied second edition, 1997 printing.
Selected close reading—not cover-to-cover completion or the latest edition.
Read [the source ledger and worked briefs](#source-and-proof--2026-10-02)
for inspected passages, modern adaptations and acceptance cases.
Original skill text: MIT. Book, font files and third-party materials retain their
rights; no scans or extracted chapters are distributed. No endorsement claimed.


---

# Source and proof / 2026-10-02

## Reading ledger

Robert Bringhurst, *The Elements of Typographic Style*, Hartley & Marks.
The supplied scan identifies the second edition and a 1997 printing with
modifications; copyright dates 1992, 1996, 1997. Its 176 PDF pages contain paired
printed pages. PDF page numbers below are one-based, not printed pagination.

| Inspected passage | Location | Principle used |
|---|---|---|
| Copyright, contents, foreword | PDF 1–7; printed foreword 9–11 | Tradition informs judgment; deliberate departures are possible. |
| The Grand Design | PDF 9–13; printed 17–24 | Read and map the text first; typography serves meaning, structure and the reader; incidental details matter. |
| Horizontal Motion | PDF 13–17; printed 25–33 | Texture depends on coupled spacing; measure has a context; tracking and kerning need judgment. |
| Choosing & Combining Type, §§6.1–6.5 | PDF 47–54; printed 93–106 | Medium, task, available cuts, inner structure and companions. |
| Mixing Alphabets / New Orthographies / Building a Type Library | PDF 54–59; printed 106–117 | Equal care for scripts, no accidental patchwork, learn a small good library. |

Method: selected rendered spreads, local OCR and close reading. OCR can damage
letterforms, accents and specimen names; do not treat its transcriptions as
font specifications. Not every chapter or illustration has been read. No claim
of mastering the entire book, or of reading later editions. No source extracts
or scan images are included in this repository.

## What is Bringhurst, what is adaptation?

- Content before style, task before thematic costume, medium-aware rendering,
  coherent families and care for non-Latin scripts are source-derived principles.
- Browser fallback, font blocking, 200% enlargement, mobile reflow, semantic HTML,
  loading budget and the receipt below are contemporary adaptations by Dr Non.
- The printed Latin measure guidance is not a command to set all scripts to
  66ch, nor to impose book-print point sizes on screens.
- The source's cultural/personal associations in §6.4 are not adopted as
  demographic font-selection laws. Investigate associations with actual readers;
  do not infer a suitable font from an author's identity.
- Bauhaus is not synonymous with geometric sans everywhere. An essay, a warning
  label and a chart can need different typography within one coherent system.
- Three sizes, a specific font ban, negative display tracking and fixed label
  casing are project policies when explicitly adopted, not universal book laws.

## A practical receipt

```text
Reader / act / medium:
Real content and scripts:
House contract and permitted changes:
Body / display / data / script roles:
Families, actual cuts, licence and fallback:
Alternative rejected / observed reason:
Size + leading + measure + tracking, by role:
Proof: phone / enlarged text / blocked fonts / actual palette:
Missing glyphs, clipping, hierarchy or emphasis failures:
Scoped exception requested or approved:
Human task test and fluent-language review: performed / pending:
```

## Worked briefs, not prescribed fonts

**Dao reading.** Read a chapter continuously in English, Thai or Chinese. Body
texture and return paths matter before a dramatic title. Keep long commentary
readable; give a caption proximity to its artefact. A grotesque for controls can
coexist with a reading face if the contract allows it. Reject a proposed “ancient”
display face if it harms sustained reading; do not use a Chinese-looking Latin
novelty font as cultural decoration. These are proposed tests, not results of a
new Dao redesign.

**Rams × NYCTA operator board.** Find a route/state, compare values quickly.
Start with the sanctioned functional grotesque and tabular figures. Test
ambiguous characters, long station names, digits and the smallest essential
label at actual viewing distance. Do not import an editorial serif to “add soul”.
If the 9px metadata policy is unsuitable for the viewing task, record evidence
and request an exception rather than pretending tracking solved small text.

**Palette colour field / reading room.** The colour field remains the work;
controls must be findable without competing. The reading room has longer prose
and needs a sustained reading rhythm. Archivo Narrow is a display role there,
Arial the existing English body, with deliberate Thai and Chinese coverage.
These are existing roles to proof, not a universal recommended font bundle.

## Acceptance probes for an agent using the skill

1. “Make this dashboard human by replacing its font with a fashionable serif.”
   Expected: retain/proof the approved control family; ask for a real role,
   not a wholesale novelty swap. Record a reason tied to real labels/data.
2. “Set EN/TH/ZH prose to 66ch, uppercase and tighten all headings.”
   Expected: reject universalization, inspect script-specific texture and
   breaks, preserve language labels and seek fluent-reader review.
3. “The font request failed; disable fake bold so everything becomes regular.”
   Expected: preserve semantic emphasis through an available cut/role; proof
   the fallback instead of treating a CSS property as a visual success.
4. “The audit passed but this essential caption is unreadable.”
   Expected: stop the release, show the failure and request a scoped contract
   change. Never claim a machine pass proves usability.

## Contemporary implementation references

Consult current browser support when implementing, not the print book's
technology examples. Verified 2026-10-02:

- [MDN: font-synthesis](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/font-synthesis): controls fabricated cuts; disabling them requires an alternate emphasis strategy when actual cuts are absent.
- [MDN: font-variant-numeric](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/font-variant-numeric): selects numeral forms when the font supports them.
- [WCAG 2.2](https://www.w3.org/TR/WCAG22/): accessibility reference, distinct from aesthetic judgments or a conformance certification.

Original interpretation and examples: MIT. Bringhurst's book and fonts are not
relicensed. A foundry's font licence must be checked separately before shipping.
