I am still learning how to use Kaleidoscope. Therefore my question may seem silly and obvious. Sorry for that.
In the existing Model100.ino some symbolic key names are used, like Key_Equals
, Key_Slash
, etc. More can be found in the files below src/kaleidoscope/key_defs/
.
But I am not sure how they should be used. I expected them to match the actual keycodes, so I can use them to specify the keycode that should be produced by a certain key. But I found, that they are totally dependend on the keyboard layout selected in the OS. For example if I define my custom keymap with a QWERTY keymap on the OS side in mind it works. But if the keyboard layout on the OS is e.g. QWERTZ, the resulting characters are mostly different.
This makes it rather hard to use them. What is the intended way to use such symbolic names if one intends to use the keymap with a host layout different than QWERTY?
Also, I noticed that a lot of symbolic key names are missing. Those are mostly the ones that are shifted variants in QWERTY. For example Key_Colon
does not exist. It could be created by LSHIFT(Key_Semicolon)
when using a QWERTY layout. But I noticed that e.g. Key_Pipe
already is defined in aliases.h
. Why have some symbolic names been predefined and others are not?
Also, as they depend on QWERTY being the OS keyboard layout, they mostly do not work with other layouts.
Sorry for the dumb questions, but I am not used to programming my keyboard and have a few difficulties understanding the concepts behind it.