X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;ds=sidebyside;f=devel%2Fnmbug%2Fnmbug-status;h=03621bd534491b185db4dbbc63e4ad38b52b6d14;hb=3c13bc0321baaf340663779d6fce2b1f34c1c2c3;hp=57f16e25d48bc944e291cb5d2fa93b97d03a5c10;hpb=c48a12365fba12a8ec0922a011a86ee15bc5cc8f;p=notmuch diff --git a/devel/nmbug/nmbug-status b/devel/nmbug/nmbug-status index 57f16e25..03621bd5 100755 --- a/devel/nmbug/nmbug-status +++ b/devel/nmbug/nmbug-status @@ -13,7 +13,6 @@ import codecs import collections import datetime import email.utils -import locale try: # Python 3 from urllib.parse import quote except ImportError: # Python 2 @@ -21,11 +20,13 @@ except ImportError: # Python 2 import json import argparse import os +import re import sys import subprocess +import xml.sax.saxutils -_ENCODING = locale.getpreferredencoding() or sys.getdefaultencoding() +_ENCODING = 'UTF-8' _PAGES = {} @@ -40,7 +41,7 @@ if not hasattr(collections, 'OrderedDict'): # Python 2.6 or earlier super(_OrderedDict, self).__setitem__(key, value) self._keys.append(key) - def __values__(self): + def values(self): for key in self._keys: yield self[key] @@ -88,7 +89,7 @@ class Page (object): byte_stream = sys.stdout.buffer except AttributeError: # Python 2 byte_stream = sys.stdout - stream = codecs.getwriter(encoding='UTF-8')(stream=byte_stream) + stream = codecs.getwriter(encoding=_ENCODING)(stream=byte_stream) self._write_header(views=views, stream=stream) for view in views: self._write_view(database=database, view=view, stream=stream) @@ -168,24 +169,32 @@ class Page (object): class HtmlPage (Page): + _slug_regexp = re.compile('\W+') + def _write_header(self, views, stream): super(HtmlPage, self)._write_header(views=views, stream=stream) stream.write('
\n') if 'comment' in view: stream.write(view['comment']) stream.write('\n') for line in [ 'The view is generated from the following query:', - '
', + '', + '', + ' ', + '', ]: stream.write(line) stream.write('\n') @@ -195,17 +204,22 @@ class HtmlPage (Page): return stream.write('', + '
', view['query-string'], - '
{date}\n' - ' | {message-id-term}\n' - ' |
{from}\n' - ' | {subject}\n' - ' |
+Generated: {date}
+{blurb}
+