From 632480f6a5c19b858cc5d39a5cfd3ff86a64907e Mon Sep 17 00:00:00 2001 From: "W. Trevor King" Date: Sat, 10 May 2014 13:04:46 -0700 Subject: [PATCH] nmbug-status: Optionally load the header and footer templates from the config For folks that don't like the default templates for whatever reason. --- NEWS | 18 ++++++++++++++++++ devel/nmbug/nmbug-status | 37 +++++++++++++++++++++---------------- 2 files changed, 39 insertions(+), 16 deletions(-) diff --git a/NEWS b/NEWS index 983db2b5..f01af41e 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,21 @@ +Notmuch 0.19 (UNRELEASED) +========================= + +nmbug-status +------------ + +`nmbug-status` can now optionally load header and footer templates +from the config file. Use something like: + + { + "meta": { + "header": "\n\n...", + "footer": "", + ... + }, + ... + }, + Notmuch 0.18~rc1 (2014-05-04) ============================= diff --git a/devel/nmbug/nmbug-status b/devel/nmbug/nmbug-status index c0bdd1b6..f0809f19 100755 --- a/devel/nmbug/nmbug-status +++ b/devel/nmbug/nmbug-status @@ -275,20 +275,8 @@ parser.add_argument('--get-query', help='get query for view', args = parser.parse_args() config = read_config(path=args.config) -now = datetime.datetime.utcnow() -context = { - 'date': now, - 'datetime': now.strftime('%Y-%m-%d %H:%M:%SZ'), - 'title': config['meta']['title'], - 'blurb': config['meta']['blurb'], - 'encoding': _ENCODING, - 'inter_message_padding': '0.25em', - 'border_radius': '0.5em', - } -_PAGES['text'] = Page() -_PAGES['html'] = HtmlPage( - header=''' +header_template = config['meta'].get('header', ''' @@ -338,13 +326,30 @@ _PAGES['html'] = HtmlPage( {blurb}

Views

-'''.format(**context), - footer=''' +''') + +footer_template = config['meta'].get('footer', '''

Generated: {datetime} -'''.format(**context), +''') + +now = datetime.datetime.utcnow() +context = { + 'date': now, + 'datetime': now.strftime('%Y-%m-%d %H:%M:%SZ'), + 'title': config['meta']['title'], + 'blurb': config['meta']['blurb'], + 'encoding': _ENCODING, + 'inter_message_padding': '0.25em', + 'border_radius': '0.5em', + } + +_PAGES['text'] = Page() +_PAGES['html'] = HtmlPage( + header=header_template.format(**context), + footer=footer_template.format(**context), ) if args.list_views: -- 2.26.2