403Webshell
Server IP : 217.160.0.212  /  Your IP : 216.73.216.141
Web Server : Apache
System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 CEST 2026 aarch64
User : sws1073854427 ( 1073854427)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/share/emacs/28.2/lisp/mail/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/28.2/lisp/mail/supercite.elc
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(byte-code "\300\301!\210\302\303\304\305\306\307\310\311\310\312&	\210\302\313\304\314\306\307\310\303&\210\302\315\304\316\306\307\310\303&\210\302\317\304\320\306\307\310\303&\210\302\321\304\322\306\307\310\303&\210\323\324\325\326\327DD\330\331\332\310\303&\210\323\333\325\326\334DD\335\331\336\310\303&\210\323\337\325\326\340DD\341\331\342\310\317&\210\323\343\325\326\344DD\345\331\342\310\317&\210\323\346\325\326\347DD\350\331\342\310\317&\210\323\351\325\326\352DD\353\331\354\310\317&\210\323\355\325\326\356DD\357\331\354\310\317&\210\323\360\325\326\361DD\362\331\354\310\317&\210\323\363\325\326\364DD\365\331\354\310\317&\210\323\366\325\326\367DD\370\331\354\310\317&\210\323\371\325\326\372DD\373\331\332\310\317&\210\323\374\325\326\375DD\376\331\377\310\313&\210\201@\374\201A\201B#\210\323\201C\325\326\201DDD\201E\331\201F\310\313&\210\201@\201C\201A\201B#\210\323\201G\325\326\201HDD\201I\331\201J\310\313&\210\201@\201G\201A\201B#\210\323\201K\325\326\201LDD\201M\331\201N\310\313&\210\201@\201K\201A\201B#\210\323\201O\325\326\201PDD\201Q\331\201R\310\313&\210\201@\201O\201A\201B#\210\323\201S\325\326\201TDD\201U\331\201V\310\313&\210\201@\201S\201A\201B#\210\323\201W\325\326\201XDD\201Y\331\201Z\310\317&\210\323\201[\325\326\201\\DD\201]\331\332\310\315&\210\323\201^\325\326\201_DD\201`\331\342\310\315&\210\323\201a\325\326\201bDD\201c\331\342\310\315&\210\323\201d\325\326\201eDD\201f\331\332\310\315\310\317&	\210\323\201g\325\326\201hDD\201i\331\332\310\315&\210\323\201j\325\326\201kDD\201l\331\201m\310\321&\210\323\201n\325\326\201oDD\201p\331\332\310\303&\210\323\201q\325\326\201rDD\201s\331\332\310\303&\210\323\201t\325\326\201uDD\201v\331\201m\310\321&\210\201w\201t\201x\201y#\210\323\201z\325\326\201{DD\201|\331\201m\310\321&\210\323\201}\325\326\201~DD\201\331\201m\310\321&\210\323\201\200\325\326\201\201DD\201\202\331\332\310\315&\210\323\201\203\325\326\201\204DD\201\205\331\342\310\315&\210\323\201\206\325\326\201\207DD\201\210\331\201\211\310\315&\210\323\201\212\325\326\201\213DD\201\214\331\332\310\303&\210\323\201\215\325\326\201\216DD\201\217\331\201\220\310\303&\210\323\201\221\325\326\201\222DD\201\223\331\201\224\310\303&\210\323\201\225\325\326\201\226DD\201\227\331\201\230\310\315&\210\323\201\231\325\326\201\232DD\201\233\331\201\234\310\315&\210\201@\201\231\201A\201B#\210\323\201\235\325\326\201\236DD\201\237\331\201m\310\315\310\321&	\210\323\201\240\325\326\201\241DD\201\242\331\201m\310\315\310\321&	\210\323\201\243\325\326\201\244DD\201\245\331\201m\310\317\310\321&	\210\323\201\246\325\326\201\247DD\201\250\331\201m\310\317\310\321&	\210\323\201\251\325\326\201\252DD\201\253\331\201m\310\317\310\321&	\210\323\201\254\325\326\201\255DD\201\256\331\201\257\310\303&\210\323\201\260\325\326\201\261DD\201\262\331\342\310\303&\210\323\201\263\325\326\201\264DD\201\265\331\201\266\310\303&\210\201@\201\263\201A\201B#\210\323\201\267\325\326\201\270DD\201\271\331\201\272\310\315&\210\323\201\273\325\326\201\274DD\201\275\331\332\310\315&\210\323\201\276\325\326\201\277DD\201\300\331\342\310\303&\207" [require regi custom-declare-group supercite nil "Supercite package." :prefix "sc-" :group mail news supercite-frames "Supercite (regi) frames." supercite-attr "Supercite attributions." supercite-cite "Supercite citings." supercite-hooks "Hooking into supercite." custom-declare-variable sc-auto-fill-region-p funcall function #[0 "\300\207" [t] 1 #1=""] "If non-nil, automatically fill each paragraph after it has been cited." :type boolean sc-blank-lines-after-headers #[0 "\300\207" [1] 1 #1#] "Number of blank lines to leave after mail headers have been nuked.\nSet to nil, to use whatever blank lines happen to occur naturally." (choice (const :tag "leave" nil) integer) sc-citation-leader #[0 "\300\207" ["    "] 1 #1#] "String comprising first part of a citation." string sc-citation-delimiter #[0 "\300\207" [">"] 1 #1#] "String comprising third part of a citation.\nThis string is used in both nested and non-nested citations." sc-citation-separator #[0 "\300\207" [" "] 1 #1#] "String comprising fourth and last part of a citation." sc-citation-leader-regexp #[0 "\300\207" ["[ 	]*"] 1 #1#] "Regexp describing citation leader for a cited line.\nThis should NOT have a leading `^' character." regexp sc-citation-root-regexp #[0 "\300\207" ["[-._[:alnum:]]*"] 1 #1#] "Regexp describing variable root part of a citation for a cited line.\nThis should NOT have a leading `^' character.  See also\n`sc-citation-nonnested-root-regexp'." sc-citation-nonnested-root-regexp #[0 "\300\207" ["[-._[:alnum:]]+"] 1 #1#] "Regexp describing the variable root part of a nested citation.\nThis should NOT have a leading `^' character.  This variable is\nrelated to `sc-citation-root-regexp' but whereas that variable\ndescribes both nested and non-nested citation roots, this variable\ndescribes only nested citation roots." sc-citation-delimiter-regexp #[0 "\300\207" ["[>]+"] 1 #1#] "Regexp describing citation delimiter for a cited line.\nThis should NOT have a leading `^' character." sc-citation-separator-regexp #[0 "\300\207" ["[ 	]*"] 1 #1#] "Regexp describing citation separator for a cited line.\nThis should NOT have a leading `^' character." sc-cite-blank-lines-p #[0 "\300\207" [nil] 1 #1#] "If non-nil, put a citation on blank lines." sc-cite-frame-alist #[0 "\300\207" [nil] 1 #1#] "Alist for frame selection during citing.\nEach element of this list has the following form:\n   (INFOKEY ((REGEXP . FRAME)\n             (REGEXP . FRAME)\n             (...)))\n\nWhere INFOKEY is a key for `sc-mail-field', REGEXP is a regular\nexpression to match against the INFOKEY's value.  FRAME is\na citation frame, or a symbol that represents the name of\na variable whose value is a citation frame." (repeat (list symbol (repeat (cons regexp (choice (repeat (repeat sexp)) symbol))))) put risky-local-variable t sc-uncite-frame-alist #[0 "\300\207" [nil] 1 #1#] "Alist for frame selection during unciting.\nSee the variable `sc-cite-frame-alist' for details." (repeat (list symbol (repeat (cons regexp (choice (repeat (repeat sexp)) symbol))))) sc-recite-frame-alist #[0 "\300\207" [nil] 1 #1#] "Alist for frame selection during reciting.\nSee the variable `sc-cite-frame-alist' for details." (repeat (list symbol (repeat (cons regexp (choice (repeat (repeat sexp)) symbol))))) sc-default-cite-frame #[0 "\300\207" [((begin (progn (sc-fill-if-different) (setq sc-tmp-nested-regexp (sc-cite-regexp #1#) sc-tmp-nonnested-regexp (sc-cite-regexp) sc-tmp-dumb-regexp (concat "\\(" (sc-cite-regexp #1#) "\\)" (sc-cite-regexp sc-citation-nonnested-root-regexp))))) ("^[ 	]*$" (if sc-cite-blank-lines-p (if sc-nested-citation-p (sc-add-citation-level) (sc-cite-line)) (sc-fill-if-different #1#))) (sc-reference-tag-string (if (string= sc-reference-tag-string #1#) (list 'continue) nil)) (sc-tmp-dumb-regexp (sc-cite-coerce-dumb-citer)) (sc-tmp-nested-regexp (sc-add-citation-level)) (sc-tmp-nonnested-regexp (sc-cite-coerce-cited-line)) (sc-nested-citation-p (sc-add-citation-level)) (t (sc-cite-line)) (end (sc-fill-if-different #1#)))] 1 #1#] "Default REGI frame for citing a region." (repeat (repeat sexp)) sc-default-uncite-frame #[0 "\300\207" [(("^[ 	]*$" nil) ((sc-cite-regexp) (sc-uncite-line)))] 1 #1#] "Default REGI frame for unciting a region." (repeat (repeat sexp)) sc-default-recite-frame #[0 "\300\207" [((begin (sc-fill-if-different)) ("^[ 	]*$" nil) ((sc-cite-regexp) (sc-recite-line (sc-cite-regexp))) (t (sc-cite-line)) (end (sc-fill-if-different #1#)))] 1 #1#] "Default REGI frame for reciting a region." (repeat (repeat sexp)) sc-cite-region-limit #[0 "\300\207" [t] 1 #1#] "This variable controls automatic citation of yanked text.\nValid values are:\n\nnon-nil   -- cite the entire region, regardless of its size\nnil       -- do not cite the region at all\n<integer> -- a number indicating the threshold for citation.  When\n	     the number of lines in the region is greater than this\n	     value, a warning message will be printed and the region\n	     will not be cited.  Lines in region are counted with\n	     `count-lines'.\n\nThe gathering of attribution information is not affected by the value\nof this variable.  The number of lines in the region is calculated\n*after* all mail headers are removed.  This variable is only consulted\nduring the initial citing via `sc-cite-original'." (choice (const :tag "do not cite" nil) (integer :tag "citation threshold") (other :tag "always cite" t)) sc-confirm-always-p #[0 "\300\207" [t] 1 #1#] "If non-nil, always confirm attribution string before citing text body." sc-default-attribution #[0 "\300\207" ["Anon"] 1 #1#] "String used when author's attribution cannot be determined." sc-default-author-name #[0 "\300\207" ["Anonymous"] 1 #1#] "String used when author's name cannot be determined." sc-downcase-p #[0 "\300\207" [nil] 1 #1#] "Non-nil means downcase the attribution and citation strings." sc-electric-circular-p #[0 "\300\207" [t] 1 #1#] "If non-nil, treat electric references as circular." sc-electric-mode-hook #[0 "\300\207" [nil] 1 #1#] "Hook for `sc-electric-mode' electric references mode." hook sc-electric-references-p #[0 "\300\207" [nil] 1 #1#] "Use electric references if non-nil." sc-fixup-whitespace-p #[0 "\300\207" [nil] 1 #1#] "If non-nil, delete all leading white space before citing." sc-load-hook #[0 "\300\207" [nil] 1 #1#] "Hook which gets run once after Supercite loads." make-obsolete-variable "use `with-eval-after-load' instead." "26.1" sc-pre-hook #[0 "\300\207" [nil] 1 #1#] "Hook which gets run before each invocation of `sc-cite-original'." sc-post-hook #[0 "\300\207" [nil] 1 #1#] "Hook which gets run after each invocation of `sc-cite-original'." sc-mail-warn-if-non-rfc822-p #[0 "\300\207" [t] 1 #1#] "Warn if mail headers don't conform to RFC 822 (or later)." sc-mumble #[0 "\300\207" [#1#] 1 #1#] "Value returned by `sc-mail-field' if field isn't in mail headers." sc-name-filter-alist #[0 "\300\207" [(("^\\(Mr\\|Mrs\\|Ms\\|Dr\\)[.]?$" . 0) ("^\\(Jr\\|Sr\\)[.]?$" . last) ("^ASTS$" . 0) ("^[I]+$" . last))] 1 #1#] "Name list components which are filtered out as noise.\nThis variable contains an association list where each element is of\nthe form:  (REGEXP . POSITION).\n\nREGEXP is a regular expression which matches the name list component.\nMatch is performed using `string-match'.  POSITION is the position in\nthe name list which can match the regular expression, starting at zero\nfor the first element.  Use `last' to match the last element in the\nlist and `any' to match all elements." (repeat (cons regexp (choice (const last) (const any) (integer :tag "position")))) sc-nested-citation-p #[0 "\300\207" [nil] 1 #1#] "Controls whether to use nested or non-nested citation style.\nNon-nil uses nested citations, nil uses non-nested citations." sc-nuke-mail-headers #[0 "\300\207" [all] 1 #1#] "Controls mail header nuking.\nUsed in conjunction with `sc-nuke-mail-header-list'.  Valid values are:\n\n`all'       -- nuke all mail headers\n`none'      -- don't nuke any mail headers\n`specified' -- nuke headers specified in `sc-nuke-mail-header-list'\n`keep'      -- keep headers specified in `sc-nuke-mail-header-list'" (choice (const all) (const none) (const specified) (const keep)) sc-nuke-mail-header-list #[0 "\300\207" [nil] 1 #1#] "List of mail header regexps to remove or keep in body of reply.\nThis list contains regular expressions describing the mail headers to\nkeep or nuke, depending on the value of `sc-nuke-mail-headers'." (repeat regexp) sc-preferred-attribution-list #[0 "\300\207" [("sc-lastchoice" "x-attribution" "firstname" "initials" "lastname")] 1 #1#] "Specifies what to use as the attribution string.\nSupercite creates a list of possible attributions when it scans the\nmail headers from the original message.  Each attribution choice is\nassociated with a key in an attribution alist.  Supercite tries to\npick a \"preferred\" attribution by matching the attribution alist\nkeys against the elements in `sc-preferred-attribution-list' in order.\nThe first non-empty string value found is used as the preferred\nattribution.\n\nNote that Supercite now honors the X-Attribution: mail field.  If\npresent in the original message, the value of this field should always\nbe used to select the most preferred attribution since it reflects how\nthe original author would like to be distinguished.  It should be\nconsidered bad taste to put any attribution preference key before\n\"x-attribution\" in this list, except perhaps for \"sc-lastchoice\"\n(see below).\n\nSupercite remembers the last attribution used when reciting an already\ncited paragraph.  This attribution will always be saved with the\n\"sc-lastchoice\" key, which can be used in this list.  Note that the\nlast choice is always reset after every call of `sc-cite-original'.\n\nBarring error conditions, the following preferences are always present\nin the attribution alist:\n\n\"emailname\"    -- email terminus name\n\"initials\"     -- initials of author\n\"firstname\"    -- first name of author\n\"lastname\"     -- last name of author\n\"middlename-1\" -- first middle name of author\n\"middlename-2\" -- second middle name of author\n...\n\nMiddle name indexes can be any positive integer greater than 0,\nalthough it is unlikely that many authors will supply more than one\nmiddle name, if that many.  The string of all middle names is\nassociated with the key \"middlenames\"." (repeat string) sc-attrib-selection-list #[0 "\300\207" [nil] 1 #1#] "An alist for selecting preferred attribution based on mail headers.\nEach element of this list has the following form:\n\n   (INFOKEY ((REGEXP . ATTRIBUTION)\n             (REGEXP . ATTRIBUTION)\n             (...)))\n\nWhere INFOKEY is a key for `sc-mail-field', REGEXP is a regular\nexpression to match against the INFOKEY's value.  ATTRIBUTION can be a\nstring or a list.  If it's a string, then it is the attribution that is\nselected by `sc-select-attribution'.  If it is a list, it is `eval'd\nand the return value must be a string, which is used as the selected\nattribution.  Note that the variable `sc-preferred-attribution-list'\nmust contain an element of the string \"sc-consult\" for this variable\nto be consulted during attribution selection." (repeat (list string (repeat (cons regexp (choice (sexp :tag "List to eval") string))))) sc-attribs-preselect-hook #[0 "\300\207" [nil] 1 #1#] "Hook to run before selecting an attribution." sc-attribs-postselect-hook #[0 "\300\207" [nil] 1 #1#] "Hook to run after selecting an attribution, but before confirmation." sc-pre-cite-hook #[0 "\300\207" [nil] 1 #1#] "Hook to run before citing a region of text." sc-pre-uncite-hook #[0 "\300\207" [nil] 1 #1#] "Hook to run before unciting a region of text." sc-pre-recite-hook #[0 "\300\207" [nil] 1 #1#] "Hook to run before reciting a region of text." sc-preferred-header-style #[0 "\300\207" [4] 1 #1#] "Index into `sc-rewrite-header-list' specifying preferred header style.\nIndex zero accesses the first function in the list." integer sc-reference-tag-string #[0 "\300\207" [">>>>> "] 1 #1#] "String used at the beginning of built-in reference headers." sc-rewrite-header-list #[0 "\300\207" [((sc-no-header) (sc-header-on-said) (sc-header-inarticle-writes) (sc-header-regarding-adds) (sc-header-attributed-writes) (sc-header-author-writes) (sc-header-verbose) (sc-no-blank-line-or-header))] 1 #1#] "List of reference header rewrite functions.\nThe variable `sc-preferred-header-style' controls which function in\nthis list is chosen for automatic reference header insertions.\nElectric reference mode will cycle through this list of functions." (repeat sexp) sc-titlecue-regexp #[0 "\300\207" ["\\s +-+\\s +"] 1 #1#] "Regular expression describing the separator between names and titles.\nSet to nil to treat entire field as a name." (choice (const :tag "entire field as name" nil) regexp) sc-use-only-preference-p #[0 "\300\207" [nil] 1 #1#] "Controls what happens when the preferred attribution cannot be found.\nIf non-nil, then `sc-default-attribution' will be used.  If nil, then\nsome secondary scheme will be employed to find a suitable attribution\nstring." sc-mode-map-prefix #[0 "\300\207" [""] 1 #1#] "Key binding to install Supercite keymap."] 10)
#@61 Alist of mail header information gleaned from reply buffer.
(defvar sc-mail-info nil (#$ . 16626))
(make-variable-buffer-local 'sc-mail-info)
#@44 Alist of attributions for use when citing.
(defvar sc-attributions nil (#$ . 16774))
(make-variable-buffer-local 'sc-attributions)
#@47 Temporary regexp describing nested citations.
(defvar sc-tmp-nested-regexp nil (#$ . 16911))
#@51 Temporary regexp describing non-nested citations.
(defvar sc-tmp-nonnested-regexp nil (#$ . 17010))
#@72 Temp regexp describing non-nested citation cited with a nesting citer.
(defvar sc-tmp-dumb-regexp nil (#$ . 17116))
#@58 Keymap for sub-keymap of setting and toggling functions.
(defvar sc-T-keymap (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\210\301\330\331#\210\301\332\333#\210\301\334\335#\210\301\336\337#\210\301\340\317#\210\207" [make-sparse-keymap define-key "a" sc-S-preferred-attribution-list "b" sc-T-mail-nuke-blank-lines "c" sc-T-confirm-always "d" sc-T-downcase "e" sc-T-electric-references "f" sc-T-auto-fill-region "h" sc-T-describe "l" sc-S-cite-region-limit "n" sc-S-mail-nuke-mail-headers "N" sc-S-mail-header-nuke-list "o" sc-T-electric-circular "p" sc-S-preferred-header-style "s" sc-T-nested-citation "u" sc-T-use-only-preferences "w" sc-T-fixup-whitespace "?"] 5) (#$ . 17238))
#@34 Keymap for Supercite quasi-mode.
(defvar sc-mode-map (byte-code "\301 \302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\312#\210\302\313\314#\210\302\315\316#\210\302\317\320#\210\302\321\322#\210\302\323\324#\210\302\325\326#\210\302\327#\210\302\330\312#\210\207" [sc-T-keymap make-sparse-keymap define-key "c" sc-cite-region "f" sc-mail-field-query "g" sc-mail-process-headers "h" sc-describe "i" sc-insert-citation "o" sc-open-line "r" sc-recite-region "" sc-raw-mode-toggle "u" sc-uncite-region "w" sc-insert-reference "" "?"] 5) (#$ . 18097))
#@57 Keymap for `sc-electric-mode' electric references mode.
(defvar sc-electric-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\313#\210\301\315\316#\210\301\317\316#\210\301\320\321#\210\301\322\323#\210\301\324\323#\210\301\325\323#\210\301\326\323#\210\207" [make-sparse-keymap define-key "p" sc-eref-prev "n" sc-eref-next "s" sc-eref-setn "j" sc-eref-jump "x" sc-eref-abort "q" "
" sc-eref-exit "\n" "g" sc-eref-goto "?" describe-mode "" [f1] [help]] 5) (#$ . 18677))
#@60 Keymap for minibuffer confirmation of attribution strings.
(defvar sc-minibuffer-local-completion-map (byte-code "\301!\302\303\304#\210\302\305\306#\210\207" [minibuffer-local-completion-map copy-keymap define-key "" sc-toggle-fn " " self-insert-command] 5) (#$ . 19237))
#@60 Keymap for minibuffer confirmation of attribution strings.
(defvar sc-minibuffer-local-map (byte-code "\301!\302\303\304#\210\207" [minibuffer-local-map copy-keymap define-key "" sc-toggle-fn] 5) (#$ . 19520))
#@522 Ask a question in the minibuffer requiring a single character answer.
This function is kind of an extension of `y-or-n-p' where a single
letter is used to answer a question.  Question is formed from ALIST
which has members of the form:  (WORD . LETTER).  WORD is the long
word form, while LETTER is the letter for selecting that answer.  The
selected letter is returned, or nil if the question was not answered.
Note that WORD is a string and LETTER is a character.  All LETTERs in
the list should be unique.

(fn ALIST)
(defalias 'sc-ask #[257 "\303\304\305#\306\303\307\310#\311R\211\312;\203\207\313\211\314\315\"\210\316 \262\n\312*\2037\314\317\320!#\210\312\321\322\312\"\210\211\312\203A\227\262\323\"\211\262\203\\\314\317@#\210\211A\262\266\202\324\325!\203h\325!\204\202\314\317\320!#\210\326 \210\327 \210=\203\202\330P\262\266\202\207" [inhibit-quit cursor-in-echo-area quit-flag mapconcat #[257 "\211@\207" [] 2 "\n\n(fn ELT)"] ", " "? (" #[257 "\300A!\207" [char-to-string] 3 "\n\n(fn ELT)"] "/" ") " nil t message "%s" read-event "%s%s" single-key-description signal quit rassq fboundp button-release-event-p ding discard-input "Try again.  "] 11 (#$ . 19740)])
#@76 Find a match in the info alist that matches a regexp in ALIST.

(fn ALIST)
(defalias 'sc-scan-info-alist #[257 "\301\302\203C@\211@\303!A@\211\2039\211@\211@A\304\"\2032\211\262\302\262\302\262\n\266\202A\266\204\202A\262\266\202)\207" [sc-mumble "" nil sc-mail-field string-match] 13 (#$ . 20967)])
#@25 Start of header fields.
(defvar sc-mail-headers-start nil (#$ . 21300))
#@23 End of header fields.
(defvar sc-mail-headers-end nil (#$ . 21378))
#@50 For minibuffer completion on mail field queries.
(defvar sc-mail-field-history nil (#$ . 21452))
#@56 For minibuffer completion on mail field modifications.
(defvar sc-mail-field-modification-history nil (#$ . 21555))
#@50 Regi frame for glomming mail header information.
(defvar sc-mail-glom-frame '((begin (setq sc-mail-headers-start (point))) ("^From " (sc-mail-check-from) nil nil) ("^x-attribution:[ 	]+.*$" (sc-mail-fetch-field t) nil t) ("^\\S +:.*$" (sc-mail-fetch-field) nil t) ("^$" (list 'abort '(step . 0))) ("^[ 	]+" (sc-mail-append-field)) (sc-mail-warn-if-non-rfc822-p (sc-mail-error-in-mail-field)) (end (setq sc-mail-headers-end (point)))) (#$ . 21677))
(put 'sc-mail-glom-frame 'risky-local-variable t)
#@105 Deal with a "From " line in the header.
Such a line should only occur at the very start of the headers.
(defalias 'sc-mail-check-from #[0 "\205
`	U?\205
\302 \207" [sc-mail-warn-if-non-rfc822-p sc-mail-headers-start sc-mail-error-in-mail-field] 2 (#$ . 22182)])
#@166 Insert a key and value into `sc-mail-info' alist.
If optional ATTRIBS-P is non-nil, the key/value pair is placed in
`sc-attributions' too.

(fn &optional ATTRIBS-P)
(defalias 'sc-mail-fetch-field #[256 "\303\304\"\203!\305\306\"\227\305\307\"B\211	B\203\211\nB\266\310\207" [curline sc-mail-info sc-attributions string-match "^\\(\\S *\\)\\s *:\\s +\\(.*\\)$" match-string-no-properties 1 2 nil] 6 (#$ . 22454)])
#@69 Append a continuation line onto the last fetched mail field's info.
(defalias 'sc-mail-append-field #[0 "@\211\203\302\303	\"\203\211A\304\305\306	\"Q\241\210\210\307\207" [sc-mail-info curline string-match "^\\s *\\(.*\\)$" " " match-string-no-properties 1 nil] 7 (#$ . 22885)])
#@62 Issue warning that mail headers don't conform to email RFCs.
(defalias 'sc-mail-error-in-mail-field #[0 "G\301^\211GW\203\302\202\303\304\305\306O#\266\307 \210\310\311!\210\312\207" [curline 10 "..." "" message "Mail header \"%s%s\" doesn't conform to RFC 822 (or later). skipping..." 0 beep sit-for 2 nil] 7 (#$ . 23177)])
#@36 True if the last header was nuked.
(defvar sc-mail-last-header-nuked-p nil (#$ . 23518))
#@36 Nuke the current mail header line.
(defalias 'sc-mail-nuke-line #[0 "\300 \300\301!|\210\302\207" [line-beginning-position 2 ((step . -1))] 3 (#$ . 23613)])
#@59 Delete current-line and set up for possible continuation.
(defalias 'sc-mail-nuke-header-line #[0 "\301\302 \207" [sc-mail-last-header-nuked-p t sc-mail-nuke-line] 1 (#$ . 23776)])
#@65 Delete a continuation line if the last header line was deleted.
(defalias 'sc-mail-nuke-continuation-line #[0 "\205\301 \207" [sc-mail-last-header-nuked-p sc-mail-nuke-line] 1 (#$ . 23964)])
#@136 Leave some blank lines after original mail headers are nuked.
The number of lines left is specified by `sc-blank-lines-after-headers'.
(defalias 'sc-mail-cleanup-blank-lines #[0 "\203'\214~\210\301\302x\210\303y\210\304 \210\305 \210\306\307!\203!\310 \310\311!|\210\312\313\"\210)\302\207" [sc-blank-lines-after-headers " 	\n" nil 1 delete-blank-lines beginning-of-line looking-at "[ 	]*$" line-beginning-position 2 insert-char 10] 3 (#$ . 24165)])
#@46 Build the regiframe for nuking mail headers.
(defalias 'sc-mail-build-nuke-frame #[0 "\302\211\211\303\267\202$\304\262\202)\305\262\306\262\202)\307\262\310\262\202)\202)\311\312\"\210\313\2054\314	\302\315$\205<\316DC?\205B\317\320\321\205N\322	DC&\207" [sc-nuke-mail-headers sc-nuke-mail-header-list nil #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (all 9 specified 15 keep 24 none 33)) (progn (forward-line -1) (sc-mail-nuke-line)) (sc-mail-nuke-header-line) (setq sc-mail-last-header-nuked-p nil) (setq sc-mail-last-header-nuked-p nil) (sc-mail-nuke-header-line) error "Invalid value for sc-nuke-mail-headers: %s" append regi-mapcar t "^\\S +:.*$" (("^[ 	]+" (sc-mail-nuke-continuation-line))) ((begin (setq sc-mail-last-header-zapped-p nil))) ((end (sc-mail-cleanup-blank-lines))) every] 11 (#$ . 24625)])
#@213 Process original mail message's mail headers.
After processing, mail headers may be nuked.  Header information is
stored in `sc-mail-info', and any old information is lost unless an
error occurs.

(fn START END)
(defalias 'sc-mail-process-headers #[514 "\305!\305	!\306\211\307\n#\210\204\310\311!\210\211\211\207\307\312 \f#\207" [sc-mail-info sc-attributions sc-mail-glom-frame sc-mail-headers-start sc-mail-headers-end copy-alist nil regi-interpret message "No mail headers found! Restoring old information." sc-mail-build-nuke-frame] 9 (#$ . 25509) "r"])
#@183 Return the mail header field value associated with FIELD.
If there was no mail header with FIELD as its key, return the value of
`sc-mumble'.  FIELD is case insensitive.

(fn FIELD)
(defalias 'sc-mail-field #[257 "\302\303#A\206\n	\207" [sc-mail-info sc-mumble assoc-string case-fold] 5 (#$ . 26087)])
#@159 View the value of a mail field.
With `\[universal-argument]', prompts for action on mail field.
Action can be one of: View, Modify, Add, or Delete.

(fn ARG)
(defalias 'sc-mail-field-query #[257 "\302\204	\303\202\f\304!\305\205k\306\307\"@\310P\305\311=?\205#\312\305\313&\262\314\267\202j\315\316\317\"A#\207\320\317\"\"\211\207\317\"\211A	\235\204S\211A	B\211\321\322PA\301#\241\207\211\321\322P!BB\211\207\305\207" [sc-mail-info sc-mail-field-modification-history (("view" . 118) ("modify" . 109) ("add" . 97) ("delete" . 100)) 118 sc-ask nil completing-read rassq " information key: " 97 noexit sc-mail-field-history #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (118 47 100 57 109 67 97 94)) message "%s: %s" assoc delq read-string ": "] 11 (#$ . 26399) "P"])
#@50 History for confirmation of attribution strings.
(defvar sc-attribution-confirmation-history nil (#$ . 27241))
#@51 History for confirmation of attribution prefixes.
(defvar sc-citation-confirmation-history nil (#$ . 27358))
#@314 Extract the author's email terminus from email address FROM.
Match addresses of the style "name%[stuff]." when called with DELIM
of "%" and addresses of the style "[stuff]name@[stuff]" when
called with DELIM "@".  If DELIM is nil or not provided, matches
addresses of the style "name".

(fn FROM &optional DELIM)
(defalias 'sc-attribs-%@-addresses #[513 "\300\301P\302#\205\302\224\302\225\204\302\202\303ZO\207" [string-match "[-[:alnum:]_.]+" 0 1] 6 (#$ . 27474)])
#@136 Extract the author's email terminus from email address FROM.
Match addresses of the style "[stuff]![stuff]...!name[stuff]."

(fn FROM)
(defalias 'sc-attribs-!-addresses #[257 "\211G\300\301\302#\302\225\205T\211U\203\302\202\303ZO\207" [string-match "![-[:alnum:]_.]+\\([^-![:alnum:]_.]\\|$\\)" 0 1] 9 (#$ . 27958)])
#@119 Extract the author's email terminus from email address FROM.
Match addresses of the style "<name[stuff]>."

(fn FROM)
(defalias 'sc-attribs-<>-addresses #[257 "\300\301\"\205\302\303\"\207" [string-match "<\\(.*\\)>" match-string 1] 4 (#$ . 28295)])
#@127 Get the full email address path from FROM.
AUTHOR is the author's name (which is removed from the address).

(fn FROM AUTHOR)
(defalias 'sc-get-address #[514 "G\300\301\302!\303Q\304#\203.\304\225O\211\304H\305U\203-\211GSH\306U\203-\211\307GSO\207\207\300\310\304#\203;\311\304\"\207\312\207" [string-match "\\`\"?" regexp-quote "\"?\\s +" 0 60 62 1 "[-[:alnum:]!@%._]+" match-string ""] 7 (#$ . 28556)])
#@51 Get the email terminus name from FROM.

(fn FROM)
(defalias 'sc-attribs-emailname #[257 "\300\301\"\206$\300\302\"\206$\303!\206$\304!\206$\300!\206$\211\305\306O\207" [sc-attribs-%@-addresses "%" "@" sc-attribs-!-addresses sc-attribs-<>-addresses 0 10] 4 (#$ . 28981)])
#@165 Extract the specified substring of STRING from START to END.
EXTEND is the number of characters on each side to extend the
substring.

(fn STRING START END EXTEND)
(defalias 'sc-name-substring #[1028 "\205\\Z\301	#\206O\266\202\207" [sc-titlecue-regexp string-match] 12 (#$ . 29269)])
#@110 Extract the name string from FROM.
This should be the author's full name minus an optional title.

(fn FROM)
(defalias 'sc-attribs-extract-namestring #[257 "\300\301\302#\203(\303\302\211\224\302$\300\304\302#\203\"\303\302\224\302\225\305$\202#\211\262\206U\303\300\306\302#\302\225\305$\206U\303\300\304\302#\302\225\305$\206U\303\300\307\302#\305\225\302$\206U\310!\211\205\216\302GSX\203rH\311>\203rT\262\202]\211V\203\207H\312>\203\207\211S\262\202rTO\266\202\207" [string-match " *<.*>" 0 sc-name-substring "\".*\"" 1 "(.*)" "\\([-.[:alnum:]_]+\\s +\\)+<" sc-attribs-emailname (32 9) (32 9)] 7 (#$ . 29577)])
#@149 Convert NAMESTRING to a list of names.
example: (sc-attribs-chop-namestring "John Xavier Doe")
         => ("John" "Xavier" "Doe")

(fn NAMESTRING)
(defalias 'sc-attribs-chop-namestring #[257 "\300\301\"\205\302\303\"\304\305\225\306O!B\207" [string-match "\\([ 	]*\\)\\([^ 	._]+\\)\\([ 	]*\\)" match-string 2 sc-attribs-chop-namestring 3 nil] 6 (#$ . 30239)])
#@65 Extract the author's initials from the NAMELIST.

(fn NAMELIST)
(defalias 'sc-attribs-strip-initials #[257 "\300\301\302#\207" [mapconcat #[257 "\300GW\205\211\300\301O\207" [0 1] 4 "\n\n(fn NAME)"] ""] 5 (#$ . 30611)])
#@210 Guess attribution string on current line.
If attribution cannot be guessed, nil is returned.  Optional STRING if
supplied, is used instead of the line point is on in the current buffer.

(fn &optional STRING)
(defalias 'sc-guess-attribution #[256 "\304\206\n\305 \306 {\307\310\304#\206\311\304U\205e\304\225\211\262\205e\310	#\206,\312U\205e\313\304\"\262\304\225\211\262\205e\310\n#\206I\311U\205e\304\225\211\262\205e\310#\206`\311U\205e\211\207" [sc-citation-leader-regexp sc-citation-root-regexp sc-citation-delimiter-regexp sc-citation-separator-regexp 0 line-beginning-position line-end-position nil string-match -1 1 match-string] 9 (#$ . 30842)])
#@82 Filter out noise in NAMELIST according to `sc-name-filter-alist'.

(fn NAMELIST)
(defalias 'sc-attribs-filter-namelist #[257 "\211G\300C\301C\301C\302\303\304$\"\210\302\303\305#\242\"\210\211\242\207" [-1 nil mapc make-closure #[257 "\301\211\242T\240\210\304C\305\306\307\300\301%\"\210\211\242\205!\302\301\242\302\242B\240\207" [V0 V1 V2 sc-name-filter-alist t mapc make-closure #[257 "\211@A\304\302\"\205.\211\247\203\211\301\242U\204+\211\305=\203%\301\242\300SU\204+\211\306=\205.\303\307\240\207" [V0 V1 V2 V3 string-match last any nil] 6 "\n\n(fn FILTER)"]] 9 "\n\n(fn NAME)"] #[257 "\301\3008\301\242B\240\207" [V0 V1] 4 "\n\n(fn POSITION)"]] 11 (#$ . 31538)])
#@132 Extract attribution information from FROM.
This populates the `sc-attributions' with the list of possible attributions.

(fn FROM)
(defalias 'sc-attribs-chop-address #[257 "\211;\203\230\304GW\203\230\305\306!\307\310!!\311A!@\311A!@\312!\313!\314C\315\211\316\317\320\"\321#\262\321	\205B\321	\260\262\322\323	B\324B\325B\326	BF	\"\322\327	B\330B\331	B\332B\333\nB\334B\335\336\337\340!\"B\341\336\337\342!\"B\343\336\337\344!\"B\257	\n\"\211)\207\334B\nB\211\207" [sc-mumble sc-attributions sc-mail-info sc-default-author-name 0 "" sc-attribs-extract-namestring sc-attribs-filter-namelist sc-attribs-chop-namestring reverse sc-attribs-strip-initials sc-attribs-emailname 1 nil mapconcat make-closure #[257 "\303\304\300\242\"\303\305\300\242\"B	B\211B\nB\300\211\242T\240\210\207" [V0 sc-attributions sc-mail-info format "middlename-%d" "sc-middlename-%d"] 5 "\n\n(fn MIDNAME)"] " " append "firstname" "lastname" "emailname" "initials" "sc-firstname" "sc-middlenames" "sc-lastname" "sc-emailname" "sc-initials" "sc-author" "sc-from-address" sc-get-address sc-mail-field "from" "sc-reply-address" "reply-to" "sc-sender-address" "sender"] 25 (#$ . 32245)])
#@61 Used to toggle between attribution input or citation input.
(defvar sc-attrib-or-cite nil (#$ . 33463))
#@93 Toggle between attribution selection and citation selection.
Only used during confirmation.
(defalias 'sc-toggle-fn #[0 "?\301\302\303\"\207" [sc-attrib-or-cite throw sc-reconfirm t] 3 (#$ . 33573) nil])
#@622 Select an attribution from `sc-attributions'.

Variables involved in selection process include:
     `sc-preferred-attribution-list'
     `sc-use-only-preference-p'
     `sc-confirm-always-p'
     `sc-default-attribution'
     `sc-attrib-selection-list'.

Runs the hook `sc-attribs-preselect-hook' before selecting an
attribution and the hook `sc-attribs-postselect-hook' after making the
selection but before querying is performed.  During
`sc-attribs-postselect-hook' the variable `citation' is bound to the
auto-selected citation string and the variable `attribution' is bound
to the auto-selected attribution string.
(defalias 'sc-select-attribution #[0 "\306\307!\210\310\211	\211\203q\211@\211\311\230\203Z\312\f!\211\204&A\266\203\202\f\211;\2033\211\266\310\202\f\211<\203Q\313\314\"\211;\203H\266\310\202\f\310A\266\203\202\f\315\316\317\"\266\202\f\320
\"A\211\203j\266\310\202\fA\266\202\202\f\204\246%\204\246\320\321
\"A\206\245\320\322
\"A\206\245\320\323
\"A\206\245\320\324
\"A\206\245\320\325
\"A\206\245
@A\204\260&\314\262\326!\306\327!\210\203\330\331
\"'()*\314+\310\211,\3322\361,\203\341\333\334\n\335#\202\355\336\337\310\211\340B\341&\262\3100\204\320,\203\211\342\n!\206\n\202\f\326!\211+\266-\203\n\227\227\320\343.\"\320\344.\"\203/\n\241\210\2027\343\nB.B.\211\203C\211\241\266\202M\344B.B.\266\320\321
\"\211\203[\211\241\202b\321B
B\211\262*\207" [sc-confirm-always-p sc-preferred-attribution-list citation attribution sc-attrib-selection-list sc-attributions run-hooks sc-attribs-preselect-hook nil "sc-consult" sc-scan-info-alist eval t error "%s did not evaluate to a string or list!" "sc-attrib-selection-list" assoc "sc-lastchoice" "x-attribution" "firstname" "lastname" "initials" sc-make-citation sc-attribs-postselect-hook mapcar #[257 "\211AC\207" [] 2 "\n\n(fn ENTRY)"] sc-reconfirm read-string "Enter citation prefix: " sc-citation-confirmation-history completing-read "Complete attribution name: " 0 sc-attribution-confirmation-history sc-guess-attribution "sc-citation" "sc-attribution" sc-use-only-preference-p sc-default-attribution sc-minibuffer-local-completion-map minibuffer-local-completion-map sc-minibuffer-local-map minibuffer-local-map completer-disable sc-attrib-or-cite sc-downcase-p sc-mail-info] 15 (#$ . 33786)])
#@317 Return a regexp describing a Supercited line.
The regexp is the concatenation of `sc-citation-leader-regexp',
`sc-citation-root-regexp', `sc-citation-delimiter-regexp', and
`sc-citation-separator-regexp'.  If optional ROOT-REGEXP is supplied,
use it instead of `sc-citation-root-regexp'.

(fn &optional ROOT-REGEXP)
(defalias 'sc-cite-regexp #[256 "\206	\nR\207" [sc-citation-leader-regexp sc-citation-root-regexp sc-citation-delimiter-regexp sc-citation-separator-regexp] 5 (#$ . 36175)])
#@64 Make a non-nested citation from ATTRIBUTION.

(fn ATTRIBUTION)
(defalias 'sc-make-citation #[257 "	\nR\207" [sc-citation-leader sc-citation-delimiter sc-citation-separator] 5 (#$ . 36676)])
#@65 Setup `filladapt-prefix-table' to handle Supercited paragraphs.
(defalias 'sc-setup-filladapt #[0 "\301\302\"\211\203
\211\303 \240\207\304\305!\210\306 \207" [filladapt-prefix-table rassq filladapt-supercite-included-text sc-cite-regexp message "Filladapt doesn't seem to know about Supercite." beep] 3 (#$ . 36874)])
#@35 Buffer position to begin filling.
(defvar sc-fill-begin 1 (#$ . 37201))
#@31 Fill prefix of previous line.
(defvar sc-fill-line-prefix "" (#$ . 37279))
#@306 Fill the region bounded by `sc-fill-begin' and point.
Only fill if optional PREFIX is different from `sc-fill-line-prefix'.
If `sc-auto-fill-region-p' is nil, do not fill region.  If PREFIX is
not supplied, initialize fill variables.  This is useful for a regi
`begin' frame-entry.

(fn &optional PREFIX)
(defalias 'sc-fill-if-different #[256 "\211\204\f\304\305 \202*\n\203*\211\230\204*\211\304\230\204$\306	\305 \"\210\211\305 )\307\207" [sc-fill-line-prefix sc-fill-begin sc-auto-fill-region-p fill-prefix "" line-beginning-position fill-region nil] 5 (#$ . 37361)])
#@50 Coerce a Supercited line to look like our style.
(defalias 'sc-cite-coerce-cited-line #[0 "\300 \301!\302!\203+\303!\203+\304\224\212\304\225b\210n\203 \305u\210`)|\210\211c\210\306!\210\307\207" [sc-guess-attribution sc-cite-regexp sc-make-citation looking-at 0 -1 sc-fill-if-different nil] 5 (#$ . 37950)])
#@75 Coerce a non-nested citation that's been cited with a dumb nesting citer.
(defalias 'sc-cite-coerce-dumb-citer #[0 "\300\224\300\225|\210\301 \210\302 \207" [1 beginning-of-line sc-cite-coerce-cited-line] 2 (#$ . 38273)])
#@212 Guess the citation nesting on the current line.
If nesting cannot be guessed, nil is returned.  Optional STRING if
supplied, is used instead of the line point is on in the current
buffer.

(fn &optional STRING)
(defalias 'sc-guess-nesting #[256 "\303\206\n\304 \305 {\306\307\303#\206\310\303U\205N\303\225\211\262\205N\307	#\206,\310U\205N\311\303\"\262\303\225\211\262\205N\307\n#\206I\310U\205N\211\207" [sc-citation-leader-regexp sc-citation-delimiter-regexp sc-citation-separator-regexp 0 line-beginning-position line-end-position nil string-match -1 match-string] 9 (#$ . 38502)])
#@61 Add a citation level for nested citation style w/ coercion.
(defalias 'sc-add-citation-level #[0 "\303 \304GT\305!\"	\nQ\306\307\310!!\203\311\224\311\225|\210\211c\210\312!\207" [sc-citation-delimiter sc-citation-leader sc-citation-separator sc-guess-nesting make-string string-to-char looking-at sc-cite-regexp "" 0 sc-fill-if-different] 6 (#$ . 39120)])
#@127 Cite a single line of uncited text.
Optional CITATION overrides any citation automatically selected.

(fn &optional CITATION)
(defalias 'sc-cite-line #[256 "\203\303 \210\211\206\304\305	\"A\206\n\211c\210\306!\266\307\207" [sc-fixup-whitespace-p sc-mail-info sc-default-attribution fixup-whitespace assoc "sc-citation" sc-fill-if-different nil] 4 (#$ . 39490)])
#@36 Remove citation from current line.
(defalias 'sc-uncite-line #[0 "\300\301 !\211\203\302\224\302\225|\210\210\303\207" [looking-at sc-cite-regexp 0 nil] 3 (#$ . 39868)])
#@81 Remove citation matching REGEXP from current line and recite line.

(fn REGEXP)
(defalias 'sc-recite-line #[257 "\302\303P!\304\305\"A\203\306\224\306\225|\210\211\206	c\210\307!\266\310\207" [sc-mail-info sc-default-attribution looking-at "^" assoc "sc-citation" 0 sc-fill-if-different nil] 5 (#$ . 40046)])
#@358 Cite a region delineated by START and END.
If optional CONFIRM-P is non-nil, the attribution is confirmed before
its use in the citation string.  This function first runs
`sc-pre-cite-hook'.

When called interactively, the optional arg INTERACTIVE is non-nil,
and that means call `sc-select-attribution' too.

(fn START END &optional CONFIRM-P INTERACTIVE)
(defalias 'sc-cite-region #[1026 "\303 \210\304!\203\305\202	\211\203\2119\203\211J\262\211\204$\n\262\306\307!\210\203/\310 \210\311#)\207" [sc-cite-frame-alist sc-confirm-always-p sc-default-cite-frame undo-boundary sc-scan-info-alist t run-hooks sc-pre-cite-hook sc-select-attribution regi-interpret] 9 (#$ . 40371) "r\nP\np"])
#@95 Uncite a region delineated by START and END.
First runs `sc-pre-uncite-hook'.

(fn START END)
(defalias 'sc-uncite-region #[514 "\302 \210\303!\211\203\2119\203\211J\262\211\204	\262\304\305!\210\306#\207" [sc-uncite-frame-alist sc-default-uncite-frame undo-boundary sc-scan-info-alist run-hooks sc-pre-uncite-hook regi-interpret] 7 (#$ . 41086) "r"])
#@95 Recite a region delineated by START and END.
First runs `sc-pre-recite-hook'.

(fn START END)
(defalias 'sc-recite-region #[514 "\303\304 \210)\305 \210\306	!\211\203\2119\203\211J\262\211\204 \n\262\307\310!\210\311#\207" [sc-confirm-always-p sc-recite-frame-alist sc-default-recite-frame t sc-select-attribution undo-boundary sc-scan-info-alist run-hooks sc-pre-recite-hook regi-interpret] 7 (#$ . 41456) "r"])
#@314 Return a concatenation of PREFIX and FIELD.
If FIELD is not a string or is the empty string, the empty string will
be returned.  Optional third argument SEP is concatenated on the end if
it is a string.  Returns empty string, unless optional RETURN-NIL-P is
non-nil.

(fn PREFIX FIELD &optional SEP RETURN-NIL-P)
(defalias 'sc-hdr #[1026 ";\203\300\230\204\206\300Q\207\211?\205\300\207" [""] 7 (#$ . 41887)])
#@52 Return the value of (sc-mail-field "from") or nil.
(defalias 'sc-whofrom #[0 "\301\302\303!)\207" [sc-mumble nil sc-mail-field "from"] 2 (#$ . 42316)])
#@63 Does nothing.  Use this instead of nil to get a blank header.
(defalias 'sc-no-header #[0 "\300\207" [nil] 1 (#$ . 42475)])
#@71 Similar to `sc-no-header' except it removes the preceding blank line.
(defalias 'sc-no-blank-line-or-header #[0 "o?\205)l\205)\301y\210`\212\302 \210\303\304!)U\204$\305=\205)\306 \205)\307y\210\310 \207" [major-mode -1 rfc822-goto-eoh line-beginning-position 2 mh-letter-mode mh-in-header-p nil kill-line] 3 (#$ . 42605)])
#@183 "On <date>, <from> said:" unless:
1. the "from" field cannot be found, in which case nothing is inserted;
2. the "date" field is missing in which case only the from part is printed.
(defalias 'sc-header-on-said #[0 "\302\303 \211\205	\304\305\306\307!\310#\311\261)\207" [sc-mumble sc-reference-tag-string "" sc-whofrom sc-hdr "On " sc-mail-field "date" ", " " said:\n"] 7 (#$ . 42942)])
#@113 "In article <message-id>, <from> writes:"
Treats "message-id" and "from" fields similar to `sc-header-on-said'.
(defalias 'sc-header-inarticle-writes #[0 "\302\303\304!\211\205	\305\306\303\307!\310#\311\261)\207" [sc-mumble sc-reference-tag-string "" sc-mail-field "from" sc-hdr "In article " "message-id" ", " " writes:\n"] 7 (#$ . 43343)])
#@104 "Regarding <subject>; <from> adds:"
Treats "subject" and "from" fields similar to `sc-header-on-said'.
(defalias 'sc-header-regarding-adds #[0 "\302\303 \211\205	\304\305\306\307!\310#\311\261)\207" [sc-mumble sc-reference-tag-string "" sc-whofrom sc-hdr "Regarding " sc-mail-field "subject" "; " " adds:\n"] 7 (#$ . 43699)])
#@117 "<sc-attribution>" == <sc-author> <address> writes:
Treats these fields in a similar manner to `sc-header-on-said'.
(defalias 'sc-header-attributed-writes #[0 "\302\303 \211\2052	\304\305\306\307!\310#\304\302\306\311!\312#\304\313\306\314!\315\316$\206/\304\313\306\317!\315\316$\206/\302\320\261)\207" [sc-mumble sc-reference-tag-string "" sc-whofrom sc-hdr "\"" sc-mail-field "sc-attribution" "\" == " "sc-author" " " "<" "sc-from-address" ">" t "sc-reply-address" " writes:\n"] 10 (#$ . 44038)])
#@21 <sc-author> writes:
(defalias 'sc-header-author-writes #[0 "\302\303 \211\205	\304\302\305\306!\"\307\261)\207" [sc-mumble sc-reference-tag-string "" sc-whofrom sc-hdr sc-mail-field "sc-author" " writes:\n"] 7 (#$ . 44550)])
#@31 Very verbose, some say gross.
(defalias 'sc-header-verbose #[0 "\302\303 \205z\304\305P\306\307!\310#\304\306\311!\312\313$\206\"\312Q\304\314P\306\315!\312#\316P\304\306\317!\312\313$\206E\304\306\320!\312\313$\206E\302\262\304\321P\306\322!\323#\304\324P\306\325!\312#\304\326P\306\327!\312#\304\330P\306\331!\312#\304	\332P\306\333!\334#\261	)\207" [sc-reference-tag-string sc-mumble "" sc-whofrom sc-hdr "On " sc-mail-field "date" ",\n" "sc-author" "\n" t "from the organization of " "organization" "who can be reached at: " "sc-from-address" "sc-reply-address" "(whose comments are cited below with \"" "sc-citation" "\"),\n" "had this to say in article " "message-id" "in newsgroups " "newsgroups" "concerning the subject of " "subject" "(see " "references" " for more details)\n"] 15 (#$ . 44786)])
#@50 Supercite electric reference mode's buffer name.
(defconst sc-electric-bufname " *sc-erefs* " (#$ . 45623))
#@35 Current electric reference style.
(defvar sc-eref-style 0 (#$ . 45737))
#@103 Return INDEX if it is a valid index into `sc-rewrite-header-list'.
Otherwise returns nil.

(fn INDEX)
(defalias 'sc-valid-index-p #[257 "\301!\205\211GW\205\211\207" [sc-rewrite-header-list natnump] 3 (#$ . 45816)])
#@163 Insert the selected reference header in the current buffer.
Optional NOMSG, if non-nil, inhibits printing messages, unless an
error occurs.

(fn &optional NOMSG)
(defalias 'sc-eref-insert-selected #[256 "	8\3021*\303\304\"\210\305ed\"\206&\306\307\211\310U\203\"\311\202#\312%\2620\207\306\313A@#\210\314 \207" [sc-eref-style sc-rewrite-header-list (void-function) eval t count-lines message "Ref header %d [%d line%s]: %s" 1 "" "s" "Symbol's function definition is void: %s (Header %d)" beep] 9 (#$ . 46045)])
#@418 Mode for viewing Supercite reference headers.  Commands are:

\{sc-electric-mode-map}

`sc-electric-mode' is not intended to be run interactively, but rather
accessed through Supercite's electric reference feature.  See
`sc-insert-reference' for more details.  Optional STYLE is the initial
header style to use, unless not supplied or invalid, in which case
`sc-preferred-header-style' is used.

(fn &optional STYLE)
(defalias 'sc-electric-mode #[256 "\306!\206\306	!\206\307\310!\210\212\311 \312\313\"\216\314!\210\315 \210\316\317\320\321!\210\322\n!\210\323\324!\210\325 \210-\210)\n\203E\326 \210\327!\207" [sc-mail-info sc-preferred-header-style sc-eref-style sc-electric-bufname major-mode mode-name sc-valid-index-p 0 get-buffer-create current-window-configuration make-closure #[0 "\301\300!\207" [V0 set-window-configuration] 2] pop-to-buffer kill-all-local-variables t "SC Electric Refs" sc-electric-mode use-local-map sc-eref-show run-mode-hooks sc-electric-mode-hook recursive-edit sc-eref-insert-selected kill-buffer buffer-read-only sc-electric-mode-map] 7 (#$ . 46577)])
#@63 Show reference INDEX in `sc-rewrite-header-list'.

(fn INDEX)
(defalias 'sc-eref-show #[257 "G\306!\203\f\2029\307W\203$	\203\211S\2029\310\311\312\"\210\307\2029Y\2059	\2032\307\2029\310\311\313\"\210\211Srq\210\314\315 \210eb\210\316 \210\317ed\"\320 SU?\205nV\203g\321Z!\266\202\202p\322
]Z!\266\202*\207" [sc-rewrite-header-list sc-electric-circular-p sc-eref-style sc-electric-bufname inhibit-read-only window-min-height sc-valid-index-p 0 error "No %ing reference headers in list." "preced" "follow" t erase-buffer sc-eref-insert-selected count-lines window-height enlarge-window shrink-window] 8 (#$ . 47690)])
#@41 Display next reference in other buffer.
(defalias 'sc-eref-next #[0 "\301T!\207" [sc-eref-style sc-eref-show] 2 (#$ . 48344) nil])
#@45 Display previous reference in other buffer.
(defalias 'sc-eref-prev #[0 "\301S!\207" [sc-eref-style sc-eref-show] 2 (#$ . 48482) nil])
#@45 Set reference header selected as preferred.
(defalias 'sc-eref-setn #[0 "\302\303\"\207" [sc-eref-style sc-preferred-header-style message "Preferred reference style set to header %d."] 3 (#$ . 48624) nil])
#@128 Show reference style indexed by REFNUM.
If REFNUM is an invalid index, don't go to that reference and return
nil.

(fn REFNUM)
(defalias 'sc-eref-goto #[257 "\301!\203\n\302!\207\303\304\305GS$\207" [sc-rewrite-header-list sc-valid-index-p sc-eref-show error "Invalid reference: %d. (Range: [%d .. %d])" 0] 6 (#$ . 48840) "NGoto Reference: "])
#@43 Set reference header to preferred header.
(defalias 'sc-eref-jump #[0 "\301!\207" [sc-preferred-header-style sc-eref-show] 2 (#$ . 49195) nil])
#@64 Exit from electric reference mode without inserting reference.
(defalias 'sc-eref-abort #[0 "\301\302 \207" [sc-eref-style nil exit-recursive-edit] 1 (#$ . 49346) nil])
#@66 Exit from electric reference mode and insert selected reference.
(defalias 'sc-eref-exit #[0 "\300 \207" [exit-recursive-edit] 1 (#$ . 49522) nil])
#@422 Insert, at point, a reference header in the body of the reply.
Numeric ARG indicates which header style from `sc-rewrite-header-list'
to use when rewriting the header.  No supplied ARG indicates use of
`sc-preferred-header-style'.

With just `\[universal-argument]', electric reference insert mode is
entered, regardless of the value of `sc-electric-references-p'.  See
`sc-electric-mode' for more information.

(fn ARG)
(defalias 'sc-insert-reference #[257 "\211:\203\302 \207\303!\206\303!\206\206\304	\203!\302!\207\305\306!\207" [sc-preferred-header-style sc-electric-references-p sc-electric-mode sc-valid-index-p 0 sc-eref-insert-selected t] 4 (#$ . 49677) "P"])
#@109 Toggle, in one fell swoop, two important SC variables:
`sc-fixup-whitespace-p' and `sc-auto-fill-region-p'.
(defalias 'sc-raw-mode-toggle #[0 "?	?\302 \207" [sc-fixup-whitespace-p sc-auto-fill-region-p force-mode-line-update] 1 (#$ . 50366) nil])
#@142 Boolean toggle VARIABLE's value.
VARIABLE must be a bound symbol.  nil values change to t, non-nil
values are changed to nil.

(fn VARIABLE)
(defalias 'sc-toggle-var #[257 "\300\301\211J\211J?L$\207" [message "%s changed from %s to %s"] 7 (#$ . 50623)])
#@518 Set the Supercite VARIABLE.
This function mimics `set-variable', except that the variable to set
is determined non-interactively.  The value is queried for in the
minibuffer exactly the same way that `set-variable' does it.

You can see the current value of the variable when the minibuffer is
querying you by typing `C-h'.  Note that the format is changed
slightly from that used by `set-variable' -- the current value is
printed just after the variable's name instead of at the bottom of the
help window.

(fn VAR)
(defalias 'sc-set-variable #[257 "\301\302\"\303\304DD\305\306\307\"!L)\207" [minibuffer-help-form make-closure #[0 "	r\306\307!q\210p\310 \210\311\211\312\211\312\313 \210\314\315!\210+\211\316\300!\210\317\300!\203>\320\321\322!\210\316\300J!\210\321\323!\210)\321\324!\210\321\325\300\326\"\327\311O!\210rq\210\330 \210)\311\331!\210)\207" [V0 default-directory buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks get-buffer-create "*Help*" kill-all-local-variables nil t erase-buffer run-hooks temp-buffer-setup-hook prin1 boundp 20 princ "	(Current value: " ")" "\n\nDocumentation:\n" documentation-property variable-documentation 1 help-mode internal-temp-output-buffer-show inhibit-read-only standard-output print-length] 7] funcall function eval-minibuffer format "Set %s to value: "] 7 (#$ . 50886)])
#@17 

(fn ROOTNAME)
(defalias 'sc-toggle-symbol '(macro . #[257 "\300\301\302P!\303\304\305\306\301\307\310Q!DD\257\207" [defun intern "sc-T-" nil (interactive) sc-toggle-var quote "sc-" "-p"] 11 (#$ . 52266)]))
#@17 

(fn ROOTNAME)
(defalias 'sc-setvar-symbol '(macro . #[257 "\300\301\302P!\303\304\305\306\301\307P!DD\257\207" [defun intern "sc-S-" nil (interactive) sc-set-variable quote "sc-"] 10 (#$ . 52484)]))
(defalias 'sc-T-confirm-always #[0 "\300\301!\207" [sc-toggle-var sc-confirm-always-p] 2 nil nil])
(defalias 'sc-T-downcase #[0 "\300\301!\207" [sc-toggle-var sc-downcase-p] 2 nil nil])
(defalias 'sc-T-electric-references #[0 "\300\301!\207" [sc-toggle-var sc-electric-references-p] 2 nil nil])
(defalias 'sc-T-auto-fill-region #[0 "\300\301!\207" [sc-toggle-var sc-auto-fill-region-p] 2 nil nil])
(defalias 'sc-T-mail-nuke-blank-lines #[0 "\300\301!\207" [sc-toggle-var sc-mail-nuke-blank-lines-p] 2 nil nil])
(defalias 'sc-T-nested-citation #[0 "\300\301!\207" [sc-toggle-var sc-nested-citation-p] 2 nil nil])
(defalias 'sc-T-electric-circular #[0 "\300\301!\207" [sc-toggle-var sc-electric-circular-p] 2 nil nil])
(defalias 'sc-T-use-only-preferences #[0 "\300\301!\207" [sc-toggle-var sc-use-only-preferences-p] 2 nil nil])
(defalias 'sc-T-fixup-whitespace #[0 "\300\301!\207" [sc-toggle-var sc-fixup-whitespace-p] 2 nil nil])
(defalias 'sc-S-preferred-attribution-list #[0 "\300\301!\207" [sc-set-variable sc-preferred-attribution-list] 2 nil nil])
(defalias 'sc-S-preferred-header-style #[0 "\300\301!\207" [sc-set-variable sc-preferred-header-style] 2 nil nil])
(defalias 'sc-S-mail-nuke-mail-headers #[0 "\300\301!\207" [sc-set-variable sc-mail-nuke-mail-headers] 2 nil nil])
(defalias 'sc-S-mail-header-nuke-list #[0 "\300\301!\207" [sc-set-variable sc-mail-header-nuke-list] 2 nil nil])
(defalias 'sc-S-cite-region-limit #[0 "\300\301!\207" [sc-set-variable sc-cite-region-limit] 2 nil nil])
#@418 

Supercite provides a number of key bindings which simplify the process
of setting or toggling certain variables controlling its operation.

Note on function names in this list: all functions of the form
`sc-S-<name>' actually call `sc-set-variable' on the corresponding
`sc-<name>' variable.  All functions of the form `sc-T-<name>' call
`sc-toggle-var' on the corresponding `sc-<name>-p' variable.

\{sc-T-keymap}
(defalias 'sc-T-describe #[0 "\300\301!\207" [describe-function sc-T-describe] 2 (#$ . 54198) nil])
#@95 Non-nil if Sc minor mode is enabled.
Use the command `sc-minor-mode' to change this variable.
(defvar sc-minor-mode nil (#$ . 54721))
(make-variable-buffer-local 'sc-minor-mode)
#@606 Toggle Sc minor mode on or off.

This is a minor mode.  If called interactively, toggle the `Sc minor
mode' mode.  If the prefix argument is positive, enable the mode, and
if it is zero or negative, disable the mode.

If called from Lisp, toggle the mode if ARG is `toggle'.  Enable the
mode if ARG is nil, omitted, or is a positive number.  Disable the
mode if ARG is a negative number.

To check whether the minor mode is enabled in the current buffer,
evaluate `sc-minor-mode'.

The mode's hook is called both when the mode is enabled and when it is
disabled.

\{sc-minor-mode-map}

(fn &optional ARG)
(defalias 'sc-minor-mode #[256 "\302 \303=\203
?\202\247\203\304W\203\305\202\306\307\301!\2031\310\300	\"\2031\300	B\311\312\203;\313\202<\314\"\210\315\316!\203^\302 \203P\211\302 \232\203^\317\320\203Z\321\202[\322\323#\210\210\324 \210\207" [sc-minor-mode local-minor-modes current-message toggle 1 nil t boundp delq run-hooks sc-minor-mode-hook sc-minor-mode-on-hook sc-minor-mode-off-hook called-interactively-p any message "Sc minor mode %sabled%s" "en" "dis" " in current buffer" force-mode-line-update] 6 (#$ . 54906) (byte-code "\203\n\301!\202\302C\207" [current-prefix-arg prefix-numeric-value toggle] 2)])
(defvar sc-minor-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\302\300\304\305#\210\302\300\306\307C#\207" [sc-minor-mode-hook variable-documentation put "Hook run after entering or leaving `sc-minor-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" custom-type hook standard-value nil] 4)
#@29 Keymap for `sc-minor-mode'.
(defvar sc-minor-mode-map (byte-code "	BC\302!\203\207\211<\203\303!\207\304\305\"\207" [sc-mode-map-prefix sc-mode-map keymapp easy-mmode-define-keymap error "Invalid keymap %S"] 4) (#$ . 56564))
(byte-code "\301\302\303\304\211%\207" [sc-minor-mode-map add-minor-mode sc-minor-mode (" SC" (sc-auto-fill-region-p (":f" (sc-fixup-whitespace-p "w")) (sc-fixup-whitespace-p ":w"))) nil] 6)
#@943 Workhorse citing function which performs the initial citation.
This is callable from the various mail and news readers' reply
function according to the agreed upon standard.  See the associated
info node `(SC)Top' for more details.
`sc-cite-original' does not do any yanking of the
original message but it does require a few things:

     1) The reply buffer is the current buffer.

     2) The original message has been yanked and inserted into the
        reply buffer.

     3) Verbose mail headers from the original message have been
        inserted into the reply buffer directly before the text of the
        original message.

     4) Point is at the beginning of the verbose headers.

     5) Mark is at the end of the body of text to be cited.

The region need not be active (and typically isn't when this
function is called).  Also, the hook `sc-pre-hook' is run before,
and `sc-post-hook' is run after the guts of this function.
(defalias 'sc-cite-original #[0 "\305\306!\210\307\310!\210\311 \210\312\313 \314\315 !\211W\203\262\262\316\"\210\317\320\321!\206:\320\322!\206:\320\323!\206:\320\324!!\210\325 \210\326\"	\203}	\247\203R\211	X\203t\327\"\210b\210\n\206_\330\f\203k\331!\210\202o\332\312!\210)\210\202~\333 \210\334\335	#\210\210\336\211\223\210\211\336\211\223\210)\266\305\337!\207" [mark-active sc-cite-region-limit sc-preferred-header-style sc-eref-style sc-electric-references-p run-hooks sc-pre-hook sc-minor-mode 1 undo-boundary t point-marker copy-marker mark-marker sc-mail-process-headers sc-attribs-chop-address sc-mail-field "from" "reply" "reply-to" "sender" sc-select-attribution count-lines sc-cite-region 0 sc-electric-mode sc-eref-insert-selected beep message "Region not cited. %d lines exceeds sc-cite-region-limit: %d" nil sc-post-hook] 7 (#$ . 56996)])
#@133 Like `open-line', but insert the citation prefix at the front of the line.
With numeric ARG, inserts that many new lines.

(fn ARG)
(defalias 'sc-open-line #[257 "\212`\300 \210\301\302 !\203\303\304!\206\305b\210\306!\210\307y\210\304W\2050\211c\210\307y\210S\262\202\266\202)\207" [beginning-of-line looking-at sc-cite-regexp match-string 0 "" open-line 1] 5 (#$ . 58833) "p"])
#@161 Insert citation string at beginning of current line if not already cited.
With `\[universal-argument]' insert citation even if line is already
cited.

(fn ARG)
(defalias 'sc-insert-citation #[257 "\212\300 \210\301\302 !\203\301\303!\204\211:\203\304\305!c\202 \306\307!)\207" [beginning-of-line looking-at sc-cite-regexp "^[ 	]*$" sc-mail-field "sc-citation" error "Line is already cited"] 3 (#$ . 59232) "P"])
#@31 Read the Supercite info node.
(defalias 'sc-describe #[0 "\300\301!\207" [info "(SC)top"] 2 (#$ . 59657) nil])
(byte-code "\300\301!\210\302\303!\207" [provide supercite run-hooks sc-load-hook] 2)

Youez - 2016 - github.com/yon3zu
LinuXploit