example-essay.typ
A conformance sample for the Typst implementation — single column, justified. Rendered below from typeset.typ; the checker compiles it fresh on every commit.
The rendered pages are not available here — the
source is below. To build them in a checkout, run
node tools/build-previews.mjs with Typst on PATH.
1// A conformance check: the essay from typeset.adilsoncarvalho.com, set in Typst.
2#import "typeset.typ": *
3
4#show: typeset.with(justified: true, indented: true)
5
6#frontmatter-title-block(
7 title: [On the Measure of a Line],
8 subtitle: [Why the width of a text column is the first decision, and the typeface is very nearly the last],
9 author: [Adilson Carvalho],
10 place-date: [Sydney, 28 August 2026],
11)
12
13#frontmatter-abstract[
14 Every argument about typefaces is downstream of an argument about column
15 width. This essay makes the narrow case that a document set at the wrong
16 measure cannot be rescued by any choice of face.
17]
18
19#quote(type: "epigraph", attribution: [Jost Hochuli])[
20 Anything but the simplest of documents is an argument about attention.
21]
22
23#dropcap[Ask anyone to improve a document and they will change the font. It is the most visible lever and the least effective one. The reader who abandoned your report on page three did not abandon it because Calibri is thin; they abandoned it because each line ran a hundred and ten characters wide.]
24
25This is not a matter of taste. The return sweep — the movement from the end of
26one line to the beginning of the next — is a motor task, and like every motor
27task it has an error rate that rises with distance.
28
29== The range, and why it is a range
30
31The conventional figure is forty-five to seventy-five characters for a single
32column, with sixty-six given as the ideal.#footnote[Robert Bringhurst, _The Elements of Typographic Style_, 4th ed., §2.1.2.]
33The width of the range is the interesting part.
34
35#quote(attribution: [Emil Ruder, _Typographie_, 1967])[
36 Typography has one plain duty before it and that is to convey information in
37 writing. No argument or consideration can absolve typography from this duty.
38]
39
40#quote(type: "pullquote")[No argument can absolve typography from this duty.]
41
42#break-asterism()
43
44== What the measure costs
45
46Fixing the measure on A4 means giving up horizontal space. Two answers: a margin
47is not empty, and you can put something in it.
48
49#figure(
50 caption: [Setting widths for a single column on A4, by point size.],
51 ts-table(
52 columns: (1fr, auto, auto, auto, auto),
53 rows: 3,
54 table.header[Typeface][Size (pt)][Leading][Measure (mm)][Chars],
55 [EB Garamond], [11.0], [1.45], [128], [66],
56 [Source Serif 4], [10.5], [1.42], [124], [64],
57 [Charis SIL], [10.0], [1.40], [119], [67],
58 ),
59)
60
61#callout(title: [Note])[
62 Point sizes assume the document is printed at 100%. Fit-to-page scaling
63 silently invalidates every measurement here.
64]
65
66- An unordered item, with a grey mid-dot for a marker.
67- A second item long enough to wrap, so the runover aligns to the text.
68
69/ Measure: The length of a line of type, counted in characters.
70/ Leading: The vertical distance between baselines.
71
72#quote(type: "verse")[
73 Whose woods these are I think I know. \
74 His house is in the village though;
75]
76
77#frontmatter-colophon[
78 Set in EB Garamond, 11 on 16 points, with Source Sans 3 for headings.
79 Composed in Typst.
80]