At 14.20 11/07/03 +1000, you wrote:
Where does Eudora store the filter data and what does it look like?
Some nice parseable ASCII or a bunch of binary gunk?

TIA
I tried to investigate the format of the Filters file of Eudora and it seems rather simple.
Some of the capabilities of the filters is not completely clear to me, but the basic capabilities are rather simple.


Another nice feature of Eudora, regarding filters, is the 'make filter' voice of the 'message' menu, which helps bilding a filter based of a received message, allowing to use the sender, one of the recepients (inserted in a combo box) or the subject as filter condition and allowing to transfer to a new mailbox (also creates the mailbox) an existing one or to the trash mailbox (in M could also be deleting the message, if the trash is not used).
Thank you
Stefano Salvi
Eudora Filters:
Eudora version is 5.2.
The filters file is inherited from a previous version.

File 'Filters.pce' in the main Eudora Documents directory (the same where is normally
located the standard 'in.mbx').

It's a palin text file.

All the 'fields' are in a separate line.
There is no comment (it's built by the graphical interface).

The first line contains only number 3 (I suppose it's the version). Eudora still uses
this signature.

Every filter starts with:

rule <name of the rule>

Where 'rule ' is literal and '<name of the rule>' is a name created by the interface.
The name can contain white spaces.

After the 'rule' line there are three parts (in order):

The 'actions' part, containing up to 5 actions;
The 'apply' part, containing up to three of:
The 'conditions' part, containing two conditions, separed by a 'conjunction'.

--- 'Actions' ---
The possible actions are:

status <new status 0=Unread 1=Read 2=Replied 3=Forwarded 4=Redirected >
priority <new priority 0=Highest 1=High 2=Normal 3=low 4=lowest 5=lower 6=rise>
label <new label 0=None 1=Label 1 (Orange) 2=Label 2 (Red) 3=Label 3 (magenta)
 4=Label4 (Cyan) 5=Label 5 (Blue) 6=Label 6 (Green) 7=Label7 (brown) >
personality <new personality - from the list of created personalities>
subject <new subject - free text>
sound <sound file to play>
speak  <or of 1 = 'who' and 2 = 'subject' to syntetyze>
open <or of 1 = 'Mailbox' and 2 = 'Message' to open>
print 
notifyUser <or of 1 = 'as normal' and 2 = 'in Report' >
notifyApp <path of the app to notify>
forward <e-mail address to forward to>
redirect <e-mail address to redirect to>
reply <stationary message to auto-reply to the sender (only the name)>
serverOpt <or of 1 = fetch and 2 = delete >
copy <mailbox file name to copy the message to (Ex: 'In.mbx')>
transfer <mailbox file name to wich move the message (Ex: 'In.mbx')>
stop (don't examine suxceeding ruules)

--- 'Apply' ---
Indicates on which messages to apply the filter:
incoming (on incoming messages)
outgoing (on outgoing messages)
manual (manualy on selected messages)

--- Conditions ---
There are four sections:
header (the field on which to apply the filter, selected from 'To:', 'From:', 
'Subject:', 'CC:', 'Reply-to:', '�Any Header�', '�Any Recipient�', '�Personality�'>
verb (the condition to apply, from 'contains', '!contains', 'is', '!is', 'starts', 
'ends', 'intersects', 'disjoint', 'appears', '!appears', 'intersectsFile', 
'disjointFile', 'regex_icase', 'regex'>
conjunction <relational operator from 'and', 'or', 'unless', 'ignore'>

An example of 'conditions' is:
------------------------
header To:
verb contains
value pippo
conjunction and
header To:
verb contains
value pippo
------------------------

An entiere Filters.pce file (but with some filter not really working, but with a large 
collection of options) is:

-------------------------
3
rule To:pippo
status 0
priority 2
label 0
personality <Dominant>
subject 
incoming
outgoing
manual
header To:
verb contains
value pippo
conjunction and
header To:
verb contains
value pippo
rule Subject:df
sound 
speak 0 
open 0
print 
notifyUser 1
outgoing
manual
header Subject:
verb is
value df
conjunction or
header Cc:
verb !is
value dfbs
rule Reply-To:dfht
notifyApp 
forward 
redirect adf
serverOpt 2
reply prova
manual
header Reply-To:
verb starts
value dfht
conjunction or
header �Any Header�
verb ends
value sfehtr
rule �Any Recipient�srtj
copy In.mbx
transfer In.mbx
stop 
incoming
header �Any Recipient�
verb intersects
value srtj
conjunction and
header �Personality�
verb disjoint
value asdvav
rule �Any Header�rtyer 
incoming
header �Any Header�
verb appears
value rtyer 
conjunction unless
header �Body�
verb !appears
value rwrb5y
rule �Any Recipient�<<All>>
incoming
header �Any Recipient�
verb intersectsFile
value <<All>>
conjunction and
header Subject:
verb disjointFile
value 
rule From:
header From:
verb regex_icase
value 
conjunction ignore
header 
verb regex
value 
rule Subject:Unread, Normal, None
status 0
priority 2
label 0
incoming
header Subject:
verb contains
value Unread, Normal, None
conjunction ignore
header 
verb contains
value 
rule Subject:Read, Highest, Label 1 (Orange)
status 1
priority 0
label 1
incoming
header Subject:
verb contains
value Read, Highest, Label 1 (Orange)
conjunction ignore
header 
verb contains
value 
rule Subject:Replied, High, Label 2 (Red)
status 2
priority 1
label 2
incoming
header Subject:
verb contains
value Replied, High, Label 2 (Red)
conjunction ignore
header 
verb contains
value 
rule Subject:Replied, low, Label 3 (magenta)
status 3
priority 4
label 4
incoming
header Subject:
verb contains
value Forwarded, Lowest, Label4 (Cyan)
conjunction ignore
header 
verb contains
value 
rule Subject:Forwarded, Lowest, Label4 (Cyan)
status 3
priority 5
label 4
incoming
header Subject:
verb contains
value Forwarded, Lower, Label 5 (Blue)
conjunction ignore
header 
verb contains
value 
rule Subject:Forwarded, Lower, Label 5 (Blue)
status 3
priority 5
label 5
incoming
header Subject:
verb contains
value Forwarded, Lower, Label 5 (Blue)
conjunction ignore
header 
verb contains
value 
rule Subject:Redirected, Raise, Label 6 (Green)
status 4
priority 6
label 6
incoming
header Subject:
verb contains
value Redirected, Raise, Label 6 (Green)
conjunction ignore
header 
verb contains
value 
rule Subject:Unread, Normal, Label7 (brown)
status 0
priority 2
label 7
incoming
header Subject:
verb contains
value Unread, Normal, Label7 (brown)
conjunction ignore
header 
verb contains
value 
-----------------------

Reply via email to