def pretty_print(parsedblame, show_filenames=False, out=sys.stdout): """Pretty-prints the output of parse_blame.""" table = [] for line in parsedblame: author_time = git_dates.timestamp_offset_to_datetime( line.commit.author_time, line.commit.author_tz) row = [line.commit.commithash[:8], '(' + line.commit.author, git_dates.datetime_string(author_time), str(line.lineno_now) + ('*' if line.modified else '') + ')', line.context] if show_filenames: row.insert(1, line.commit.filename) table.append(row) print_table(table, align='llllrl' if show_filenames else 'lllrl', out=out)