#!/usr/bin/env python3
import csv
import datetime
today = datetime.date.today()
csv_filename = 'feats.csv'
with open(csv_filename, 'r') as filein:
    myreader = csv.reader(filein, delimiter=';')
    row_format ="[{:<40} ]|" + ( "{:<2} |" * 9 ) + "{:<70} |"
    header_row_format ="{:<40}   |" + ( "{:<2} |" * 9 ) + "{:<70} |"
    data = {}

    print ('Feats')
    print ('=====')
    print ()

    first_row = 1
    for row in myreader:
        row[0]=row[0].strip()
        if row[0]:
            if '**' in row[0]:
                print('')
                print (header_row_format.format(*row))
                if first_row == 1:
                    print('-------------------------------------------|---|---|---|---|---|---|---|---|---|-----------------------------------------------------------------------|')
                    first_row = 0
            else:
                print (row_format.format(*row))
                data[row[0]]=row

feats = sorted(data.keys())

print ()
print ('Feat Descriptions')
print ('-----------------')
print ()

for feat in feats:
  row = data[feat]
  if row[0]:
    print ('### '+ row[0])
    print ('* Description: ' + row[11])
    print ('* Prerequisite: ' + row[10])
    print ('* Benefit: ' + row[12])
    print ('* Normal: ' + row[13])
    print ('* Special: ' + row[14])
    print ()

print()
print ('Last imported from '+ csv_filename + ' on ' + str(today))
print()
