Return-Path:
X-Original-To: notmuch@notmuchmail.org
Delivered-To: notmuch@notmuchmail.org
Received: from localhost (localhost [127.0.0.1])
by olra.theworths.org (Postfix) with ESMTP id 141AC431FAE
for ; Thu, 13 Feb 2014 08:50:59 -0800 (PST)
X-Virus-Scanned: Debian amavisd-new at olra.theworths.org
X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "References"
X-Spam-Flag: NO
X-Spam-Score: 0
X-Spam-Level:
X-Spam-Status: No, score=0 tagged_above=-999 required=5
tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001]
autolearn=disabled
Received: from olra.theworths.org ([127.0.0.1])
by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)
with ESMTP id 2XQbE-PhYmYV for ;
Thu, 13 Feb 2014 08:50:51 -0800 (PST)
Received: from qmta12.westchester.pa.mail.comcast.net
(qmta12.westchester.pa.mail.comcast.net [76.96.59.227])
by olra.theworths.org (Postfix) with ESMTP id 55C54431FBD
for ; Thu, 13 Feb 2014 08:50:46 -0800 (PST)
Received: from omta16.westchester.pa.mail.comcast.net ([76.96.62.88])
by qmta12.westchester.pa.mail.comcast.net with comcast
id RqMu1n0011uE5Es5CsqlbU; Thu, 13 Feb 2014 16:50:45 +0000
Received: from odin.tremily.us ([24.18.63.50])
by omta16.westchester.pa.mail.comcast.net with comcast
id Rsol1n00K152l3L3csomCE; Thu, 13 Feb 2014 16:48:46 +0000
Received: from mjolnir.tremily.us (unknown [192.168.0.140])
by odin.tremily.us (Postfix) with ESMTPS id 1CBE5102DA06;
Thu, 13 Feb 2014 08:48:45 -0800 (PST)
Received: (nullmailer pid 17989 invoked by uid 1000);
Thu, 13 Feb 2014 16:47:29 -0000
From: "W. Trevor King"
To: notmuch@notmuchmail.org
Subject: [PATCH v3 4/8] nmbug-status: Color threads in HTML output
Date: Thu, 13 Feb 2014 08:47:19 -0800
Message-Id:
<8b9398c67286de027038a47db5925b558da0bf28.1392309570.git.wking@tremily.us>
X-Mailer: git-send-email 1.8.5.2.8.g0f6c0d1
In-Reply-To:
References:
In-Reply-To:
References:
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net;
s=q20121106; t=1392310245;
bh=3sxTh78IUXAYTbl0NrkctvdJScbYFJ/4LBHZoq9tWxY=;
h=Received:Received:Received:Received:From:To:Subject:Date:
Message-Id;
b=tGgJFzfC8p/JLrUz/sUaO6iZR/9ayETPcqBRZ+CI1oybQoSdvn0pPDavBr87m923Y
BMukuY15QzuQ09o83V0PJsQRsuMRAyjaFWu7RkYBAr3mOCKx2wgfrxEQlRnscwK3cZ
/+bKChLM+L9wUqIx3O7hYjjQQ/NgS6ygOw08brOoXFDcM/oU9RPD7me8DvPtfBZKaD
pV763Hp/qdWpAwiwtT23Hyj8vlmj9IyA9NNOTRgXcg1rm7CCdI4jc4Au4MK+tPK+6a
1AyNMD/2g5aJeA9kBSTFXodiURP7dX/0qtJYeErPqHJeqoyS+//uNVoSNtNJlyD44A
L5LzIfgkJ+Ucg==
Cc: Tomi Ollila
X-BeenThere: notmuch@notmuchmail.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: "Use and development of the notmuch mail system."
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 13 Feb 2014 16:50:59 -0000
Add tbody sections so we don't have to color every row. Multiple
tbody sections are allowed [1]. Use CSS 3's nth-child to handle
even/odd coloring (skipping the spacer rows) [2], which is supported
on the major browsers [3].
border-spacing is from CCS 2.1 [4,5]. I'm using it to avoid
whitespace between td cells.
border-radius is from CCS 3 [6,7]. I'm using it to make the colored
sections a bit less harsh. I tried adding rounded borders to the
tbody itself doesn't work, but I couldn't get that to work without
setting the tbody's display to 'block'. That rounded the corners, but
collapsed the cell spacing (e.g. columns were no longer aligned).
This commit's by-corner-td approach is not particularly elegant, but
it works. The td padding entries just ensure that the cell body is
suitably far from the edges that it doesn't fall outside of the
rounded corners.
The doubled-braces are escapes from Python's str.format.
[1]: http://www.w3.org/TR/html5/tabular-data.html#the-table-element
[2]: http://www.w3.org/TR/css3-selectors/#nth-child-pseudo
[3]: https://developer.mozilla.org/en-US/docs/Web/CSS/:nth-child#Browser_compatibility
[4]: http://www.w3.org/TR/CSS2/tables.html#propdef-border-spacing
[5]: https://developer.mozilla.org/en-US/docs/Web/CSS/border-spacing#Browser_compatibility
[6]: http://www.w3.org/TR/css3-background/#the-border-radius
[7]: https://developer.mozilla.org/en-US/docs/Web/CSS/border-radius#Browser_compatibility
---
devel/nmbug/nmbug-status | 56 +++++++++++++++++++++++++++++++++++++-----------
1 file changed, 44 insertions(+), 12 deletions(-)
diff --git a/devel/nmbug/nmbug-status b/devel/nmbug/nmbug-status
index 6a156af..92552a4 100755
--- a/devel/nmbug/nmbug-status
+++ b/devel/nmbug/nmbug-status
@@ -204,19 +204,22 @@ class HtmlPage (Page):
return
stream.write('\n')
for thread in threads:
+ stream.write(' \n')
for message_display_data in thread:
stream.write((
- '\n'
- ' {date} | \n'
- ' {message-id-term} | \n'
- '
\n'
- '\n'
- ' {from} | \n'
- ' {subject} | \n'
- '
\n'
+ ' \n'
+ ' {date} | \n'
+ ' {message-id-term} | \n'
+ '
\n'
+ ' \n'
+ ' {from} | \n'
+ ' {subject} | \n'
+ '
\n'
).format(**message_display_data))
+ stream.write(' \n')
if thread != threads[-1]:
- stream.write('
|
\n')
+ stream.write(
+ '
|
\n')
stream.write('
\n')
def _message_display_data(self, *args, **kwargs):
@@ -242,8 +245,36 @@ _PAGES['html'] = HtmlPage(
header='''
-
-Notmuch Patches
+
+
+ Notmuch Patches
+
Notmuch Patches
@@ -252,7 +283,8 @@ Generated: {date}
For more infomation see nmbug
Views
-'''.format(date=datetime.datetime.utcnow().date()),
+'''.format(date=datetime.datetime.utcnow().date(),
+ border_radius='0.5em'),
footer='\n\n',
)
--
1.8.5.2.8.g0f6c0d1