--- /dev/null
+Return-Path: <keevan@fastmail.fm>\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 2F860431FB6\r
+ for <notmuch@notmuchmail.org>; Thu, 14 Feb 2013 16:12:51 -0800 (PST)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -0.799\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5\r
+ tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,\r
+ FREEMAIL_FROM=0.001, 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 BFro18UKLlLg for <notmuch@notmuchmail.org>;\r
+ Thu, 14 Feb 2013 16:12:50 -0800 (PST)\r
+Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com\r
+ [66.111.4.25])\r
+ (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))\r
+ (No client certificate requested)\r
+ by olra.theworths.org (Postfix) with ESMTPS id 5EC0C431FAF\r
+ for <notmuch@notmuchmail.org>; Thu, 14 Feb 2013 16:12:50 -0800 (PST)\r
+Received: from compute1.internal (compute1.nyi.mail.srv.osa [10.202.2.41])\r
+ by gateway1.nyi.mail.srv.osa (Postfix) with ESMTP id A68FE20753;\r
+ Thu, 14 Feb 2013 19:12:49 -0500 (EST)\r
+Received: from frontend1.nyi.mail.srv.osa ([10.202.2.160])\r
+ by compute1.internal (MEProxy); Thu, 14 Feb 2013 19:12:49 -0500\r
+DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=8t8.us; h=date\r
+ :from:to:cc:subject:message-id:mime-version:content-type; s=\r
+ mesmtp; bh=z4krmFngub0z2y+RfJYc019metg=; b=R+jA9aL/o0LrAI2kAGfAo\r
+ h6hG7+7j/RK8jHpMZyPHctiL2muV9IO9OlSAmgP3FlvxrXgDvhvTnjMkdMBLpfBv\r
+ 7iIGoek9V9+pZ5SeU5TchNdKP1MfFMT0q6KM022CzR5iPVRHcesZi93weNHG/HZU\r
+ mY3FFWlpr5RyLXECPLLh3M=\r
+DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=\r
+ messagingengine.com; h=date:from:to:cc:subject:message-id\r
+ :mime-version:content-type; s=smtpout; bh=z4krmFngub0z2y+RfJYc01\r
+ 9metg=; b=ES3wnLrmUitIOB+5Tp0N5Q1HP0Qy45HcR1qMXnBj46qxf9kiTo33lF\r
+ QM11ywvinNl4vt7JD2g/AwNkzf8uDmWqZ39gr0SHXHwQLOHexBtbpCq8wA6BRj0x\r
+ d7V6aTnWuge5eD1gmBiBbEcOhPX3SRWMbssUBB6uHW5ltRv6gBthI=\r
+X-Sasl-enc: qleg49sPxbSfUNkAPA+G5rw74ZNzhGrJmC41oGWJ683y 1360887169\r
+Received: from localhost (unknown [75.170.32.230])\r
+ by mail.messagingengine.com (Postfix) with ESMTPA id 0282E8E01F3;\r
+ Thu, 14 Feb 2013 19:12:48 -0500 (EST)\r
+Date: Thu, 14 Feb 2013 16:12:47 -0800\r
+From: "Kevin J. McCarthy" <kevin@8t8.us>\r
+To: notmuch@notmuchmail.org\r
+Subject: [PATCH] notmuch-mutt: improve robustness of mutt macros\r
+Message-ID: <20130215001247.GB3247@zaogao.lan>\r
+Mail-Followup-To: notmuch@notmuchmail.org, Stefano Zacchiroli\r
+ <zack@upsilon.cc>\r
+MIME-Version: 1.0\r
+Content-Type: multipart/signed; micalg=pgp-sha256;\r
+ protocol="application/pgp-signature"; boundary="NMuMz9nt05w80d4+"\r
+Content-Disposition: inline\r
+OpenPGP: id=B6B1CD9613699FB8;\r
+ url=http://www.8t8.us/configs/13699FB8.asc.pubkey; preference=sign\r
+User-Agent: Mutt/1.5.21 (2010-09-15)\r
+Cc: Stefano Zacchiroli <zack@upsilon.cc>\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: Fri, 15 Feb 2013 00:12:51 -0000\r
+\r
+\r
+--NMuMz9nt05w80d4+\r
+Content-Type: text/plain; charset=us-ascii\r
+Content-Disposition: inline\r
+Content-Transfer-Encoding: quoted-printable\r
+\r
+Details:\r
+- $pipe_decode is turned off, to prevent message-id from being\r
+ filtered out by "ignore" settings in the muttrc.\r
+- Original values for $pipe_decode and $wait_key are saved and restored.\r
+- The macros, being much longer now, are line wrapped for improved\r
+ readability.\r
+---\r
+\r
+This patch would be in addition to the one sent by Stefano in\r
+id:20130214083713.GA4123@upsilon.cc\r
+\r
+His patch improves notmuch-mutt itself. This patch improves the macros\r
+to invoke notmuch-mutt.\r
+\r
+ contrib/notmuch-mutt/notmuch-mutt | 16 +++++++++++++---\r
+ contrib/notmuch-mutt/notmuch-mutt.rc | 16 +++++++++++++---\r
+ 2 files changed, 26 insertions(+), 6 deletions(-)\r
+\r
+diff --git a/contrib/notmuch-mutt/notmuch-mutt b/contrib/notmuch-mutt/notmu=\r
+ch-mutt\r
+index bc97908..00c5ef8 100755\r
+--- a/contrib/notmuch-mutt/notmuch-mutt\r
++++ b/contrib/notmuch-mutt/notmuch-mutt\r
+@@ -270,13 +270,23 @@ the following in your Mutt configuration (usually one=\r
+ of: F<~/.muttrc>,\r
+ F</etc/Muttrc>, or a configuration snippet under F</etc/Muttrc.d/>):\r
+=20\r
+ macro index <F8> \\r
+- "<enter-command>unset wait_key<enter><shell-escape>notmuch-mutt =\r
+-r --prompt search<enter><change-folder-readonly>~/.cache/notmuch/mutt/resu=\r
+lts<enter>" \\r
++ "<enter-command>set my_old_pipe_decode=3D\$pipe_decode my_old_wait_key=\r
+=3D\$wait_key nopipe_decode nowait_key<enter>\\r
++ <shell-escape>notmuch-mutt -r --prompt search<enter>\\r
++ <change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/=\r
+mutt/results`<enter>\\r
++ <enter-command>set pipe_decode=3D\$my_old_pipe_decode wait_key=3D\$my_=\r
+old_wait_key<enter>" \\r
+ "notmuch: search mail"\r
++\r
+ macro index <F9> \\r
+- "<enter-command>unset wait_key<enter><pipe-message>notmuch-mutt =\r
+-r thread<enter><change-folder-readonly>~/.cache/notmuch/mutt/results<enter=\r
+><enter-command>set wait_key<enter>" \\r
++ "<enter-command>set my_old_pipe_decode=3D\$pipe_decode my_old_wait_key=\r
+=3D\$wait_key nopipe_decode nowait_key<enter>\\r
++ <pipe-message>notmuch-mutt -r thread<enter>\\r
++ <change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/=\r
+mutt/results`<enter>\\r
++ <enter-command>set pipe_decode=3D\$my_old_pipe_decode wait_key=3D\$my_=\r
+old_wait_key<enter>" \\r
+ "notmuch: reconstruct thread"\r
++\r
+ macro index <F6> \\r
+- "<enter-command>unset wait_key<enter><pipe-message>notmuch-mutt =\r
+tag -- -inbox<enter>" \\r
++ "<enter-command>set my_old_pipe_decode=3D\$pipe_decode my_old_wait_key=\r
+=3D\$wait_key nopipe_decode nowait_key<enter>\\r
++ <pipe-message>notmuch-mutt tag -- -inbox<enter>\\r
++ <enter-command>set pipe_decode=3D\$my_old_pipe_decode wait_key=3D\$my_=\r
+old_wait_key<enter>" \\r
+ "notmuch: remove message from inbox"\r
+=20\r
+ The first macro (activated by <F8>) prompts the user for notmuch search te=\r
+rms\r
+diff --git a/contrib/notmuch-mutt/notmuch-mutt.rc b/contrib/notmuch-mutt/no=\r
+tmuch-mutt.rc\r
+index ddc4b48..6b299dc 100644\r
+--- a/contrib/notmuch-mutt/notmuch-mutt.rc\r
++++ b/contrib/notmuch-mutt/notmuch-mutt.rc\r
+@@ -1,9 +1,19 @@\r
+ macro index <F8> \\r
+- "<enter-command>unset wait_key<enter><shell-escape>notmuch-mutt -r -=\r
+-prompt search<enter><change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/=\r
+=2Ecache}/notmuch/mutt/results`<enter>" \\r
++"<enter-command>set my_old_pipe_decode=3D\$pipe_decode my_old_wait_key=3D\=\r
+$wait_key nopipe_decode nowait_key<enter>\\r
++<shell-escape>notmuch-mutt -r --prompt search<enter>\\r
++<change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt=\r
+/results`<enter>\\r
++<enter-command>set pipe_decode=3D\$my_old_pipe_decode wait_key=3D\$my_old_=\r
+wait_key<enter>" \\r
+ "notmuch: search mail"\r
++\r
+ macro index <F9> \\r
+- "<enter-command>unset wait_key<enter><pipe-message>notmuch-mutt -r t=\r
+hread<enter><change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/n=\r
+otmuch/mutt/results`<enter><enter-command>set wait_key<enter>" \\r
++"<enter-command>set my_old_pipe_decode=3D\$pipe_decode my_old_wait_key=3D\=\r
+$wait_key nopipe_decode nowait_key<enter>\\r
++<pipe-message>notmuch-mutt -r thread<enter>\\r
++<change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt=\r
+/results`<enter>\\r
++<enter-command>set pipe_decode=3D\$my_old_pipe_decode wait_key=3D\$my_old_=\r
+wait_key<enter>" \\r
+ "notmuch: reconstruct thread"\r
++\r
+ macro index <F6> \\r
+- "<enter-command>unset wait_key<enter><pipe-message>notmuch-mutt tag =\r
+-- -inbox<enter>" \\r
++"<enter-command>set my_old_pipe_decode=3D\$pipe_decode my_old_wait_key=3D\=\r
+$wait_key nopipe_decode nowait_key<enter>\\r
++<pipe-message>notmuch-mutt tag -- -inbox<enter>\\r
++<enter-command>set pipe_decode=3D\$my_old_pipe_decode wait_key=3D\$my_old_=\r
+wait_key<enter>" \\r
+ "notmuch: remove message from inbox"\r
+--=20\r
+1.7.10.4\r
+\r
+\r
+--NMuMz9nt05w80d4+\r
+Content-Type: application/pgp-signature; name="signature.asc"\r
+Content-Description: Digital signature\r
+\r
+-----BEGIN PGP SIGNATURE-----\r
+Version: GnuPG v1.4.12 (GNU/Linux)\r
+\r
+iQEcBAEBCAAGBQJRHX1/AAoJELaxzZYTaZ+4hN0H/24VkdDDfzyS90jDQQOcRg2j\r
+XfQ0jqx3vEFZxqp9RF9ISSc519wttNyNLvhFE6gppuFWj4d4VGhupwP+YMzYQD7z\r
+a+FQH2WNasiFzj1llNZ53GHwGarSIqWZYK565dAgedBfKQzil0Px9F2EhwuunkvZ\r
+CsW6aZePfEDZQYqKlf2nZT+GW3uR+c142TgNu6s0MLW+zxf7ALQmtJgv42G1kYAS\r
+YF+EcVfMPW+TfKG+XpKaqhTQoUa37jAj5bnuTAaNf9PI4Ci80y/VVKoFkRwL55HC\r
+1iLdl4fI7qQTWzTzFKdyAaLLQYq2SG9/VJgBAq+qqkF3ICpFcZBYGTsrlMl+dCw=\r
+=+1EW\r
+-----END PGP SIGNATURE-----\r
+\r
+--NMuMz9nt05w80d4+--\r