On Windows, use wincompose. Space followed by a hyphen gives you an emdash with the cute half-width spaces around it. On Android, I can get an emdash by long pressing hyphen. There's also a keyboard shortcut on the mac for it. No idea about Linux/BSD or iOS, unfortunately.
On Windows I also use QuickAccent, now part of PowerToys. I could never remember the Alt-code for the em dash. Apparently it's Alt-0151. With QuickAccent I hold a letter and right or left arrow and up comes a menu of related symbols. It's pretty neat.
On Mac, it's option-shift-hyphen. Option-hyphen gives the en dash.
On Linux, you may be able to type Ctrl-Shift-U to get unicode entry and type 2014 and Enter. 2013 is the en dash. Again, I will never remember that.
lazyownrt · · focus · HN ↗
Leynos · · focus · HN ↗
projektfu · · focus · HN ↗
On Mac, it's option-shift-hyphen. Option-hyphen gives the en dash.
On Linux, you may be able to type Ctrl-Shift-U to get unicode entry and type 2014 and Enter. 2013 is the en dash. Again, I will never remember that.
asciimov · · focus · HN ↗
adastra22 · · focus · HN ↗
Leynos · · focus · HN ↗
ZPrimed · · focus · HN ↗
— (em dash)
Option+- gives you an "en dash": – which is longer than a normal hyphen.
zahlman · · focus · HN ↗