aboutsummaryrefslogtreecommitdiff
path: root/lib/python/qmk/info.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python/qmk/info.py')
-rw-r--r--lib/python/qmk/info.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py
index 0e540c00a..e92c3335b 100644
--- a/lib/python/qmk/info.py
+++ b/lib/python/qmk/info.py
@@ -9,6 +9,7 @@ from milc import cli
9from qmk.constants import CHIBIOS_PROCESSORS, LUFA_PROCESSORS, VUSB_PROCESSORS 9from qmk.constants import CHIBIOS_PROCESSORS, LUFA_PROCESSORS, VUSB_PROCESSORS
10from qmk.c_parse import find_layouts 10from qmk.c_parse import find_layouts
11from qmk.keyboard import config_h, rules_mk 11from qmk.keyboard import config_h, rules_mk
12from qmk.keymap import list_keymaps
12from qmk.makefile import parse_rules_mk_file 13from qmk.makefile import parse_rules_mk_file
13from qmk.math import compute 14from qmk.math import compute
14 15
@@ -25,14 +26,21 @@ def info_json(keyboard):
25 info_data = { 26 info_data = {
26 'keyboard_name': str(keyboard), 27 'keyboard_name': str(keyboard),
27 'keyboard_folder': str(keyboard), 28 'keyboard_folder': str(keyboard),
29 'keymaps': {},
28 'layouts': {}, 30 'layouts': {},
29 'maintainer': 'qmk', 31 'maintainer': 'qmk',
30 } 32 }
31 33
34 # Populate the list of JSON keymaps
35 for keymap in list_keymaps(keyboard, c=False, fullpath=True):
36 info_data['keymaps'][keymap.name] = {'url': f'https://raw.githubusercontent.com/qmk/qmk_firmware/master/{keymap}/keymap.json'}
37
38 # Populate layout data
32 for layout_name, layout_json in _find_all_layouts(keyboard, rules).items(): 39 for layout_name, layout_json in _find_all_layouts(keyboard, rules).items():
33 if not layout_name.startswith('LAYOUT_kc'): 40 if not layout_name.startswith('LAYOUT_kc'):
34 info_data['layouts'][layout_name] = layout_json 41 info_data['layouts'][layout_name] = layout_json
35 42
43 # Merge in the data from info.json, config.h, and rules.mk
36 info_data = merge_info_jsons(keyboard, info_data) 44 info_data = merge_info_jsons(keyboard, info_data)
37 info_data = _extract_config_h(info_data) 45 info_data = _extract_config_h(info_data)
38 info_data = _extract_rules_mk(info_data) 46 info_data = _extract_rules_mk(info_data)