summaryrefslogtreecommitdiffstats
path: root/tools/profile_pretty.py
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tools/profile_pretty.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/tools/profile_pretty.py b/tools/profile_pretty.py
new file mode 100644
index 0000000..c1a08b8
--- /dev/null
+++ b/tools/profile_pretty.py
@@ -0,0 +1,23 @@
+import json
+import io
+from time import time
+from rich.console import Console
+from rich.pretty import Pretty
+
+
+console = Console(file=io.StringIO(), color_system="truecolor", width=100)
+
+with open("cats.json") as fh:
+ cats = json.load(fh)
+
+
+console.begin_capture()
+start = time()
+pretty = Pretty(cats)
+console.print(pretty, overflow="ignore", crop=False)
+result = console.end_capture()
+taken = (time() - start) * 1000
+print(result)
+
+print(console.file.getvalue())
+print(f"{taken:.1f}")