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