US-International Layout without dead keys

A custom Windows layout for vim/Cygwin

My default keyboard layout is US-International. It’s like the US English layout, and also allows many non-ASCII characters via dead-key combinations. I like the layout because it allows me to type several characters I often need, such as ö or ä, without having to switch to a non-English layout that affects more keys.

The US-International layout is problematic, however, when used on a Windows machine together with vim (and some other programs). This keyboard layout also uses the double quotes, apostrophe and a few other keys as dead keys. So to type an apostrophe, it’s not enough to hit ' once, you need to follow it up with space, or another key that doesn’t form a dead-key pair with '. The same goes for ", ^, ~, and `.

With vim in particular, this is inconvenient as it messes with a few common commands, like ` to go to a mark or “ to specify a vim register. And since the dead keys are suppressed at the OS level, there’s no convenient application-level fix.

To address this, I made a custom keyboard layout that retains the AltGr dead key of US-International but removes the dead-key functionality from all character keys. With that keyboard layout, some characters can no longer by typed (such as Portuguese ã) but the AltGr-combinations remain unaffected.

The keyboard layout can be downloaded from Github and built with Microsoft’s Keyboard Layout Creator - instructions are on the Github page.

comments powered by Disqus