pysvp64db: fix traversal
[openpower-isa.git] / reindent.py
1 #!/usr/bin/env python3
2 """ handy script for re-indenting text to be in multiples of ` `"""
3 import sys
4
5 indent_unit = " "
6
7
8 def ind_print(v):
9 print(indent_unit * (len(indent_stack) - 1) + v)
10
11
12 with open(sys.argv[1]) as f:
13 indent_stack = [""]
14 for line in f:
15 line = line.rstrip().expandtabs()
16 indent = line[:-len(line.lstrip())]
17 unindented = line[len(indent):]
18 if unindented == '':
19 print()
20 continue
21 while len(indent_stack[-1]) > len(indent):
22 indent_stack.pop()
23 assert len(indent_stack[-1]) >= len(indent), \
24 "popped intermediate indentation"
25 if len(indent_stack[-1]) < len(indent):
26 indent_stack.append(indent)
27 ind_print(unindented)