I tried to investigate the format of the Filters file of Eudora and it seems rather simple.Where does Eudora store the filter data and what does it look like? Some nice parseable ASCII or a bunch of binary gunk?
TIA
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 -----------------------
