Sun, 03 Jul 2022 13:21:49 +0300
Reduce indent level
#!/usr/bin/env python3 import sys too_many = 6 for filename in sys.argv[1:]: with open(filename) as file: at_start_of_new_block = False old_n = 0 for linenumber, line in enumerate(file, 1): import re n = len(re.match('^(\t*).*$', line).group(1)) if at_start_of_new_block and n >= too_many and old_n < too_many: print(f'{filename}:{linenumber}: warning: block with {n} indent levels', file = sys.stderr) at_start_of_new_block = line.strip().endswith('{') old_n = n