aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/dekunukem/duckypad/keymaps/m4cs/sysinfo.py1
-rwxr-xr-xkeyboards/ergodox_ez/util/compile_keymap.py5
-rwxr-xr-xkeyboards/ergodox_ez/util/keymap_beautifier/KeymapBeautifier.py1
-rwxr-xr-xlayouts/community/ergodox/algernon/tools/log-to-heatmap.py4
-rwxr-xr-xlayouts/community/ergodox/algernon/tools/text-to-log.py1
-rw-r--r--layouts/community/ergodox/german-manuneo/compile_keymap.py5
-rw-r--r--lib/python/qmk/cli/doctor/linux.py8
-rwxr-xr-xlib/python/qmk/cli/doctor/main.py9
-rwxr-xr-xlib/python/qmk/cli/generate/config_h.py2
-rw-r--r--lib/python/qmk/cli/generate/dfu_header.py2
-rwxr-xr-xlib/python/qmk/cli/generate/keyboard_h.py2
-rwxr-xr-xlib/python/qmk/cli/generate/layouts.py2
-rw-r--r--lib/python/qmk/info.py8
-rw-r--r--lib/python/qmk/keymap.py4
-rw-r--r--users/dennytom/chording_engine/chord.py3
-rwxr-xr-xutil/stm32eeprom_parser.py1
-rwxr-xr-xutil/uf2conv.py8
17 files changed, 24 insertions, 42 deletions
diff --git a/keyboards/dekunukem/duckypad/keymaps/m4cs/sysinfo.py b/keyboards/dekunukem/duckypad/keymaps/m4cs/sysinfo.py
index 04cf343ea..4dfcd4d4d 100644
--- a/keyboards/dekunukem/duckypad/keymaps/m4cs/sysinfo.py
+++ b/keyboards/dekunukem/duckypad/keymaps/m4cs/sysinfo.py
@@ -21,7 +21,6 @@
21 21
22import hid 22import hid
23import time 23import time
24import string
25import psutil 24import psutil
26import GPUtil 25import GPUtil
27import datetime 26import datetime
diff --git a/keyboards/ergodox_ez/util/compile_keymap.py b/keyboards/ergodox_ez/util/compile_keymap.py
index f427d6fd8..b447ecaf5 100755
--- a/keyboards/ergodox_ez/util/compile_keymap.py
+++ b/keyboards/ergodox_ez/util/compile_keymap.py
@@ -584,11 +584,6 @@ def unicode_macro_cases(config):
584 for macro_id, uc_hex in config['unicode_macros'].items(): 584 for macro_id, uc_hex in config['unicode_macros'].items():
585 hi = int(uc_hex, 16) >> 8 585 hi = int(uc_hex, 16) >> 8
586 lo = int(uc_hex, 16) & 0xFF 586 lo = int(uc_hex, 16) & 0xFF
587 unimacro_keys = ", ".join(
588 "T({})".format(
589 "KP_" + digit if digit.isdigit() else digit
590 ) for digit in uc_hex
591 )
592 yield UNICODE_MACRO_TEMPLATE.format( 587 yield UNICODE_MACRO_TEMPLATE.format(
593 macro_id=macro_id, hi=hi, lo=lo 588 macro_id=macro_id, hi=hi, lo=lo
594 ) 589 )
diff --git a/keyboards/ergodox_ez/util/keymap_beautifier/KeymapBeautifier.py b/keyboards/ergodox_ez/util/keymap_beautifier/KeymapBeautifier.py
index f55bdaf2d..9beee3796 100755
--- a/keyboards/ergodox_ez/util/keymap_beautifier/KeymapBeautifier.py
+++ b/keyboards/ergodox_ez/util/keymap_beautifier/KeymapBeautifier.py
@@ -227,7 +227,6 @@ class KeymapBeautifier:
227 self.layer_keys_pointer = 0 227 self.layer_keys_pointer = 0
228 228
229 begin = self.layer_keys_pointer 229 begin = self.layer_keys_pointer
230 end = begin + n_columns
231 return self.layer_keys[self.layer_keys_pointer-n_keys:self.layer_keys_pointer] 230 return self.layer_keys[self.layer_keys_pointer-n_keys:self.layer_keys_pointer]
232 231
233 key_coordinates_counter = 0 232 key_coordinates_counter = 0
diff --git a/layouts/community/ergodox/algernon/tools/log-to-heatmap.py b/layouts/community/ergodox/algernon/tools/log-to-heatmap.py
index e927e0e39..5f52d9932 100755
--- a/layouts/community/ergodox/algernon/tools/log-to-heatmap.py
+++ b/layouts/community/ergodox/algernon/tools/log-to-heatmap.py
@@ -8,7 +8,6 @@ import time
8 8
9from math import floor 9from math import floor
10from os.path import dirname 10from os.path import dirname
11from subprocess import Popen, PIPE, STDOUT
12from blessings import Terminal 11from blessings import Terminal
13 12
14class Heatmap(object): 13class Heatmap(object):
@@ -122,7 +121,6 @@ class Heatmap(object):
122 121
123 for (c, r) in self.log: 122 for (c, r) in self.log:
124 coords = self.coord(c, r) 123 coords = self.coord(c, r)
125 b, n = coords
126 cap = self.max_cnt 124 cap = self.max_cnt
127 if cap == 0: 125 if cap == 0:
128 cap = 1 126 cap = 1
@@ -302,7 +300,7 @@ def main(opts):
302 break 300 break
303 if not process_line(line, heatmaps, opts): 301 if not process_line(line, heatmaps, opts):
304 continue 302 continue
305 except: 303 except Exception:
306 pass 304 pass
307 305
308 stamped_log = open ("%s/stamped-log" % (out_dir), "a+") 306 stamped_log = open ("%s/stamped-log" % (out_dir), "a+")
diff --git a/layouts/community/ergodox/algernon/tools/text-to-log.py b/layouts/community/ergodox/algernon/tools/text-to-log.py
index f080c32cd..ba60a2e28 100755
--- a/layouts/community/ergodox/algernon/tools/text-to-log.py
+++ b/layouts/community/ergodox/algernon/tools/text-to-log.py
@@ -1,6 +1,5 @@
1#!/usr/bin/env python3 1#!/usr/bin/env python3
2 2
3import os
4import sys 3import sys
5 4
6charmap = { 5charmap = {
diff --git a/layouts/community/ergodox/german-manuneo/compile_keymap.py b/layouts/community/ergodox/german-manuneo/compile_keymap.py
index 9ad5c88ec..df5d42984 100644
--- a/layouts/community/ergodox/german-manuneo/compile_keymap.py
+++ b/layouts/community/ergodox/german-manuneo/compile_keymap.py
@@ -584,11 +584,6 @@ def unicode_macro_cases(config):
584 for macro_id, uc_hex in config['unicode_macros'].items(): 584 for macro_id, uc_hex in config['unicode_macros'].items():
585 hi = int(uc_hex, 16) >> 8 585 hi = int(uc_hex, 16) >> 8
586 lo = int(uc_hex, 16) & 0xFF 586 lo = int(uc_hex, 16) & 0xFF
587 unimacro_keys = ", ".join(
588 "T({})".format(
589 "KP_" + digit if digit.isdigit() else digit
590 ) for digit in uc_hex
591 )
592 yield UNICODE_MACRO_TEMPLATE.format( 587 yield UNICODE_MACRO_TEMPLATE.format(
593 macro_id=macro_id, hi=hi, lo=lo 588 macro_id=macro_id, hi=hi, lo=lo
594 ) 589 )
diff --git a/lib/python/qmk/cli/doctor/linux.py b/lib/python/qmk/cli/doctor/linux.py
index 6ce00f6ef..94683d330 100644
--- a/lib/python/qmk/cli/doctor/linux.py
+++ b/lib/python/qmk/cli/doctor/linux.py
@@ -118,10 +118,9 @@ def check_udev_rules():
118 cli.log.warning("{fg_yellow}Found old, deprecated udev rules for '%s' boards. The new rules on https://docs.qmk.fm/#/faq_build?id=linux-udev-rules offer better security with the same functionality.", bootloader) 118 cli.log.warning("{fg_yellow}Found old, deprecated udev rules for '%s' boards. The new rules on https://docs.qmk.fm/#/faq_build?id=linux-udev-rules offer better security with the same functionality.", bootloader)
119 else: 119 else:
120 # For caterina, check if ModemManager is running 120 # For caterina, check if ModemManager is running
121 if bootloader == "caterina": 121 if bootloader == "caterina" and check_modem_manager():
122 if check_modem_manager(): 122 cli.log.warning("{fg_yellow}Detected ModemManager without the necessary udev rules. Please either disable it or set the appropriate udev rules if you are using a Pro Micro.")
123 rc = CheckStatus.WARNING 123
124 cli.log.warning("{fg_yellow}Detected ModemManager without the necessary udev rules. Please either disable it or set the appropriate udev rules if you are using a Pro Micro.")
125 rc = CheckStatus.WARNING 124 rc = CheckStatus.WARNING
126 cli.log.warning("{fg_yellow}Missing or outdated udev rules for '%s' boards. Run 'sudo cp %s/util/udev/50-qmk.rules /etc/udev/rules.d/'.", bootloader, QMK_FIRMWARE) 125 cli.log.warning("{fg_yellow}Missing or outdated udev rules for '%s' boards. Run 'sudo cp %s/util/udev/50-qmk.rules /etc/udev/rules.d/'.", bootloader, QMK_FIRMWARE)
127 126
@@ -167,6 +166,5 @@ def os_test_linux():
167 return CheckStatus.OK 166 return CheckStatus.OK
168 else: 167 else:
169 cli.log.info("Detected {fg_cyan}Linux{fg_reset}.") 168 cli.log.info("Detected {fg_cyan}Linux{fg_reset}.")
170 from .linux import check_udev_rules
171 169
172 return check_udev_rules() 170 return check_udev_rules()
diff --git a/lib/python/qmk/cli/doctor/main.py b/lib/python/qmk/cli/doctor/main.py
index 6a31ccdfd..ed20f46d3 100755
--- a/lib/python/qmk/cli/doctor/main.py
+++ b/lib/python/qmk/cli/doctor/main.py
@@ -79,12 +79,13 @@ def doctor(cli):
79 cli.log.info('CLI version: %s', cli.version) 79 cli.log.info('CLI version: %s', cli.version)
80 cli.log.info('QMK home: {fg_cyan}%s', QMK_FIRMWARE) 80 cli.log.info('QMK home: {fg_cyan}%s', QMK_FIRMWARE)
81 81
82 status = os_tests() 82 status = os_status = os_tests()
83 git_status = git_tests()
83 84
84 status = git_tests() 85 if git_status == CheckStatus.ERROR or (os_status == CheckStatus.OK and git_status == CheckStatus.WARNING):
86 status = git_status
85 87
86 venv = in_virtualenv() 88 if in_virtualenv():
87 if venv:
88 cli.log.info('CLI installed in virtualenv.') 89 cli.log.info('CLI installed in virtualenv.')
89 90
90 # Make sure the basic CLI tools we need are available and can be executed. 91 # Make sure the basic CLI tools we need are available and can be executed.
diff --git a/lib/python/qmk/cli/generate/config_h.py b/lib/python/qmk/cli/generate/config_h.py
index ca7e14fe6..f16dca1de 100755
--- a/lib/python/qmk/cli/generate/config_h.py
+++ b/lib/python/qmk/cli/generate/config_h.py
@@ -173,7 +173,7 @@ def generate_config_h(cli):
173 kb_info_json = dotty(info_json(cli.args.keyboard)) 173 kb_info_json = dotty(info_json(cli.args.keyboard))
174 174
175 # Build the info_config.h file. 175 # Build the info_config.h file.
176 config_h_lines = ['/* This file was generated by `qmk generate-config-h`. Do not edit or copy.' ' */', '', '#pragma once'] 176 config_h_lines = ['/* This file was generated by `qmk generate-config-h`. Do not edit or copy.', ' */', '', '#pragma once']
177 177
178 generate_config_items(kb_info_json, config_h_lines) 178 generate_config_items(kb_info_json, config_h_lines)
179 179
diff --git a/lib/python/qmk/cli/generate/dfu_header.py b/lib/python/qmk/cli/generate/dfu_header.py
index 211ed9991..5a1b109f1 100644
--- a/lib/python/qmk/cli/generate/dfu_header.py
+++ b/lib/python/qmk/cli/generate/dfu_header.py
@@ -30,7 +30,7 @@ def generate_dfu_header(cli):
30 # Build the Keyboard.h file. 30 # Build the Keyboard.h file.
31 kb_info_json = dotty(info_json(cli.config.generate_dfu_header.keyboard)) 31 kb_info_json = dotty(info_json(cli.config.generate_dfu_header.keyboard))
32 32
33 keyboard_h_lines = ['/* This file was generated by `qmk generate-dfu-header`. Do not edit or copy.' ' */', '', '#pragma once'] 33 keyboard_h_lines = ['/* This file was generated by `qmk generate-dfu-header`. Do not edit or copy.', ' */', '', '#pragma once']
34 keyboard_h_lines.append(f'#define MANUFACTURER {kb_info_json["manufacturer"]}') 34 keyboard_h_lines.append(f'#define MANUFACTURER {kb_info_json["manufacturer"]}')
35 keyboard_h_lines.append(f'#define PRODUCT {cli.config.generate_dfu_header.keyboard} Bootloader') 35 keyboard_h_lines.append(f'#define PRODUCT {cli.config.generate_dfu_header.keyboard} Bootloader')
36 36
diff --git a/lib/python/qmk/cli/generate/keyboard_h.py b/lib/python/qmk/cli/generate/keyboard_h.py
index c9d7f549b..f05178ced 100755
--- a/lib/python/qmk/cli/generate/keyboard_h.py
+++ b/lib/python/qmk/cli/generate/keyboard_h.py
@@ -36,7 +36,7 @@ def generate_keyboard_h(cli):
36 has_layout_h = would_populate_layout_h(cli.args.keyboard) 36 has_layout_h = would_populate_layout_h(cli.args.keyboard)
37 37
38 # Build the layouts.h file. 38 # Build the layouts.h file.
39 keyboard_h_lines = ['/* This file was generated by `qmk generate-keyboard-h`. Do not edit or copy.' ' */', '', '#pragma once', '#include "quantum.h"'] 39 keyboard_h_lines = ['/* This file was generated by `qmk generate-keyboard-h`. Do not edit or copy.', ' */', '', '#pragma once', '#include "quantum.h"']
40 40
41 if not has_layout_h: 41 if not has_layout_h:
42 keyboard_h_lines.append('#pragma error("<keyboard>.h is only optional for data driven keyboards - kb.h == bad times")') 42 keyboard_h_lines.append('#pragma error("<keyboard>.h is only optional for data driven keyboards - kb.h == bad times")')
diff --git a/lib/python/qmk/cli/generate/layouts.py b/lib/python/qmk/cli/generate/layouts.py
index 4de982f82..e44266e1c 100755
--- a/lib/python/qmk/cli/generate/layouts.py
+++ b/lib/python/qmk/cli/generate/layouts.py
@@ -38,7 +38,7 @@ def generate_layouts(cli):
38 kb_info_json = info_json(cli.config.generate_layouts.keyboard) 38 kb_info_json = info_json(cli.config.generate_layouts.keyboard)
39 39
40 # Build the layouts.h file. 40 # Build the layouts.h file.
41 layouts_h_lines = ['/* This file was generated by `qmk generate-layouts`. Do not edit or copy.' ' */', '', '#pragma once'] 41 layouts_h_lines = ['/* This file was generated by `qmk generate-layouts`. Do not edit or copy.', ' */', '', '#pragma once']
42 42
43 if 'matrix_pins' in kb_info_json: 43 if 'matrix_pins' in kb_info_json:
44 if 'direct' in kb_info_json['matrix_pins']: 44 if 'direct' in kb_info_json['matrix_pins']:
diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py
index 7f3aabdc3..1b4c42ff4 100644
--- a/lib/python/qmk/info.py
+++ b/lib/python/qmk/info.py
@@ -29,10 +29,10 @@ def info_json(keyboard):
29 """Generate the info.json data for a specific keyboard. 29 """Generate the info.json data for a specific keyboard.
30 """ 30 """
31 cur_dir = Path('keyboards') 31 cur_dir = Path('keyboards')
32 rules = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk') 32 root_rules_mk = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk')
33 if 'DEFAULT_FOLDER' in rules: 33
34 keyboard = rules['DEFAULT_FOLDER'] 34 if 'DEFAULT_FOLDER' in root_rules_mk:
35 rules = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk', rules) 35 keyboard = root_rules_mk['DEFAULT_FOLDER']
36 36
37 info_data = { 37 info_data = {
38 'keyboard_name': str(keyboard), 38 'keyboard_name': str(keyboard),
diff --git a/lib/python/qmk/keymap.py b/lib/python/qmk/keymap.py
index 2d5921e7a..6eec49cfd 100644
--- a/lib/python/qmk/keymap.py
+++ b/lib/python/qmk/keymap.py
@@ -149,8 +149,8 @@ def is_keymap_dir(keymap, c=True, json=True, additional_files=None):
149 for file in files: 149 for file in files:
150 if (keymap / file).is_file(): 150 if (keymap / file).is_file():
151 if additional_files: 151 if additional_files:
152 for file in additional_files: 152 for additional_file in additional_files:
153 if not (keymap / file).is_file(): 153 if not (keymap / additional_file).is_file():
154 return False 154 return False
155 155
156 return True 156 return True
diff --git a/users/dennytom/chording_engine/chord.py b/users/dennytom/chording_engine/chord.py
index 707f36b82..5e3b6d283 100644
--- a/users/dennytom/chording_engine/chord.py
+++ b/users/dennytom/chording_engine/chord.py
@@ -1,5 +1,4 @@
1from functools import reduce 1from functools import reduce
2import re
3 2
4strings = [] 3strings = []
5number_of_strings = -1 4number_of_strings = -1
@@ -463,4 +462,4 @@ def secret_chord(PSEUDOLAYER, ACTION, INPUT_STRING, data, output_buffer, index,
463 462
464 hash = hash[3:] 463 hash = hash[3:]
465 if hash != "": 464 if hash != "":
466 return add_key(PSEUDOLAYER, hash, ACTION, output_buffer, index, number_of_strings, strings) \ No newline at end of file 465 return add_key(PSEUDOLAYER, hash, ACTION, output_buffer, index, number_of_strings, strings)
diff --git a/util/stm32eeprom_parser.py b/util/stm32eeprom_parser.py
index b124f713d..e08b67064 100755
--- a/util/stm32eeprom_parser.py
+++ b/util/stm32eeprom_parser.py
@@ -197,7 +197,6 @@ def dumpBinary(data, canonical):
197 print("") 197 print("")
198 198
199 size = len(data) 199 size = len(data)
200 empty_rows = 0
201 prev_row = '' 200 prev_row = ''
202 first_repeat = True 201 first_repeat = True
203 for pos in range(0, size, 16): 202 for pos in range(0, size, 16):
diff --git a/util/uf2conv.py b/util/uf2conv.py
index 044a7f231..8677a828c 100755
--- a/util/uf2conv.py
+++ b/util/uf2conv.py
@@ -78,7 +78,7 @@ def convert_from_uf2(buf):
78 if datalen > 476: 78 if datalen > 476:
79 assert False, "Invalid UF2 data size at " + ptr 79 assert False, "Invalid UF2 data size at " + ptr
80 newaddr = hd[3] 80 newaddr = hd[3]
81 if curraddr == None: 81 if curraddr is None:
82 appstartaddr = newaddr 82 appstartaddr = newaddr
83 curraddr = newaddr 83 curraddr = newaddr
84 padding = newaddr - curraddr 84 padding = newaddr - curraddr
@@ -171,7 +171,7 @@ def convert_from_hex_to_uf2(buf):
171 break 171 break
172 elif tp == 0: 172 elif tp == 0:
173 addr = upper | (rec[1] << 8) | rec[2] 173 addr = upper | (rec[1] << 8) | rec[2]
174 if appstartaddr == None: 174 if appstartaddr is None:
175 appstartaddr = addr 175 appstartaddr = addr
176 i = 4 176 i = 4
177 while i < len(rec) - 1: 177 while i < len(rec) - 1:
@@ -215,7 +215,7 @@ def get_drives():
215 def has_info(d): 215 def has_info(d):
216 try: 216 try:
217 return os.path.isfile(d + INFO_FILE) 217 return os.path.isfile(d + INFO_FILE)
218 except: 218 except Exception:
219 return False 219 return False
220 220
221 return list(filter(has_info, drives)) 221 return list(filter(has_info, drives))
@@ -300,7 +300,7 @@ def main():
300 (ext, len(outbuf), appstartaddr)) 300 (ext, len(outbuf), appstartaddr))
301 if args.convert or ext != "uf2": 301 if args.convert or ext != "uf2":
302 drives = [] 302 drives = []
303 if args.output == None: 303 if args.output is None:
304 args.output = "flash." + ext 304 args.output = "flash." + ext
305 else: 305 else:
306 drives = get_drives() 306 drives = get_drives()