diff --git a/libmat2/abstract.py b/libmat2/abstract.py
index b7ccae9b8953d8b29599ac9e2daa9b913447dd8c..7aac2848d3dad7a721aeff1dd433faa5fe3a2b35 100644
--- a/libmat2/abstract.py
+++ b/libmat2/abstract.py
@@ -1,6 +1,6 @@
 import abc
 import os
-from typing import Set
+from typing import Set, Dict
 
 assert Set  # make pyflakes happy
 
@@ -15,7 +15,7 @@ class AbstractParser(abc.ABC):
         self.output_filename = fname + '.cleaned' + extension
 
     @abc.abstractmethod
-    def get_meta(self) -> dict:
+    def get_meta(self) -> Dict[str, str]:
         pass
 
     @abc.abstractmethod
diff --git a/mat2 b/mat2
index 11699f43cffd9033ba83b50f3d27bbebca93ba57..87fa66cac27d8522a3b3883f6e373bf312ed653c 100755
--- a/mat2
+++ b/mat2
@@ -72,6 +72,7 @@ def clean_meta(params: Tuple[str, bool]) -> bool:
 
 def show_parsers():
     print('[+] Supported formats:')
+    formats = list()
     for parser in parser_factory._get_parsers():
         for mtype in parser.mimetypes:
             extensions = set()
@@ -82,7 +83,8 @@ def show_parsers():
                 # we're not supporting a single extension in the current
                 # mimetype, so there is not point in showing the mimetype at all
                 continue
-            print('  - %s (%s)' % (mtype, ', '.join(extensions)))
+            formats.append('  - %s (%s)' % (mtype, ', '.join(extensions)))
+    print('\n'.join(sorted(formats)))
 
 
 def __get_files_recursively(files):