From 2968a48fd4e015983c3255fd4fc584c649abfd63 Mon Sep 17 00:00:00 2001 From: Tails developers Date: Sat, 13 Jul 2013 10:15:47 +0000 Subject: Include list_supported_formats in the module --- MAT/mat.py | 19 ++++++++++++++++++- mat | 22 +++++++--------------- 2 files changed, 25 insertions(+), 16 deletions(-) diff --git a/MAT/mat.py b/MAT/mat.py index 90fb3cb..42e96df 100644 --- a/MAT/mat.py +++ b/MAT/mat.py @@ -13,7 +13,6 @@ import xml.sax import hachoir_core.cmd_line import hachoir_parser - __version__ = '0.4' __author__ = 'jvoisin' @@ -47,6 +46,24 @@ def get_datadir(): elif os.path.isdir('/usr/local/share/mat/'): return '/usr/local/share/mat/' +def list_supported_formats(): + ''' + Return a list of all localy supported fileformat + ''' + handler = XMLParser() + parser = xml.sax.make_parser() + parser.setContentHandler(handler) + path = os.path.join(get_datadir(), 'FORMATS') + with open(path, 'r') as xmlfile: + parser.parse(xmlfile) + + localy_supported = [] + for item in handler.list: + if strippers.STRIPPERS.has_key(item['mimetype'].split(',')[0]): + localy_supported.append(item) + + return localy_supported + class XMLParser(xml.sax.handler.ContentHandler): ''' Parse the supported format xml, and return a corresponding diff --git a/mat b/mat index d996708..f65f696 100755 --- a/mat +++ b/mat @@ -102,21 +102,13 @@ def list_supported(): ''' Print all supported fileformat, and exit ''' - handler = mat.XMLParser() - parser = xml.sax.make_parser() - parser.setContentHandler(handler) - path = os.path.join(mat.get_datadir(), 'FORMATS') - with open(path, 'r') as xmlfile: - parser.parse(xmlfile) - - for item in handler.list: - if strippers.STRIPPERS.has_key(item['mimetype'].split(',')[0]): - print('%s (%s)' % (item['name'], item['extension'])) - print('\tsupport : ' + item['support']) - print('\tmetadata : ' + item['metadata']) - print('\tmethod : ' + item['method']) - print('\tremaining : ' + item['remaining']) - print('\n') + for item in mat.list_supported_formats(): + print('%s (%s)' % (item['name'], item['extension'])) + print('\tsupport : ' + item['support']) + print('\tmetadata : ' + item['metadata']) + print('\tmethod : ' + item['method']) + print('\tremaining : ' + item['remaining']) + print('\n') sys.exit(0) -- cgit v1.3