[VM] Request for howto select email easily

2014-09-18 Thread John Stoffel

Guys,

I've been a long time user of VM, and I use it to read lots of email,
including a couple of very high volume mailing lists.  I'd like to
usually just delete most of the email, but then go back and un-delete
any emails and threads where certain people have written.  My way to
following only the generally good discussions.

So how would I go about doing this?  I guess I could setup a Macro in
Emacs itself to go about doing this, but that seems clunky and error
prone.  

The basic idea would be:

1. Delete all new emails.
2. Mark all emails from any of the email addresses listed in 
3. Mark all threads those emails from 2 are in.  Or mark all emails
   with the same subject as those found in 2.
4. Un-delete all those emails.
5. Clear the marks.


Any hints?  My elisp-fu is horribly non-existent.  Wrapping my brain
around lisp is just never going to happen.  Sorry.  :-)

John



Re: [VM] Request for howto select email easily

2014-09-18 Thread Uday Reddy
Interesting application!  Here are the basic ideas.

 The basic idea would be:
 
 1. Delete all new emails.

You would need to set vm-arrived-message-hook or vm-arrived-messages-hook to
delete the new mail.

 2. Mark all emails from any of the email addresses listed in 

 3. Mark all threads those emails from 2 are in.  Or mark all emails
with the same subject as those found in 2.

You would need to define a virtual folder for the kind of messages you want
to read.  See in particular, the `thread' virtual-selector operator.

vm-mark-messages-by-virtual-folder should allow you to mark these messages.

 4. Un-delete all those emails.

M N u does it.

 5. Clear the marks.

M u does it.

(All this applies to VM 8.2.0b.  Can't say if it works in older versions.)

Cheers,
Uday



Re: [VM] Request for howto select email easily

2014-09-18 Thread John Stoffel

Thanks for the pointers Uday, this is a good start.  Now how would I
bind this all to a single key-stroke on my VM instance?  I assume I
would need to defun a new function to step through and do all the
steps you list below, since I really don't want to have to do this all
by hand each time.  And I'd love to be easily able to add/delete email
addresses from the list of email addresses to watch for.


Uday Interesting application!  Here are the basic ideas.
 The basic idea would be:
 
 1. Delete all new emails.

Uday You would need to set vm-arrived-message-hook or vm-arrived-messages-hook 
to
Uday delete the new mail.

 2. Mark all emails from any of the email addresses listed in 

 3. Mark all threads those emails from 2 are in.  Or mark all emails
 with the same subject as those found in 2.

Uday You would need to define a virtual folder for the kind of messages you 
want
Uday to read.  See in particular, the `thread' virtual-selector operator.

Uday vm-mark-messages-by-virtual-folder should allow you to mark these 
messages.

 4. Un-delete all those emails.

Uday M N u does it.

 5. Clear the marks.

Uday M u does it.

Uday (All this applies to VM 8.2.0b.  Can't say if it works in older versions.)

Uday Cheers,
Uday Uday