ab1541b fixes this issue but feels like a hack. I have a hunch that the proper fix is to avoid adding Control_* characters to the list of chars or modifying resolve directly but I can't grok or debug it well tonight.
|
|
|
# takes km, keycode and mod-bitfield, returns [ksym char] tuple |
|
# char is printable representation of ksym, or "" if unprintable |
|
proc resolve {km code mod} { |
|
lassign $km ksyms chars |
|
set kk "$code $mod" |
|
|
|
if {![dict exists $ksyms $kk]} return |
|
return [list [dict get $ksyms $kk] [dict_getdef $chars $kk ""]] |
|
} |
|
|