From 2f1f402b51f7dea6cb4fd43b25159c3075bae08c Mon Sep 17 00:00:00 2001 From: Julien Palard Date: Thu, 15 Nov 2018 14:11:26 +0100 Subject: [PATCH] Enhance todo list display. --- scripts/todo.py | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/scripts/todo.py b/scripts/todo.py index 3e53900a..9d7fa46c 100644 --- a/scripts/todo.py +++ b/scripts/todo.py @@ -20,14 +20,14 @@ def main(): issue["title"].split()[-1]: issue["user"]["login"] for issue in issues } - po_files = list(Path(".").glob("**/*.po")) + po_files = [file for file in Path(".").glob("**/*.po") if ".git/" not in str(file)] po_files_per_directory = { path.parent.name: set(path.parent.glob("*.po")) for path in po_files } for directory, po_files in sorted(po_files_per_directory.items()): - print("\n\n# " + directory) + buffer = [] folder_stats = [] for po_file in sorted(po_files): stats = polib.pofile(po_file) @@ -35,21 +35,27 @@ def main(): if po_file_stat == 100: folder_stats.append(po_file_stat) continue - print( - f"{po_file.name:<30}", - f"{len(stats.translated_entries()):3d} / {len(stats):3d}", - f"({po_file_stat:5.1f}% translated)", - f"{len(stats.fuzzy_entries())} fuzzy" if stats.fuzzy_entries() else "", - f"Réservé par {reservations[str(po_file)]}" - if str(po_file) in reservations - else "", + buffer.append( + f"- {po_file.name:<30} " + + f"{len(stats.translated_entries()):3d} / {len(stats):3d} " + + f"({po_file_stat:5.1f}% translated)" + + ( + f", {len(stats.fuzzy_entries())} fuzzy" + if stats.fuzzy_entries() + else "" + ) + + ( + f", réservé par {reservations[str(po_file)]}" + if str(po_file) in reservations + else "" + ) ) folder_stats.append(po_file_stat) - # TODO: Have the percentage printed next to the folder name - print("\n{}% done.".format(round(statistics.mean(folder_stats), 2))) + print(f"\n\n# {directory} ({statistics.mean(folder_stats):.2f}% done)\n") + print("\n".join(buffer)) -if __name__ == '__main__': +if __name__ == "__main__": # TODO: Add PR handling # TODO: Add total from all folders main()