forked from forks/qmk_firmware
format code according to conventions [skip ci]
This commit is contained in:
parent
7329c2d02d
commit
a4c2a9b083
|
@ -4,6 +4,7 @@
|
|||
import hjson
|
||||
from decimal import Decimal
|
||||
|
||||
|
||||
class KLE2xy(list):
|
||||
"""Abstract interface for interacting with a KLE layout.
|
||||
"""
|
||||
|
@ -13,17 +14,7 @@ class KLE2xy(list):
|
|||
self.name = name
|
||||
self.invert_y = invert_y
|
||||
self.key_width = Decimal('19.05')
|
||||
self.key_skel = {
|
||||
'decal': False,
|
||||
'border_color': 'none',
|
||||
'keycap_profile': '',
|
||||
'keycap_color': 'grey',
|
||||
'label_color': 'black',
|
||||
'label_size': 3,
|
||||
'label_style': 4,
|
||||
'width': Decimal('1'), 'height': Decimal('1'),
|
||||
'x': Decimal('0'), 'y': Decimal('0')
|
||||
}
|
||||
self.key_skel = {'decal': False, 'border_color': 'none', 'keycap_profile': '', 'keycap_color': 'grey', 'label_color': 'black', 'label_size': 3, 'label_style': 4, 'width': Decimal('1'), 'height': Decimal('1'), 'x': Decimal('0'), 'y': Decimal('0')}
|
||||
self.rows = Decimal(0)
|
||||
self.columns = Decimal(0)
|
||||
|
||||
|
@ -34,13 +25,13 @@ class KLE2xy(list):
|
|||
def width(self):
|
||||
"""Returns the width of the keyboard plate.
|
||||
"""
|
||||
return (Decimal(self.columns) * self.key_width) + self.key_width/2
|
||||
return (Decimal(self.columns) * self.key_width) + self.key_width / 2
|
||||
|
||||
@property
|
||||
def height(self):
|
||||
"""Returns the height of the keyboard plate.
|
||||
"""
|
||||
return (self.rows * self.key_width) + self.key_width/2
|
||||
return (self.rows * self.key_width) + self.key_width / 2
|
||||
|
||||
@property
|
||||
def size(self):
|
||||
|
|
|
@ -31,7 +31,7 @@ class CustomJSONEncoder(json.JSONEncoder):
|
|||
@cli.subcommand('Convert a KLE layout to a Configurator JSON')
|
||||
def kle2json(cli):
|
||||
"""Convert a KLE layout to QMK's layout format.
|
||||
""" # If filename is a path
|
||||
""" # If filename is a path
|
||||
if cli.args.filename.startswith("/") or cli.args.filename.startswith("./"):
|
||||
file_path = Path(cli.args.filename)
|
||||
# Otherwise assume it is a file name
|
||||
|
@ -45,7 +45,7 @@ def kle2json(cli):
|
|||
# Check if info.json exists, allow overwrite with force
|
||||
if Path(out_path, "info.json").exists() and not cli.args.force:
|
||||
cli.log.error('File {fg_cyan}%s/info.json{style_reset_all} already exists, use -f or --force to overwrite.', str(out_path))
|
||||
return False;
|
||||
return False
|
||||
try:
|
||||
# Convert KLE raw to x/y coordinates (using kle2xy package from skullydazed)
|
||||
kle = KLE2xy(raw_code)
|
||||
|
@ -65,11 +65,9 @@ def kle2json(cli):
|
|||
}},
|
||||
)
|
||||
# Initialize keyboard with json encoded from ordered dict
|
||||
keyboard = json.dumps(keyboard, indent=4, separators=(
|
||||
', ', ': '), sort_keys=False, cls=CustomJSONEncoder)
|
||||
keyboard = json.dumps(keyboard, indent=4, separators=(', ', ': '), sort_keys=False, cls=CustomJSONEncoder)
|
||||
# Initialize layout with kle2qmk from converter module
|
||||
layout = json.dumps(kle2qmk(kle), separators=(
|
||||
', ', ':'), cls=CustomJSONEncoder)
|
||||
layout = json.dumps(kle2qmk(kle), separators=(', ', ':'), cls=CustomJSONEncoder)
|
||||
# Replace layout in keyboard json
|
||||
keyboard = keyboard.replace('"LAYOUT_JSON_HERE"', layout)
|
||||
# Write our info.json
|
||||
|
|
|
@ -19,9 +19,11 @@ def test_config():
|
|||
assert result.returncode == 0
|
||||
assert 'general.color' in result.stdout
|
||||
|
||||
|
||||
def test_kle2json():
|
||||
assert check_subcommand('kle2json', 'kle.txt', '-f').returncode == 0
|
||||
|
||||
|
||||
def test_doctor():
|
||||
result = check_subcommand('doctor')
|
||||
assert result.returncode == 0
|
||||
|
|
Loading…
Reference in a new issue