Re: [Patch v3 4/8] emacs: tag: add customize for deleted/added tag formats
authorAustin Clements <amdragon@MIT.EDU>
Sat, 22 Mar 2014 02:16:09 +0000 (22:16 +2000)
committerW. Trevor King <wking@tremily.us>
Fri, 7 Nov 2014 18:00:52 +0000 (10:00 -0800)
20/19125d172c37cd3d40dc6a3100ed0b5fcc5bb2 [new file with mode: 0644]

diff --git a/20/19125d172c37cd3d40dc6a3100ed0b5fcc5bb2 b/20/19125d172c37cd3d40dc6a3100ed0b5fcc5bb2
new file mode 100644 (file)
index 0000000..7543a69
--- /dev/null
@@ -0,0 +1,165 @@
+Return-Path: <amdragon@mit.edu>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+       by olra.theworths.org (Postfix) with ESMTP id 7A33B431FB6\r
+       for <notmuch@notmuchmail.org>; Fri, 21 Mar 2014 19:16:21 -0700 (PDT)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -0.7\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5\r
+       tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+       by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+       with ESMTP id yTYqH0riq+0I for <notmuch@notmuchmail.org>;\r
+       Fri, 21 Mar 2014 19:16:15 -0700 (PDT)\r
+Received: from dmz-mailsec-scanner-1.mit.edu (dmz-mailsec-scanner-1.mit.edu\r
+       [18.9.25.12])\r
+       (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))\r
+       (No client certificate requested)\r
+       by olra.theworths.org (Postfix) with ESMTPS id 1A0F0431FAE\r
+       for <notmuch@notmuchmail.org>; Fri, 21 Mar 2014 19:16:14 -0700 (PDT)\r
+X-AuditID: 1209190c-f794a6d000000c27-03-532cf26d60c4\r
+Received: from mailhub-auth-2.mit.edu ( [18.7.62.36])\r
+       (using TLS with cipher AES256-SHA (256/256 bits))\r
+       (Client did not present a certificate)\r
+       by dmz-mailsec-scanner-1.mit.edu (Symantec Messaging Gateway) with SMTP\r
+       id B2.D7.03111.D62FC235; Fri, 21 Mar 2014 22:16:13 -0400 (EDT)\r
+Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11])\r
+       by mailhub-auth-2.mit.edu (8.13.8/8.9.2) with ESMTP id s2M2GCNZ003617; \r
+       Fri, 21 Mar 2014 22:16:13 -0400\r
+Received: from awakening.csail.mit.edu (awakening.csail.mit.edu [18.26.4.91])\r
+       (authenticated bits=0)\r
+       (User authenticated as amdragon@ATHENA.MIT.EDU)\r
+       by outgoing.mit.edu (8.13.8/8.12.4) with ESMTP id s2M2G9Rn019751\r
+       (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT);\r
+       Fri, 21 Mar 2014 22:16:11 -0400\r
+Received: from amthrax by awakening.csail.mit.edu with local (Exim 4.80)\r
+       (envelope-from <amdragon@mit.edu>)\r
+       id 1WRBTl-0004Ow-Hn; Fri, 21 Mar 2014 22:16:09 -0400\r
+Date: Fri, 21 Mar 2014 22:16:09 -0400\r
+From: Austin Clements <amdragon@MIT.EDU>\r
+To: Mark Walters <markwalters1009@gmail.com>\r
+Subject: Re: [Patch v3 4/8] emacs: tag: add customize for deleted/added tag\r
+       formats\r
+Message-ID: <20140322021609.GB31187@mit.edu>\r
+References: <1394597397-8486-1-git-send-email-markwalters1009@gmail.com>\r
+       <1394597397-8486-5-git-send-email-markwalters1009@gmail.com>\r
+MIME-Version: 1.0\r
+Content-Type: text/plain; charset=us-ascii\r
+Content-Disposition: inline\r
+In-Reply-To: <1394597397-8486-5-git-send-email-markwalters1009@gmail.com>\r
+User-Agent: Mutt/1.5.21 (2010-09-15)\r
+X-Brightmail-Tracker:\r
+ H4sIAAAAAAAAA+NgFmphleLIzCtJLcpLzFFi42IRYrdT0c39pBNsMOmqqMXquTwW12/OZHZg\r
+       8tg56y67x7NVt5gDmKK4bFJSczLLUov07RK4MnqnHmEruC9RcWTWLPYGxhPCXYycHBICJhId\r
+       J56wQthiEhfurWfrYuTiEBKYzSTxZvcNFghnI6PE4u7TTBDOaSaJ83/6mCGcJYwSE25+YAHp\r
+       ZxFQlej+/YcZxGYT0JDYtn85I4gtIqAjcfvQAnYQm1lAWuLb72YmEFtYIFRi3cYdYPW8QDU3\r
+       X12F2tDOKNHcexYqIShxcuYTFohmLYkb/14CFXGADVr+jwMkzCngKTF/ykk2EFtUQEViyslt\r
+       bBMYhWYh6Z6FpHsWQvcCRuZVjLIpuVW6uYmZOcWpybrFyYl5ealFuoZ6uZkleqkppZsYQYHN\r
+       Kcmzg/HNQaVDjAIcjEo8vBe4tYOFWBPLiitzDzFKcjApifLefaATLMSXlJ9SmZFYnBFfVJqT\r
+       WnyIUYKDWUmEl+ktUI43JbGyKrUoHyYlzcGiJM4rzwE0SSA9sSQ1OzW1ILUIJivDwaEkwRv7\r
+       EahRsCg1PbUiLTOnBCHNxMEJMpwHaLgdSA1vcUFibnFmOkT+FKOilDjvtA9ACQGQREZpHlwv\r
+       LPG8YhQHekWYNwqknQeYtOC6XwENZgIazD9VC2RwSSJCSqqB0cN7Z2KBaN0dS/0ijgvrF4S4\r
+       rCi/fm/OSy6tzlOKVV2ah1P/Jf7MTUr8tVTA9M+32uDHJUuan8Z+OM+w1ujBFq+1AfaLUv52\r
+       Tmmvmv/VxeqyJXu4pEh/Yxhv5hwZIaUTiz6W5c3Qi34ZcPTgpJivWeq2ggrHapt8HlQffN7z\r
+       0/Mmt5k3Y5mxEktxRqKhFnNRcSIA7bDkHRcDAAA=\r
+Cc: notmuch@notmuchmail.org\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+       <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Sat, 22 Mar 2014 02:16:22 -0000\r
+\r
+Quoth Mark Walters on Mar 12 at  4:09 am:\r
+> Add customize options for deleted/added tag formats.  These are not\r
+> used yet but will be later in the series.\r
+> \r
+> We switch to using `notmuch-apply-face' rather than `propertize' in\r
+> the defcustom for faces so that the faces for deleted/added tags add\r
+> to the default face attributes for the tag.\r
+> \r
+> We special case deleting the unread tag as that tag is a strong visual\r
+> cue and we don't need that cue when we are just saying it used to be\r
+> unread. Thus, we revert to the normal tag face with strikethough for\r
+> deleted unread tags.\r
+> ---\r
+>  emacs/notmuch-tag.el |   37 ++++++++++++++++++++++++++++++++++++-\r
+>  1 files changed, 36 insertions(+), 1 deletions(-)\r
+> \r
+> diff --git a/emacs/notmuch-tag.el b/emacs/notmuch-tag.el\r
+> index a4dea39..4698856 100644\r
+> --- a/emacs/notmuch-tag.el\r
+> +++ b/emacs/notmuch-tag.el\r
+> @@ -39,7 +39,7 @@ (define-widget 'notmuch-tag-format-type 'lazy\r
+>                          (string :tag "Display as")\r
+>                          (list :tag "Face" :extra-offset -4\r
+>                                (const :format "" :inline t\r
+> -                                     (propertize tag 'face))\r
+> +                                     (notmuch-apply-face tag))\r
+>                                (list :format "%v"\r
+>                                      (const :format "" quote)\r
+>                                      custom-face-edit))\r
+> @@ -89,6 +89,41 @@ (defcustom notmuch-tag-formats\r
+>    :group 'notmuch-show\r
+>    :type 'notmuch-tag-format-type)\r
+>  \r
+> +(defcustom notmuch-tag-deleted-formats\r
+> +  '(("unread" (notmuch-apply-face "unread"\r
+> +                  (if (display-supports-face-attributes-p '(:strike-through "red"))\r
+> +                      '(:strike-through "red")\r
+> +                    '(:inverse-video t))))\r
+> +    (".*" (notmuch-apply-face tag\r
+> +                  (if (display-supports-face-attributes-p '(:strike-through "red"))\r
+> +                      '(:strike-through "red")\r
+> +                    '(:inverse-video t)))))\r
+\r
+Aren't the two formatters above the same thing?  Is this somehow\r
+different from just having the .* formatter?  The indentation also\r
+seems a little odd, though that may just be the diff.\r
+\r
+> +  "Custom formats for tags when deleted.\r
+> +\r
+> +For deleted tags the formats in `notmuch-tag-formats` are applied\r
+> +first and then these formats are applied on top.\r
+> +\r
+> +By default this shows deleted tags with strike-through in red,\r
+> +unless strike-through is not available (e.g., emacs is running in\r
+> +a terminal) in which case it uses inverse video. To hide deleted\r
+> +tags completely set this to\r
+> +  '((\".*\" nil))\r
+> +\r
+> +See `notmuch-tag-formats' for full documentation."\r
+> +  :group 'notmuch-show\r
+> +  :type 'notmuch-tag-format-type)\r
+> +\r
+> +(defcustom notmuch-tag-added-formats\r
+> +  '((".*" (notmuch-apply-face tag '(:underline "green"))))\r
+> +  "Custom formats for tags when added.\r
+> +\r
+> +For added tags the formats in `notmuch-tag-formats` are applied\r
+> +first and then these formats are applied on top.\r
+\r
+Maybe add\r
+\r
+To disable special formatting of added tags, set this to ().\r
+\r
+to parallel notmuch-tag-deleted-formats?\r
+\r
+> +\r
+> +See `notmuch-tag-formats' for full documentation."\r
+> +  :group 'notmuch-show\r
+> +  :type 'notmuch-tag-format-type)\r
+> +\r
+>  (defun notmuch-tag-format-image-data (tag data)\r
+>    "Replace TAG with image DATA, if available.\r
+>  \r