Function: mh-insert-identity
mh-insert-identity is an autoloaded, interactive and byte-compiled
function defined in mh-identity.el.gz.
Signature
(mh-insert-identity IDENTITY &optional MAYBE-INSERT)
Documentation
Insert fields specified by given IDENTITY.
In a program, do not insert fields if MAYBE-INSERT is non-nil,
mh-identity-default is non-nil, and fields have already been
inserted.
See mh-identity-list.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/mh-e/mh-identity.el.gz
;;;###mh-autoload
(defun mh-insert-identity (identity &optional maybe-insert)
"Insert fields specified by given IDENTITY.
In a program, do not insert fields if MAYBE-INSERT is non-nil,
`mh-identity-default' is non-nil, and fields have already been
inserted.
See `mh-identity-list'."
(interactive
(list (completing-read
"Identity: "
(if mh-identity-local
(cons '("None")
(mapcar #'list (mapcar #'car mh-identity-list)))
(mapcar #'list (mapcar #'car mh-identity-list)))
nil t)
nil))
(when (or (not maybe-insert)
(and (boundp 'mh-identity-default)
mh-identity-default
(not mh-identity-local)))
(save-excursion
;;First remove old settings, if any.
(when mh-identity-local
(let ((pers-list (cadr (assoc mh-identity-local mh-identity-list))))
(while pers-list
(let* ((field (caar pers-list))
(handler (mh-identity-field-handler field)))
(funcall handler field 'remove))
(setq pers-list (cdr pers-list)))))
;; Then insert the replacement
(when (not (equal "None" identity))
(let ((pers-list (cadr (assoc identity mh-identity-list))))
(while pers-list
(let* ((field (caar pers-list))
(value (cdar pers-list))
(handler (mh-identity-field-handler field)))
(funcall handler field 'add value))
(setq pers-list (cdr pers-list))))))
;; Remember what is in use in this buffer
(if (equal "None" identity)
(setq mh-identity-local nil)
(setq mh-identity-local identity))))