Merge remote-tracking branch 'origin/master' into develop
This commit is contained in:
commit
6b838785b7
|
@ -145,7 +145,10 @@
|
|||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"label": {"type": "string"},
|
||||
"label": {
|
||||
"type": "string",
|
||||
"pattern": "^[^\\n]*$"
|
||||
},
|
||||
"matrix": {
|
||||
"type": "array",
|
||||
"minItems": 2,
|
||||
|
|
|
@ -31,10 +31,10 @@
|
|||
{"label": "I", "x": 8, "y": 1},
|
||||
{"label": "O", "x": 9, "y": 1},
|
||||
{"label": "P", "x": 10, "y": 1},
|
||||
{"label": "|\n\\", "x": 11, "y": 1},
|
||||
{"label": "7\nHome", "x": 12, "y": 1},
|
||||
{"label": "8\nUp", "x": 13, "y": 1},
|
||||
{"label": "9\nPgUp", "x": 14, "y": 1},
|
||||
{"label": "|", "x": 11, "y": 1},
|
||||
{"label": "7", "x": 12, "y": 1},
|
||||
{"label": "8", "x": 13, "y": 1},
|
||||
{"label": "9", "x": 14, "y": 1},
|
||||
{"label": "Caps", "x": 0, "y": 2},
|
||||
{"label": "A", "x": 1, "y": 2},
|
||||
{"label": "S", "x": 2, "y": 2},
|
||||
|
@ -47,9 +47,9 @@
|
|||
{"label": "L", "x": 9, "y": 2},
|
||||
{"label": ":", "x": 10, "y": 2},
|
||||
{"label": "Enter", "x": 11, "y": 2},
|
||||
{"label": "4\nLeft", "x": 12, "y": 2},
|
||||
{"label": "4", "x": 12, "y": 2},
|
||||
{"label": "5", "x": 13, "y": 2},
|
||||
{"label": "6\nRight", "x": 14, "y": 2},
|
||||
{"label": "6", "x": 14, "y": 2},
|
||||
{"label": "Shift", "x": 0, "y": 3},
|
||||
{"label": "Z", "x": 1, "y": 3},
|
||||
{"label": "X", "x": 2, "y": 3},
|
||||
|
@ -58,13 +58,13 @@
|
|||
{"label": "B", "x": 5, "y": 3},
|
||||
{"label": "N", "x": 6, "y": 3},
|
||||
{"label": "M", "x": 7, "y": 3},
|
||||
{"label": "<\n,", "x": 8, "y": 3},
|
||||
{"label": ">\n.", "x": 9, "y": 3},
|
||||
{"label": "?\n/", "x": 10, "y": 3},
|
||||
{"label": "<", "x": 8, "y": 3},
|
||||
{"label": ">", "x": 9, "y": 3},
|
||||
{"label": "?", "x": 10, "y": 3},
|
||||
{"label": "Shift", "x": 11, "y": 3},
|
||||
{"label": "1\nEnd", "x": 12, "y": 3},
|
||||
{"label": "2\nDown", "x": 13, "y": 3},
|
||||
{"label": "3\nPgDn", "x": 14, "y": 3},
|
||||
{"label": "1", "x": 12, "y": 3},
|
||||
{"label": "2", "x": 13, "y": 3},
|
||||
{"label": "3", "x": 14, "y": 3},
|
||||
{"label": "Ctrl", "x": 0, "y": 4},
|
||||
{"label": "Win", "x": 1, "y": 4},
|
||||
{"label": "Alt", "x": 2, "y": 4},
|
||||
|
@ -77,8 +77,8 @@
|
|||
{"label": "Win", "x": 9, "y": 4},
|
||||
{"label": "Menu", "x": 10, "y": 4},
|
||||
{"label": "Ctrl", "x": 11, "y": 4},
|
||||
{"label": "0\nIns", "x": 12, "y": 4},
|
||||
{"label": ".\nDel", "x": 13, "y": 4},
|
||||
{"label": "0", "x": 12, "y": 4},
|
||||
{"label": ".", "x": 13, "y": 4},
|
||||
{"label": "Enter", "x": 14, "y": 4}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -116,13 +116,6 @@ def lint(cli):
|
|||
if not keymap_check(kb, cli.config.lint.keymap):
|
||||
ok = False
|
||||
|
||||
# Check if all non-data driven macros exist in <keyboard.h>
|
||||
for layout, data in keyboard_info['layouts'].items():
|
||||
# Matrix data should be a list with exactly two integers: [0, 1]
|
||||
if not data['c_macro'] and not all('matrix' in key_data.keys() or len(key_data) == 2 or all(isinstance(n, int) for n in key_data) for key_data in data['layout']):
|
||||
cli.log.error(f'{kb}: "{layout}" has no "matrix" definition in either "info.json" or "<keyboard>.h"!')
|
||||
ok = False
|
||||
|
||||
# Report status
|
||||
if not ok:
|
||||
failed.append(kb)
|
||||
|
|
|
@ -26,13 +26,6 @@ def _valid_community_layout(layout):
|
|||
return (Path('layouts/default') / layout).exists()
|
||||
|
||||
|
||||
def _remove_newlines_from_labels(layouts):
|
||||
for layout_name, layout_json in layouts.items():
|
||||
for key in layout_json['layout']:
|
||||
if '\n' in key['label']:
|
||||
key['label'] = key['label'].split('\n')[0]
|
||||
|
||||
|
||||
def info_json(keyboard):
|
||||
"""Generate the info.json data for a specific keyboard.
|
||||
"""
|
||||
|
@ -111,9 +104,6 @@ def info_json(keyboard):
|
|||
# Check that the reported matrix size is consistent with the actual matrix size
|
||||
_check_matrix(info_data)
|
||||
|
||||
# Remove newline characters from layout labels
|
||||
_remove_newlines_from_labels(layouts)
|
||||
|
||||
return info_data
|
||||
|
||||
|
||||
|
@ -806,6 +796,9 @@ def merge_info_jsons(keyboard, info_data):
|
|||
else:
|
||||
for new_key, existing_key in zip(layout['layout'], info_data['layouts'][layout_name]['layout']):
|
||||
existing_key.update(new_key)
|
||||
else:
|
||||
if not all('matrix' in key_data.keys() for key_data in layout['layout']):
|
||||
_log_error(info_data, f'Layout "{layout_name}" has no "matrix" definition in either "info.json" or "<keyboard>.h"!')
|
||||
else:
|
||||
layout['c_macro'] = False
|
||||
info_data['layouts'][layout_name] = layout
|
||||
|
|
Loading…
Reference in a new issue