3.18.10 Article Signature

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 son-of-RFC 1036. 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.

If it is an integer, no signature may be longer (in characters) than
that integer.

If it is a floating point number, no signature may be longer (in lines)
than that number.

If it is a function, the function will be called without any parameters,
and if it returns nil, there is no signature in the buffer.

If it is a string, it will be used as a regexp. If it matches, the text
in question is not a signature.

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.