From: Eric Abrahamsen <eric@ericabrahamsen.net>
To: ding@gnus.org
Subject: Re: respooling nnimap group with nnimap-split-fancy
Date: Wed, 13 Nov 2013 09:20:30 +0800 [thread overview]
Message-ID: <87ob5pgkrl.fsf@ericabrahamsen.net> (raw)
In-Reply-To: <i50zga4n7h7171.fsf@pedrosilva.pt>
Pedro Silva <psilva@pedrosilva.pt> writes:
> Hi,
>
> I've been trying to get respooling to work with fancy splitting on
> nnimap backends with no results. Here's the relevant trace:
Hi Pedro,
My recollection is that respooling doesn't work on imap at all -- it's
only good for nnmail (and possibly other backends).
The way to achieve a similar effect with nnimap is to set this variable
in your imap server config:
(nnimap-unsplittable-articles (%Deleted))
The usual values are (%Deleted %Seen). Removing %Seen means that already
read articles are also considered for splitting.
It's not actually the same thing (you can't call it selectively on one
article), but as far as I know it's the only way to do it.
I'd love to be proven wrong!
Eric
> Debugger entered--Lisp error: (wrong-type-argument stringp nil)
> decode-coding-string(nil utf-8)
> nnimap-decode-gnus-group(nil)
> nnimap-request-accept-article(nil "imap.example.com" t)
> funcall(nnimap-request-accept-article nil "imap.example.com" t)
> (let ((gnus-command-method (or gnus-command-method (gnus-find-method-for-group group))) (result (funcall (gnus-get-function gnus-command-method (quote request-accept-article)) (if (stringp group) (let ((gname group)) (if (string-match "^[^:]+:" gname) (substring gname ...) gname)) group) (cadr gnus-command-method) last))) (if (and gnus-agent (gnus-agent-method-p gnus-command-method) (cdr result)) (progn (gnus-agent-regenerate-group group (list (cdr result))))) result)
> gnus-request-accept-article(nil (nnimap "imap.example.com" (nnimap-address "imap.example.com") (nnimap-stream ssl) (nnimap-server-port 993) (nntp-authinfo-file "~/.authinfo.gpg") (nnir-search-engine imap)) t t)
> eval((gnus-request-accept-article nil (quote (nnimap "imap.example.com" (nnimap-address "imap.example.com") (nnimap-stream ssl) (nnimap-server-port 993) (nntp-authinfo-file "~/.authinfo.gpg") (nnir-search-engine imap))) t t))
> nnimap-request-move-article(68484 "INBOX" "imap.example.com" (gnus-request-accept-article nil (quote (nnimap "imap.example.com" (nnimap-address "imap.example.com") (nnimap-stream ssl) (nnimap-server-port 993) (nntp-authinfo-file "~/.authinfo.gpg") (nnir-search-engine imap))) t t) t nil)
> funcall(nnimap-request-move-article 68484 "INBOX" "imap.example.com" (gnus-request-accept-article nil (quote (nnimap "imap.example.com" (nnimap-address "imap.example.com") (nnimap-stream ssl) (nnimap-server-port 993) (nntp-authinfo-file "~/.authinfo.gpg") (nnir-search-engine imap))) t t) t nil)
> (let* ((gnus-command-method (gnus-find-method-for-group group)) (result (funcall (gnus-get-function gnus-command-method (quote request-move-article)) article (let ((gname group)) (if (string-match "^[^:]+:" gname) (substring gname (match-end 0)) gname)) (nth 1 gnus-command-method) accept-function last move-is-internal))) (if (and result gnus-agent (gnus-agent-method-p gnus-command-method)) (progn (gnus-agent-unfetch-articles group (list article)))) result)
> gnus-request-move-article(68484 "nnimap+imap.example.com:INBOX" "imap.example.com" (gnus-request-accept-article nil (quote (nnimap "imap.example.com" (nnimap-address "imap.example.com") (nnimap-stream ssl) (nnimap-server-port 993) (nntp-authinfo-file "~/.authinfo.gpg") (nnir-search-engine imap))) t t) t nil)
> gnus-summary-move-article(nil nil (nnimap "imap.example.com" (nnimap-address "imap.example.com") (nnimap-stream ssl) (nnimap-server-port 993) (nntp-authinfo-file "~/.authinfo.gpg") (nnir-search-engine imap)))
> gnus-summary-respool-article(nil (nnimap "imap.example.com" (nnimap-address "imap.example.com") (nnimap-stream ssl) (nnimap-server-port 993) (nntp-authinfo-file "~/.authinfo.gpg") (nnir-search-engine imap)))
> call-interactively(gnus-summary-respool-article nil nil)
>
> Somehow, the group gets lost in there. I've tried following the trace
> detailedly, but I'm afraid I've not come up with an answer to that. Any
> ideas?
>
> This is on:
>
> Ma Gnus v0.8
> GNU Emacs 24.3.1 (x86_64-apple-darwin13.0.0, NS apple-appkit-1265.00) of 2013-11-08 on mbp-osx
>
> These are the relevant bits of configuration:
>
> (setq nnmail-split-methods 'nnimap-split-fancy
> nnmail-split-fancy
> '(|
> ("List-Id" ".*<\\(.+\\)\\.lists\\.example\\.com>.*" "lists.\\1")
> (: gnus-registry-split-fancy-with-parent)
> "INBOX"))
>
> (add-to-list
> 'gnus-secondary-select-methods `(nnimap "imap.example.com"
> (nnimap-address "imap.example.com")
> (nnimap-stream ssl)
> (nnimap-server-port 993)
> (nntp-authinfo-file ,netrc-file)
> (nnir-search-engine imap)))
>
> Thanks for your help. Sorry for the wall of text.
> --
> Pedro
next prev parent reply other threads:[~2013-11-13 1:20 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-12 21:35 Pedro Silva
2013-11-13 1:20 ` Eric Abrahamsen [this message]
2013-11-13 14:24 ` Pedro Silva
2013-11-13 20:31 ` Pedro Silva
2013-11-15 4:55 ` Eric Abrahamsen
2013-11-15 8:49 ` Pedro Silva
2013-11-15 9:09 ` Eric Abrahamsen
2013-12-26 16:40 ` Lars Ingebrigtsen
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=87ob5pgkrl.fsf@ericabrahamsen.net \
--to=eric@ericabrahamsen.net \
--cc=ding@gnus.org \
/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).