Re: [PATCH v1] emacs: Add `notmuch-show-toggle-citation-visibility', bound to '>'
authorDavid Edmondson <dme@dme.org>
Thu, 22 May 2014 08:22:42 +0000 (09:22 +0100)
committerW. Trevor King <wking@tremily.us>
Fri, 7 Nov 2014 18:02:56 +0000 (10:02 -0800)
3b/7c3098a56150cf80f5be1ac2ec901b42ef094b [new file with mode: 0644]

diff --git a/3b/7c3098a56150cf80f5be1ac2ec901b42ef094b b/3b/7c3098a56150cf80f5be1ac2ec901b42ef094b
new file mode 100644 (file)
index 0000000..81e4159
--- /dev/null
@@ -0,0 +1,162 @@
+Return-Path: <dme@dme.org>\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 96A0B431FBC\r
+       for <notmuch@notmuchmail.org>; Thu, 22 May 2014 01:22:56 -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 Q8b606-L-Wsj for <notmuch@notmuchmail.org>;\r
+       Thu, 22 May 2014 01:22:52 -0700 (PDT)\r
+Received: from mail-wi0-f178.google.com (mail-wi0-f178.google.com\r
+       [209.85.212.178]) (using TLSv1 with cipher RC4-SHA (128/128 bits))\r
+       (No client certificate requested)\r
+       by olra.theworths.org (Postfix) with ESMTPS id 5FF2F431FAE\r
+       for <notmuch@notmuchmail.org>; Thu, 22 May 2014 01:22:52 -0700 (PDT)\r
+Received: by mail-wi0-f178.google.com with SMTP id cc10so3912966wib.5\r
+       for <notmuch@notmuchmail.org>; Thu, 22 May 2014 01:22:51 -0700 (PDT)\r
+X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;\r
+       d=1e100.net; s=20130820;\r
+       h=x-gm-message-state:to:subject:in-reply-to:references:user-agent\r
+       :from:date:message-id:mime-version:content-type;\r
+       bh=ix+DpXvbHk1xJf9+EYW7VeAP+QHf+Rw0+WACHGf08rE=;\r
+       b=iZBSrgu+HoDprm859UfCjhM0AypSVZ1VhIeHSLiQkKHZXfMc6k34tMuVqTCU5+JbmH\r
+       5ZGhQyjh7Ozn+UMB2mEcCxhLL40yKWRaPb/HuxF0c3DVU+mFFjLVqeecLpktsnkyMMlN\r
+       Rhgvz6kD13TpX2fp4oq+CBfvw5rTEoRw+GK/ZQUaXF4UFDebG5ZmwWp6285wvl3XkuTD\r
+       H9NoO/OlZIIIyjhKIUBcBCHHH12rymdaQoM1YmqJoqImZs9W7U/kSsmR9DKYhjXWi84c\r
+       en2sp7s9b86KqU/ssdtg1j+St1Eudtpp/l8Fde9qZ//LtWLM4BMMgdvGRj6s0qLQNQNI\r
+       7Crg==\r
+X-Gm-Message-State:\r
+ ALoCoQkp9ByUZle0fOWNz1rrUKz2mTZxmZc0gy5+HAbgsv1mRe3TFlgm3Haj5Xp4/cx2M/02ZMLz\r
+X-Received: by 10.180.93.163 with SMTP id cv3mr15177751wib.3.1400746971103;\r
+       Thu, 22 May 2014 01:22:51 -0700 (PDT)\r
+Received: from localhost ([2a01:348:1a2:1:a288:b4ff:fe8a:77d8])\r
+       by mx.google.com with ESMTPSA id lz11sm6684696wic.0.2014.05.22.01.22.49\r
+       for <multiple recipients>\r
+       (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\r
+       Thu, 22 May 2014 01:22:50 -0700 (PDT)\r
+To: Mark Walters <markwalters1009@gmail.com>, notmuch@notmuchmail.org\r
+Subject: Re: [PATCH v1] emacs: Add `notmuch-show-toggle-citation-visibility',\r
+       bound to '>'\r
+In-Reply-To: <87zjia6ykb.fsf@qmul.ac.uk>\r
+References: <1400601369-17005-1-git-send-email-dme@dme.org>\r
+       <87zjia6ykb.fsf@qmul.ac.uk>\r
+User-Agent: Notmuch/0.18 (http://notmuchmail.org) Emacs/24.3.1\r
+       (x86_64-pc-linux-gnu)\r
+From: David Edmondson <dme@dme.org>\r
+Date: Thu, 22 May 2014 09:22:42 +0100\r
+Message-ID: <cun7g5ete7h.fsf@hotblack-desiato.hh.sledj.net>\r
+MIME-Version: 1.0\r
+Content-Type: multipart/signed; boundary="=-=-=";\r
+       micalg=pgp-sha1; protocol="application/pgp-signature"\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: Thu, 22 May 2014 08:22:56 -0000\r
+\r
+--=-=-=\r
+Content-Type: text/plain\r
+Content-Transfer-Encoding: quoted-printable\r
+\r
+On Thu, May 22 2014, Mark Walters wrote:\r
+> On Tue, 20 May 2014, David Edmondson <dme@dme.org> wrote:\r
+>> Add a function and key-binding to toggle the collapsing of citations\r
+>> within the current message.\r
+>\r
+> Hi=20\r
+>\r
+> I like the idea. It seems a little odd to want to toggle the citations\r
+> closing some and opening others. I wonder whether the following action\r
+> would be more intuitive.\r
+\r
+Toggle is a side-effect of the implementation, I agree.\r
+\r
+> If any citation is closed then open all citations. Otherwise close all\r
+> citations.\r
+>\r
+> Alternatively, we could mirror things like M-RET and have ">" always opens\r
+> citations and PREFIX ">" always closes all citations.\r
+>\r
+> What do you think?\r
+\r
+I'll do this. (Busy next week, so it won't be immediate.)\r
+\r
+> Best wishes\r
+>\r
+> Mark\r
+>\r
+>> ---\r
+>>  emacs/notmuch-show.el | 17 +++++++++++++++++\r
+>>  1 file changed, 17 insertions(+)\r
+>>\r
+>> diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el\r
+>> index 10fc872..e4b56c7 100644\r
+>> --- a/emacs/notmuch-show.el\r
+>> +++ b/emacs/notmuch-show.el\r
+>> @@ -1036,6 +1036,22 @@ useful for quoting in replies)."\r
+>>          "Content is not indented."))\r
+>>    (notmuch-show-refresh-view))\r
+>>=20=20\r
+>> +(defun notmuch-show-toggle-citation-visibility ()\r
+>> +  "Toggle the visibility of the citations in the current message."\r
+>> +  (interactive)\r
+>> +  (let ((beg (notmuch-show-message-top))\r
+>> +   (end (notmuch-show-message-bottom))\r
+>> +   button)\r
+>> +    (save-excursion\r
+>> +      (goto-char beg)\r
+>> +      (while (and (setq button (next-button (point)))\r
+>> +             (< (goto-char (button-start button))\r
+>> +                end))\r
+>> +   (let ((overlay (button-get button 'overlay)))\r
+>> +     (when (and overlay\r
+>> +                (string=3D (overlay-get overlay 'type) "citation"))\r
+>> +       (push-button (point))))))))\r
+>> +\r
+>>  (defun notmuch-show-insert-tree (tree depth)\r
+>>    "Insert the message tree TREE at depth DEPTH in the current thread."\r
+>>    (let ((msg (car tree))\r
+>> @@ -1311,6 +1327,7 @@ reset based on the original query."\r
+>>     (define-key map "!" 'notmuch-show-toggle-elide-non-matching)\r
+>>     (define-key map "$" 'notmuch-show-toggle-process-crypto)\r
+>>     (define-key map "<" 'notmuch-show-toggle-thread-indentation)\r
+>> +   (define-key map ">" 'notmuch-show-toggle-citation-visibility)\r
+>>     (define-key map "t" 'toggle-truncate-lines)\r
+>>     (define-key map "." 'notmuch-show-part-map)\r
+>>     map)\r
+>> --=20\r
+>> 2.0.0.rc0\r
+>>\r
+>> _______________________________________________\r
+>> notmuch mailing list\r
+>> notmuch@notmuchmail.org\r
+>> http://notmuchmail.org/mailman/listinfo/notmuch\r
+\r
+--=-=-=\r
+Content-Type: application/pgp-signature; name="signature.asc"\r
+\r
+-----BEGIN PGP SIGNATURE-----\r
+Version: GnuPG v1\r
+\r
+iKYEARECAGYFAlN9s9JfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3Bl\r
+bnBncC5maWZ0aGhvcnNlbWFuLm5ldDc1M0Y5NDJDMEExNjc3MDE4OURGMUYyMDY5\r
+RUNEMEFCRjA0OTY1MTYACgkQaezQq/BJZRYjIgCfcx3ILftPcox93VjphcCEIpAv\r
+7VYAnibJSTGVkd1wBDfpmXCHfkhPt6YL\r
+=Qce1\r
+-----END PGP SIGNATURE-----\r
+--=-=-=--\r