Feature image by Aryan Dhiman.

German umlauts on a US keyboard

As someone learning German, I wanted to avoid learning a new keyboard layout (German QWERTZ) as well as the language. Thus in this blog post, I go into the details of how to get German umlauts on a US keyboard layout across Linux, MacOS and Windows.

A little background

Like most Polish computer users, I grew up with the, awkwardly named, Polish (programmers) layout. It is effectively a English (US) with the Alt+Gr (a.k.a. right Alt/Option) key used as a modifier to produce all the funny Polish characters of, among many others, a > ą, l > ł and z > ź.

The Polish Programmers keyboard with a lot of nice modifications.

The Polish Programmers keyboard with a lot of nice modifications.

The reason why the layout is called “Polish (programmers)” is historical. In the 1980s an Polish keyboard layout, mimicked after the pre-existing typewriter layout, was officially sanctioned. However, as the wild 1990s saw a huge influx of computers directly imported from the US, mostly by engineers, a significant chunk of computers in Poland had a US keyboard. Instead of spending money on a new keyboard, Poles decided to just hack it and use the Alt+Gr. And as a Polish proverb says “prowizorka jest nieśmiertelna” (make-shift solutions are immortal), the “Polish (programmers)” soon became the de-facto standard, including Polish classrooms.

What I wanted?

Basically, I have type-memory on an English US keyboard, with a tendency to press Alt+Gr for accents in Polish. Thus, to naturally type in Germna, I’d massively prefer a US keyboard with Alt+Gr as a method for inputting German umlauts of a > ä, o > ö, u > ü as well as s > ß, with the Shift acting only as a capitalization key.

Turns out, it’s quite easy to set up.

Ubuntu

Ubuntu, and most modern distros, already ship with the relevant keyboard configuration called “German (US, with German Letters”). Unfortunately, the typuical place where you’d add it, i.e. Settings > Region and Region > Input Sources > +, doesn’t allow you to select it.

That’s because, in order to make the selection less confusing, most extended layouts are hidden from the users. To enable that, you will need to install Gnome Tweaks.

Just tick the Show Extended Input Sources.

Just tick the Show Extended Input Sources.

After that, in the Settings > Region and Region > Input Sources > + will have an extra step. Select English (United States) and then German (US, with German letters).

The layout looks like this:

It even has the handy € sign under e.

It even has the handy € sign under e.

MacOS

There’s an excellent third-party keyboard layout by Patrick Zippenfenig (github). To install it for all users, open a Terminal and do:

sudo echo
# type in your password to avoid having to type it afterwards

After that, copy paste this magical one-liner to download and install it:

curl -sL https://api.github.com/repos/patrick-zippenfenig/us-with-german-umlauts/tarball/master | sudo tar xz --exclude=README.md --strip=1 -C /Library/Keyboard\ Layouts/

And then Preferences > Keyboard > Input Sources > + and select it:

It even has the handy € sign under e.

It even has the handy € sign under e.

Windows

I don’t really use Windows. But apparently it has a built in United States International keyboard layout. Follow this guide to use it.