Expressions syntax:
simple expressions:
header("header_name") operator "string"
where operator can be
eq (equality), ex: header("X-Loop") eq "lists@ml.domain.tld"
equals: synonym for eq
ne: inverse of eq
contains, ex: header("From") contains "@domain.tld"
regmatches, ex: header("Subject") regmatches "^R[eE]: \[GENERAL\]"
Expressions can be combined with NOT, AND, OR, and use other
conditions
Examples:
pg_gen: header("Sender") eq "pgsql-general-owner@postgresql.org"
pg_interf: header("Sender") eq "pgsql-interfaces-owner@postgresql.org"
pg: pg_gen OR pg_interf
Arbitrarily complex expressions can be written by combining conditions
and operators:
(pg_gen OR pg_interf) AND NOT (header("From") contains "@mydomain.tld")
Actions
The action panel refers to the currently selected condition.
To add an action, select (New action) in the actions list
To remove the currently selected action, use the <Del> key.
Suggest
The "suggest" button is enabled when two or more messages are selected
in the message window when the File->Filters command is run.
Activating that button opens an "Header analysis" dialog, exposing
headers whose values are identical across the set of selected messages.
When a header line is selected in the dialog, the corresponding expression header("header_name") eq "header_value" is automatically generated in the filter rules window as the current expression.
The purpose of this functionality is to ease the discovery and use of relevant headers to filter messages.