diff options
author | Zach White <[email protected]> | 2021-03-24 09:26:38 -0700 |
---|---|---|
committer | GitHub <[email protected]> | 2021-03-24 09:26:38 -0700 |
commit | 299008be36076343edadb7a36bf2fff820425ad1 (patch) | |
tree | d47d2fddc54b329b4ddb3128ef070b4cdba776a4 /lib/python/qmk/commands.py | |
parent | 723d9af04d610c4a2fcb8fcf39e8420c71ed4df0 (diff) | |
download | qmk_firmware-299008be36076343edadb7a36bf2fff820425ad1.tar.gz qmk_firmware-299008be36076343edadb7a36bf2fff820425ad1.zip |
Add support for qmk_configurator style aliases (#11954)
* Add support for qmk_configurator style aliases
* add the keyboard aliases to the api data
* add support for a keyboard metadata file
* make flake8 happy
Diffstat (limited to 'lib/python/qmk/commands.py')
-rw-r--r-- | lib/python/qmk/commands.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/python/qmk/commands.py b/lib/python/qmk/commands.py index 6a57c1ff5d..d742f67560 100644 --- a/lib/python/qmk/commands.py +++ b/lib/python/qmk/commands.py @@ -13,6 +13,7 @@ from milc import cli import qmk.keymap from qmk.constants import KEYBOARD_OUTPUT_PREFIX +from qmk.json_schema import json_load time_fmt = '%Y-%m-%d-%H:%M:%S' @@ -190,6 +191,15 @@ def parse_configurator_json(configurator_file): """ # FIXME(skullydazed/anyone): Add validation here user_keymap = json.load(configurator_file) + orig_keyboard = user_keymap['keyboard'] + aliases = json_load(Path('data/mappings/keyboard_aliases.json')) + + if orig_keyboard in aliases: + if 'target' in aliases[orig_keyboard]: + user_keymap['keyboard'] = aliases[orig_keyboard]['target'] + + if 'layouts' in aliases[orig_keyboard] and user_keymap['layout'] in aliases[orig_keyboard]['layouts']: + user_keymap['layout'] = aliases[orig_keyboard]['layouts'][user_keymap['layout']] return user_keymap |