;ELC
;;; Compiled by LTX@Xue-LingTaos-MacBook-Pro.local on Wed Mar 16 23:16:04 2011
;;; from file /Users/LTX/Projects/Emacs/emacs/lisp/mh-e/mh-identity.el
;;; in Emacs version 24.0.50.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\302\303\304\"\207" [require mh-e autoload mml-insert-tag "mml"] 3)
#@111 Holds the GPG key ID to be used by pgg.el.
This is normally set as part of an Identity in
`mh-identity-list'.
(defvar mh-identity-pgg-default-user-id nil (#$ . 644))
(make-variable-buffer-local 'mh-identity-pgg-default-user-id)
#@20 The Identity menu.
(defvar mh-identity-menu nil (#$ . 878))
(defalias 'mh-identity-make-menu-no-autoload 'mh-identity-make-menu)
#@137 Build the Identity menu.
This should be called any time `mh-identity-list' or
`mh-auto-fields-list' change.
See `mh-identity-add-menu'.
(defalias 'mh-identity-make-menu #[nil "\302\303\304\305#\210\306\303!\204\307\303\310\"\210\311\303\305\312\313\314\315\316\315\317	\"\"\320$$\207" [mh-letter-mode-map mh-identity-list put mh-identity-menu variable-documentation "MH-E identity menu" default-boundp set-default nil easy-menu-do-define append ("Identity") (["Insert Auto Fields" (mh-insert-auto-fields) mh-auto-fields-list] "--") mapcar #[(arg) "\301\302D\303\304\305\306\307E&\207" [arg vector mh-insert-identity :style radio :selected equal mh-identity-local] 9] car (["None" (mh-insert-identity "None") :style radio :selected (not mh-identity-local)] "--" ["Set Default for Session" (setq mh-identity-default mh-identity-local) t] ["Save as Default" (customize-save-variable 'mh-identity-default mh-identity-local) t] ["Customize Identities" (customize-variable 'mh-identity-list) t])] 12 (#$ . 1014)])
#@61 Add the current Identity menu.
See `mh-identity-make-menu'.
(defalias 'mh-identity-add-menu #[nil "\205\301!\207" [mh-identity-menu easy-menu-add] 2 (#$ . 2035)])
#@65 Buffer-local variable that holds the identity currently in use.
(defvar mh-identity-local nil (#$ . 2208))
(make-variable-buffer-local 'mh-identity-local)
#@93 Delete header FIELD, or only its value if VALUE-ONLY is t.
Return t if anything is deleted.
(defalias 'mh-header-field-delete #[(field value-only) "\303\304\"\203\202\305P\306	!\2051\n\204\307 \210\202\"\310u\210`\311 \210\n\204-\312u\210`|\210\313)\207" [field field-colon value-only string-match "^.*:$" ":" mh-goto-header-field beginning-of-line nil mh-header-field-end 1 t] 3 (#$ . 2369)])
#@75 Marker for the beginning of a signature inserted by `mh-insert-identity'.
(defvar mh-identity-signature-start nil (#$ . 2782))
#@69 Marker for the end of a signature inserted by `mh-insert-identity'.
(defvar mh-identity-signature-end nil (#$ . 2915))
#@260 Return the handler for header FIELD or nil if none set.
The field name is downcased. If the FIELD begins with the
character ":", then it must have a special handler defined in
`mh-identity-handlers', else return an error since it is not a
valid header field.
(defalias 'mh-identity-field-handler #[(field) "\302	\303#A\206!\304H\305=\203\306\307\"\206!\310\311	\"A\206!\312\207" [field mh-identity-handlers mh-assoc-string t 0 58 error "Field %s not found in `mh-identity-handlers'" assoc ":default" mh-identity-handler-default] 4 (#$ . 3041)])
#@206 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'.
(defalias 'mh-insert-identity #[(identity &optional maybe-insert) "\203\306\301!\205\220	\205\220\n?\205\220\212\n\203C\307\n\"\211A@)\211\203B
\211@@)
\310
!\211
\311\"\210*
A\211\204&)\312\232\204\200\307\"\211A@)\211\203
\211@@)

\211@A)\310
!\211
\313#\210+
A\211\204Y))\312\232\203\214\314\211\207\211\207" [maybe-insert mh-identity-default mh-identity-local mh-identity-list x pers-list boundp assoc mh-identity-field-handler remove "None" add nil field handler identity value] 5 (#$ . 3601) (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)])
#@219 Process header FIELD ":pgg-default-user-id".
The ACTION is one of 'remove or 'add. If 'add, the VALUE is added.
The buffer-local variable `mh-identity-pgg-default-user-id' is set to
VALUE when action 'add is selected.
(defalias 'mh-identity-handler-gpg-identity #[(field action &optional value) "\303\232\204	\203	\304\230\203\305\211\207\306\232\205	\211\207" [action value mh-identity-pgg-default-user-id remove "" nil add] 2 (#$ . 4542)])
#@103 Process header FIELD ":signature".
The ACTION is one of 'remove or 'add. If 'add, the VALUE is
added.
(defalias 'mh-identity-handler-signature #[(field action &optional value) "\304\232\203\305	!\205\305\n!\205G	\n|\207\306 ?\205Gdb\210\214``}\210\204.\307 \210\2022\307!\210\310\301!\210\311 \312	\313\"\210\310\302!\210\314 \211)\207" [action mh-identity-signature-start mh-identity-signature-end value remove markerp mh-signature-separator-p mh-insert-signature make-local-variable point-min-marker set-marker-insertion-type t point-max-marker] 3 (#$ . 5003)])
#@51 Marker for the beginning of the attribution verb.
(defvar mh-identity-attribution-verb-start nil (#$ . 5586))
#@45 Marker for the end of the attribution verb.
(defvar mh-identity-attribution-verb-end nil (#$ . 5702))
#@110 Process header FIELD ":attribution-verb".
The ACTION is one of 'remove or 'add. If 'add, the VALUE is
added.
(defalias 'mh-identity-handler-attribution-verb #[(field action &optional value) "\304!\205 \304	!\205 	|\210b\210\n\305\232\203\306\307!\207\306!\207" [mh-identity-attribution-verb-start mh-identity-attribution-verb-end action value markerp remove mh-identity-insert-attribution-verb nil] 2 (#$ . 5811)])
#@123 Insert VALUE as attribution verb, setting up delimiting markers.
If VALUE is nil, use `mh-extract-from-attribution-verb'.
(defalias 'mh-identity-insert-attribution-verb #[(value) "\214``}\210\204	c\210\202c\210\304\302!\210\305 \306\n\307\"\210\304\303!\210\310 \211)\207" [value mh-extract-from-attribution-verb mh-identity-attribution-verb-start mh-identity-attribution-verb-end make-local-variable point-min-marker set-marker-insertion-type t point-max-marker] 3 (#$ . 6241)])
#@214 Process header FIELD.
The ACTION is one of 'remove or 'add. If TOP is non-nil, add the
field and its VALUE at the top of the header, else add it at the
bottom of the header. If action is 'add, the VALUE is added.
(defalias 'mh-identity-handler-default #[(field action top &optional value) "\305\306\"\203\202\307P\n\310\232\203\311	\312\"\202J\203&\313\230\203-\311	\312\"\202J\311	\314\"\2039c\202Jeb\210\f\204D\315\316!\210	\317\320\261)\207" [field field-colon action value top string-match "^.*:$" ":" remove mh-header-field-delete nil "" t mh-goto-header-end 0 " " "\n"] 4 (#$ . 6736)])
#@157 Process header FIELD.
The ACTION is one of 'remove or 'add. If 'add, the VALUE is
added. If the field wasn't present, it is added to the top of the
header.
(defalias 'mh-identity-handler-top #[(field action &optional value) "\303	\304\n$\207" [field action value mh-identity-handler-default t] 5 (#$ . 7357)])
#@160 Process header FIELD.
The ACTION is one of 'remove or 'add. If 'add, the VALUE is
added. If the field wasn't present, it is added to the bottom of
the header.
(defalias 'mh-identity-handler-bottom #[(field action &optional value) "\303	\304\n$\207" [field action value mh-identity-handler-default nil] 5 (#$ . 7675)])
(provide 'mh-identity)
