diff --git a/mat2 b/mat2
index a7a3e7352e8a90b9f283b1dd0ed86e550333bbb4..38c0edefb3e1dc05942a156c7816aead47570da6 100755
--- a/mat2
+++ b/mat2
@@ -77,9 +77,10 @@ def __print_meta(filename: str, metadata: dict, depth: int=1):
 
     print("[%s] Metadata for %s:" % ('+'*depth, filename))
 
-    for k, v in metadata.items():
+    for (k,v) in sorted(metadata.items()):
         if isinstance(v, dict):
-            return __print_meta(k, v, depth+1)
+            __print_meta(k, v, depth+1)
+            continue
         try:  # FIXME this is ugly.
             print(padding + "  %s: %s" % (k, v))
         except UnicodeEncodeError: