Re: notmuch webmails
authorJohn Lenz <lenz@math.uic.edu>
Wed, 20 Feb 2013 04:45:34 +0000 (22:45 +1800)
committerW. Trevor King <wking@tremily.us>
Fri, 7 Nov 2014 17:53:43 +0000 (09:53 -0800)
4e/eb450f57f5dd580ac43d45c27d9b53ee43accb [new file with mode: 0644]

diff --git a/4e/eb450f57f5dd580ac43d45c27d9b53ee43accb b/4e/eb450f57f5dd580ac43d45c27d9b53ee43accb
new file mode 100644 (file)
index 0000000..b1365e7
--- /dev/null
@@ -0,0 +1,113 @@
+Return-Path: <wuzzeb@wuzzeb.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 545A5431FB6\r
+       for <notmuch@notmuchmail.org>; Tue, 19 Feb 2013 20:45:37 -0800 (PST)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: 0.001\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=0.001 tagged_above=-999 required=5\r
+       tests=[MIME_QP_LONG_LINE=0.001] 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 9-EIqWKEOsnQ for <notmuch@notmuchmail.org>;\r
+       Tue, 19 Feb 2013 20:45:36 -0800 (PST)\r
+Received: from smtp.rcn.com (smtp.rcn.com [69.168.97.78])\r
+       by olra.theworths.org (Postfix) with ESMTP id 74B56431FAE\r
+       for <notmuch@notmuchmail.org>; Tue, 19 Feb 2013 20:45:36 -0800 (PST)\r
+X_CMAE_Category: 0,0 Undefined,Undefined\r
+X-CNFS-Analysis: v=2.0 cv=L+6fspv8 c=1 sm=0 a=C2bPeGdon5f+QfTtoGFpIg==:17\r
+       a=97V-WqMTq8EA:10 a=3wHbS4G-AAAA:8 a=dSxMaU7jJ00A:10\r
+       a=xtERp6CFAAAA:8 a=JqsHG6aPAAAA:8 a=mkJXniIIlVzZHR6R2SgA:9\r
+       a=C2bPeGdon5f+QfTtoGFpIg==:117\r
+X-CM-Score: 0\r
+X-Scanned-by: Cloudmark Authority Engine\r
+Authentication-Results: smtp02.rcn.cmh.synacor.com\r
+       header.from=wuzzeb@wuzzeb.org; sender-id=pass\r
+Authentication-Results: smtp02.rcn.cmh.synacor.com\r
+ smtp.mail=wuzzeb@wuzzeb.org; spf=pass;        sender-id=pass\r
+Received-SPF: pass (smtp02.rcn.cmh.synacor.com: domain wuzzeb.org designates\r
+       205.178.10.182 as permitted sender)\r
+Received: from [205.178.10.182] ([205.178.10.182:41475] helo=wuzzeb.org)\r
+       by smtp.rcn.com (envelope-from <wuzzeb@wuzzeb.org>)\r
+       (ecelerity 2.2.3.49 r(42060/42061)) with ESMTP\r
+       id 73/8C-09236-FE454215; Tue, 19 Feb 2013 23:45:35 -0500\r
+Received: from wuzzeb by wuzzeb.org with local (Exim 4.80.1)\r
+       (envelope-from <wuzzeb@wuzzeb.org>)\r
+       id 1U81Yk-0000mg-PA; Tue, 19 Feb 2013 22:45:34 -0600\r
+From: =?utf-8?Q?John_Lenz?= <lenz@math.uic.edu>\r
+To: =?utf-8?Q?Nicolas_Pouillard?= <np@nicolaspouillard.fr>,\r
+       =?utf-8?Q?David_Bremner?= <david@tethera.net>, <notmuch@notmuchmail.org>\r
+Subject: Re: notmuch webmails\r
+In-reply-to: <20130219155005.2945.90450@mail-np.tu.ail>\r
+References: <20130214204917.12166.59790@hermes>\r
+       <87d2w2ml8n.fsf@endefensadelsl.org> <E1U6mAt-0003xW-5T@wuzzeb.org>\r
+       <20130216195946.21525.5975@mail-np.tu.ail>\r
+       <87txpb5b7o.fsf@zancas.localnet>\r
+       <20130219155005.2945.90450@mail-np.tu.ail>\r
+MIME-Version: 1.0\r
+Content-Type: text/plain\r
+Content-Transfer-Encoding: quoted-printable\r
+Message-Id: <E1U81Yk-0000mg-PA@wuzzeb.org>\r
+Sender: <wuzzeb@wuzzeb.org>\r
+Date: Tue, 19 Feb 2013 22:45:34 -0600\r
+Cc: bgmamari.foss@gmail.com\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: Wed, 20 Feb 2013 04:45:37 -0000\r
+\r
+On 2013-02-19 15:50:05 UTC, Nicolas Pouillard <np@nicolaspouillard.fr> wrote:=20=\r
+\r
+> Quoting David Bremner (2013-02-17 14:19:55)\r
+> > Nicolas Pouillard <np@nicolaspouillard.fr> writes:\r
+> > \r
+> > > Quoting John Lenz (2013-02-16 19:07:47)\r
+> > \r
+> > >> Hi, I am working on one as well, but am further along.  I am starting\r
+> > >> to use it as my main interface.  I have table view of messages, a\r
+> > >> pager view, tagging and retagging, compose, compose with attachments,\r
+> > >> etc.  Combined with the "Its All Text" firefox plugin, it works\r
+> > >> pretty well.  I was planning on announcing in a week or so, but here\r
+> > >> is the code since this thread showed up.  I will work on some\r
+> > >> instructions on how to set it up soon, plus a little cleanup.\r
+> > >> \r
+> > >> https://bitbucket.org/wuzzeb/notmuch-web/src\r
+> > >\r
+> > > Wow in Haskell! I'm looking forward to try/use it.\r
+> > \r
+> > Interesting. I see you are calling out to the CLI.  Ben Gamari (in CC)\r
+> > was working on some Haskell bindings; I'm not sure how far he got. I\r
+> > think there were some conflicts between the memory models of talloc and\r
+> > Haskell.\r
+> \r
+> Calling the CLI has been of a direct use for me to run the webapp on a\r
+> different machine by simply having notmuch as a script using ssh.\r
+> \r
+\r
+Yes, parsing the JSON from the CLI is pretty easy so I don't see much benefit\r
+to using a direct binding.\r
+\r
+The only main issue I am still trying to work out is how to deal with flowed\r
+messages.  I think for viewing, if there is a html alternative, I will use\r
+xss-sanatize (http://hackage.haskell.org/package/xss-sanitize) with perhaps\r
+some additional filtering for images and such.  The problem is format=3Dflowed\r
+messages: the JSON from the CLI does not have the format=3Dflowed header\r
+anywhere in the JSON.  The message body still has spaces at the end of flowed\r
+lines, so if we knew that the message was flowed we could parse the spaces\r
+in haskell.  Alternatively, I have been considering enhancing notmuch itself\r
+to parse the flowed text into paragraphs and stick it into the JSON.  For\r
+compose, I just need to enhance the mime-mail package to send flowed\r
+text, but will have to figure out how to round-trip the reply text through\r
+the textbox.\r