check_layout.py: Handle compass-point attributes

This commit is contained in:
Jules Aguillon 2024-07-26 00:10:54 +02:00
parent 3967fb8a9f
commit 9d76227982
2 changed files with 9 additions and 5 deletions

View File

@ -30,8 +30,7 @@ Layout includes some ASCII punctuation but not all, missing: $, &, *, ., /, <, >
# cyrl_jcuken_uk
0 warnings
# cyrl_lynyertz_sr
Layout doesn't define some important keys, missing: delete, loc esc, loc tab
1 warnings
0 warnings
# cyrl_ueishsht
0 warnings
# cyrl_yaverti
@ -102,8 +101,7 @@ Duplicate keys: !, ', ,, -, ., ?
# latn_qwerty_sk
0 warnings
# latn_qwerty_sr
Layout doesn't define some important keys, missing: delete, loc esc, loc tab
1 warnings
0 warnings
# latn_qwerty_tly
Duplicate keys: a, c, j, q
Layout doesn't define some important keys, missing: loc esc, loc tab

View File

@ -9,6 +9,12 @@ KNOWN_NOT_LAYOUT = set([
"greekmath", "numeric", "emoji_bottom_row",
"clipboard_bottom_row" ])
KEY_ATTRIBUTES = set([
"key0",
"key1", "key2", "key3", "key4", "key5", "key6", "key7", "key8",
"nw", "ne", "sw", "se", "w", "e", "n", "s"
])
def warn(msg):
global warning_count
print(msg)
@ -39,7 +45,7 @@ def unexpected_keys(keys, symbols, msg):
def parse_row_from_et(row, keys, dup):
for key in row:
for attr in key.keys():
if attr.startswith("key"):
if attr in KEY_ATTRIBUTES:
k = key.get(attr).removeprefix("\\")
if k in keys: dup.add(k)
keys.add(k)