MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 3.18.102.38
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/mail/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/mail/mailabbrev.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:11:43 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/mail/mailabbrev.el
;;; in Emacs version 24.3.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\302\303\304\305%\210\306\307\302\310\311\312\313\314\304\301\315\316\317\320&
\207" [custom-declare-group mail-abbrev nil "Expand mail aliases as abbrevs, in certain mail headers." :group abbrev-mode custom-declare-variable mail-abbrevs-mode "Non-nil if Mail-Abbrevs mode is enabled.\nSee the command `mail-abbrevs-mode' for a description of this minor mode.\nSetting this variable directly does not take effect;\neither customize it (see the info node `Easy Customization')\nor call the function `mail-abbrevs-mode'." :set custom-set-minor-mode :initialize custom-initialize-default :type boolean :version "20.3"] 14)
#@457 Toggle abbrev expansion of mail aliases (Mail Abbrevs mode).
With a prefix argument ARG, enable Mail Abbrevs mode if ARG is
positive, and disable it otherwise.  If called from Lisp, enable
the mode if ARG is omitted or nil.

Mail Abbrevs mode is a global minor mode.  When enabled,
abbrev-like expansion is performed when editing certain mail
headers (those specified by `mail-abbrev-mode-regexp'), based on
the entries in your `mail-personal-alias-file'.
(defalias 'mail-abbrevs-mode #[(&optional arg) "\303 	\304=\203\n?\202\305	!\306V\211\203\307 \210\202!\310 \210\311\312\n\203+\313\202,\314\"\210\315\316!\203Q\317\302!\210\303 \203D\303 \232\203Q\320\321\n\203N\322\202O\323\"\210)\324 \210\n\207" [#1=#:last-message arg mail-abbrevs-mode current-message toggle prefix-numeric-value 0 mail-abbrevs-enable mail-abbrevs-disable run-hooks mail-abbrevs-mode-hook mail-abbrevs-mode-on-hook mail-abbrevs-mode-off-hook called-interactively-p any customize-mark-as-set message "Mail-Abbrevs mode %sabled" "en" "dis" force-mode-line-update] 4 (#$ . 1199) (list (or current-prefix-arg 'toggle))])
(byte-code "\301\302\303\304\300!\205\n\303\211%\210\305\306\303\307\310\311\312\313&\207" [mail-abbrevs-mode-map add-minor-mode mail-abbrevs-mode nil boundp custom-declare-variable mail-abbrevs-only "Non-nil means only mail abbrevs should expand automatically.\nOther abbrevs expand only when you explicitly use `expand-abbrev'." :type boolean :group mail-abbrev] 8)
#@262 Word-abbrev table of mail address aliases.
If this is nil, it means the aliases have not yet been initialized and
should be read from the .mailrc file.  (This is distinct from there being
no aliases, which is represented by this being a table with no entries.)
(defvar mail-abbrevs nil (#$ . 2688))
#@74 The modification time of your mail alias file when it was last examined.
(defvar mail-abbrev-modtime nil (#$ . 2993))
(defalias 'mail-abbrevs-sync-aliases #[nil "\205\303!\205\304\305!8\n	\232?\205	\306 )\207" [mail-personal-alias-file modtime mail-abbrev-modtime file-exists-p 5 file-attributes build-mail-abbrevs] 3])
#@45 Initialize use of the `mailabbrev' package.
(defalias 'mail-abbrevs-setup #[nil "\303!\204\304	!\203\305\306	!8\307 \210\310 \210\311\312\313\314\315$\210\316\317!\207" [mail-abbrevs mail-personal-alias-file mail-abbrev-modtime vectorp file-exists-p 5 file-attributes build-mail-abbrevs mail-abbrevs-sync-aliases add-hook abbrev-expand-functions mail-abbrev-expand-wrapper nil t abbrev-mode 1] 5 (#$ . 3330)])
(defalias 'mail-abbrevs-enable #[nil "\300\301\302\"\207" [add-hook mail-mode-hook mail-abbrevs-setup] 3])
#@43 Turn off use of the `mailabbrev' package.
(defalias 'mail-abbrevs-disable #[nil "\300\301\302\"\210\303\304\303!\203\305\202\306!\207" [remove-hook mail-mode-hook mail-abbrevs-setup abbrev-mode default-value 1 -1] 3 (#$ . 3859)])
#@142 Read mail aliases from personal mail alias file and set `mail-abbrevs'.
By default this is the file specified by `mail-personal-alias-file'.
(defalias 'build-mail-abbrevs #[(&optional file recursivep) "\306\206	!\307\n!\204\310\311\302\310\"\210\312\313\"\210\314\315!rq\210\316\216\317 \210\320!\203<r\320!q\210ed{)c\210\202F\321!\203F\322!\210db\210h\323=\204R\324 \210eb\210\325\326\310\327#\203l`\330Z\310\210\f`|\210)\202Ueb\210m\204\220\310\210h\331U\203\212\332\333!\210\332\334!\210\335c\210\202o\334u\210\202oeb\210\336\337\310\327#\203\326\340 \210\341\342!\203\265\310\210\343\344\334\224\334\225{!\327\"\210\202\223\336\345!\210\334\224\334\225{\346\310w\210`*\310\210\347
*`{\327#\210*\202\223+\204\336\350 \210\n\210+\312\351\"\207" [file mail-personal-alias-file mail-abbrevs #1=#:temp-buffer p name expand-file-name vectorp nil define-abbrev-table message "Parsing %s..." generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) buffer-disable-undo get-file-buffer file-exists-p insert-file-contents 10 newline search-forward "# " t 2 92 delete-char -1 1 32 re-search-forward "^\\(a\\(lias\\)?\\|g\\(roup\\)?\\|source\\)[ 	]+" beginning-of-line looking-at "source[ 	]+\\([^ 	\n]+\\)" build-mail-abbrevs substitute-in-file-name "[ 	]+\\([^ 	\n]+\\)" " 	" define-mail-abbrev mail-resolve-all-aliases "Parsing %s... done" start recursivep] 4 (#$ . 4100)])
#@209 String inserted between addresses in multi-address mail aliases.
This has to contain a comma, so ", " is a reasonable value.  You might
also want something like ",\n    " to get each address on its own line.
(custom-declare-variable 'mail-alias-separator-string ", " '(#$ . 5568) :type 'string :group 'mail-abbrev)
(defvar mail-abbrev-aliases-need-to-be-resolved t)
#@340 Define NAME as a mail alias abbrev that translates to DEFINITION.
If DEFINITION contains multiple addresses, separate them with commas.

Optional argument FROM-MAILRC-FILE means that DEFINITION comes
from a mailrc file.  In that case, addresses are separated with
spaces and addresses with embedded spaces are surrounded by
double-quotes.
(defalias 'define-mail-abbrev #[(name definition &optional from-mailrc-file) "\306!\204	\307 \210\310\311	\"\203	\312\225\313O\310\314	\"\203#	\312\211\224O	G\211\312V\205-\312\313\211\313\203\355\203\221	H\315=\203WT\310\316	#\205S\317\225\202]\310\320	#	\fO\f\205p\312\225\nU?\205p\312\225\310\321
\"\203\210\310\322\323\317
\"\"\203\210\324\321\325
#
B\2025\310\326	#\232\203\263\323\317	\"B\312\225\nU?\205\256\312\225\211\2026\310\327	#	\fO\f\205\314\312\225\nU?\205\314\312\225\310\321
\"\203\344\310\322\323\317
\"\"\203\344\324\321\325
#
B\2025\330\331\237#-\332 !\227!\"\"\333!	\334\312\332&)\207" [mail-abbrevs definition L start end this-entry vectorp build-mail-abbrevs string-match "\\`[ 	\n,]+" 0 nil "[ 	\n,]+\\'" 34 "[^\\]\\(\\([\\][\\]\\)*\\)\"[ 	,]*" 1 "[ 	,]+" "\\(.+?\\)[ 	]*\\(<.*>\\)" "[^- !#$%&'*+/0-9=?A-Za-z^_`{|}~]" match-string replace-regexp-in-string "\"\\1\" \\2" "[ 	,]*\\(\"\\(?:[^\"]\\|[^\\]\\(?:[\\][\\]\\)*\"\\)*\"[ 	]*<[-.!#$%&'*+/0-9=?A-Za-z^_`{|}~@]+>\\)[ 	,]*" "[ 	\n,]*,[ 	\n]*" mapconcat identity t define-abbrev mail-abbrev-expand-hook result from-mailrc-file mail-alias-separator-string mail-abbrev-aliases-need-to-be-resolved name abbrevs-changed] 8 (#$ . 5941) "sDefine mail alias: \nsDefine %s as mail alias for: "])
#@59 Resolve all forward references in the mail aliases table.
(defalias 'mail-resolve-all-aliases #[nil "\205\302	!\203\303\304	\"\210\305\211\207" [mail-abbrev-aliases-need-to-be-resolved mail-abbrevs vectorp mapatoms mail-resolve-all-aliases-1 nil] 3 (#$ . 7629)])
(defalias 'mail-resolve-all-aliases-1 #[(sym &optional so-far) "	>\203\306\307\310\311	B\312#\"\210\313!\205J\211\203K\314\315\203>\316\317\n#\n
O\fB
\2059\315\225)\202\"\310\320\f\237#\nL\210*)J\207" [sym so-far definition start result end error "mail alias loop detected: %s" mapconcat symbol-name " <- " boundp nil 0 string-match "[ 	\n]*,[, 	\n]*" #[(x) "\304\305\227	\"\nB\"\206\207" [x mail-abbrevs sym so-far mail-resolve-all-aliases-1 intern-soft] 4] mail-alias-separator-string] 7])
#@211 For use as the fourth arg to `define-abbrev'.
After expanding a mail-abbrev, if Auto Fill mode is on and we're past the
fill-column, break the line at the previous comma, and indent the next line
with a space.
(defalias 'mail-abbrev-expand-hook #[nil "\205M\303\212i\nY\205L\304\305\306 \307#\203#i\nSY\203#`\211\204
n\2030	\203	b\203\303\310u\210\311c\210\312\313!\203C`\314\225|\210\315c\210\303\210\202*\207" [auto-fill-function p fill-column nil search-backward "," point-at-bol move 1 "\n" looking-at "[	 ]+" 0 " "] 4 (#$ . 8428)])
#@385 Regexp matching mail headers in which mail abbrevs should be expanded.
This string will be handed to `looking-at' with point at the beginning
of the current line; if it matches, abbrev mode will be turned on, otherwise
it will be turned off.  (You don't need to worry about continuation lines.)
This should be set to match those mail fields in which you want abbreviations
turned on.
(custom-declare-variable 'mail-abbrev-mode-regexp "^\\(Resent-\\)?\\(To\\|From\\|CC\\|BCC\\|Reply-to\\):" '(#$ . 8990) :type 'regexp :group 'mail-abbrev)
#@266 The syntax-table used for abbrev-expansion purposes.
This is not actually made the current syntax table of the buffer, but
simply controls the set of characters which may be a part of the name
of a mail alias.  The value is set up, buffer-local, when first needed.
(defvar mail-abbrev-syntax-table nil (#$ . 9535))
(defalias 'mail-abbrev-make-syntax-table #[nil "\304\300!\210?\205E\305\306 !\307 \310H\307 \311H\312\313\"\210\314\315\316#\210\314\317\316#\210\314\320\316#\210\314\321\316#\210\314\310\316#\210\314\322\316#\210\211+\207" [mail-abbrev-syntax-table w _ tab make-local-variable copy-syntax-table syntax-table standard-syntax-table 95 119 map-char-table #[(key value) "\204	\nH\232\205\305	\n\f#\207" [value tab key _ w set-char-table-range] 4] modify-syntax-entry 64 "w" 37 33 46 45] 4])
#@50 Whether point is in a mail-address header field.
(defalias 'mail-abbrev-in-expansion-header-p #[nil "\302\212m\204\n\303u\210\304\305\306\307#\210\310	!)\205\"`\214~\210\212\311 \210`*W)\207" [case-fold-search mail-abbrev-mode-regexp t 1 re-search-backward "^[^ 	]" nil move looking-at rfc822-goto-eoh] 4 (#$ . 10366)])
(defalias 'mail-abbrev-expand-wrapper #[(expand) "\203U\306=\204U\307 \203F\n\203\310 \210\311 \210\250\2033\f\312\232\2033z\313=\206D\314>\206D\315 p\316\216\317!\210 +)\207\203Q\f\320=\205T \207 \207" [mail-abbrevs local-abbrev-table mail-abbrev-aliases-need-to-be-resolved last-command-event this-command #1=#:buffer t mail-abbrev-in-expansion-header-p mail-resolve-all-aliases mail-abbrev-make-syntax-table self-insert-command 95 (64 46 37 33 95 45) syntax-table ((byte-code "rq\210\302	!\210)\302\207" [#1# #2=#:table set-syntax-table] 2)) set-syntax-table expand-abbrev #2# mail-abbrev-syntax-table expand mail-abbrevs-only] 2])
#@60 Merge mail aliases from the given file with existing ones.
(defalias 'merge-mail-abbrevs #[(file) "\301!\207" [file build-mail-abbrevs] 2 (#$ . 11362) (list (let ((insert-default-directory t) (default-directory (expand-file-name "~/")) (def mail-personal-alias-file)) (read-file-name (format "Read additional aliases from file (default %s): " def) default-directory (expand-file-name def default-directory) t)))])
#@51 Rebuild all the mail aliases from the given file.
(defalias 'rebuild-mail-abbrevs #[(&optional file) "\204	\303\304!\207" [file buffer-file-name mail-abbrevs nil build-mail-abbrevs] 2 (#$ . 11783) (list (let ((insert-default-directory t) (default-directory (expand-file-name "~/")) (def mail-personal-alias-file)) (read-file-name (format "Read mail aliases from file (default %s): " def) default-directory (expand-file-name def default-directory) t)))])
#@37 Prompt for and insert a mail alias.
(defalias 'mail-abbrev-insert-alias #[(&optional alias) "\302!\204	\303 \210	\203\304	\"J\206\305c\210\306 \207" [mail-abbrevs alias vectorp mail-abbrevs-setup intern-soft "" mail-abbrev-expand-hook] 3 (#$ . 12249) (progn (if (not (vectorp mail-abbrevs)) (mail-abbrevs-setup)) (list (completing-read "Expand alias: " mail-abbrevs nil t)))])
#@46 Perform completion on alias preceding point.
(defalias 'mail-abbrev-complete-alias #[nil "\306 \210`\307 p\310\216\311\n!\210\212\312v\210`,\313\f
#*\207" [#1=#:buffer #2=#:table mail-abbrev-syntax-table beg end mail-abbrevs mail-abbrev-make-syntax-table syntax-table ((byte-code "rq\210\302	!\210)\302\207" [#1# #2# set-syntax-table] 2)) set-syntax-table -1 completion-in-region] 4 (#$ . 12639) nil])
#@275 Expand a mail abbrev before point, then move vertically down ARG lines.
This only expands an abbrev (if one is present) if called with
point at the end of a line, or on whitespace before the end of a line.

In terms of line motion, this behaves like `next-line', which see.
(defalias 'mail-abbrev-next-line #[(&optional arg) "\302\303!\203	\304 \210\305\211	!\207" [this-command arg looking-at "[ 	]*\n" expand-abbrev next-line] 3 (#$ . 13054) "p"])
#@272 Expand a mail abbrev before point, then move to the end of the buffer.
This only expands an abbrev (if one is present) if called with
point at the end of a line, or on whitespace before the end of a line.

In other respects, this behaves like `end-of-buffer', which see.
(defalias 'mail-abbrev-end-of-buffer #[(&optional arg) "\302\303!\203	\304 \210\305\211	!\207" [this-command arg looking-at "[ 	]*\n" expand-abbrev end-of-buffer] 3 (#$ . 13513) "P"])
(byte-code "\300\301\302\"\210\303\304!\207" [eval-after-load "sendmail" (progn (define-key mail-mode-map "" 'mail-abbrev-insert-alias) (define-key mail-mode-map "	" 'mail-abbrev-complete-alias)) provide mailabbrev] 3)

MMCT - 2023