Live and let diaeresis

This morning I faced a critical problem that could only be solved by programming. I was eating breakfast and scrolling through Twitter on my phone when I found it necessary to use the phrase “Spın̈al Tap” in a reply to Casey Liss. To my shock and horror, I learned that although I’ve long had a snippet (first TextExpander, now Keyboard Maestro) on my Macs for typing “Spın̈al Tap” with the proper umlaut, I’d never created the equivalent on my phone.

I have the Uniconsole app, but isn’t in its character set, mainly because isn’t a real character. No language uses it, which is part of the Spın̈al Tapıan̈ joke. To get the umlaut, or diaeresis, over the n, you have to use a special Unicode character called the combining diaeresis, which Uniconsole doesn’t include.

Python to the rescue! All I needed to do was launch Pythonista, slide over to the console, and type in this:

print u'Sp\u0131n\u0308al Tap'

Pythonista console

The combining diaeresis is the \u0308 that comes right after the n, and the dotless i (which I could have copied from Uniconsole, but I figured I might as well go full Python1) is the \u0131 just before the n.

How did I know the codes for those two characters? I didn’t, but I knew the FileFormat site had the answers. For each character, it gives a little table showing how to generate it in different environments. Here’s the table for the combining diaeresis:

FileFormat table

With the crisis averted and the tweet sent, I went into my phone’s settings and added an important Text Replacement:

Tap text replacement

  1. Yes, I’m still running Python 2, even in Pythonista.