From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/56349 Path: main.gmane.org!not-for-mail From: Thomas Schwinge Newsgroups: gmane.emacs.gnus.general Subject: nnmaildir Date: Wed, 11 Feb 2004 18:00:04 +0100 Sender: ding-owner@lists.math.uh.edu Message-ID: <20040211170004.GA1389@server.schwinge.homeip.net> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1076518757 14096 80.91.224.253 (11 Feb 2004 16:59:17 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 11 Feb 2004 16:59:17 +0000 (UTC) Original-X-From: ding-owner+M4889@lists.math.uh.edu Wed Feb 11 17:59:00 2004 Return-path: Original-Received: from malifon.math.uh.edu ([129.7.128.13]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1AqxhU-0008K2-00 for ; Wed, 11 Feb 2004 17:59:00 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by malifon.math.uh.edu with smtp (Exim 3.20 #1) id 1AqxgJ-0005Ck-00; Wed, 11 Feb 2004 10:57:47 -0600 Original-Received: from justine.libertine.org ([66.139.78.221] ident=postfix) by malifon.math.uh.edu with esmtp (Exim 3.20 #1) id 1AqxgA-0005Cc-00 for ding@lists.math.uh.edu; Wed, 11 Feb 2004 10:57:38 -0600 Original-Received: from postman.arcor.de (newsread1.arcor-online.net [151.189.0.146]) by justine.libertine.org (Postfix) with ESMTP id 762D73A007F for ; Wed, 11 Feb 2004 10:57:36 -0600 (CST) Original-Received: from server.schwinge.homeip.net (dialin-212-144-132-151.arcor-ip.net [212.144.132.151]) (authenticated bits=0) by postman.arcor.de (8.13.0.PreAlpha4/8.13.0.PreAlpha4) with ESMTP id i1BGvXtv003201 for ; Wed, 11 Feb 2004 17:57:34 +0100 (MET) Original-Received: (qmail 1485 invoked by uid 7794); 11 Feb 2004 17:00:35 -0000 Original-Received: from schwinge-lists-gnus.org-ding@nic-nac-project.de by server by uid 500 with qmail-scanner-1.16 (clamscan: 0.60. spamassassin: 2.60-cvs. Clear:. Processed in 7.323874 secs); 11 Feb 2004 17:00:13 -0000 X-Qmail-Scanner-Mail-From: schwinge-lists-gnus.org-ding@nic-nac-project.de via server X-Qmail-Scanner-Rcpt-To: ding@gnus.org X-Qmail-Scanner: 1.16 (Clear:. Processed in 7.323874 secs) Original-To: ding@gnus.org Content-Disposition: inline User-Agent: Mutt/1.4.1i Precedence: bulk Xref: main.gmane.org gmane.emacs.gnus.general:56349 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:56349 Hello! Convinced by the power of Gnus I want to make it my default mail and news client. Regarding news: Converting from slrn to Gnus was no problem at all. However regarding mail the situation is more complicated: Since all of my mail folders are in maildir format my backend of choice would be nnmaildir. #v+ thomas@server:~ > ls -l Mail/ Mail-nic-nac-project/ Mail-nic-nac-project/: total 28 drwx------ 6 thomas users 224 Feb 9 20:59 Drafts drwxr-xr-x 6 thomas users 224 Feb 9 20:57 INBOX drwx------ 6 thomas users 224 Feb 9 20:58 Sent drwxr-xr-x 6 thomas users 152 Jan 26 18:21 lists.bincimap\.org.binc drwxr-xr-x 6 thomas users 152 Jan 26 18:22 lists.bincimap\.org.binc-dev drwxr-xr-x 6 thomas users 152 Feb 6 18:23 lists.bincimap\.org.binc-news [...] drwxr-xr-x 6 thomas users 152 Jan 27 16:18 lists.gnus\.org.ding [...] Mail/: total 2404 lrwxrwxrwx 1 thomas users 30 Feb 9 20:58 Drafts -> ../Mail-nic-nac-project/Drafts drwx------ 6 thomas users 224 Feb 9 20:55 Elektronik drwx------ 6 thomas users 224 Feb 9 19:40 INBOX drwx------ 6 thomas users 224 Feb 9 20:55 INBOX.TODO lrwxrwxrwx 1 thomas users 29 Feb 9 20:57 INBOX.nic-nac-project -> ../Mail-nic-nac-project/INBOX [...] lrwxrwxrwx 1 thomas users 28 Feb 9 20:58 Sent -> ../Mail-nic-nac-project/Sent [...] #v- The folders in Mail-nic-nac-project/ are synchronized between several hosts using maildirsync . Now you may wonder about the naming scheme, so let me explain this: This is the IMAPdir layout used by Binc IMAP to get the folders hierarchically displayed in the IMAP client: #v+ Mail +- INBOX | \- TODO +- Drafts +- Sent +- [...] +- lists -+- bincimap.org -+- binc | |- binc-dev | \- binc-news +- gnus.org --- ding +- [...] #v- Parallel to using IMAP I've been using mutt - operating natively on the maildirs. I added #v+ (setq gnus-secondary-select-methods '((nnmaildir "" (directory "~/Mail/")) (nnmaildir "nic-nac-project" (directory "~/Mail-nic-nac-project/")))) #v- to .gnus.el and the folders showed up in Gnus - although I was not able to enter the ones whose are containing a '\': The were refused with: #v+ Retrieving newsgroup: nnmaildir+nic-nac-project:lists.gnus.org.ding... gnus-select-newsgroup: Couldn't activate group nnmaildir+nic-nac-project:lists.gnus.org.ding: No such group: lists.gnus.org.ding #v- The backslash got weeded out somewhere - amazing that this can even happen in Lisp and not only in shell programming. :-) The issue remaining to be resolved for me is that I'd like to have the status flags synchronized between Gnus and the maildirs because it is very inconvenient to see messages marked 'read' in Gnus flash up again as 'unread' ones in mutt. I have to care about this since I'm not able to fully switch over to Gnus - it won't be installed on all systems I'm working on - and I don't accept that I won't be able to use two different mail clients on the same mail sources. Looking at the documentation and throwing a quick glance at the list's archives I heard about this synchronisation not being implemented into nnmaildir at present but that nnmaildirs maintainer, Paul Jarc, would eventually be willing to implement it. With nnmaildir the marks are stored under [maildir]/.nnmaildir/marks/[type of mark]/[message indentifier]. The problem however is that Gnus uses more marks than the current maildir specification provides: #v+ [file names in maildir/cur are of the form uniq:info] info is morally equivalent to the Status field used by mbox readers. It'd be useful to have MUAs agree on the meaning of info, so I'm keeping a list of info semantics. Here it is. info starting with "1,": Experimental semantics. info starting with "2,": Each character after the comma is an independent flag. * Flag "P" (passed): the user has resent/forwarded/bounced this message to someone else. * Flag "R" (replied): the user has replied to this message. * Flag "S" (seen): the user has viewed this message, though perhaps he didn't read all the way through it. * Flag "T" (trashed): the user has moved this message to the trash; the trash will be emptied by a later user action. * Flag "D" (draft): the user considers this message a draft; toggled at user discretion. * Flag "F" (flagged): user-defined flag; toggled at user discretion. New flags may be defined later. Flags must be stored in ASCII order: e.g., "2,FRS". #v- I was not yet able to figure out which of the possible marks from are actually used and stored on disk by nnmaildir - and btw.: How is this problem handled e.g. with Gnus' imap backend? - but the ones also being part of maildir's specification could easily be used and for the others (dormant, ...) we could either try to convince DJB to add them to the specification or the 'experimental semantics' described above could be used. What do you think? Regards, Thomas