Styleguide

The technical reference, in both themes.

Every token and component, rendered once on paper and once on the reversed plate. The theme toggle in the header changes the page chrome; each sheet below is fixed to its theme.

asciitable.co

Light — ink on paper

X3.4-1967 / Table 1

Vol. 1 — A reference for developers

The American Standard Code for Information Interchange, at a glance.

128 characters, seven bits each. Find any of them by glyph, number, escape or name, and learn why they sit where they do.

Fig. 0x41Capital letter A
650x411000001
Fig. 1Punched-tape motif: each column is one character, seven holes per byte, with the sprocket track between.

Palette — two-colour print

  • --paper#f3efe6
  • --sheet#fbf8f2
  • --ink#16130f
  • --muted#5b544a
  • --spot#d9411e
  • --spot-text#b8341a
  • --flat#e8e0ce
  • --undef#ddd4c2
  • --sprocket#8c8273

Category screens: one ink, four textures

  • Control
  • Digit
  • Punctuation
  • Letter
  • Undefined
  • Space-like

Type

Newsreader — display & proseWhy DEL is 127
JetBrains Mono — glyphs & valuesA 0x41 1000001A %41 \x1b ^[ -> != 0x
IBM Plex Sans Condensed — labelsControl · Digit · Uppercase · Copy hex
  • --text-h1Heading 1
  • --text-h2Heading 2
  • --text-card-titleCard title
  • --text-dekDek
  • --text-proseProse
  • --text-bodyBody
  • --text-captionCaption
  • --text-glyphGrid glyph
  • --text-monoTile value
  • --text-labelLabel
  • --text-label-xsTile label

Components

ESC, 0011011
0x93, 8 bits

DEL sits at 127, every one of its seven bits set, for a physical reason. A hole punched in paper tape couldn’t be un-punched, so an operator who mistyped backed the tape up and punched all seven holes over the error. Tape readers were built to skip it.

The same logic explains NUL at 0: blank, unpunched leader tape reads as nothing.

Fig. 2History as marginalia, not detours.
[0x5B1011011

Ctrl clears the 0x40 bit ↓

ESC0x1B0011011
Fig. 3Why Ctrl+[ is Escape: bit diagrams as explanation.

Card

Origins

A short history of ASCII

From telegraph codes to the seven bits every computer still speaks.

Spacing

  • --space-1
  • --space-2
  • --space-3
  • --space-4
  • --space-5
  • --space-6
  • --space-7
  • --space-8
  • --space-9
  • --space-10
asciitable.co

Dark — reversed plate

X3.4-1967 / Table 1

Vol. 1 — A reference for developers

The American Standard Code for Information Interchange, at a glance.

128 characters, seven bits each. Find any of them by glyph, number, escape or name, and learn why they sit where they do.

Fig. 0x41Capital letter A
650x411000001
Fig. 1Punched-tape motif: each column is one character, seven holes per byte, with the sprocket track between.

Palette — two-colour print

  • --paper#131210
  • --sheet#1c1a17
  • --ink#eee7d8
  • --muted#a39b8c
  • --spot#f2683f
  • --spot-text#f2683f
  • --flat#22201c
  • --undef#2a2723
  • --sprocket#6e6659

Category screens: one ink, four textures

  • Control
  • Digit
  • Punctuation
  • Letter
  • Undefined
  • Space-like

Type

Newsreader — display & proseWhy DEL is 127
JetBrains Mono — glyphs & valuesA 0x41 1000001A %41 \x1b ^[ -> != 0x
IBM Plex Sans Condensed — labelsControl · Digit · Uppercase · Copy hex
  • --text-h1Heading 1
  • --text-h2Heading 2
  • --text-card-titleCard title
  • --text-dekDek
  • --text-proseProse
  • --text-bodyBody
  • --text-captionCaption
  • --text-glyphGrid glyph
  • --text-monoTile value
  • --text-labelLabel
  • --text-label-xsTile label

Components

ESC, 0011011
0x93, 8 bits

DEL sits at 127, every one of its seven bits set, for a physical reason. A hole punched in paper tape couldn’t be un-punched, so an operator who mistyped backed the tape up and punched all seven holes over the error. Tape readers were built to skip it.

The same logic explains NUL at 0: blank, unpunched leader tape reads as nothing.

Fig. 2History as marginalia, not detours.
[0x5B1011011

Ctrl clears the 0x40 bit ↓

ESC0x1B0011011
Fig. 3Why Ctrl+[ is Escape: bit diagrams as explanation.

Card

Origins

A short history of ASCII

From telegraph codes to the seven bits every computer still speaks.

Spacing

  • --space-1
  • --space-2
  • --space-3
  • --space-4
  • --space-5
  • --space-6
  • --space-7
  • --space-8
  • --space-9
  • --space-10