diff --git a/grouping.py b/grouping.py index 030a033..7d68924 100644 --- a/grouping.py +++ b/grouping.py @@ -111,7 +111,15 @@ def group_items(items: list[Path]) -> Path | None: return target_dir -def main(argv: list[str]) -> int: +def pause_if_interactive() -> None: + if sys.stdin.isatty(): + try: + input("\nPress Enter to close...") + except EOFError: + pass + + +def run(argv: list[str]) -> int: if len(argv) < 2: print("Usage: python3 grouping.py path/to/file/or/directory [...]") return 2 @@ -132,5 +140,12 @@ def main(argv: list[str]) -> int: return 0 +def main(argv: list[str]) -> int: + try: + return run(argv) + finally: + pause_if_interactive() + + if __name__ == "__main__": raise SystemExit(main(sys.argv)) diff --git a/photo_metadata.py b/photo_metadata.py index 974c5ba..f494558 100644 --- a/photo_metadata.py +++ b/photo_metadata.py @@ -1194,7 +1194,15 @@ def prepare_plan(records: list[MediaRecord], choices: UserChoices) -> list[list[ return groups -def main(argv: list[str]) -> int: +def pause_if_interactive() -> None: + if sys.stdin.isatty(): + try: + input("\nPress Enter to close...") + except EOFError: + pass + + +def run(argv: list[str]) -> int: if len(argv) < 2: print("Usage: python3 photo_metadata.py path/to/file/or/directory [...]") return 2 @@ -1254,5 +1262,12 @@ def main(argv: list[str]) -> int: return 0 +def main(argv: list[str]) -> int: + try: + return run(argv) + finally: + pause_if_interactive() + + if __name__ == "__main__": raise SystemExit(main(sys.argv))