Each article is divided into two parts—the head and the body. The
body can be divided into a signature part and a text part. The variable
that says what is to be considered a signature is
gnus-signature-separator. This is normally the standard
‘^-- $’ as mandated by RFC 5536. However, many people use
non-standard signature separators, so this variable can also be a list
of regular expressions to be tested, one by one. (Searches are done
from the end of the body towards the beginning.) One likely value is:
(setq gnus-signature-separator '("^-- $" ; The standard "^-- *$" ; A common mangling "^-------*$" ; Many people just use a looong ; line of dashes. Shame! "^ *--------*$" ; Double-shame! "^________*$" ; Underscores are also popular "^========*$")) ; Pervert!
The more permissive you are, the more likely it is that you'll get false positives.
gnus-signature-limit provides a limit to what is considered a
signature when displaying articles.
nil, there is no signature in the buffer.
This variable can also be a list where the elements may be of the types listed above. Here's an example:
(setq gnus-signature-limit '(200.0 "^---*Forwarded article"))
This means that if there are more than 200 lines after the signature separator, or the text after the signature separator is matched by the regular expression ‘^---*Forwarded article’, then it isn't a signature after all.