diff options
author | Dasky <32983009+daskygit@users.noreply.github.com> | 2022-07-08 22:49:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-08 22:49:55 +0100 |
commit | 06310e81e9ddebcfc5e25b826bfe4914375de14e (patch) | |
tree | 4cc325ebeb9a31a392651b6d05c2e6db78e3d0cd | |
parent | e724801d3343c3d41cb94559b75f6bf7a5bddd77 (diff) |
Allow only col or row pins for *_right extraction. (#17590)
-rw-r--r-- | lib/python/qmk/info.py | 38 |
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): |