]> rtime.felk.cvut.cz Git - notmuch.git/blobdiff - devel/nmbug/nmbug-status
nmbug-status: Add the time to the footer's build-date
[notmuch.git] / devel / nmbug / nmbug-status
index a7c79206621e8d21ac3305210be45eac54e902be..c0bdd1b6e7722936cf02df7b7a1985f064c03051 100755 (executable)
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see http://www.gnu.org/licenses/ .
 
+"""Generate HTML for one or more notmuch searches.
+
+Messages matching each search are grouped by thread.  Each message
+that contains both a subject and message-id will have the displayed
+subject link to the Gmane view of the message.
+"""
+
 from __future__ import print_function
 from __future__ import unicode_literals
 
@@ -255,7 +262,7 @@ class HtmlPage (Page):
     def _slug(self, string):
         return self._slug_regexp.sub('-', string)
 
-parser = argparse.ArgumentParser()
+parser = argparse.ArgumentParser(description=__doc__)
 parser.add_argument('--text', help='output plain text format',
                     action='store_true')
 parser.add_argument('--config', help='load config from given file',
@@ -268,6 +275,16 @@ 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(
@@ -308,22 +325,26 @@ _PAGES['html'] = HtmlPage(
     tbody:nth-child(4n+3) tr td {{
       background-color: #bce;
     }}
+    hr {{
+      border: 0;
+      height: 1px;
+      color: #ccc;
+      background-color: #ccc;
+    }}
   </style>
 </head>
 <body>
 <h2>{title}</h2>
-<p>
-Generated: {date}<br />
 {blurb}
 </p>
 <h3>Views</h3>
-'''.format(date=datetime.datetime.utcnow().date(),
-           title=config['meta']['title'],
-           blurb=config['meta']['blurb'],
-           encoding=_ENCODING,
-           inter_message_padding='0.25em',
-           border_radius='0.5em'),
-    footer='</body>\n</html>\n',
+'''.format(**context),
+    footer='''
+<hr>
+<p>Generated: {datetime}
+</body>
+</html>
+'''.format(**context),
     )
 
 if args.list_views: