Gnus development mailing list
 help / color / mirror / Atom feed
* Head. Wall. Bang. (imap fancy splitting)
@ 2010-12-20 23:57 Tommy Kelly
  2010-12-21  1:14 ` Michael Welsh Duggan
  0 siblings, 1 reply; 7+ messages in thread
From: Tommy Kelly @ 2010-12-20 23:57 UTC (permalink / raw)
  To: ding

I'm trying to get even a simple fancy split going, so I can build up my
understanding from there. But I can't even do that. I'm trying this
simple split:

(| "TEST-GROUP")

My understanding is, that will shove everything into group
TEST-GROUP. Yes? Here's how I'm using it:

(setq gnus-secondary-select-methods
      '(
	(nnimap "work"
		(nnimap-address "imap.gmail.com")
 	 	(nnimap-stream ssl)
		(nnimap-server-port 993)

		(nnimap-inbox "INBOX")
		(nnimap-split-methods nnimap-split-fancy)
		(nnimap-split-fancy (| "TEST-GROUP"))
	)
      )

I've also tried numerous combinations of:

(nnimap-split-methods 'nnimap-split-fancy)
(nnimap-split-methods "nnimap-split-fancy")

(nnimap-split-fancy '(| "TEST-GROUP"))
(nnimap-split-fancy ("TEST-GROUP"))
(nnimap-split-fancy "TEST-GROUP")
and even things like
(nnimap-split-fancy "(| \"TEST-GROUP\"))" and other such nonsense.

They all end up with backtraces, rough variations on:

Debugger entered--Lisp error: (wrong-type-argument listp nnimap-split-fancy)
  nnmail-article-group(nnimap-dummy-active-number nil nnimap-save-mail-spec)
  nnmail-check-duplication("<b459383cc64455a42e76ee18aaa86234@localhost.localdomain>" nnimap-save-mail-spec nnimap-dummy-active-number nnimap-save-mail-spec)
  nnmail-process-mmdf-mail-format(nnimap-save-mail-spec nnimap-dummy-active-number nnimap-save-mail-spec)
  nnmail-split-incoming(#<buffer *nnimap imap.gmail.com 993  *nntpd**> nnimap-save-mail-spec nil nil nnimap-dummy-active-number nnimap-save-mail-spec)
  nnimap-split-incoming-mail()
  ...


Could anyone please show me the correct syntax for this simple fancy (if that's
not an oxymoron) split?

thanks,
Tommy

P.S. I've tried it outside the select method stanza too, using setq, but
it's equally ineffective.




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

* Re: Head. Wall. Bang. (imap fancy splitting)
  2010-12-20 23:57 Head. Wall. Bang. (imap fancy splitting) Tommy Kelly
@ 2010-12-21  1:14 ` Michael Welsh Duggan
  2010-12-21  1:38   ` Tommy Kelly
  2010-12-21 11:20   ` Richard Riley
  0 siblings, 2 replies; 7+ messages in thread
From: Michael Welsh Duggan @ 2010-12-21  1:14 UTC (permalink / raw)
  To: ding

Tommy Kelly <tommy.kelly@verilab.com> writes:

> I'm trying to get even a simple fancy split going, so I can build up my
> understanding from there. But I can't even do that. I'm trying this
> simple split:
>
> (| "TEST-GROUP")
>
> My understanding is, that will shove everything into group
> TEST-GROUP. Yes? Here's how I'm using it:
>
> (setq gnus-secondary-select-methods
>       '(
> 	(nnimap "work"
> 		(nnimap-address "imap.gmail.com")
>  	 	(nnimap-stream ssl)
> 		(nnimap-server-port 993)
>
> 		(nnimap-inbox "INBOX")
> 		(nnimap-split-methods nnimap-split-fancy)
> 		(nnimap-split-fancy (| "TEST-GROUP"))
> 	)
>       )

Try changing to:
(setq gnus-secondary-select-methods
      '((nnimap "work"
                (nnimap-address "imap.gmail.com")
                (nnimap-stream ssl)
                (nnimap-server-port 993)
                (nnimap-inbox "INBOX")
                (nnimap-split-methods nnmail-split-fancy))))
(setq nnmail-split-fancy '(| "TEST-GROUP"))


-- 
Michael Welsh Duggan
(md5i@md5i.com)



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

* Re: Head. Wall. Bang. (imap fancy splitting)
  2010-12-21  1:14 ` Michael Welsh Duggan
@ 2010-12-21  1:38   ` Tommy Kelly
  2010-12-21  3:49     ` Tommy Kelly
  2010-12-21 11:20   ` Richard Riley
  1 sibling, 1 reply; 7+ messages in thread
From: Tommy Kelly @ 2010-12-21  1:38 UTC (permalink / raw)
  To: ding

Michael Welsh Duggan <md5i@md5i.com> writes:
> Try changing to:
> (setq gnus-secondary-select-methods
>       '((nnimap "work"
>                 (nnimap-address "imap.gmail.com")
>                 (nnimap-stream ssl)
>                 (nnimap-server-port 993)
>                 (nnimap-inbox "INBOX")
>                 (nnimap-split-methods nnmail-split-fancy))))
> (setq nnmail-split-fancy '(| "TEST-GROUP"))

OK, excellent, now we're getting somewhere. Thanks!

Now I notice you used (and I copied you) "nnmail-split-fancy" instead of
"nnimap-split-fancy". Is that because the precise name of that is
arbitrary? Could I call it "fiendishly-difficult-thing-to-grasp"?

If so that would answer my next question which is, how do I have
different fancy split methods for different servers, in the case (like
mine in reality) where there are multiple secondary select methods. Is
it OK to have:

(setq gnus-secondary-select-methods
       '(
         (nnimap "work"
                 ...
                 (nnimap-split-methods nnmail-split-fancy-work)
          )
         (nnimap "home"
                 ...
                 (nnimap-split-methods nnmail-split-fancy-home)
          )
         (nnimap "faff"
                 ...
                 (nnimap-split-methods nnmail-split-fancy-faff)
          )
         )
)
(setq nnmail-split-fancy-work '(| "TEST-GROUP"))
(setq nnmail-split-fancy-home '(| "TEST-GROUP")) ;; where this is a different TEST-GROUP from the above
(setq nnmail-split-fancy-faff '(| "TEST-GROUP-FAFF"))


Tommy









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

* Re: Head. Wall. Bang. (imap fancy splitting)
  2010-12-21  1:38   ` Tommy Kelly
@ 2010-12-21  3:49     ` Tommy Kelly
  2010-12-21 11:24       ` Richard Riley
  0 siblings, 1 reply; 7+ messages in thread
From: Tommy Kelly @ 2010-12-21  3:49 UTC (permalink / raw)
  To: ding

Tommy Kelly <tommy.kelly@verilab.com> writes:

> Michael Welsh Duggan <md5i@md5i.com> writes:
>> Try changing to:
>> (setq gnus-secondary-select-methods
>>       '((nnimap "work"
>>                 (nnimap-address "imap.gmail.com")
>>                 (nnimap-stream ssl)
>>                 (nnimap-server-port 993)
>>                 (nnimap-inbox "INBOX")
>>                 (nnimap-split-methods nnmail-split-fancy))))
>> (setq nnmail-split-fancy '(| "TEST-GROUP"))

> Now I notice you used (and I copied you) "nnmail-split-fancy" instead of
> "nnimap-split-fancy". Is that because the precise name of that is
> arbitrary? Could I call it "fiendishly-difficult-thing-to-grasp"?

I just tested this and the answer appears to be "no". Which raises two
questions:

1. If the name of the fancy split variable *is* significant, then why
did nnmail-split-fancy work when clearly I'm splitting nnimap?

2. Given that there's only one nnmail-fancy-split variable (or
nnimap-fancy-split). if there are multiple secondary servers, how do you
control their splitting separately?

Tommy





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

* Re: Head. Wall. Bang. (imap fancy splitting)
  2010-12-21  1:14 ` Michael Welsh Duggan
  2010-12-21  1:38   ` Tommy Kelly
@ 2010-12-21 11:20   ` Richard Riley
  1 sibling, 0 replies; 7+ messages in thread
From: Richard Riley @ 2010-12-21 11:20 UTC (permalink / raw)
  To: Michael Welsh Duggan; +Cc: ding

Michael Welsh Duggan <md5i@md5i.com> writes:

> Tommy Kelly <tommy.kelly@verilab.com> writes:
>
>> I'm trying to get even a simple fancy split going, so I can build up my
>> understanding from there. But I can't even do that. I'm trying this
>> simple split:
>>
>> (| "TEST-GROUP")
>>
>> My understanding is, that will shove everything into group
>> TEST-GROUP. Yes? Here's how I'm using it:
>>
>> (setq gnus-secondary-select-methods
>>       '(
>> 	(nnimap "work"
>> 		(nnimap-address "imap.gmail.com")
>>  	 	(nnimap-stream ssl)
>> 		(nnimap-server-port 993)
>>
>> 		(nnimap-inbox "INBOX")
>> 		(nnimap-split-methods nnimap-split-fancy)
>> 		(nnimap-split-fancy (| "TEST-GROUP"))
>> 	)
>>       )
>
> Try changing to:
> (setq gnus-secondary-select-methods
>       '((nnimap "work"
>                 (nnimap-address "imap.gmail.com")
>                 (nnimap-stream ssl)
>                 (nnimap-server-port 993)
>                 (nnimap-inbox "INBOX")
>                 (nnimap-split-methods nnmail-split-fancy))))

^^
So no quote here?

> (setq nnmail-split-fancy '(| "TEST-GROUP"))

My fancy mail spam splitting is broken too. I cant figure out if its the
group paremeters not interacting with spam-split or not. I did a M V c
in my INBOX which clears all marks (so they are "unseen" : should the
mail then be treated for spam processing again?) If not, what group
parameter do I need to set? I set the obvious one "Spam Autodetection".

Q1 : How do I mark or unmark my mail so its considered for spam checks
once again? Currently nothing is being processed using the split vars
used below. I have    (setq spam-use-spamassassin t) and the
spam-initialize done.

My fancy split settings are set as

   (setq nnimap-split-inbox '("INBOX"))
   (setq nnimap-split-fancy '(| (: spam-split) "INBOX"))

   (setq nnmail-split-inbox '("INBOX"))
   (setq nnmail-split-fancy '(| (: spam-split) "SYS-INBOX"))

And I'm not getting sequencep errors with this - but possibly since its
not actually doing any splitting at the moment. It all used to work for
me but I wonder if that was more by luck than judgement now.  Having
reset the groups I dont seem to have the magic combo of group parameters
and split variables once more ;( I know my old settings worked as I
shared them with a few people and got them up and running.

So, if anyone is using spam-split could you please report your group
settings and your split variables? It would  be a great help.






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

* Re: Head. Wall. Bang. (imap fancy splitting)
  2010-12-21  3:49     ` Tommy Kelly
@ 2010-12-21 11:24       ` Richard Riley
  2010-12-21 15:26         ` Tommy Kelly
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Riley @ 2010-12-21 11:24 UTC (permalink / raw)
  To: Tommy Kelly; +Cc: ding

Tommy Kelly <tommy.kelly@verilab.com> writes:

> Tommy Kelly <tommy.kelly@verilab.com> writes:
>
>> Michael Welsh Duggan <md5i@md5i.com> writes:
>>> Try changing to:
>>> (setq gnus-secondary-select-methods
>>>       '((nnimap "work"
>>>                 (nnimap-address "imap.gmail.com")
>>>                 (nnimap-stream ssl)
>>>                 (nnimap-server-port 993)
>>>                 (nnimap-inbox "INBOX")
>>>                 (nnimap-split-methods nnmail-split-fancy))))
>>> (setq nnmail-split-fancy '(| "TEST-GROUP"))
>
>> Now I notice you used (and I copied you) "nnmail-split-fancy" instead of
>> "nnimap-split-fancy". Is that because the precise name of that is
>> arbitrary? Could I call it "fiendishly-difficult-thing-to-grasp"?
>
> I just tested this and the answer appears to be "no". Which raises two
> questions:
>
> 1. If the name of the fancy split variable *is* significant, then why
> did nnmail-split-fancy work when clearly I'm splitting nnimap?
>
> 2. Given that there's only one nnmail-fancy-split variable (or
> nnimap-fancy-split). if there are multiple secondary servers, how do you
> control their splitting separately?
>

This is the thing that confuses me with the elisp part.

The call to ...-secondary-methods  creates a server local version of the
nnmail-split-methods as far as I know. So each server has its own
version. And why, in elisp, when you examine a variable you need to be
sure of the context. Its probably not the value gnus sees when
processing that group. I asked a Q about this a few months ago too. Also
notice the lack of  a quote on the nnimap-split-methods assignment.




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

* Re: Head. Wall. Bang. (imap fancy splitting)
  2010-12-21 11:24       ` Richard Riley
@ 2010-12-21 15:26         ` Tommy Kelly
  0 siblings, 0 replies; 7+ messages in thread
From: Tommy Kelly @ 2010-12-21 15:26 UTC (permalink / raw)
  To: Richard Riley; +Cc: ding

Richard Riley <rileyrg@googlemail.com> writes:


>>>> (setq gnus-secondary-select-methods
>>>>       '((nnimap "work"
>>>>                 (nnimap-address "imap.gmail.com")
>>>>                 (nnimap-stream ssl)
>>>>                 (nnimap-server-port 993)
>>>>                 (nnimap-inbox "INBOX")
>>>>                 (nnimap-split-methods nnmail-split-fancy))))

> notice the lack of  a quote on the nnimap-split-methods assignment.

Isn't that because the whole argument to gnus-secondary-select-methods
is quoted? So the entire blob of:

((nnimap "work"
   (nnimap-address "imap.gmail.com")
   (nnimap-stream ssl)
   (nnimap-server-port 993)
   (nnimap-inbox "INBOX")
   (nnimap-split-methods nnmail-split-fancy)))

is being shoved, uneval'ed, into gnus-secondary-select-methods -- almost
as if it was a string (except it's not). What the rest of gnus then does
to g-s-s-m in order to discombooberate it into its component parts, I'm
not sure.  

Tommy



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

end of thread, other threads:[~2010-12-21 15:26 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-12-20 23:57 Head. Wall. Bang. (imap fancy splitting) Tommy Kelly
2010-12-21  1:14 ` Michael Welsh Duggan
2010-12-21  1:38   ` Tommy Kelly
2010-12-21  3:49     ` Tommy Kelly
2010-12-21 11:24       ` Richard Riley
2010-12-21 15:26         ` Tommy Kelly
2010-12-21 11:20   ` Richard Riley

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