Typing weird symbols

Writing with added 🆕🐜🐜

January 3, 2019 — December 17, 2024

computers are awful
typography
Figure 1

In principle, this is a page for absolutely anything about good fonts and typographical style on the internet. In practice, a small subset of that information is stuff that I need regularly and is hard to search for or remember; Most of that is about typing wacky characters. This may not be a good use of your time. tl;dr typing fancy punctuation is easy enough except in Windows for some reason. In Linux, I like the version using the Compose key.

An unhealthy proportion of the remaining material, i.e. the non-typing-smart-quotes-related stuff, is about exotic LaTeX UTF errors.

For actual information about typography more broadly construed, see Matthew Butterick’s Practical Typography, which is a whole online book making an eloquent and detailed case for using the web for reading, which sounds nice but also like it might cut into screen time allocated to Candy Crush. If you need fonts that can display the characters you have just painstakingly worked out how to type, see fonts.

🏗 make or include a keyboard shortcut table

🏗 which things apply only to US-English keyboards?

1 Needful characters

How I input characters not visible on my keyboard varies by platform.

NB Windows is, AFAICT, simply taking the piss here. Straight and curly quotes are entered by numerical codes. I could possibly define better custom shortcuts using PowerToys Keyboard Manager utility. Or automate it away using typographical macros. Or edit the document in question from some other OS, which TBH seems like the best option.

On macOS, there is a helpful character palette which appears if I type ^-⌘-Space. NB the default characters it searches over for me are not useful. I recommend configuring it to contain more useful characters.

1.1 Quotes, apostrophes

Opening single curly quote, ‘
⎇ + ] (Mac)
Compose + < ' (Gnome)
AltGr + 9 (Any X?)
Alt 0145 (Windows 🤪)
Closing single curly quote, ’
⎇ + } (Mac)
Compose + > ' (Gnome)
AltGr + 0 (Any X?)
Alt 0146 (Windows)
Opening double curly quote, “
Alt + [ (Mac)
Compose + < " (Gnome)
Alt 0147 (Windows)
Closing double curly quote, ”
⎇ + { (Mac)
Compose + > " (Gnome)
Alt 0148 (Windows)
Opening low quote, „
Compose + , " (Ubuntu)

1.2 Dashes and spacers

en dash, —
⎇ - (Mac)
Compose - - . (Gnome)
em dash, —
⎇ _ (Mac)
Compose - - - (Gnome)
Ellipsis, …
⎇ ; (Mac)
Compose .. (Gnome)
Non-breaking space
⎇ <space> (Mac)
Compose <space> <space> (Gnome)

This last one is AFAICT mostly needed to avoid widows and such in titles, but hopefully we can all avoid that hack now thanks to CSS widows and orphans properties which solve this at a styling level. Although some people observe even more prescriptions than me, like no line breaks after Roman numerals or whatever.

2 Compose keys on X Windows

Bonus time: Where is that compose key?

Using Ubuntu? The traditional instructions about compose keys don’t work per default on recent versions.

You can re-enable Compose using gnome-tweaks:

sudo apt install gnome-tweak-tool

Then launch Tweaks

  1. Go to Keyboard & Mouse.
  2. Choose something other than disabled for the Compose Key option.

I set Compose to be Capslock because, like hundreds of millions of computer users, I have never pressed that key deliberately to obtain capital letters in my whole life and it seems unlikely that this will change in the coming decades.1

Putting this all together means that e.g. I now type ü as Capslock+" u and as Capslock + < ". Which is reasonably mnemonic if you look at a US keyboard layout. Bonus: disables caps lock.

As of the last few days, my computer starts forgetting the compose key settings when it wakes from sleep. Putting the following command in the X11 start-up apps list does the job:

setxkbmap -option compose:caps

Now I can treat myself to a caret.

For me, in recent history, this setting has joined a long list of settings that my laptop now forgets after waking from sleep. So, the downside is that now you can end up with the Caps Lock key actually locking in into ALL CAPITALS BECAUSE YOU ACTUALLY SOMETIMES PRESS IT NOW SO HOW DO YOU DISABLE CAPS LOCK? There is an annoying workaround:

You can run the setleds -caps command from within a console. To get to a console, press Ctrl+Alt+F1, and press Ctrl+Alt+F7 to get back to where you were.

I’ve also seen the following recommended:

xmodmap -e "clear Lock"
Figure 2

You can alternatively (additionally?) enable ISO_Level3_Shift which does a similar thing AFAICT but with less configurability and less documentation online

Launch GNOME Tweaks

  1. Go to Keyboard & Mouse
  2. Click on Additional Layout Options
  3. Expand Miscellaneous compatibility options, check Enable extra typographic characters

It is not clear to me how I enter Greek characters using either of the above methods. There is something called a dead_greek key? Is that real?

Or I could memorise some 4-digit unicode code points and enter characters via Ctrl-Shift-U. That would be a great use of my brief and precious time on this sweet, sweet planet.

But which Compose shortcuts exist? There is no canonical list and you kinda need to guess what happens on your local computer might vary. The Gtk list is a good start. There is an encyclopedia of these symbols at fsymbols.com, although only a subset of the shortcuts listed there work on my config. And you can, hypothetically, define your own. The wikipedia list has the most common examples. The local version is supposedly in a file like /usr/share/X11/locale/am_ET.UTF-8/Compose but for me this includes mostly Ethiopian input methods and not the basic stuff, so I give up for now.

Figure 3

Bonus time:

3 Emoji

See emoji.

4 Finding that weird character

There is a nifty web app which solves a lot of these problems for one, called tell.wtf. Give it a go. You can scribble a character and it tells you the unicode translation.

Similarly, shapecatcher lets you sketch it in the browser.

Unicode character search and Unilist and copybar all provide classic style search.

If you then need to encode it to code points or UL encoding or whatever, see the many web-friendly encodings in the amusing Cryptii app and r12a >> Unicode code converter.

5 Advanced character molestation

Figure 4

Combatwombat’s Lunicode.js is full of programmatic unicode mangling tricks, e.g.

Wonky alternatives to the usual characters.

చօղҟվ ąӀէҽɾղąէìѵҽʂ էօ էհҽ մʂմąӀ çհąɾąçէҽɾʂ.

One can play with it at Lunicode.com. Crucially, Lunicode supports Zalgo text, and various other stupid stunts from /r/Unicode/. (In fact, Zalgo text is a cottage industry.) I’m more of a trap text person myself, obvs.

qaz.wtf Unicode Text Converter gives us another menu of quaint text transformations.

6 Sources

Footnotes

  1. also I have never typed a numeral on the numeric keypad. As far as I know, those keys are wire to play Minesweeper.↩︎