summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDasky <32983009+daskygit@users.noreply.github.com>2022-07-08 22:49:55 +0100
committerGitHub <noreply@github.com>2022-07-08 22:49:55 +0100
commit06310e81e9ddebcfc5e25b826bfe4914375de14e (patch)
tree4cc325ebeb9a31a392651b6d05c2e6db78e3d0cd /lib
parente724801d3343c3d41cb94559b75f6bf7a5bddd77 (diff)
downloadqmk_firmware-06310e81e9ddebcfc5e25b826bfe4914375de14e.tar.gz
qmk_firmware-06310e81e9ddebcfc5e25b826bfe4914375de14e.zip
Allow only col or row pins for *_right extraction. (#17590)
Diffstat (limited to 'lib')
-rw-r--r--lib/python/qmk/info.py38
1 files changed, 9 insertions, 29 deletions
diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py
index 23761d71b7..340969f415 100644
--- a/lib/python/qmk/info.py
+++ b/lib/python/qmk/info.py
@@ -318,7 +318,7 @@ def _extract_split_right_pins(info_data, config_c):
unused_pins = unused_pin_text.replace('{', '').replace('}', '').strip() if isinstance(unused_pin_text, str) else None
direct_pins = config_c.get('DIRECT_PINS_RIGHT', '').replace(' ', '')[1:-1]
- if row_pins and col_pins:
+ if row_pins or col_pins or direct_pins or unused_pins:
if info_data.get('split', {}).get('matrix_pins', {}).get('right') in info_data:
_log_warning(info_data, 'Right hand matrix data is specified in both info.json and config.h, the config.h values win.')
@@ -331,37 +331,17 @@ def _extract_split_right_pins(info_data, config_c):
if 'right' not in info_data['split']['matrix_pins']:
info_data['split']['matrix_pins']['right'] = {}
- info_data['split']['matrix_pins']['right'] = {
- 'cols': _extract_pins(col_pins),
- 'rows': _extract_pins(row_pins),
- }
-
- if direct_pins:
- if info_data.get('split', {}).get('matrix_pins', {}).get('right', {}):
- _log_warning(info_data, 'Right hand matrix data is specified in both info.json and config.h, the config.h values win.')
-
- if 'split' not in info_data:
- info_data['split'] = {}
+ if col_pins:
+ info_data['split']['matrix_pins']['right']['cols'] = _extract_pins(col_pins)
- if 'matrix_pins' not in info_data['split']:
- info_data['split']['matrix_pins'] = {}
+ if row_pins:
+ info_data['split']['matrix_pins']['right']['rows'] = _extract_pins(row_pins)
- if 'right' not in info_data['split']['matrix_pins']:
- info_data['split']['matrix_pins']['right'] = {}
-
- info_data['split']['matrix_pins']['right']['direct'] = _extract_direct_matrix(direct_pins)
-
- if unused_pins:
- if 'split' not in info_data:
- info_data['split'] = {}
-
- if 'matrix_pins' not in info_data['split']:
- info_data['split']['matrix_pins'] = {}
-
- if 'right' not in info_data['split']['matrix_pins']:
- info_data['split']['matrix_pins']['right'] = {}
+ if direct_pins:
+ info_data['split']['matrix_pins']['right']['direct'] = _extract_direct_matrix(direct_pins)
- info_data['split']['matrix_pins']['right']['unused'] = _extract_pins(unused_pins)
+ if unused_pins:
+ info_data['split']['matrix_pins']['right']['unused'] = _extract_pins(unused_pins)
def _extract_matrix_info(info_data, config_c):