Do we have any Mutt users that can comment on support for this?
(I'm tempted to do some maildrop/xfilter/perl magic to emulate these features though)
Procmail rules are horrifying enough to be helpful as well :)
I am use mutt with sidebar patch. I have get mail like this: getmail->unafp->maildrop->mutt unafp it's a Ukrainian National Antivirus. In atach my configs of getmail,maildrop and mutt.
-- WBR, Alexander Simonov Site Admin of Gentoo Community Ukraine Site Admin of Fluxmod - web site devoted to fluxbox users. Site Admin of Russian Gentoo Wiki web-site: http:///www.gentoo.org.ua web-site: http://www.fluxmod.org.ua web-site: http://ru.gentoo-wiki.com e-mail: [EMAIL PROTECTED] ICQ#: 310029609 JabberID: [EMAIL PROTECTED] JabberID: [EMAIL PROTECTED]
# - maildrop mailinglist. # http://lists.sourceforge.net/lists/listinfo/courier-maildrop
# - Please browse the mailinglist archives for more examples. # http://sourceforge.net/mailarchive/forum.php?forum=courier-maildrop # - Save this file as .mailfilter in your home directory and do # chmod 600 .mailfilter # - Do not edit your .mailfilter file with a DOS or WINDOWS # texteditor!! # - Linebreaking doesn't work inside a pattern. So the following # rule cannot work: # #if (/^Subject:.*(exim|sendmail| \ # gdm|xdm|imap|cgi)/) # # and must be in one line: # # if (/^Subject:.*(exim|sendmail|gdm|xdm|imap|cgi)/) # # # - Linebreaking only works for quotet text and between patterns: # # "Imagine this is as a \ # long text string" # # #if (/^To:.*mutt/ \ # || /^[Cc][Cc]:.*mutt/) # ##################################################################### # # Let's tag all incoming messages # ##################################################################### #'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' # .2root # #if (/^Subject:.*Cron/ || /^To:.*root/ ) #{ # log "(II) Header set to: X-Dropzone-Flag: 2root" # xfilter "reformail -A'X-Dropzone-Flag: 2root'" # #'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' # .mailing lists and forums # #'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' # .gentoo-wiki if (/^List-Post:.*(users|devel)@gentoo-wiki.com/) { log "(II) Header set to: X-Dropzone-Flag: lists.gentoo-wiki" xfilter "reformail -A'X-Dropzone-Flag: lists.gentoo-wiki'" } #``````````````````````````````````````````````````````````````````` # gentoo-ru if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.gentoo-ru" xfilter "reformail -A'X-Dropzone-Flag: lists.gentoo-ru'" } #``````````````````````````````````````````````````````````````````` # gentoo-doc if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.gentoo-doc-ru" xfilter "reformail -A'X-Dropzone-Flag: lists.gentoo-doc-ru'" } #``````````````````````````````````````````````````````````````````` # gentoo-book if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.gentoo-book" xfilter "reformail -A'X-Dropzone-Flag: lists.gentoo-book'" } #`````````````````````````````````````````````````````````````````` # gentoo security if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.gentoo-security" xfilter "reformail -A'X-Dropzone-Flag: lists.gentoo-security'" } #`````````````````````````````````````````````````````````````````` # gentoo develop if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.gentoo-dev" xfilter "reformail -A'X-Dropzone-Flag: lists.gentoo-dev'" } #`````````````````````````````````````````````````````````````````` # frenzy if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.frenzy" xfilter "reformail -A'X-Dropzone-Flag: lists.frenzy'" } #````````````````````````````````````````````````````````````````````` # linux.kiev.ua if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.linux-list" xfilter "reformail -A'X-Dropzone-Flag: lists.linux-list'" } #```````````````````````````````````````````````````````````````````` # lug if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.lug" xfilter "reformail -A'X-Dropzone-Flag: lists.lug'" } #```````````````````````````````````````````````````````````````````` # lafox if (/^List-Post:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: lists.lafox" xfilter "reformail -A'X-Dropzone-Flag: lists.lafox'" } #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # inbox if (/^To:[EMAIL PROTECTED]/) { log "(II) Header set to: X-Dropzone-Flag: simonov" xfilter "reformail -A'X-Dropzone-Flag: simonov'". } ###################################################################### # Processing rules ###################################################################### #'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' # .list.gentoo-wiki if (/^X-Dropzone-Flag: lists.gentoo-wiki/) { `test -d $HOME/.maildir/.lists.gentoo-wiki` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.gentoo-wiki" `maildirmake -f list.gentoo-wiki $HOME/.maildir` log "(II) Subscribe for .lists.gentoo-wiki" `echo INBOX.lists.gentoo-wiki >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.gentoo-wiki/" } #```````````````````````````````````````````````````````````````````` # .lists.gentoo-ru if (/^X-Dropzone-Flag: lists.gentoo-ru/) { `test -d $HOME/.maildir/.lists.gentoo-ru` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.gentoo-ru" `maildirmake -f list.gentoo-ru $HOME/.maildir` log "(II) Subscribe for .lists.gentoo-ru" `echo INBOX.lists.gentoo-ru >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.gentoo-ru/" } #``````````````````````````````````````````````````````````````````` # .list.gentoo-doc-ru if (/^X-Dropzone-Flag:.*lists.gentoo-doc-ru/) { `test -d $HOME/.maildir/.lists.gentoo-doc-ru` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.gentoo-doc-ru" `maildirmake -f list.gentoo-doc-ru $HOME/.maildir` log "(II) Subscribe for .lists.gentoo-ru" `echo INBOX.lists.gentoo-doc-ru >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.gentoo-doc-ru/" } #`````````````````````````````````````````````````````````````````` # gentoo-book if (/^X-Dropzone-Flag:.*lists.gentoo-book/) { `test -d $HOME/.maildir/.lists.gentoo-book` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.gentoo-book" `maildirmake -f list.gentoo-book $HOME/.maildir` log "(II) Subscribe for .lists.gentoo-book" `echo INBOX.lists.gentoo-book >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.gentoo-book/" } #`````````````````````````````````````````````````````````````````` # .gentoo-security if (/^X-Dropzone-Flag:.*lists.gentoo-security/) { `test -d $HOME/.maildir/.lists.gentoo-security` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.gentoo-security" `maildirmake -f list.gentoo-security $HOME/.maildir` log "(II) Subscribe for .lists.gentoo-security" `echo INBOX.lists.gentoo-security >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.gentoo-security/" } #`````````````````````````````````````````````````````````````````` # .gentoo-dev if (/^X-Dropzone-Flag:.*lists.gentoo-dev/) { `test -d $HOME/.maildir/.lists.gentoo-dev` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.gentoo-dev" `maildirmake -f list.gentoo-dev $HOME/.maildir` log "(II) Subscribe for .lists.gentoo-dev" `echo INBOX.lists.gentoo-dev >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.gentoo-dev/" } #`````````````````````````````````````````````````````````````````` # .frenzy if (/^X-Dropzone-Flag:.*lists.frenzy/) { `test -d $HOME/.maildir/.lists.frenzy` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.frenzy" `maildirmake -f list.frenzy $HOME/.maildir` log "(II) Subscribe for .lists.frenzy" `echo INBOX.lists.frenzy >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.frenzy/" } #``````````````````````````````````````````````````````````````````` # ..linux-list if (/^X-Dropzone-Flag:.*lists.linux-list/) { `test -d $HOME/.maildir/.lists.linux-list` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.linux-list" `maildirmake -f list.linux-list $HOME/.maildir` log "(II) Subscribe for .lists.linux-list" `echo INBOX.lists.linux-list >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.linux-list/" } #``````````````````````````````````````````````````````````````````` # .lug if (/^X-Dropzone-Flag:.*lists.lug/) { `test -d $HOME/.maildir/.lists.lug` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.lug" `maildirmake -f list.lug $HOME/.maildir` log "(II) Subscribe for .lists.lug" `echo INBOX.lists.lug >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.lug/" } #``````````````````````````````````````````````````````````````````` # .lafox if (/^X-Dropzone-Flag:.*lists.lafox/) { `test -d $HOME/.maildir/.lists.lafox` # make sure .lists.gentoo-wiki folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.lists.lafox" `maildirmake -f list.lafox $HOME/.maildir` log "(II) Subscribe for .lists.lafox" `echo INBOX.lists.lafox >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.lists.lafox/" } #'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' # [EMAIL PROTECTED] if (/^X-Dropzone-Flag:.*simonov/) { `test -d $HOME/.maildir/.simonov` # make sure .yourmailbox folder exists if( $RETURNCODE == 1 ) { log "(II) Creating $HOME/.maildir/.simonov" `maildirmake -f simonov $HOME/.maildir` log "(II) Subscribe for .simonov mailbox" `echo INBOX.simonov >> $MAILDIR/courierimapsubscribed` } to "$DEFAULT/.simonov/" } #'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' # everything else #if (/^X-Dropzone-Flag:*/) to "$DEFAULT/.inbox/"
[options] # be quiet, nah verbose = 1 # get all messages read_all = 1 # delete messages after retrieving them delete = 1 # log what it did message_log = ~/.getmail/.getmail.log [retriever] type = SimplePOP3Retriever server = xxx.xxx.xxx.xxx username = username password = pass [destination] type = MDA_external path = /usr/bin/maildrop unixfrom = True
# -*-muttrc-*-
#
# Mutt configuration file of Thomas Roessler <[EMAIL PROTECTED]>.
#
# Use and distribute freely.
#
# Note: This file doesn't contain any personal customization, i.e.,
# using it won't make you send messages with my name in the header.
#
# Things to change: You probably want to change the "priv.rc" source
# command in the end of this file. Also, it's likely you want to have
# a look at the the $editor and $tmpdir variables.
#
#
# MIME settings
#
auto_view application/ms-tnef text/x-vcard
auto_view application/x-chess application/x-lotus-notes
auto_view text/html application/x-gzip application/x-gunzip
auto_view application/rtf application/x-rath
auto_view application/msword
alternative_order application/pgp text/plain text/html text/enriched
#
# Key bindings
#
#
# A few of these may resemble Pine. ups.
#
bind alias " " tag-entry
bind alias \n select-entry
bind alias \r select-entry
bind attach i exit
bind attach n next-entry
bind attach p previous-entry
bind attach " " select-entry
bind attach y print-entry
bind browser <end> last-entry
bind browser <home> first-entry
bind editor "\e<backspace>" kill-word
bind editor "\e<delete>" kill-word
bind editor "\e\t" complete-query
bind editor "\Ct" transpose-chars
bind generic "\CV" next-page
bind generic "\Ca" first-entry
bind generic "\Ce" last-entry
bind generic "\eV" previous-page
bind generic "\ev" previous-page
bind generic + tag-entry
bind generic ^ first-entry
bind generic a tag-prefix
bind generic $ last-entry
bind generic q exit
bind index ";" limit
bind index "\Ce" last-entry # override edit-type
bind index "\eV" previous-page # override collapse-something
bind index "\e<" collapse-thread
bind index "\eq" query
bind index $ last-entry
bind index * flag-message
bind index <delete> delete-message
bind index <end> last-entry
bind index <home> first-entry
bind index J next-entry
bind index K previous-entry
bind index Q quit
bind index R group-reply
bind index \em recall-message
bind index a tag-prefix
bind index m mail
bind index p previous-entry
bind index t create-alias
bind index x sync-mailbox
bind index y print-message
bind index n next-entry
bind index "\ev" previous-page
bind pager "\Cn" next-line
bind pager "\Cp" previous-line
bind pager + tag-message
bind pager <delete> delete-message
bind pager <down> next-line
bind pager <end> bottom
bind pager <home> top
bind pager <up> previous-line
bind pager G group-reply
bind pager R group-reply
bind pager \em recall-message
bind pager t display-toggle-weed # like slrn
bind pager y print-message
bind query i exit
# make it feel like emacs
macro generic "\ex" ":exec "
macro pager "\ex" ":exec "
macro generic "\eX" "\ex"
macro pager "\eX" "\ex"
macro index "~" ";~"
# move messages to the pilot folder
macro index "\ew" "<decode-copy>+pilot\n" "Copy a message to the
pilot folder."
macro pager "\ew" "<decode-copy>+pilot\n" "Copy a message to the
pilot folder."
# for majordomo list owner and moderator jobs
macro index "\ea" ":set nopipe_decode wait_key\n|approve\n:set
nowait_key\n"
macro pager "\ea" ":set nopipe_decode wait_key\n|approve\n:set
nowait_key\n"
# emulate the old URL-browser key bindings.
macro pager "\Cb" "| urlview -\n"
macro index "\Cb" "| urlview -\n"
# permit limiting from the pager.
macro pager ";" "<exit><limit>"
# emulate the old POP-feature bindings
macro index G "!getmail\n"
macro pager G "!getmail\n"
macro compose "\ee" "Fpgp -eatf "
#
# Sidebox
#
bind index <pagedown> next-mbox
bind pager <pagedown> next-mbox
bind index <pageup> previous-mbox
bind pager <pageup> previous-mbox
bind index o open-mbox
bind pager o open-mbox
#
# Colors
#
# This is a tiny hack, so I can get different
# color schemes on the console and under X11.
source ~/.mutt/colors.linux
mono index bold ~F
# mono body bold '\*[^*]+\*'
# mono body underline '_[^_]+_'
#
# The header weed list
#
ignore delivered-to
ignore content- errors-to in-reply-to mime-version
ignore lines precedence status
ignore nntp-posting-host path old-return-path received references
ignore priority >received >>received
ignore resent- return-path xref path
ignore x400 importance sensitivity autoforward original-encoded-information
ignore x- thread-
ignore list- comments posted-to approved-by
unignore x-spam x-url x-mailer
hdr_order from to cc date subject reply-to mail-followup-to
#
# Various settings
#
set abort_nosubject=no # Let me send messages with an empty
subject
set abort_unmodified=no # Let me send empty messages
set alias_file=~/.mutt/aliases # Where to store aliases
set allow_8bit # Produce correct MIME
#set arrow_cursor # Use the bar cursor
unset askcc # Ask me about CCs
unset bounce_delivered # Don't include Delivered-to with
bounces
set charset=utf-8 # The local character set
set send_charset="utf8"
set confirmcreate # Ask me about creating new files
unset confirmappend # Don't ask me about appending to files
set delete=yes # Don't ask me whether or not I meant
to delete messages
set display_filter="tr '\240\204\223\226' ' \"\"-'" # fix some funny
characters
set edit_hdrs # I want to edit the headers.
#set editor="/usr/bin/jed %s -f 'flower_mode();'"
# Invoke jed with mail_mode. This may
# or may not work for you.
set envelope_from # set messages' envelope-from header.
set fcc_clear # Store local copies of messages in the
clear.
set folder=~/.maildir/ # Where my mail folders go
set followup_to # Create Mail-Followup-To headers.
unset force_name # Don't create save folders which don't
exist.
set forward_decode # Decode messages when forwarding.
set forward_decrypt # Decrypt messages when forwarding.
set help # No help line.
set include=yes # Always include a copy when replying.
set mark_old # Distinguish between seen (but unread)
and new messages
set mbox=+mbox # The (unused) mbox file.
unset metoo # Remove me from CC headers.
set mime_fwd=ask-no # Ask me whether or not to create a
MIME-encapsulated forward
set move=no # Don't use mbox
set pager_stop # Don't fall through to the next
message in the pager
set pager_index_lines=0 # The pager index is ugly.
set pgp_replyencrypt # Encrypt when replying to encrypted
messages.
set pgp_replysignencrypted # Sign when replying to encrypted
messages.
set pgp_show_unusable="no" # Don't display unusable keys.
set pgp_sort_keys="keyid" # Sort keys by key ID
set pgp_replysign # Sign when replying to signed messages.
set pgp_timeout=3600 # Forget the PGP passphrase after an
hour.
set pipe_decode # Decode messages I pipe to commands,
typically to patch(1).
set postponed=~/.mutt/postponed # Where to put postponed messages
set print=ask-no # Don't waste paper
set print_cmd="enscript -Email -2 -r -G" # Two columns, landscape, fancy
header.
set print_split=yes # Invoke enscript once per message
set quit=yes # Don't ask me whether or not I want to
quit.
set quote_regexp="^ *[a-zA-Z]*[>|][>:|]*" # Recognize quotes in the pager.
set read_inc=50 # Progress indicator when reading
folders.
set recall=ask-no # When I say "compose", ask me whether
I want to continue
# composing a postponed message.
set record="+archive/now" # Put copies of most outgoing messages
to ~/Mail/archive/now
set reply_to=ask-yes # Ask me whether I want to honor users'
reply-to headers.
set reverse_alias # Use aliases to display real names on
the index.
set save_name # Save copies by name. Together with
$record and $save_name,
# this means that when a folder exists,
copies of outgoing
# messages are written to
~/Mail/<name>, otherwise they go to
# ~/Mail/archive/now
set signature=~/.signature # Silly signature
set sig_dashes # Add dashes above my signature
set smart_wrap # Try to be smart when wrapping around
lines in the pager
set sort=threads # sort by threads,
set sort_aux=date # then by date
unset strict_threads # don't be strict about threads
# set suspend=no # Don't suspend - I usually run mutt
like this: "xterm -e mutt"
set tilde # Indicate empty lines in the pager.
set tmpdir=/tmp # Temporary files aren't stored in
public places.
set to_chars=" +TCF " # Don't tag list mail in the index
unset use_domain # Don't append a domain to addresses.
set write_inc=50 # Progress indicator when writing
folders.
set query_command="lbdbq %s" # Use the Little Brother's Database
with the external
# query feature.
set sendmail_wait=-1 # Put sendmail (i.e., postfix) to the
background.
set encode_from # "From " in the beginning of a line
triggers quoted-printable
set nowait_key # Return immediately from external
programs
set forw_format="[fwd] %s (from: %a)" # A different subject for forwarded
messages
set nobeep # Shut up. ;-)
set reply_regexp="^((re([\\[0-9\\]+])*|aw):[ \t]*)+[ \t]*" # A regular
expression to detect replies
set header # Include the message header when
replying.
set ignore_list_reply_to # Ignore Reply-To headers pointing to
mailing lists.
set index_format="%4C %Z %{%b %d} %-15.15L (%4c) %s" # Somewhat different
index format, which works
# nicely with maildir folders.
set rfc2047_parameters # Sometimes, I get mails which use a
bogus encoding for
# MIME parameters. Setting this
shouldn't harm.
set text_flowed # Generate text/plain; format=flowed
unset use_ipv6 # Don't try to use IPv6 - it doesn't
work here.
set keep_flagged # don't move flagged messages to mbox
set status_format="-%r-+(%v) %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d?
Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l?
%l?]----%>-(%P)---"
set compose_format="--+(%v) Compose [Approx. msg size: %l Atts: %a]%>-"
set pager_format="-%Z- %C/%m: %.20n %> %s"
set smileys="^$"
# PGP command configuration
# source ~/.mutt/pgp2.rc
source ~/.mutt/gpg.rc
# source non-public stuff, (hooks, alternates, ...)
#source ~/.mutt/priv.rc
# source aliases
source ~/.mutt/aliases
set visual=vim # ïïïïï?ïï, ïïïïïïïïïï ïï
~v
set from="[EMAIL PROTECTED]" #ïïïïïï ïïï ïïïïï ï
ïïïïïï "from"
set realname="Alexander Simonov"
set attribution="On %d, %n wrote:"# ïïï ïïïïïï ïï
ïïïïïï ïïïïï ïïï ïïïïïïï ï
ïïïïïï ïïïïïï
mailboxes =.simonov =.inbox =.lists.gentoo-wiki =.lists.gentoo-dev
=.lists.lafox =.lists.gentoo-dev =.lists.gentoo-ru =.lists.gentoo-doc-ru
=.lists.gentoo-security =.lists.lug =.lists.frenzy =.lists.linux-list
set mbox_pane_show=yes
set mbox_pane_width=20
pgpzee6URZtFS.pgp
Description: PGP signature
