Supercite employs a number of heuristics to decipher the author’s name based on value of the ‘From:’ mail field of the original message. Supercite can recognize almost all of the common ‘From:’ field formats in use. If you encounter a ‘From:’ field that Supercite cannot parse, please report this bug using M-x report-emacs-bug.
There are a number of Supercite variables that control how author names are extracted from the ‘From:’ header. Some headers may contain a descriptive title as in:
From: computer!speedy!doe (John Xavier-Doe -- Decent Hacker)
Supercite knows which part of the ‘From:’ header is email address
and which part is author name, but in this case the string "Decent
Hacker"
is not part of the author’s name. You can tell Supercite to
ignore the title, while still recognizing hyphenated names through the
use of a regular expression in the variable sc-titlecue-regexp
.
This variable has the default value of "\\\\s +-+\\\\s +"
. Any
text after this regexp is encountered is ignored as noise.
Some ‘From:’ headers may contain extra titles in the name fields
not separated by a title cue, but which are nonetheless not part of the
author’s name proper. Examples include the titles “Dr.”, “Mr.”,
“Ms.”, “Jr.”, “Sr.”, and “III” (e.g., Thurston Howe, the Third).
Also, some companies prepend or append the name of the division,
organization, or project on the author’s name. All of these titles are
noise which should be ignored. The variable sc-name-filter-alist
is used for this purpose. As implied by its name, this variable is an
association list, where each element is a cons cell of the form:
(regexp . position)
where regexp is a regular expression that is matched (using
string-match
) against each element of the ‘From:’ field’s
author name. position is a position indicator, starting at zero.
Thus to strip out all titles of “Dr.”, “Mr.”, etc. from the name,
sc-name-filter-alist
would have an entry such as:
("^\\(Mr\\|Mrs\\|Ms\\|Dr\\)[.]?$" . 0)
which only removes them if they appear as the first word in the name.
The position indicator is an integer, or one of the two special symbols
last
or any
. last
always matches against the last
word in the name field, while any
matches against every word in
the name field.