- """Functions to convert to and from QMK formats
- """
- from collections import OrderedDict
-
-
- def kle2qmk(kle):
- """Convert a KLE layout to QMK's layout format.
- """
- layout = []
-
- for row in kle:
- for key in row:
- if key['decal']:
- continue
-
- qmk_key = OrderedDict(
- label="",
- x=key['column'],
- y=key['row'],
- )
-
- if key['width'] != 1:
- qmk_key['w'] = key['width']
- if key['height'] != 1:
- qmk_key['h'] = key['height']
- if 'name' in key and key['name']:
- qmk_key['label'] = key['name'].split('\n', 1)[0]
- else:
- del (qmk_key['label'])
-
- layout.append(qmk_key)
-
- return layout
|