Gnus development mailing list
 help / color / mirror / Atom feed
* nnml -> nnimap (preserving Xrefs)
@ 2000-08-30  5:55 Sean Doran
  2000-08-30  8:45 ` Simon Josefsson
  0 siblings, 1 reply; 4+ messages in thread
From: Sean Doran @ 2000-08-30  5:55 UTC (permalink / raw)



Hi -

   I thought I did something very clever with the
following nnimap-split-rule and a small function.
I use it as follows:
        1/ enter nnml group
        2/ M P a
        3/ B m nnimap+server:~/Mail/IMAP/INBOX
        4/ leave (now-empty) nnml group
        5/ in group buffer, point on an nnimap+server: group
        6/ M-g

   It's a bit of a hack, but the net result is that
anything that was caught by my previous nnmail-split-fancy
is now cross-posted into multiple nnimap groups, with
marks preserved.  I'm pretty happy.  However, now I have
two problems.

   First problem: it took a bit to realize I needed the
                  "my-imap-splitter" function to avoid
                  EVERYTHING being crossposted into "misc"
                  (instead of just new mail being moved there)
                  I (naively) did "mv misc INBOX" + M-g
                  and now there are *lots* of duplicates
                  in each group.   How do I get rid of them?

   Second problem: How does anything know that the
                   the nnimap-split-rule crossposted an
                   article?  That is, how do I get marks
                   to propagate to all the groups an
                   nnimap article is crossposted into?

   Any help in migrating a huge pile of large-ish, heavily
crossposted nnml groups into nnimap will be appreciated!

        Sean.

(setq nnimap-split-rule 
      '(("server"
	 (".*"
	  (("~/Mail/IMAP/\\5" "^Xref: .+ \\(.+\\):.+ \\(.+\\):.+ \\(.+\\):.+ \\(.+\\):.+ \\(.+\\):.+")
	   ("~/Mail/IMAP/\\4" "^Xref: .+ \\(.+\\):.+ \\(.+\\):.+ \\(.+\\):.+ \\(.+\\):.+")
	   ("~/Mail/IMAP/\\3" "^Xref: .+ \\(.+\\):.+ \\(.+\\):.+ \\(.+\\):.+")
	   ("~/Mail/IMAP/\\2" "^Xref: .+ \\(.+\\):.+ \\(.+\\):.+")
	   ("~/Mail/IMAP/\\1" "^Xref: .+ \\(.+\\):.+")
	   ("~/Mail/IMAP/misc" my-imap-splitter))))))

; we have to allow crossposting here...
(setq nnimap-split-crosspost t)

(defun my-imap-splitter (group)
  "called with the headers narrowed, returns t iff there is no ^Xref: line, nil otherwise"
  (let ((regexp "^Xref: "))
    (goto-char (point-min))
    (progn (not (re-search-forward regexp nil t)))))





^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: nnml -> nnimap (preserving Xrefs)
  2000-08-30  5:55 nnml -> nnimap (preserving Xrefs) Sean Doran
@ 2000-08-30  8:45 ` Simon Josefsson
  2000-09-01 10:36   ` Steinar Bang
  0 siblings, 1 reply; 4+ messages in thread
From: Simon Josefsson @ 2000-08-30  8:45 UTC (permalink / raw)
  Cc: ding

Sean Doran <smd@ebone.net> writes:

>    First problem: it took a bit to realize I needed the
>                   "my-imap-splitter" function to avoid
>                   EVERYTHING being crossposted into "misc"
>                   (instead of just new mail being moved there)
>                   I (naively) did "mv misc INBOX" + M-g
>                   and now there are *lots* of duplicates
>                   in each group.   How do I get rid of them?

I don't think there's any built-in functionality for doing that.  You
could write a function that iterate over `gnus-newsgroup-headers',
comparing msgid's and process marking some of them.

Perhaps it would be useful to include it in Gnus -- i.e. "Process Mark
all Duplicate Articles".

>    Second problem: How does anything know that the
>                    the nnimap-split-rule crossposted an
>                    article?  That is, how do I get marks
>                    to propagate to all the groups an
>                    nnimap article is crossposted into?

It doesn't.  IMAP doesn't support the concept of cross-posting.  Right
now, the article is simply copied into all mailboxes.  And until more
servers support the ANNOTATE draft, there's no way we can attach any
(such as a Xref header) information on the article.




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: nnml -> nnimap (preserving Xrefs)
  2000-08-30  8:45 ` Simon Josefsson
@ 2000-09-01 10:36   ` Steinar Bang
  2000-09-01 10:58     ` Simon Josefsson
  0 siblings, 1 reply; 4+ messages in thread
From: Steinar Bang @ 2000-09-01 10:36 UTC (permalink / raw)


>>>>> Simon Josefsson <simon@josefsson.org>:

> It doesn't.  IMAP doesn't support the concept of cross-posting.
> Right now, the article is simply copied into all mailboxes.  And
> until more servers support the ANNOTATE draft, there's no way we can
> attach any (such as a Xref header) information on the article.

Hm... does the annotate draft open for replacements of headers?  Or
does it only allow insertion of new ones?  (I'm thinking of
re-parenting of articles)



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: nnml -> nnimap (preserving Xrefs)
  2000-09-01 10:36   ` Steinar Bang
@ 2000-09-01 10:58     ` Simon Josefsson
  0 siblings, 0 replies; 4+ messages in thread
From: Simon Josefsson @ 2000-09-01 10:58 UTC (permalink / raw)
  Cc: ding

Steinar Bang <sb@metis.no> writes:

> > It doesn't.  IMAP doesn't support the concept of cross-posting.
> > Right now, the article is simply copied into all mailboxes.  And
> > until more servers support the ANNOTATE draft, there's no way we can
> > attach any (such as a Xref header) information on the article.
> 
> Hm... does the annotate draft open for replacements of headers?  Or
> does it only allow insertion of new ones?  (I'm thinking of
> re-parenting of articles)

It does have a field to replace the "subject" line.  I brought up the
idea of replacing that with a flexible scheme, to modify any header as
per user wishes.  I don't recollect the arguments, but noone seemed to
rejoice over the suggestion.

The draft allow for vendor specific stuff though.  When I install a
server that support annotations and get some time to play with it,
I'll add a vendor specific way for reparenting.

There's another draft to do threading on the server.  It doesn't look
like it ever will support user re-parenting though. :-/




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2000-09-01 10:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-08-30  5:55 nnml -> nnimap (preserving Xrefs) Sean Doran
2000-08-30  8:45 ` Simon Josefsson
2000-09-01 10:36   ` Steinar Bang
2000-09-01 10:58     ` Simon Josefsson

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).