When to use a Hyphen, En Dash or an Em Dash and how to type each character on Windows, Linux and Mac.
- Hyphen
- Used for connecting words or splitting a word which is broken at the end of a line.
- E.g. “panic-stricken”.
- ‐ Hyphen key (next to zero on your keyboard)
- En dash
- Used for demonstrating a relationship between two things, either conceptually or as a range.
- E.g. “2–3” or “A time–money perspective”.
- Windows: Alt + 0150
- Linux: Compose, -, -
- Mac: Option + -
- HTML:
–
- Em dash
- Used for a break of thought.
- E.g. “Could it be true—had I misused punctuation for so long?”
- Windows: Alt + 0151
- Linux: Compose, ‐, ‐, ‐
- Mac: Option + Shift + -
- HTML:
—
- Double Em dash
- Used to indicate missing letters in a word.
- E.g. “What the f——k”.
- Windows: Alt + 0151, Alt + 0151
- Linux: Compose, ‐, ‐, ‐, Compose, ‐, ‐, ‐
- Mac: Option + Shift + -, Option + Shift + -
- HTML
——
“Compose” Key
In Ubuntu, the Compose key is configured from System Settings > Keyboard > Shortcuts > Typing. Personally, I use Alt Gr but there are other options available.
Think of Compose as a mode rather than a modifier; you press and release Compose to enter “Compose Mode”, then once you have entered a sequence it will perform your request (e.g. type an em dash) and go back to regular typing.
For me, on Linux, to get the “En dash”, it is “Compose, -, -,.” – your suggestion appears to be missing the final “.” character. Not sure if that is the same for all Linux OSes, but it is the case for me on Gentoo, Ubuntu 18.04 & 20.04, and Fedora 33 … so I think this might be an oversight.