feedmail-fiddle-plex-blurb
feedmail-fiddle-plex-blurb is a variable defined in `
feedmail.el
'.
Its value is
nil
- This variable may be risky if used as a file-local variable.
Documentation:
A fiddle-plex is a concise way of specifying header field fiddling.
It is a list of up to 4 elements: NAME, VALUE, ACTION, FOLDING. The element
VALUE can also be a list sometimes.
NAME is the name of the header field to be fiddled with. Although case
doesn't matter in looking for headers, case of NAME is preserved when a header
is inserted via fiddling. It shouldn't include the trailing colon.
VALUE is either nil, a simple string, a function returning nil or a string, or,
as described below for ACTION `combine', a list of up to three values.
ACTION describes the nature of the fiddling to be done. Possibilities
for ACTION (default is `supplement'):
`supplement' Leave other like fields as-is, insert this one.
`replace' Delete other like fields, if any, and insert this one.
`create' Insert this one only if no like field exists.
`combine' Combine aggregate values of like fields with this one.
In this case, VALUE has a special form. It is a list
of three items: VAL-PRE, VAL-LIKE, and VAL-POST.
VAL-PRE and VAL-POST are strings or nil. VAL-LIKE may
be either a string or a function (it may also be nil,
but there's not much point to that).
Values of like header fields are aggregated, leading and
trailing whitespace is removed, and embedded
whitespace is left as-is. If there are no like
fields, or the aggregate value is an empty string,
VAL-LIKE is not used. Else, if VAL-LIKE is a function,
it is called with two arguments: NAME and the
aggregate like values. Else, if VAL-LIKE is a string, it is
used as a format string where a single %s will be
replaced by the aggregate values of like fields.
VAL-PRE, the results of using VAL-LIKE, and VAL-POST
are concatenated, and the result, if not nil and not
an empty string, is used as the new value for the
field. Although this description sounds a bit
complicated, the idea is to provide a mechanism for
combining the old value with a new value in a flexible
way. For example, if you wanted to add a new value to
an existing header field by adding a semi-colon and
then starting the new value on a continuation line,
you might specify this:
(nil "%s;\n\t" "This is my new value")
FOLDING can be nil, in which case VALUE is used as-is. If FOLDING is
non-nil, feedmail "smart filling" is done on VALUE just before
insertion.