There are three Unicode keymap definition method available in QMK:
Supports Unicode input up to 0xFFFF. The keycode function is UC(n)
in
keymap file, where n is a 4 digit hexadecimal.
Supports Unicode up to 0xFFFFFFFF. You need to maintain a separate mapping
table const uint32_t PROGMEM unicode_map[] = {...}
in your keymap file.
The keycode function is X(n)
where n is the array index of the mapping
table.
TBD
Unicode input in QMK works by inputing a sequence of characters to the OS, sort of like macro. Unfortunately, each OS has different ideas on how Unicode is inputted.
This is the current list of Unicode input method in QMK:
HKEY_CURRENT_USER\Control Panel\Input Method\EnableHexNumpad
of type REG_SZ
called EnableHexNumpad
, set its value to 1, and reboot. This method is not recommended because of reliability and compatibility issue, use WinCompose method below instead.In quantum/keymap_extras/
, you'll see various language files - these work the same way as the alternative layout ones do. Most are defined by their two letter country/language code followed by an underscore and a 4-letter abbreviation of its name. FR_UGRV
which will result in a ù
when using a software-implemented AZERTY layout. It's currently difficult to send such characters in just the firmware.
AutoHotkey allows Windows users to create custom hotkeys among others.
The method does not require Unicode support in the keyboard itself but depends instead of AutoHotkey running in the background.
First you need to select a modifier combination that is not in use by any of your programs.
CtrlAltWin is not used very widely and should therefore be perfect for this.
There is a macro defined for a mod-tab combo LCAG_T
.
Add this mod-tab combo to a key on your keyboard, e.g.: LCAG_T(KC_TAB)
.
This makes the key behave like a tab key if pressed and released immediately but changes it to the modifier if used with another key.
In the default script of AutoHotkey you can define custom hotkeys.
<^<!<#a::Send, ä
<^<!<#<+a::Send, Ä
The hotkeys above are for the combination CtrlAltGui and CtrlAltGuiShift plus the letter a.
AutoHotkey inserts the Text right of Send,
when this combination is pressed.