enhance formatters, add table formatter

This commit is contained in:
Christophe Benz 2010-06-02 02:01:33 +02:00
commit 676a95047d
6 changed files with 98 additions and 32 deletions

View file

@ -23,12 +23,16 @@ __all__ = ['SimpleFormatter']
class SimpleFormatter(IFormatter):
def __init__(self, field_separator=u'\t', key_value_separator=u'=', display_keys=True):
def __init__(self, field_separator=u'\t', key_value_separator=u'='):
IFormatter.__init__(self)
self.field_separator = field_separator
self.key_value_separator = key_value_separator
self.display_keys = display_keys
def format_dict(self, item, selected_fields):
result_str = self.field_separator.join(u'%s%s' % ((u'%s%s' % (
k, self.key_value_separator) if self.display_keys else ''), unicode(item[k])) for k in selected_fields)
return result_str
def after_format(self, formatted):
print formatted.encode('utf-8')
def flush(self):
pass
def format_dict(self, item):
return self.field_separator.join(u'%s%s' % ((u'%s%s' % (k, self.key_value_separator) if self.display_keys else ''), v) for k, v in item.iteritems())