git.fiddlerwoaroof.com
Raw Blame History
#!/usr/bin/env python3

import sys

lines = []
for line in sys.stdin:
	line = line.split()
	if line == []: continue
	elif line[0] == 'import':
		qualified = line[1] == 'qualified'
		module = line[1]
		if qualified: module = line[2]
		lines.append(((1 if qualified else 0), module, len(module.split('.')), line))
	else:
		raise ValueError('Can\'t handle lines without import statements')

otoplevel = lines[0][1].split('.',1)[0]
for line in sorted(lines):
	toplevel = line[1].split('.',1)[0]
	if toplevel != otoplevel:
		print()
	print(' '.join(line[-1]))
	otoplevel = toplevel