2 # -*- coding: utf-8 -*-
6 from gotovienna.realtime import *
9 parser = argparse.ArgumentParser(description='Get realtime public transport information for Vienna')
10 parser.add_argument('-l', metavar='name', type=str, help='line name')
11 parser.add_argument('-s', metavar='name', type=str, help='station name')
13 args = parser.parse_args()
22 s = args.s.decode('UTF-8')
27 stations = itip.get_stations(l)
28 for key in stations.keys():
31 for station in stations[key]:
33 if s.startswith(station[0]) or station[0].startswith(s):
35 # skip station if destination
38 print '* %s\n %s .....' % (key, station[0]), itip.get_departures(station[1])
40 print ' %s' % station[0]
44 LINE_WIDTH = (ITEMS_PER_LINE*ITEM_WIDTH + ITEMS_PER_LINE)
47 for label, remaining in categorize_lines(lines.keys()):
48 prefix, fill, postfix = '|== ', '=', '==- -'
49 before, after = prefix+label+' ', postfix
50 padding = LINE_WIDTH - len(before+after)
51 print ''.join((before, fill*padding, after))
54 this_row = [remaining.pop(0) for _ in
55 range(min(len(remaining), ITEMS_PER_LINE))]
56 print ' '.join(('%%%ds' % ITEM_WIDTH) % x for x in this_row)