%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/mail/ |
Current File : //usr/local/share/emacs/27.2/lisp/mail/rmailedit.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; 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\305\306\307\310\311\312\313& \207" [require rmail custom-declare-variable rmail-edit-mode-hook nil "List of functions to call when editing an RMAIL message." :type hook :version "21.1" :group rmail-edit] 10) (defvar rmail-edit-map (byte-code "\302 \303 \"\210\304\305\306#\210\304\307\310#\210)\207" [map text-mode-map make-sparse-keymap set-keymap-parent define-key "" rmail-cease-edit "" rmail-abort-edit] 4)) #@369 Major mode for editing the contents of an Rmail message. The editing commands are the same as in Text mode, together with two commands to return to regular Rmail: * \[rmail-abort-edit] cancels any changes and returns to Rmail * \[rmail-cease-edit] makes them permanent. This function runs the hooks `text-mode-hook' and `rmail-edit-mode-hook'. \{rmail-edit-map} (defalias 'rmail-edit-mode #[nil "\306 \203 rq\210\307 \210)\310\311\302!\210\312\313 \210)\314!\210\315\316\317\320!\203/ \321\320!\2024 \321\322!\311\323!\210\312\324\325\326\310\312$\210\327\330!)\207" [rmail-summary-buffer rmail-buffer-swapped delay-mode-hooks rmail-edit-map major-mode mode-name rmail-summary-exists rmail-summary-disable nil make-local-variable t text-mode use-local-map rmail-edit-mode "RMAIL Edit" boundp mode-line-modified default-value mode-line-format auto-save-include-big-deletions add-hook write-region-annotate-functions rmail-write-region-annotate run-mode-hooks rmail-edit-mode-hook] 5 (#$ . 868)]) (put 'rmail-edit-mode 'mode-class 'special) #@71 Non-nil means the message being edited originally had pruned headers. (defvar rmail-old-pruned nil (#$ . 1932)) (put 'rmail-old-pruned 'permanent-local t) #@59 Holds the headers of this message before editing started. (defvar rmail-old-headers nil (#$ . 2093)) (put 'rmail-old-headers 'permanent-local t) #@36 Edit the contents of this message. (defalias 'rmail-edit-current-message #[nil "\306U\203\n \307\310!\210\311 \210\312\301!\210\313 \314 \210\312\315!\210\n\205r \316=\205r \317`\320\"\2043 \317e\320\"\205r \317e\320\"\211\205q \f\211\306H)@\321\232?\205q \322\323 \210\324(\f\211\325H)\306H\f\211\326H)\327H#\210)eb\210\f\211\330H)\306H\306H) \312\331!\210\214~\210ed{)\312\332!\210\333\322!\334\211)*\335 \210\336\337!\340=\203\247 \336\341!\342=\203\247 \343\344!\207\343\345\346\347!\"\207" [rmail-total-messages rmail-old-pruned rmail-enable-mime rmail-mime-feature entity inhibit-read-only 0 error "No messages in this buffer" rmail-modify-format make-local-variable rmail-msg-is-pruned rmail-edit-mode rmail-old-mime-state rmailmm get-text-property rmail-mime-entity "text/plain" t erase-buffer insert-buffer-substring 4 6 1 3 rmail-old-text rmail-old-headers rmail-edit-headers-alist nil force-mode-line-update key-binding "" rmail-cease-edit "" rmail-abort-edit message "Editing: Type C-c C-c to return to Rmail, C-c C-] to abort" "%s" substitute-command-keys "Editing: Type \\[rmail-cease-edit] to return to Rmail, \\[rmail-abort-edit] to abort" rmail-view-buffer buffer-read-only buffer-undo-list] 6 (#$ . 2244) nil]) #@54 Finish editing message; switch back to Rmail proper. (defalias 'rmail-cease-edit #[nil "\306 \203 rq\210\307 \210)~\210eb\210\310\311\312\313#\204 \314\315!\210eb\210 \204) \n\204, \316y\210\317=\2046 \f\203: \320\202; \321\312@\322@\312\313#\203T \323 \210\324c\210\312y\210\202? *A\n B\312\211\211\211\211\211CDEFGHIJKL\325edI#I\326 \210\312M\327 \210\330 \210\331\332!\203\227 \333\332!\210N\313O\334 \210)LGdeZU\203\261 Led{\230\204\275\312Leb\210\310\311!\210\335 D\214eD}\210\312P\336I!Q\337\340Q\341\"\206\345 \342Q\343\"\203\343 \344\202\345 Q!R\312\211ST\312\211UV\345\346!\204g\312\347W!\350W!XYZr[q\210\214YX}\210eb\210\310\311!CeC}\210eb\210\322\351C\313#\2037\312y\210\352\224`{Z*Z\203f\212Db\210\353u\210Zc\210\354Z\352\355G#\\\356\\]\"\204e\\ZB]B]*+eb\210\322^\312\357#\203\205\316\224T\316\225U\360\361\316!!S\202\212\345\346!VV\204\272S\204\241\353u\210\362R\363\261\210\202\272\342\336S!Q\"\204\272Ub\210TU|\210Rc\210.\364\313!H\365 \210\347W!\350W!}\210eb\210\310\311!C\214eC}\210\345\366!G\367 FI\203\371\342\336I!\343\"\204\371I\202\373\370 E)G\203G\227GCb\210\313p\371`\312\"\371`\313\"_`abJ\2034\372[Dr[q\210d)#\210\202Dr[q\210\373DdEa$\210)\374\375]H\"!\210J\204\221G\376\230\203c\377`_\"\210\202\221G\201e \230\203}F\203}\201f `_\"\210\202\221G\201g =\203\221F\203\221\314\201h !\210_b\210\201i \210_d|\210,\201j c\313\"\210\306 \203\275Wdrq\210\201k d!\210*\201l \210\201m K\203\316\316\202\317\352!\210J\203\336\201n \312J\"\210.\n\201o \201p !\207" [rmail-summary-buffer rmail-old-mime-state rmail-old-pruned rmail-mbox-format rmail-mime-decoded case-fold-search rmail-summary-exists rmail-summary-enable search-forward "\n\n" nil t error "There must be a blank line at the end of the headers" 1 mboxo "^From " "^>*From " re-search-forward beginning-of-line ">" select-safe-coding-system force-mode-line-update kill-all-local-variables rmail-mode-1 boundp tool-bar-map make-local-variable rmail-variables point-marker coding-system-base symbol-name coding-system-get :mime-charset coding-system-equal undecided us-ascii mail-fetch-field "Content-Type" rmail-msgbeg rmail-msgend "^content-type:" 0 -1 substring "content-type" assoc move coding-system-from-name match-string "Content-type: text/plain; charset=" "\n" rmail-edit-headers-alist rmail-swap-buffers-maybe "content-transfer-encoding" rmail-is-text-p rmail-get-coding-system copy-marker insert-buffer-substring encode-coding-region rmail-edit-update-headers rmail-edit-diff-headers "quoted-printable" mail-quote-printable-region fromline rmail-old-text buffer-file-coding-system limit headers-end coding-system is-text-message character-coding new-headers edited-coding mime-state pruned old rmail-buffer-swapped rmail-tool-bar-map buffer-undo-list buffer-read-only new-coding mime-charset old-coding mime-beg mime-end content-type rmail-current-message msgend msgbeg old-content-type rmail-view-buffer header rmail-old-headers rmail-mime-charset-pattern end start data-buffer inhibit-read-only rmail-edited-attr-index msgnum "base64" base64-encode-region uuencode "uuencoded messages are not supported" rmail-ensure-blank-line rmail-set-attribute rmail-summary-update-line rmail-show-message rmail-toggle-header rmail-mime run-hooks rmail-mode-hook] 11 (#$ . 3500) nil]) #@59 Abort edit of current message; restore original contents. (defalias 'rmail-abort-edit #[nil "~\210ed|\210c\210\301 \210\302 \207" [rmail-old-text rmail-cease-edit rmail-highlight-headers] 2 (#$ . 6926) nil]) #@487 Return an alist of the headers of the message in the current buffer. Each element has the form (HEADER-NAME . ENTIRE-STRING). ENTIRE-STRING includes the name of the header field (which is HEADER-NAME) and has a final newline. If part of the text is not valid as a header field, HEADER-NAME is an integer and we use consecutive integers. If WIDEN is non-nil, operate on the entire buffer. If MARKERS is non-nil, the value looks like (HEADER-NAME ENTIRE-STRING BEG-MARKER END-MARKER). (defalias 'rmail-edit-headers-alist #[(&optional widen markers) "\306\307\212\214\n\203\f ~\210eb\210\310\311!\210e`S}\210eb\210m\204g `\306\211\312\313!\2032 \314\307!\2027 T\307y\210\312\315!\203F \307y\210\202: \316 `\"\203] \317 !\320 E B\202c \fB B+\202 * \237*\207" [no-good-header-count header-alist widen header name start nil 1 search-forward "\n\n" looking-at "[ ]*\\([^:\n ]\\(\\|[^:\n]*[^:\n ]\\)\\)[ ]*:" match-string-no-properties "[ ]" buffer-substring-no-properties copy-marker point-marker markers] 3 (#$ . 7142)]) #@581 Compare OLD-HEADERS and NEW-HEADERS and return field differences. The value is a list of three lists, (INSERTED DELETED CHANGED). INSERTED's elements describe inserted header fields and each looks like (AFTER-WHAT INSERT-WHAT) INSERT-WHAT is the header field to insert (a member of NEW-HEADERS). AFTER-WHAT is the field to insert it after (a member of NEW-HEADERS) or else nil to insert it at the beginning. DELETED's elements are elements of OLD-HEADERS. CHANGED's elements have the form (OLD . NEW) where OLD is an element of OLD-HEADERS and NEW is an element of NEW-HEADERS. (defalias 'rmail-edit-diff-headers #[(old-headers new-headers) "\306!\307\211\211 \307\n\211\203O @\n\310\n@\"\211\f\204- \n\nB\202E \nA\fA\232\204? \n\fB B\311\f\")A\211\204 *\307\f\211\203w @\211\f\f\235A@\211 \fDB)A\211\204Z *\237\n\237 \237E,\207" [new-headers changed deleted inserted reverse-new old-headers reverse nil assoc remq old --dolist-tail-- new prev] 5 (#$ . 8190)]) #@128 Edit the mail headers in the buffer based on HEADER-DIFF. HEADER-DIFF should be a return value from `rmail-edit-diff-headers'. (defalias 'rmail-edit-update-headers #[(header-diff) "\306\307\310\"\311 8\307\211\203N @\312\n@A\"\313\311\f8!\211b\210\314\nAA!\210\fA@ |\210\315\f\"\nAA\316 \317`\nAAGZ!\316 FB*A\211\204 * A@\307\211\203u @\312A\"\211A@\311\f8|\210)A\211\204Z * @\307\211\203\300 @\211A@@\312A\"\211\203\237 \311\f8\202\240 eb\210Ac\210A\317`AGZ!\316 EB+A\211\204\200 *\307\211\205\345 @\211A@\307\211\223\210\3118\307\211\223\210A\211\204\312 \307+\207" [buf-headers header-diff chg --dolist-tail-- match end rmail-edit-headers-alist nil t 2 assoc marker-position insert-before-markers delq point-marker copy-marker del ins new after hdr] 6 (#$ . 9205)]) (provide 'rmailedit)