Close

​ Remap your keys..!

A project log for PolyKybd (Displays In Your Keycaps)

Freedom at your fingertip.

thpollthpoll 08/18/2026 at 10:490 Comments

Some time ago, I introduced an "Intl" key that lets me type the German ä, ö, ü and ß  (just hold the Intl key and press a, o, u or s) on a normal US layout (I indeed prefer how the wildcards are arranged over the German layout and no, I'm not a big fan of the US International Layout where e.g. ' + a makes á). For other languages, I can remap a to à, á, â, ã, ä, å, æ, ā, ă, ą, ȁ, ȃ, ǎ, ǟ, ǡ, ǻ, ȧ, ḁ, ạ, ả, ấ, ầ, ẩ, ẫ, ậ, ắ, ằ, ẳ, ẵ or ặ, so whatever variation you need. Press Intl and tap Ctrl and the number row turns into a picker of that letter's variations - 549 of them, every accented form encodes as a single character. Pick one, and that's what the key types from then on. Which works fine until a language with multiple variations of the same letter turns up. For example, there could be è, é and ê at the same time. To solve that, the variations can now be fully rearranged. Hold Intl, tap the new remap key, press the key you want to change, then press the letter it should host:

Remapping q, j and ; onto e, then giving each its own accent - é è ê ë on four keys at once.

So yes, also punctuation keys can host a letter now too. The layout decides: A key that isn't on the Intl layer simply never offers itself, which is how backslash excludes itself without anyone writing a rule. 

Here a small gif going through all variations:

I hope that gives an idea of how the PolyKybd deals with special characters. Of course you can also use the layout for your own language and have the Latin character variation directly tied to a key. That works perfectly too.

As always: firmware, PolyHost app, and docs are on GitHub.

Best, Thomas

Discussions