Subject: [sup-talk] Hello, and before-add-message hook for applying labels per CDB

From: [email-masked] (William Erik Baxter)
Date: Fri, 18 Sep 2009 15:50:13 -0400

Hello fellow sup users.  I began using sup last week, spent some time setting
it up in parallel with mutt, and have not used mutt since, except through
accident of habit.  Thanks to all developers for your excellent work.

A before-add-message hook follows.  It applies labels per entries in a CDB
constructed externally.  I hope you find it useful.

Cheers, W.

#### Automatically add labels.

require 'cdb';

@cdb ||= CDB.new("/home/web/Mail/suplabel.cdb");

# Mark by a recipient (to/cc)
# Construct [ [ prefix, string ] ... ].
# Look up "prefix:string" in CDB to obtain a list of labels to apply.

a = []
a += [ [ "from", message.from.email ] ]
a += message.recipients.map{ |x| [ "recipient", x.email ] }

a.each { |pair|
  key = pair[0] + ":" + pair[1];
  @cdb.each(key) { |value|
    value.split.each { |label|  message.add_label(label) }
  }
}

---

From: [email-masked] (William Morgan)
Date: Sat, 26 Sep 2009 06:58:59 -0700

> accident of habit.  Thanks to all developers for your excellent work.

Great! Welcome!

> constructed externally.  I hope you find it useful.

Thanks! If you get a chance, please add it to the wiki:
http://sup.rubyforge.org/wiki/wiki.pl?Hooks

-- 
William <wmorgan-sup at masanjin.net>