diff options
Diffstat (limited to 'lib/python')
| -rw-r--r-- | lib/python/kle2xy.py | 17 | ||||
| -rwxr-xr-x | lib/python/qmk/cli/kle2json.py | 10 | ||||
| -rw-r--r-- | lib/python/qmk/tests/test_cli_commands.py | 2 | 
3 files changed, 10 insertions, 19 deletions
| diff --git a/lib/python/kle2xy.py b/lib/python/kle2xy.py index ea16a4b5e..929144319 100644 --- a/lib/python/kle2xy.py +++ b/lib/python/kle2xy.py @@ -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): diff --git a/lib/python/qmk/cli/kle2json.py b/lib/python/qmk/cli/kle2json.py index 22eb515df..5a4e97e3a 100755 --- a/lib/python/qmk/cli/kle2json.py +++ b/lib/python/qmk/cli/kle2json.py @@ -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 diff --git a/lib/python/qmk/tests/test_cli_commands.py b/lib/python/qmk/tests/test_cli_commands.py index d91af992a..85d4d91af 100644 --- a/lib/python/qmk/tests/test_cli_commands.py +++ b/lib/python/qmk/tests/test_cli_commands.py @@ -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 | 
