
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
thpoll
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.