--- /dev/null
+Return-Path: <pieter@praet.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 2E7E5431FDE\r
+ for <notmuch@notmuchmail.org>; Thu, 1 Mar 2012 09:15:50 -0800 (PST)\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 xwe4KgD-UxxO for <notmuch@notmuchmail.org>;\r
+ Thu, 1 Mar 2012 09:15:49 -0800 (PST)\r
+Received: from mail-wi0-f181.google.com (mail-wi0-f181.google.com\r
+ [209.85.212.181]) (using TLSv1 with cipher RC4-SHA (128/128 bits))\r
+ (No client certificate requested)\r
+ by olra.theworths.org (Postfix) with ESMTPS id 1EC76431FAE\r
+ for <notmuch@notmuchmail.org>; Thu, 1 Mar 2012 09:15:49 -0800 (PST)\r
+Received: by wico1 with SMTP id o1so111449wic.26\r
+ for <notmuch@notmuchmail.org>; Thu, 01 Mar 2012 09:15:48 -0800 (PST)\r
+Received-SPF: pass (google.com: domain of pieter@praet.org designates\r
+ 10.180.104.137 as permitted sender) client-ip=10.180.104.137; \r
+Authentication-Results: mr.google.com;\r
+ spf=pass (google.com: domain of pieter@praet.org\r
+ designates 10.180.104.137 as permitted sender)\r
+ smtp.mail=pieter@praet.org\r
+Received: from mr.google.com ([10.180.104.137])\r
+ by 10.180.104.137 with SMTP id ge9mr12667718wib.20.1330622148037\r
+ (num_hops = 1); Thu, 01 Mar 2012 09:15:48 -0800 (PST)\r
+Received: by 10.180.104.137 with SMTP id ge9mr10150495wib.20.1330622147981;\r
+ Thu, 01 Mar 2012 09:15:47 -0800 (PST)\r
+Received: from localhost ([109.131.111.80])\r
+ by mx.google.com with ESMTPS id h19sm43037454wiw.9.2012.03.01.09.15.47\r
+ (version=TLSv1/SSLv3 cipher=OTHER);\r
+ Thu, 01 Mar 2012 09:15:47 -0800 (PST)\r
+From: Pieter Praet <pieter@praet.org>\r
+To: David Bremner <david@tethera.net>, Michal Sojka <sojkam1@fel.cvut.cz>\r
+Subject: Re: [PATCH] emacs: Mention race condition safety in user visible\r
+ documentation\r
+In-Reply-To: <87wr759gs5.fsf@zancas.localnet>\r
+References: <1329605059-15358-1-git-send-email-sojkam1@fel.cvut.cz>\r
+ <CAB+hUn907hwS46jM4FY+BAhBTE1VMaMs=q0PFEou3DfWWaDF8g@mail.gmail.com>\r
+ <87y5rzmg5v.fsf@steelpick.2x.cz> <87vcn0tw1f.fsf@qmul.ac.uk>\r
+ <87linwsg2r.fsf@steelpick.2x.cz> <87wr759gs5.fsf@zancas.localnet>\r
+User-Agent: Notmuch/0.11.1+210~g6afc43e (http://notmuchmail.org) Emacs/23.3.1\r
+ (x86_64-unknown-linux-gnu)\r
+Date: Thu, 01 Mar 2012 18:13:27 +0100\r
+Message-ID: <87linkmeh4.fsf@praet.org>\r
+MIME-Version: 1.0\r
+Content-Type: text/plain; charset=us-ascii\r
+X-Gm-Message-State:\r
+ ALoCoQkyLPq+o9a6j8RRkbvAL+nwloySknzNxHuOV7nPRpdV+gT+w1yaH+oC+oJp5SEm4NIpQhBO\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: Thu, 01 Mar 2012 17:15:50 -0000\r
+\r
+On Wed, 29 Feb 2012 22:49:46 -0400, David Bremner <david@tethera.net> wrote:\r
+> On Tue, 21 Feb 2012 10:15:08 +0100, Michal Sojka <sojkam1@fel.cvut.cz> wrote:\r
+> > -- >8 --\r
+> > Subject: [PATCH] emacs: Clarify description of thread manipulating functions\r
+> > \r
+> > It is not clear whether the term "thread" refers to the thread in the\r
+> > database or to the thread currently shown in a buffer. Those two\r
+> > meanings may refer to different sets of messages, e.g. when a new email\r
+> > is added to the database while the buffer shows the state before the new\r
+> > email arrived.\r
+> \r
+> (will be) pushed.\r
+> \r
+> For future reference, it's slightly inconvenient for me to use "git am\r
+> -c". Not a big deal, but a sequence of those would make me cry...\r
+>\r
+\r
+Something like this might help save you some time:\r
+(assuming you'd rather not leave Emacs to apply patches)\r
+\r
+ #+begin_src emacs-lisp\r
+ (defvar praet/projects\r
+ '(("notmuch@notmuchmail.org" . "~/src/dev/notmuch/")\r
+ ("foo@bar.org" . "~/src/dev/foobar/")))\r
+\r
+ (defun praet/notmuch-patch-apply (&optional all-open)\r
+ "Apply a patch from `notmuch-show-mode' using git-am(1).\r
+ If ALL-OPEN is non-nil, (try to) apply all open messages."\r
+ (interactive "P")\r
+ (let* ((msg (notmuch-show-get-message-id t))\r
+ (rcpts (concat (notmuch-show-get-to)\r
+ (notmuch-show-get-cc)))\r
+ (projs (loop for project in praet/projects\r
+ if (string-match (car project) rcpts)\r
+ collect (cdr project)))\r
+ (proj (if (> (length projs) 1)\r
+ (ido-completing-read "Apply in: " projs)\r
+ (car projs)))\r
+ (cmd "git am --abort ; git am")\r
+ (optargs '("--signoff" "--3way" "--scissors"))\r
+ (args (read-string "Args: " nil '(optargs . 0))))\r
+ (message "Applying in '%s': '%s' (using '%s %s')"\r
+ proj msg cmd args)\r
+ (notmuch-show-pipe-message all-open\r
+ (concat "(cd " proj " && (" cmd " " args ")" ")"))))\r
+\r
+ (define-key notmuch-show-mode-map (kbd "C-c p a")\r
+ 'praet/notmuch-patch-apply)\r
+ #+end_src\r
+\r
+\r
+> d\r
+> _______________________________________________\r
+> notmuch mailing list\r
+> notmuch@notmuchmail.org\r
+> http://notmuchmail.org/mailman/listinfo/notmuch\r
+\r
+\r
+Peace\r
+\r
+-- \r
+Pieter\r