Open kdlrose opened 1 week ago
What does the Configurator key tester log? https://config.qmk.fm/#/test
for а (0x0430):
KEY-DOWN - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18
KEY-DOWN - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48 in 16.000ms
KEY-DOWN - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52
KEY-UP - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52 in 21.000ms
KEY-DOWN - QMK: KC_3 Event key: 3 Code: Digit3 KeyCode: 51
KEY-UP - QMK: KC_3 Event key: 3 Code: Digit3 KeyCode: 51 in 18.000ms
KEY-DOWN - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48 in 22.000ms
KEY-UP - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18 in 187.000ms
for р (0x0440):
KEY-DOWN - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18
KEY-DOWN - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48 in 22.000ms
KEY-DOWN - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52
KEY-UP - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52 in 25.000ms
KEY-DOWN - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52
KEY-UP - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52 in 19.000ms
KEY-DOWN - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48 in 14.000ms
KEY-UP - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18 in 168.000ms
for А (0x0410):
KEY-DOWN - QMK: KC_LSFT Event key: Shift Code: ShiftLeft KeyCode: 16
KEY-UP - QMK: KC_LSFT Event key: Shift Code: ShiftLeft KeyCode: 16 in 90.000ms
KEY-DOWN - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18
KEY-DOWN - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48 in 13.000ms
KEY-DOWN - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52
KEY-UP - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52 in 13.000ms
KEY-DOWN - QMK: KC_1 Event key: 1 Code: Digit1 KeyCode: 49
KEY-UP - QMK: KC_1 Event key: 1 Code: Digit1 KeyCode: 49 in 21.000ms
KEY-DOWN - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48 in 13.000ms
KEY-UP - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18 in 125.000ms
for Р (0x0420):
KEY-DOWN - QMK: KC_LSFT Event key: Shift Code: ShiftLeft KeyCode: 16
KEY-UP - QMK: KC_LSFT Event key: Shift Code: ShiftLeft KeyCode: 16 in 112.000ms
KEY-DOWN - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18
KEY-DOWN - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48 in 11.000ms
KEY-DOWN - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52
KEY-UP - QMK: KC_4 Event key: 4 Code: Digit4 KeyCode: 52 in 14.000ms
KEY-DOWN - QMK: KC_2 Event key: 2 Code: Digit2 KeyCode: 50
KEY-UP - QMK: KC_2 Event key: 2 Code: Digit2 KeyCode: 50 in 17.000ms
KEY-DOWN - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: 0 Code: Digit0 KeyCode: 48 in 14.000ms
KEY-UP - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18 in 120.000ms
My manual input with the hex input source selected shows something slightly different:
KEY-DOWN - QMK: KC_LSFT Event key: Shift Code: ShiftLeft KeyCode: 16
KEY-DOWN - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18
KEY-DOWN - QMK: KC_0 Event key: ) Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: ) Code: Digit0 KeyCode: 48 in 67.000ms
KEY-DOWN - QMK: KC_4 Event key: $ Code: Digit4 KeyCode: 52
KEY-UP - QMK: KC_4 Event key: $ Code: Digit4 KeyCode: 52 in 71.000ms
KEY-DOWN - QMK: KC_2 Event key: @ Code: Digit2 KeyCode: 50
KEY-UP - QMK: KC_2 Event key: @ Code: Digit2 KeyCode: 50 in 57.000ms
KEY-DOWN - QMK: KC_0 Event key: ) Code: Digit0 KeyCode: 48
KEY-UP - QMK: KC_0 Event key: ) Code: Digit0 KeyCode: 48 in 77.000ms
KEY-UP - QMK: KC_LSFT Event key: Shift Code: ShiftLeft KeyCode: 16 in 2556.000ms
KEY-UP - QMK: KC_LALT Event key: Alt Code: AltLeft KeyCode: 18 in 2413.000ms
But it looks as though the firmware is doing the same (correct) thing, so the issue is not on that end.
The main reason I'm using a unicode map instead of
#include "russian_keymap.h"
is because with that methodRU_YO
outputsKC_LCBR
andKC_RCBR
.
keymap_russian.h
assumes the Windows Russian layout; the Mac Russian layout is probably different. AFAIK MacOS also supports the “Russian (PC)” layout which is identical to the one used by Windows; alternatively, you may make a PR to add keymap_russian_mac_iso.h
or keymap_russian_mac_ansi.h
(there might be two slightly different versions). Or, as an immediate solution, just do
#include "keymap_russian.h"
#undef RU_YO
#define RU_YO KC_foo /* the QWERTY key which actually outputs that character on your Mac */
(For many languages such workaround won't be enough, because you would also need to adjust the sendstring tables; in this case, however, send_string() does not support those characters anyway.)
Describe the Bug
Firmware compiles and flashes with no issues in QMK CLI, but on use these characters don't actually appear when typed:
Keyboard Used
planck/rev7
Link to product page (if applicable)
No response
Operating System
macOS 12
qmk doctor Output
Is AutoHotKey / Karabiner installed
Other keyboard-related software installed
No response
Additional Context
I have a 96-character unicode map of 64 Cyrillic characters and 32 alchemical glyphs that works perfectly except for Cyrillic А, а, Р, and р regardless of aliases under
#define
. The only common quirk between them is their unicodes:At first I thought it was just their ending in 0, but 0x2650 (♐) works fine. The main reason I'm using a unicode map instead of
#include "russian_keymap.h"
is because with that methodRU_YO
outputsKC_LCBR
andKC_RCBR
.My map is here: kdlrose/planck-keymaps.