tools/indentlevel.py

Mon, 10 Apr 2023 14:25:19 +0300

author
Teemu Piippo <teemu.s.piippo@gmail.com>
date
Mon, 10 Apr 2023 14:25:19 +0300
changeset 372
b2914aaeec1a
parent 317
852021f38b66
permissions
-rw-r--r--

Winding is now an enum class winding_e

#!/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

mercurial