[PATCH 2/2] nmbug-status: make output title and blurb configurable

2014-03-13 Thread Jani Nikula
Make nmbug-status more generally usable outside of nmbug by not
hardcoding notmuch related things.

This lets anyone publish html search views to mailing list messages
with a custom config file, independent of nmbug.
---
 devel/nmbug/nmbug-status   |   32 +++-
 devel/nmbug/status-config.json |5 +
 2 files changed, 20 insertions(+), 17 deletions(-)

diff --git a/devel/nmbug/nmbug-status b/devel/nmbug/nmbug-status
index cb3901f..03621bd 100755
--- a/devel/nmbug/nmbug-status
+++ b/devel/nmbug/nmbug-status
@@ -242,6 +242,19 @@ class HtmlPage (Page):
 def _slug(self, string):
 return self._slug_regexp.sub('-', string)

+parser = argparse.ArgumentParser()
+parser.add_argument('--text', help='output plain text format',
+action='store_true')
+parser.add_argument('--config', help='load config from given file',
+metavar='PATH')
+parser.add_argument('--list-views', help='list views',
+action='store_true')
+parser.add_argument('--get-query', help='get query for view',
+metavar='VIEW')
+
+args = parser.parse_args()
+
+config = read_config(path=args.config)

 _PAGES['text'] = Page()
 _PAGES['html'] = HtmlPage(
@@ -292,29 +305,14 @@ Generated: {date}
 
 Views
 '''.format(date=datetime.datetime.utcnow().date(),
-   title='Notmuch Patches',
-   blurb='For more infomation see http://notmuchmail.org/nmbug;>nmbug',
+   title=config['meta']['title'],
+   blurb=config['meta']['blurb'],
encoding=_ENCODING,
inter_message_padding='0.25em',
border_radius='0.5em'),
 footer='\n\n',
 )

-
-parser = argparse.ArgumentParser()
-parser.add_argument('--text', help='output plain text format',
-action='store_true')
-parser.add_argument('--config', help='load config from given file',
-metavar='PATH')
-parser.add_argument('--list-views', help='list views',
-action='store_true')
-parser.add_argument('--get-query', help='get query for view',
-metavar='VIEW')
-
-args = parser.parse_args()
-
-config = read_config(path=args.config)
-
 if args.list_views:
 for view in config['views']:
 print(view['title'])
diff --git a/devel/nmbug/status-config.json b/devel/nmbug/status-config.json
index 6b4934f..3f02c81 100644
--- a/devel/nmbug/status-config.json
+++ b/devel/nmbug/status-config.json
@@ -1,4 +1,9 @@
 {
+"meta": {
+"title": "Notmuch Patches",
+"blurb": "For more infomation see http://notmuchmail.org/nmbug;>nmbug"
+},
+
 "views": [
{
"comment": "Unresolved bugs (or just need tag updating).",
-- 
1.7.2.5



[PATCH 2/2] nmbug-status: make output title and blurb configurable

2014-03-13 Thread Jani Nikula
Make nmbug-status more generally usable outside of nmbug by not
hardcoding notmuch related things.

This lets anyone publish html search views to mailing list messages
with a custom config file, independent of nmbug.
---
 devel/nmbug/nmbug-status   |   32 +++-
 devel/nmbug/status-config.json |5 +
 2 files changed, 20 insertions(+), 17 deletions(-)

diff --git a/devel/nmbug/nmbug-status b/devel/nmbug/nmbug-status
index cb3901f..03621bd 100755
--- a/devel/nmbug/nmbug-status
+++ b/devel/nmbug/nmbug-status
@@ -242,6 +242,19 @@ class HtmlPage (Page):
 def _slug(self, string):
 return self._slug_regexp.sub('-', string)
 
+parser = argparse.ArgumentParser()
+parser.add_argument('--text', help='output plain text format',
+action='store_true')
+parser.add_argument('--config', help='load config from given file',
+metavar='PATH')
+parser.add_argument('--list-views', help='list views',
+action='store_true')
+parser.add_argument('--get-query', help='get query for view',
+metavar='VIEW')
+
+args = parser.parse_args()
+
+config = read_config(path=args.config)
 
 _PAGES['text'] = Page()
 _PAGES['html'] = HtmlPage(
@@ -292,29 +305,14 @@ Generated: {date}br /
 /p
 h3Views/h3
 '''.format(date=datetime.datetime.utcnow().date(),
-   title='Notmuch Patches',
-   blurb='For more infomation see a 
href=http://notmuchmail.org/nmbug;nmbug/a',
+   title=config['meta']['title'],
+   blurb=config['meta']['blurb'],
encoding=_ENCODING,
inter_message_padding='0.25em',
border_radius='0.5em'),
 footer='/body\n/html\n',
 )
 
-
-parser = argparse.ArgumentParser()
-parser.add_argument('--text', help='output plain text format',
-action='store_true')
-parser.add_argument('--config', help='load config from given file',
-metavar='PATH')
-parser.add_argument('--list-views', help='list views',
-action='store_true')
-parser.add_argument('--get-query', help='get query for view',
-metavar='VIEW')
-
-args = parser.parse_args()
-
-config = read_config(path=args.config)
-
 if args.list_views:
 for view in config['views']:
 print(view['title'])
diff --git a/devel/nmbug/status-config.json b/devel/nmbug/status-config.json
index 6b4934f..3f02c81 100644
--- a/devel/nmbug/status-config.json
+++ b/devel/nmbug/status-config.json
@@ -1,4 +1,9 @@
 {
+meta: {
+title: Notmuch Patches,
+blurb: For more infomation see a 
href=http://notmuchmail.org/nmbug;nmbug/a
+},
+
 views: [
{
comment: Unresolved bugs (or just need tag updating).,
-- 
1.7.2.5

___
notmuch mailing list
notmuch@notmuchmail.org
http://notmuchmail.org/mailman/listinfo/notmuch