Function: mh-identity-handler-signature

mh-identity-handler-signature is an autoloaded and byte-compiled function defined in mh-identity.el.gz.

Signature

(mh-identity-handler-signature FIELD ACTION &optional VALUE)

Documentation

Process header FIELD ":signature".

The ACTION is one of remove or add. If add, the VALUE is added.

Source Code

;; Defined in /usr/src/emacs/lisp/mh-e/mh-identity.el.gz
;;;###mh-autoload
(defun mh-identity-handler-signature (_field action &optional value)
  "Process header FIELD \":signature\".
The ACTION is one of `remove' or `add'. If `add', the VALUE is
added."
  (cond
   ((equal action 'remove)
    (when (and (markerp mh-identity-signature-start)
               (markerp mh-identity-signature-end))
      (delete-region mh-identity-signature-start
                     mh-identity-signature-end)))
   (t
    ;; Insert "signature". Nil value means to use `mh-signature-file-name'.
    (when (not (mh-signature-separator-p)) ;...unless already present
      (goto-char (point-max))
      (save-restriction
        (narrow-to-region (point) (point))
        (if (null value)
            (mh-insert-signature)
          (mh-insert-signature value))
        (setq-local mh-identity-signature-start (point-min-marker))
        (set-marker-insertion-type mh-identity-signature-start t)
        (setq-local mh-identity-signature-end (point-max-marker)))))))