Gnus development mailing list
 help / color / mirror / Atom feed
From: prj@po.cwru.edu (Paul Jarc)
Subject: Re: (provide 'nnmaildir)
Date: 03 Sep 2000 23:51:29 -0400	[thread overview]
Message-ID: <m3lmx8ak72.fsf@multivac.student.cwru.edu> (raw)
In-Reply-To: prj@po.cwru.edu's message of "11 Aug 2000 11:01:04 -0400"

<URL:http://multivac.cwru.edu/prj/nnmaildir.el>
internal: major rewrite for performance; .nnmaildir-max replaced
          with .nnmaildir, storing NOV lines & other info
internal: old tmp/ files are deleted in -open-server instead of
          -close-server (which has evaporated); tmp/ files with
          multiple hard links are also deleted
feature: -request-replace-article
feature: -groups is now just a list of maildirs; group names are
         stored in the maildirs
feature: -add-lines controls whether Lines: is added when missing
bugfix: -retrieve-headers never actually handled numeric fetch-old
bugfix: -request-{rename,delete}-group no longer require user help
bugfix: -request-expire-articles returns a correct article list

This version uses more memory and is somewhat slower in starting up
and assimilating new messages, but it's much faster in generating
Summary buffers and requesting articles.

An nnmaildir select method looks like this:
'(nnmaildir "whatever" (nnmaildir-groups ("/path/to/maildir"
                                          "/path/to/another")))
Or, for just a single group:
'(nnmaildir "whatever" (nnmaildir-groups "/path/to/maildir"))
If you don't want Lines: added to requested articles when it's missing:
'(nnmaildir "whatever" (nnmaildir-add-lines nil) (nnmaildir-groups ...))

Another somewhat painful migration from previous versions:
- start Gnus; kill all nnmaildir groups; exit Gnus; exit Emacs
- in each maildir, run:
  $ rm .nnmaildir-max
  $ cd cur
  $ bash -c 'for i in *;do mv "$i" ../new/"${i%%:*}";done'

(This same process can be used anytime to reassign article numbers
starting from 1, if they start to get too sparse for you.)  If you
don't want to lose your marks, you'll have to create the .nnmaildir
files by hand. :/ It'd probably be easier to save a copy of each
Summary buffer and re-mark the articles after starting up the new
version.

To implement -request-accept-article, I need to write the current time
into a string as a plain time_t (e.g., "968039378").  Will this
necessarily involve tedious string operations to do the arithmetic to
combine the two elements of (current-time), or has this already been
done somewhere?

I'd like to make nnmaildir interoperable with other maildir user
agents (not that *I* ever user any others, but...), so that other
maildir agents could be used on the same maildir as nnmaildir (between
Gnus sessions; probably not simultaneously).  This requires nnmaildir
storing some marks: read, expirable, replied, and any other single
mark.  I'd have to tell Gnus about marks it doesn't know about when
starting up (which is possible with -request-update-info), and I'd
also have to grab notification whenever any of those marks are
set/unset (only partially doable, with -request-update-mark).  The
backend interface would have to change somewhat to accomodate this
goal - but is it worthwhile anyway?


paul



  parent reply	other threads:[~2000-09-04  3:51 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-07-14 23:10 Paul Jarc
2000-07-14 23:47 ` Steve Harris
2000-07-15  0:56   ` Paul Jarc
2000-07-16  1:14     ` Steve Harris
2000-07-16 12:44       ` Simon Josefsson
2000-07-17  2:43         ` Steve Harris
2000-07-17 18:28           ` Paul Jarc
2000-07-18  9:04             ` Kai Großjohann
2000-07-18 10:16             ` Simon Josefsson
2000-07-18 15:34               ` Steve Harris
2000-07-18 16:34                 ` Simon Josefsson
2000-07-18 16:48                   ` Kai Großjohann
2000-07-19 15:36                   ` Steve Harris
2000-07-20 14:19                     ` Paul Jarc
2000-07-24 20:10                       ` Paul Jarc
     [not found]                         ` <vafittodfig.fsf@lucy.cs.uni-dortmund.de>
2000-07-31 16:42                           ` Paul Jarc
2000-08-01 16:03                             ` Paul Jarc
2000-08-02 14:51                               ` Paul Jarc
2000-08-03 14:58                                 ` Paul Jarc
2000-08-04 15:44                                   ` Paul Jarc
2000-08-07 22:35                                     ` Paul Jarc
2000-08-11 15:01                                     ` Paul Jarc
2000-08-11 21:07                                       ` Kai Großjohann
2000-08-11 21:34                                         ` Paul Jarc
2000-08-13 16:08                                           ` Kai Großjohann
2000-09-04  3:51                                       ` Paul Jarc [this message]
2000-09-04  4:20                                         ` Paul Jarc
2000-09-04  8:26                                         ` Simon Josefsson
2000-09-05 18:49                                           ` Paul Jarc
2000-09-21 17:30                                         ` Paul Jarc
2000-09-21 21:30                                           ` Kai Großjohann
2000-09-21 22:43                                             ` Paul Jarc
2000-07-15  0:15 ` Simon Josefsson
2000-07-15  0:51   ` Paul Jarc
2000-07-15  1:21     ` Simon Josefsson
2000-07-15  1:24     ` Russ Allbery
2000-07-15 11:45     ` Kai Großjohann
2000-07-15 13:12       ` Simon Josefsson
2000-07-15 11:43 ` Kai Großjohann
2000-07-16 21:34   ` Paul Jarc
2000-07-16 21:47     ` Kai Großjohann
2000-07-17 18:17       ` Paul Jarc
2000-09-28 16:05 ` Paul Jarc
2000-09-28 18:46   ` Paul Jarc
2000-10-04 18:06 ` Paul Jarc
2000-10-04 18:21   ` Paul Jarc
2000-10-04 19:31     ` Simon Josefsson
2000-10-04 19:34       ` Paul Jarc
2000-10-04 19:52         ` Simon Josefsson
2000-10-04 20:32           ` Paul Jarc
2000-10-05  8:57             ` Simon Josefsson
2001-04-11 16:10 ` Paul Jarc
2001-04-15  3:57 ` Paul Jarc
2001-04-17  0:55 ` Paul Jarc
2001-04-24 15:11 ` Paul Jarc
2001-04-25 13:42   ` Paul Jarc

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m3lmx8ak72.fsf@multivac.student.cwru.edu \
    --to=prj@po.cwru.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).