;ELC ;;; Compiled by cyd@localhost on Mon Apr 23 22:25:17 2007 ;;; from file /home/cyd/emacs/lisp/textmodes/ispell.el ;;; in Emacs version 22.0.99 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. (if (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`ispell.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301\302\303\304\305%\210\306\307!\204\310\307\311\"\210\310\312\313\"\207" [custom-declare-group ispell nil "User variables for Emacs ispell interface." :group applications fboundp buffer-substring-no-properties defalias #[(start end) " {\207" [start end] 2] check-ispell-version ispell-check-version] 6) #@105 *Highlight spelling errors when non-nil. When set to `block', assumes a block cursor with TTY displays. (custom-declare-variable 'ispell-highlight-p ''block '(#$ . -895) :type '(choice (const block) (const :tag "off" nil) (const :tag "on" t)) :group 'ispell) #@248 *Controls the lazy-highlighting of spelling errors. When non-nil, all text in the buffer matching the current spelling error is highlighted lazily using isearch lazy highlighting (see `lazy-highlight-initial-delay' and `lazy-highlight-interval'). (custom-declare-variable 'ispell-lazy-highlight '(boundp 'lazy-highlight-cleanup) '(#$ . -1161) :type 'boolean :group 'lazy-highlight :group 'ispell :version "22.1") #@316 *The face used for Ispell highlighting. For Emacses with overlays. Possible values are `highlight', `modeline', `secondary-selection', `region', and `underline'. This variable can be set by the user to whatever face they desire. It's most convenient if the cursor color and highlight color are slightly different. (custom-declare-variable 'ispell-highlight-face '(if ispell-lazy-highlight 'isearch 'highlight) '(#$ . -1581) :type 'face :group 'ispell) #@228 *Spelling of comments checked when non-nil. When set to `exclusive', ONLY comments are checked. (For code comments). Warning! Not checking comments, when a comment start is embedded in strings, may produce undesired results. (custom-declare-variable 'ispell-check-comments 't '(#$ . -2041) :type '(choice (const exclusive) (const :tag "off" nil) (const :tag "on" t)) :group 'ispell) #@108 *Corrections made throughout region when non-nil. Uses `query-replace' (\[query-replace]) for corrections. (custom-declare-variable 'ispell-query-replace-choices 'nil '(#$ . -2433) :type 'boolean :group 'ispell) #@361 *Does not spell check `tib' bibliography references when non-nil. Skips any text between strings matching regular expressions `ispell-tib-ref-beginning' and `ispell-tib-ref-end'. TeX users beware: Any field starting with [. will skip until a .] -- even your whole buffer -- unless you set `ispell-skip-tib' to nil. That includes a [.5mm] type of number.... (custom-declare-variable 'ispell-skip-tib 'nil '(#$ . -2652) :type 'boolean :group 'ispell) #@51 Regexp matching the beginning of a Tib reference. (defvar ispell-tib-ref-beginning "[[<]\\." (#$ . 3110)) #@45 Regexp matching the end of a Tib reference. (defvar ispell-tib-ref-end "\\.[]>]" (#$ . 3222)) #@105 *When non-nil, the `*Choices*' window remains for spelling session. This minimizes redisplay thrashing. (custom-declare-variable 'ispell-keep-choices-win 't '(#$ . -3323) :type 'boolean :group 'ispell) #@91 *The default size of the `*Choices*' window, including mode line. Must be greater than 1. (custom-declare-variable 'ispell-choices-win-default-height '2 '(#$ . -3531) :type 'integer :group 'ispell) #@66 Program invoked by \[ispell-word] and \[ispell-region] commands. (custom-declare-variable 'ispell-program-name '(or (locate-file "aspell" exec-path exec-suffixes 'file-executable-p) "ispell") '(#$ . 3735) :type 'string :group 'ispell) #@42 *Alternate dictionary for spelling help. (custom-declare-variable 'ispell-alternate-dictionary '(cond ((file-exists-p "/usr/dict/web2") "/usr/dict/web2") ((file-exists-p "/usr/share/dict/web2") "/usr/share/dict/web2") ((file-exists-p "/usr/dict/words") "/usr/dict/words") ((file-exists-p "/usr/lib/dict/words") "/usr/lib/dict/words") ((file-exists-p "/usr/share/dict/words") "/usr/share/dict/words") ((file-exists-p "/usr/share/lib/dict/words") "/usr/share/lib/dict/words") ((file-exists-p "/sys/dict") "/sys/dict") (t "/usr/dict/words")) '(#$ . -3976) :type '(choice file (const :tag "None" nil)) :group 'ispell) #@39 *Dictionary used for word completion. (custom-declare-variable 'ispell-complete-word-dict 'ispell-alternate-dictionary '(#$ . -4596) :type '(choice file (const :tag "None" nil)) :group 'ispell) #@381 *List used by `ispell-message' to select a new dictionary. It consists of pairs (REGEXP . DICTIONARY). If REGEXP is found in the message headers, `ispell-local-dictionary' will be set to DICTIONARY if `ispell-local-dictionary' is not buffer-local. E.g. you may use the following value: '(("^Newsgroups:[ \t]*de\\." . "deutsch8") ("^To:[^\n,]+\\.de[ \t\n,>]" . "deutsch8")) (custom-declare-variable 'ispell-message-dictionary-alist 'nil '(#$ . -4797) :type '(repeat (cons regexp string)) :group 'ispell) #@121 *Query before saving Fcc message copy if attachment larger than this value. Always stores Fcc copy of message when nil. (custom-declare-variable 'ispell-message-fcc-skip '50000 '(#$ . -5314) :type '(choice integer (const :tag "off" nil)) :group 'ispell) #@48 Name of the grep command for search processes. (custom-declare-variable 'ispell-grep-command '"egrep" '(#$ . 5574) :type 'string :group 'ispell) #@159 String of options to use when running the program in `ispell-grep-command'. Should probably be "-i" or "-e". Some machines (like the NeXT) don't support "-i" (custom-declare-variable 'ispell-grep-options '"-i" '(#$ . 5726) :type 'string :group 'ispell) #@84 Name of the look command for search processes. This must be an absolute file name. (custom-declare-variable 'ispell-look-command '(cond ((file-exists-p "/bin/look") "/bin/look") ((file-exists-p "/usr/local/bin/look") "/usr/local/bin/look") ((file-exists-p "/usr/bin/look") "/usr/bin/look") (t "look")) '(#$ . 5985) :type 'file :group 'ispell) #@105 *Non-nil means use `look' rather than `grep'. Default is based on whether `look' seems to be available. (custom-declare-variable 'ispell-look-p '(file-exists-p ispell-look-command) '(#$ . -6335) :type 'boolean :group 'ispell) #@66 *Non-nil means use the `-r' option (regexp) when running `look'. (custom-declare-variable 'ispell-have-new-look 'nil '(#$ . -6567) :type 'boolean :group 'ispell) #@54 String of command options for `ispell-look-command'. (custom-declare-variable 'ispell-look-options '(if ispell-have-new-look "-dfr" "-df") '(#$ . 6735) :type 'string :group 'ispell) #@87 When non-nil, Emacs uses ptys to communicate with Ispell. When nil, Emacs uses pipes. (custom-declare-variable 'ispell-use-ptys-p 'nil '(#$ . 6923) :type 'boolean :group 'ispell) #@120 *Non-nil means `ispell-word' checks the word around or after point. Otherwise `ispell-word' checks the preceding word. (custom-declare-variable 'ispell-following-word 'nil '(#$ . -7109) :type 'boolean :group 'ispell) #@449 *Non-nil means display interactive keymap help in a buffer. The following values are supported: nil Expand the minibuffer and display a short help message there for a couple of seconds. t Pop up a new buffer and display a short help message there for a couple of seconds. electric Pop up a new buffer and display a long help message there. User can browse and then exit the help mode. (custom-declare-variable 'ispell-help-in-bufferp 'nil '(#$ . -7333) :type '(choice (const electric) (const :tag "off" nil) (const :tag "on" t)) :group 'ispell) #@52 *Non-nil means suppress messages in `ispell-word'. (custom-declare-variable 'ispell-quietly 'nil '(#$ . -7947) :type 'boolean :group 'ispell) #@127 *Formatting function for displaying word being spell checked. The function must take one string argument and return a string. (custom-declare-variable 'ispell-format-word-function '#'upcase '(#$ . -8096) :type 'function :group 'ispell) (defvaralias 'ispell-format-word 'ispell-format-word-function) #@295 When non-nil ispell uses framepop to display choices in a dedicated frame. You can set this variable to dynamically use framepop if you are in a window system by evaluating the following on startup to set this variable: (and window-system (condition-case () (require 'framepop) (error nil))) (custom-declare-variable 'ispell-use-framepop-p 'nil '(#$ . 8402) :type 'boolean :group 'ispell) #@184 *File name of your personal spelling dictionary, or nil. If nil, the default personal dictionary, "~/.ispell_DICTNAME" is used, where DICTNAME is the name of your default dictionary. (custom-declare-variable 'ispell-personal-dictionary 'nil '(#$ . -8800) :type '(choice file (const :tag "default" nil)) :group 'ispell) #@67 *When non-nil, save the personal dictionary without confirmation. (custom-declare-variable 'ispell-silently-savep 'nil '(#$ . -9125) :type 'boolean :group 'ispell) #@76 Non-nil means the user has explicitly set this buffer's Ispell dictionary. (defvar ispell-local-dictionary-overridden nil (#$ . 9295)) (make-variable-buffer-local 'ispell-local-dictionary-overridden) #@534 If non-nil, the dictionary to be used for Ispell commands in this buffer. The value must be a string dictionary name, or nil, which means use the global setting in `ispell-dictionary'. Dictionary names are defined in `ispell-local-dictionary-alist' and `ispell-dictionary-alist', Setting `ispell-local-dictionary' to a value has the same effect as calling \[ispell-change-dictionary] with that value. This variable is automatically set when defined in the file with either `ispell-dictionary-keyword' or the Local Variable syntax. (custom-declare-variable 'ispell-local-dictionary 'nil '(#$ . 9502) :type '(choice string (const :tag "default" nil)) :group 'ispell) (make-variable-buffer-local 'ispell-local-dictionary) #@240 *If non-nil, a list of extra switches to pass to the Ispell program. For example, ("-W" "3") to cause it to accept all 1-3 character words as correct. See also `ispell-dictionary-alist', which may be used for language-specific arguments. (custom-declare-variable 'ispell-extra-args 'nil '(#$ . -10230) :type '(repeat string) :group 'ispell) #@237 *Indicates whether ispell should skip spell checking of SGML markup. If t, always skip SGML markup; if nil, never skip; if non-t and non-nil, guess whether SGML markup should be skipped according to the name of the buffer's major mode. (custom-declare-variable 'ispell-skip-html ''use-mode-name '(#$ . -10579) :type '(choice (const :tag "always" t) (const :tag "never" nil) (const :tag "use-mode-name" use-mode-name)) :group 'ispell) (make-variable-buffer-local 'ispell-skip-html) #@257 *List of local or customized dictionary definitions. These can override the values in `ispell-dictionary-alist'. To make permanent changes to your dictionary definitions, you will need to make your changes in this variable, save, and then re-start Emacs. (custom-declare-variable 'ispell-local-dictionary-alist 'nil '(#$ . -11067) :type '(repeat (list (choice :tag "Dictionary" (string :tag "Dictionary name") (const :tag "default" nil)) (regexp :tag "Case characters") (regexp :tag "Non case characters") (regexp :tag "Other characters") (boolean :tag "Many other characters") (repeat :tag "Ispell command line args" (string :tag "Arg")) (choice :tag "Extended character mode" (const "~tex") (const "~plaintex") (const "~nroff") (const "~list") (const "~latin1") (const "~latin3") (const :tag "default" nil)) (coding-system :tag "Coding System"))) :group 'ispell) (byte-code "\306\307\310\311\312\313\314\207" [ispell-dictionary-alist-1 ispell-dictionary-alist-2 ispell-dictionary-alist-3 ispell-dictionary-alist-4 ispell-dictionary-alist-5 ispell-dictionary-alist-6 ((nil "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-B") nil iso-8859-1) ("american" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-B") nil iso-8859-1) ("brasileiro" "[A-Z\301\311\315\323\332\300\310\314\322\331\303\325\307\334\302\312\324a-z\341\351\355\363\372\340\350\354\362\371\343\365\347\374\342\352\364]" "[^A-Z\301\311\315\323\332\300\310\314\322\331\303\325\307\334\302\312\324a-z\341\351\355\363\372\340\350\354\362\371\343\365\347\374\342\352\364]" "[']" nil nil nil iso-8859-1) ("british" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-B") nil iso-8859-1) ("castellano" "[A-Z\301\311\315\321\323\332\334a-z\341\351\355\361\363\372\374]" "[^A-Z\301\311\315\321\323\332\334a-z\341\351\355\361\363\372\374]" "[-]" nil ("-B") "~tex" iso-8859-1) ("castellano8" "[A-Z\301\311\315\321\323\332\334a-z\341\351\355\361\363\372\374]" "[^A-Z\301\311\315\321\323\332\334a-z\341\351\355\361\363\372\374]" "[-]" nil ("-B" "-d" "castellano") "~latin1" iso-8859-1)) (("czech" "[A-Za-z\301\311\314\315\323\332\331\335\256\251\310\330\317\253\322\341\351\354\355\363\372\371\375\276\271\350\370\357\273\362]" "[^A-Za-z\301\311\314\315\323\332\331\335\256\251\310\330\317\253\322\341\351\354\355\363\372\371\375\276\271\350\370\357\273\362]" "" nil ("-B") nil iso-8859-2) ("dansk" "[A-Z\306\330\305a-z\346\370\345]" "[^A-Z\306\330\305a-z\346\370\345]" "[']" nil ("-C") nil iso-8859-1) ("deutsch" "[a-zA-Z\"]" "[^a-zA-Z\"]" "[']" t ("-C") "~tex" iso-8859-1) ("deutsch8" "[a-zA-Z\304\326\334\344\366\337\374]" "[^a-zA-Z\304\326\334\344\366\337\374]" "[']" t ("-C" "-d" "deutsch") "~latin1" iso-8859-1) ("english" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-B") nil iso-8859-1)) (("esperanto" "[A-Za-z\246\254\266\274\306\330\335\336\346\370\375\376]" "[^A-Za-z\246\254\266\274\306\330\335\336\346\370\375\376]" "[-']" t ("-C") "~latin3" iso-8859-3) ("esperanto-tex" "[A-Za-z^\\]" "[^A-Za-z^\\]" "[-'`\"]" t ("-C" "-d" "esperanto") "~tex" iso-8859-3) ("francais7" "[A-Za-z]" "[^A-Za-z]" "[`'^-]" t nil nil iso-8859-1) ("francais" "[A-Za-z\300\302\306\307\310\311\312\313\316\317\324\331\333\334\340\342\347\350\351\352\353\356\357\364\371\373\374]" "[^A-Za-z\300\302\306\307\310\311\312\313\316\317\324\331\333\334\340\342\347\350\351\352\353\356\357\364\371\373\374]" "[-'.@]" t nil "~list" iso-8859-1) ("francais-tex" "[A-Za-z\300\302\306\307\310\311\312\313\316\317\324\331\333\334\340\342\347\350\351\352\353\356\357\364\371\373\374\\]" "[^A-Za-z\300\302\306\307\310\311\312\313\316\317\324\331\333\334\340\342\347\350\351\352\353\356\357\364\371\373\374\\]" "[-'^`\".@]" t nil "~tex" iso-8859-1)) (("german" "[a-zA-Z\"]" "[^a-zA-Z\"]" "[']" t ("-C") "~tex" iso-8859-1) ("german8" "[a-zA-Z\304\326\334\344\366\337\374]" "[^a-zA-Z\304\326\334\344\366\337\374]" "[']" t ("-C" "-d" "german") "~latin1" iso-8859-1) ("italiano" "[A-Z\300\301\310\311\314\315\322\323\331\332a-z\340\341\350\351\354\355\363\371\372]" "[^A-Z\300\301\310\311\314\315\322\323\331\332a-z\340\341\350\351\354\355\363\371\372]" "[-.]" nil ("-B" "-d" "italian") "~tex" iso-8859-1) ("nederlands" "[A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" "[^A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" "[']" t ("-C") nil iso-8859-1) ("nederlands8" "[A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" "[^A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" "[']" t ("-C") nil iso-8859-1)) (("norsk" "[A-Za-z\305\306\307\310\311\322\324\330\345\346\347\350\351\362\364\370]" "[^A-Za-z\305\306\307\310\311\322\324\330\345\346\347\350\351\362\364\370]" "[\"]" nil nil "~list" iso-8859-1) ("norsk7-tex" "[A-Za-z{}\\'^`]" "[^A-Za-z{}\\'^`]" "[\"]" nil ("-d" "norsk") "~plaintex" iso-8859-1) ("polish" "[A-Za-z\241\243\246\254\257\261\263\266\274\277\306\312\321\323\346\352\361\363]" "[^A-Za-z\241\243\246\254\257\261\263\266\274\277\306\312\321\323\346\352\361\363]" "[.]" nil nil nil iso-8859-2) ("portugues" "[a-zA-Z\301\302\311\323\340\341\342\351\352\355\363\343\372]" "[^a-zA-Z\301\302\311\323\340\341\342\351\352\355\363\343\372]" "[']" t ("-C") "~latin1" iso-8859-1)) (("russian" "[\341\342\367\347\344\345\263\366\372\351\352\353\354\355\356\357\360\362\363\364\365\346\350\343\376\373\375\370\371\377\374\340\361\301\302\327\307\304\305\243\326\332\311\312\313\314\315\316\317\320\322\323\324\325\306\310\303\336\333\335\330\331\337\334\300\321]" "[^\341\342\367\347\344\345\263\366\372\351\352\353\354\355\356\357\360\362\363\364\365\346\350\343\376\373\375\370\371\377\374\340\361\301\302\327\307\304\305\243\326\332\311\312\313\314\315\316\317\320\322\323\324\325\306\310\303\336\333\335\330\331\337\334\300\321]" "" nil nil nil koi8-r) ("russianw" "[\300\301\302\303\304\305\250\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\334\333\332\335\336\337\340\341\342\343\344\345\270\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\374\373\372\375\376\377]" "[^\300\301\302\303\304\305\250\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\334\333\332\335\336\337\340\341\342\343\344\345\270\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\374\373\372\375\376\377]" "" nil nil nil windows-1251) ("slovak" "[A-Za-z\301\304\311\315\323\332\324\300\305\245\335\256\251\310\317\253\322\341\344\351\355\363\372\364\340\345\265\375\276\271\350\357\273\362]" "[^A-Za-z\301\304\311\315\323\332\324\300\305\245\335\256\251\310\317\253\322\341\344\351\355\363\372\364\340\345\265\375\276\271\350\357\273\362]" "" nil ("-B") nil iso-8859-2) ("slovenian" "[A-Za-z\301\304\311\315\323\332\324\300\305\245\335\256\251\310\317\253\322\341\344\351\355\363\372\364\340\345\265\375\276\271\350\357\273\362]" "[^A-Za-z\301\304\311\315\323\332\324\300\305\245\335\256\251\310\317\253\322\341\344\351\355\363\372\364\340\345\265\375\276\271\350\357\273\362]" "" nil ("-B" "-d" "slovenian") nil iso-8859-2) ("svenska" "[A-Za-z\345\344\366\351\340\374\350\346\370\347\305\304\326\311\300\334\310\306\330\307]" "[^A-Za-z\345\344\366\351\340\374\350\346\370\347\305\304\326\311\300\334\310\306\330\307]" "[']" nil ("-C") "~list" iso-8859-1)) nil] 1) #@2373 An alist of dictionaries and their associated parameters. Each element of this list is also a list: (DICTIONARY-NAME CASECHARS NOT-CASECHARS OTHERCHARS MANY-OTHERCHARS-P ISPELL-ARGS EXTENDED-CHARACTER-MODE CHARACTER-SET) DICTIONARY-NAME is a possible string value of variable `ispell-dictionary', nil means the default dictionary. CASECHARS is a regular expression of valid characters that comprise a word. NOT-CASECHARS is the opposite regexp of CASECHARS. OTHERCHARS is a regexp of characters in the NOT-CASECHARS set but which can be used to construct words in some special way. If OTHERCHARS characters follow and precede characters from CASECHARS, they are parsed as part of a word, otherwise they become word-breaks. As an example in English, assume the regular expression "[']" for OTHERCHARS. Then "they're" and "Steven's" are parsed as single words including the "'" character, but "Stevens'" does not include the quote character as part of the word. If you want OTHERCHARS to be empty, use the empty string. Hint: regexp syntax requires the hyphen to be declared first here. CASECHARS, NOT-CASECHARS, and OTHERCHARS must be unibyte strings containing bytes of CHARACTER-SET. In addition, if they contain a non-ASCII byte, the regular expression must be a single `character set' construct that doesn't specify a character range for non-ASCII bytes. MANY-OTHERCHARS-P is non-nil when multiple OTHERCHARS are allowed in a word. Otherwise only a single OTHERCHARS character is allowed to be part of any single word. ISPELL-ARGS is a list of additional arguments passed to the ispell subprocess. EXTENDED-CHARACTER-MODE should be used when dictionaries are used which have been configured in an Ispell affix file. (For example, umlauts can be encoded as \"a, a\", "a, ...) Defaults are ~tex and ~nroff in English. This has the same effect as the command-line `-T' option. The buffer Major Mode controls Ispell's parsing in tex or nroff mode, but the dictionary can control the extended character mode. Both defaults can be overruled in a buffer-local fashion. See `ispell-parsing-keyword' for details on this. CHARACTER-SET used for languages with multibyte characters. Note that the CASECHARS and OTHERCHARS slots of the alist should contain the same character set as casechars and otherchars in the LANGUAGE.aff file (e.g., english.aff). (defvar ispell-dictionary-alist (append ispell-dictionary-alist-1 ispell-dictionary-alist-2 ispell-dictionary-alist-3 ispell-dictionary-alist-4 ispell-dictionary-alist-5 ispell-dictionary-alist-6) (#$ . 18841)) (byte-code "\301B\302\301!\204\303\301\304\"\210\304\207" [current-load-list ispell-really-aspell default-boundp set-default nil] 3) #@273 Non-nil means to try to automatically find aspell dictionaries. This is set to t in `ispell-check-version' for aspell >= 0.60. Earlier aspell versions do not consistently support UTF-8. Handling this would require some extra guessing in `ispell-aspell-find-dictionary'. (defvar ispell-aspell-supports-utf8 nil (#$ . 21568)) #@72 Ispell versions with which this version of ispell.el is known to work. (defconst ispell-required-version '(3 1 12) (#$ . 21900)) #@68 Offset that maps protocol differences between ispell 3.1 versions. (defvar ispell-offset -1 (#$ . 22035)) (byte-code "\301B\302\303!\207" [current-load-list ispell-version (lambda (#1=#:defconst-tmp-var) (defconst ispell-version #1#)) "ispell.el 3.6 - 7-Jan-2003"] 2) #@183 Ensure that `ispell-program-name' is valid and the correct version. Returns version number if called interactively. Otherwise returns the library directory name, if that is defined. (defalias 'ispell-check-version #[(&optional interactivep) "\306\307\301!\203\f \206 \n\310\2111\212\311\312!\2112\203$\3132!\210)\314\312!q\210\315 \210\3163\310\317\3104\320>\3213!5\322\3235\"\203J\324\202K\325*%eb\2106\203j\310\210\326e`\"\3277Q\330\331\f\"\210\202x\332\333\310\317#\203x\334\224\334\225{eb\210 \335>\204\222\336\3373 ;\203\216\340\202\217\341 $\210\317\332\342\343\3448@\"\345Q\310\317#1 \203\267\346\347\350!!@8A@W\203\314\336\35138@8A@8AA@%\210\202\346\347\350!!@8A@U\203\354\346\347\352!!@8AA@W\203\354\3539eb\210\310\354\355\310\317#\205\356\357\334!\360\"?:\317;)\313p!\210)\f-\207" [case-fold-search temporary-file-directory default-directory status result default-major-mode fundamental-mode boundp nil get-buffer " *ispell-tmp*" kill-buffer get-buffer-create erase-buffer ispell-call-process t (ms-dos windows-nt) file-name-nondirectory string-match "\\`aspell" "-v" "-vv" buffer-substring-no-properties ", " message "%s" re-search-forward "LIBDIR = \\\"\\([^ \n]*\\)\\\"" 1 (0 nil) error "%s exited with %s %s" "signal" "code" "\\<\\(" format "%d" "\\)\\.\\([0-9]*\\)\\.\\([0-9]*\\)\\>" read-from-string match-string-no-properties 2 "%s version 3 release %d.%d.%d or greater is required" 3 0 search-forward-regexp "(but really Aspell \\(.*?\\)\\(-[0-9]+\\)?)" version< match-string "0.60" case-fold-search-val buf ispell-program-name system-type speller interactivep ispell-version ispell-required-version ispell-offset ispell-aspell-supports-utf8 ispell-really-aspell] 9 (#$ . 22312) "p"]) #@65 Like `call-process' but defend against bad `default-directory'. (defalias 'ispell-call-process #[(&rest args) "\302!\203\303!\204\304\305!\306\307 \")\207" [default-directory args file-directory-p file-readable-p expand-file-name "~/" apply call-process] 3 (#$ . 24078)]) #@72 Like `call-process-region' but defend against bad `default-directory'. (defalias 'ispell-call-process-region #[(&rest args) "\302!\203\303!\204\304\305!\306\307 \")\207" [default-directory args file-directory-p file-readable-p expand-file-name "~/" apply call-process-region] 3 (#$ . 24365)]) #@26 Key map for ispell menu. (defvar ispell-menu-map nil (#$ . 24673)) (byte-code "\301\211\207" [ispell-menu-map nil] 2) #@130 Spelling menu for XEmacs. If nil when package is loaded, a standard menu will be set, and added as a submenu of the "Edit" menu. (defvar ispell-menu-xemacs nil (#$ . 24799)) (byte-code "\302B\303\302!\204\304\302 ?\205\305\"\210\302\207" [current-load-list ispell-menu-map ispell-menu-map-needed default-boundp set-default reload] 3) #@45 Directory where ispell dictionaries reside. (defvar ispell-library-directory (byte-code "\300\301\302\217\207" [nil (ispell-check-version) ((error))] 3) (#$ . 25145)) #@32 The process object for Ispell. (defvar ispell-process nil (#$ . 25318)) #@60 Non-nil means that the OS supports asynchronous processes. (defvar ispell-async-processp (byte-code "\300\301!\205\300\302!\205\300\303!\207" [fboundp delete-process process-send-string accept-process-output] 2) (#$ . 25396)) #@67 Non-nil if we have queried Aspell for dictionaries at least once. (defvar ispell-have-aspell-dictionaries nil (#$ . 25632)) #@50 Find Aspell's dictionaries, unless already done. (defalias 'ispell-maybe-find-aspell-dictionaries #[nil "?\205\303\304\305\217\205 \205\n\205\306 \207" [ispell-have-aspell-dictionaries ispell-really-aspell ispell-aspell-supports-utf8 nil (byte-code "\300 \210\301\207" [ispell-check-version t] 1) ((error)) ispell-find-aspell-dictionaries] 3 (#$ . 25762)]) #@70 Find Aspell's dictionaries, and record in `ispell-dictionary-alist'. (defalias 'ispell-find-aspell-dictionaries #[nil "\204\306\307!\210\310\311\312!\313\216r q\210\314\n\315\316\315\317%\210\320 +!\321\315\322\323 \"\"\324\f! \315\211\203S@\325@\f\"\204J\fC\244A\211\2046*\f\325\326 \"\315A\206g@AB\211 B*\316\211*\207" [ispell-really-aspell #1=#:temp-buffer ispell-program-name dictionaries found ispell-dictionary-alist error "This function only works with aspell" split-string generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) ispell-call-process nil t "dicts" buffer-string delq mapcar ispell-aspell-find-dictionary ispell-aspell-add-aliases assoc "en" dict #2=#:--cl-dolist-temp-- english-dict ispell-dictionary-alist-1 default-dict ispell-have-aspell-dictionaries] 8 (#$ . 26134)]) #@27 Data directory of Aspell. (defvar ispell-aspell-data-dir nil (#$ . 27029)) #@33 Dictionary directory of Aspell. (defvar ispell-aspell-dict-dir nil (#$ . 27110)) #@93 Return value of Aspell configuration option KEY. Assumes that value contains no whitespace. (defalias 'ispell-get-aspell-config-value #[(key) "\303\304!\305\216rq\210\306 \307\310\307\311\n&\210\312\313 !@+\207" [#1=#:temp-buffer ispell-program-name key generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) ispell-call-process nil t "config" split-string buffer-string] 7 (#$ . 27197)]) (defalias 'ispell-aspell-find-dictionary #[(dict-name) "\305\306\"\205 \307\310\"\n\206\311\312!\211\313 \314R\315\211\316\317\217+\207" [dict-name lang ispell-aspell-data-dir data-file otherchars string-match "^[[:alpha:]]+" match-string 0 ispell-get-aspell-config-value "data-dir" "/" ".dat" nil (byte-code "\306\307!\310\216rq\210\311 !\210\312\313\314\315#\203A\316`\314\210`{!\211\203@\n\211A@)\317H\320=\2035\n@\fB\n\211AA)\211\204#) \321\322\323\f!\315\324 \325E\314\326\257+\207" [#1=#:temp-buffer data-file specials x otherchars dict-name generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) insert-file-contents search-forward-regexp "^special" nil t split-string 1 42 "[[:alpha:]]" "[^[:alpha:]]" regexp-opt "-d" "--encoding=utf-8" utf-8] 9) ((file-error))] 5]) #@101 Find aspell's dictionary aliases and add them to dictionary ALIST. Return the new dictionary alist. (defalias 'ispell-aspell-add-aliases #[(alist) "\306\206\n\307\310!\211\311P!\211\312\211\203e @\313\314!\315\216r\fq\210\316\n!\210\317\320\312\321#\203]\322\323\n!!\324 \"\325\326!\324\"\211\203\\\204\\ ABB,+ A\211\204*)\207" [ispell-aspell-dict-dir aliases alias-file #1=#:--cl-dolist-temp-- #2=#:temp-buffer aliasname file-expand-wildcards ispell-get-aspell-config-value "dict-dir" "/*.alias" nil generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#2# buffer-name kill-buffer] 2)) insert-file-contents search-forward-regexp "^add \\([^.]+\\)\\.multi" t file-name-sans-extension file-name-nondirectory assoc match-string 1 alist already-exists-p realname realdict] 6 (#$ . 28503)]) #@109 Returns a list of valid dictionaries. The variable `ispell-library-directory' defines the library location. (defalias 'ispell-valid-dictionary-list #[nil "\306 \210\307 \"\310\311B\311\211\211\311\211\203v@\211@\312\3138\235A@ \203m\204i\203i\314\315 \316R!\204i\314\315 \317R!\204i\n\203m\314\315\n\316R!\204i\314\315\n\317R!\203m \fBA\211\204*\f,\207" [ispell-local-dictionary-alist ispell-dictionary-alist load-dict name dict-list dicts ispell-maybe-find-aspell-dictionaries append "default" nil "-d" 5 file-exists-p "/" ".hash" ".has" dict #1=#:--cl-dolist-temp-- ispell-really-aspell ispell-library-directory] 7 (#$ . 29359)]) (byte-code "\2038\302\303!\304 \305\306#\210\304 \307\310#\210\304 \311\312#\210\304 \313\314#\210\304 \315\316#\210\304 \317\320#\210\304 \321\322#\210\304 \323\324#\210\203N\304 \325\326#\210\304 \327\330#\210\304 \331\332#\210\203i\304 \333\334#\210\304 \335\336#\210\304 \337\340#\210\301\211JM\210\341\342M\207" [ispell-menu-map-needed ispell-menu-map make-sparse-keymap "Spell" define-key [ispell-change-dictionary] (menu-item "Change Dictionary..." ispell-change-dictionary :help "Supply explicit dictionary file name") [ispell-kill-ispell] (menu-item "Kill Process" ispell-kill-ispell :enable (and (boundp 'ispell-process) ispell-process (eq (ispell-process-status) 'run)) :help "Terminate Ispell subprocess") [ispell-pdict-save] (menu-item "Save Dictionary" (lambda nil (interactive) (ispell-pdict-save t t)) :help "Save personal dictionary") [ispell-customize] (menu-item "Customize..." (lambda nil (interactive) (customize-group 'ispell)) :help "Customize spell checking options") [ispell-help] (menu-item "Help" (lambda nil (interactive) (describe-function 'ispell-help)) :help "Show standard Ispell keybindings and commands") [flyspell-mode] (menu-item "Automatic spell checking (Flyspell)" flyspell-mode :help "Check spelling while you edit the text" :button (:toggle bound-and-true-p flyspell-mode)) [ispell-complete-word] (menu-item "Complete Word" ispell-complete-word :help "Complete word at cursor using dictionary") [ispell-complete-word-interior-frag] (menu-item "Complete Word Fragment" ispell-complete-word-interior-frag :help "Complete word fragment at cursor") [ispell-continue] (menu-item "Continue Spell-Checking" ispell-continue :enable (and (boundp 'ispell-region-end) (marker-position ispell-region-end) (equal (marker-buffer ispell-region-end) (current-buffer))) :help "Continue spell checking last region") [ispell-word] (menu-item "Spell-Check Word" ispell-word :help "Spell-check word at cursor") [ispell-comments-and-strings] (menu-item "Spell-Check Comments" ispell-comments-and-strings :help "Spell-check only comments and strings") [ispell-region] (menu-item "Spell-Check Region" ispell-region :enable mark-active :help "Spell-check text in marked region") [ispell-message] (menu-item "Spell-Check Message" ispell-message :visible (eq major-mode 'mail-mode) :help "Skip headers and included message text") [ispell-buffer] (menu-item "Spell-Check Buffer" ispell-buffer :help "Check spelling of selected buffer") ispell-int-char identity] 4) #@205 The name of the current dictionary, or nil for the default. This is passed to the ispell process using the `-d' switch and is used as key in `ispell-local-dictionary-alist' and `ispell-dictionary-alist'. (defvar ispell-current-dictionary nil (#$ . 32528)) #@130 The name of the current personal dictionary, or nil for the default. This is passed to the ispell process using the `-p' switch. (defvar ispell-current-personal-dictionary nil (#$ . 32791)) #@64 Default dictionary to use if `ispell-local-dictionary' is nil. (defvar ispell-dictionary nil (#$ . 32987)) #@113 Decodes multibyte character strings. Protects against bogus binding of `enable-multibyte-characters' in XEmacs. (defalias 'ispell-decode-string #[(str) "\302\300!\203\203\303\304!\203\305 \203\304 \305 \"\207 \207" [enable-multibyte-characters str boundp fboundp decode-coding-string ispell-get-coding-system] 3 (#$ . 33101)]) (byte-code "\303\304\305\306#\210\304B\307\310\304!\311\312\n\"\210 )!\207" [current-load-list table ucs-mule-8859-to-mule-unicode put ispell-unified-chars-table char-table-extra-slots 0 (lambda (#1=#:defconst-tmp-var) (defconst ispell-unified-chars-table #1#)) make-char-table map-char-table #[(c v) "\205 U?\205\nH\206\304!\n \304 !PI)\207" [v c table unified string] 5]] 4) (defalias 'ispell-get-decoded-string #[(n) "\306 \"\206 \306\n\"\f 8\211G\307V\203B\310 !\204B\311 !\211\307H\312U\203<\313\314 \" GS=\203<\315\316\317 \320#!\f \233 \240\210 *\207" [ispell-current-dictionary ispell-local-dictionary-alist ispell-dictionary-alist slot n str assoc 0 multibyte-string-p ispell-decode-string 91 string-match "\\]" string-as-multibyte mapconcat #[(c) " H\211\203 \nH\202\304 !)\207" [ucs-mule-8859-to-mule-unicode c unichar ispell-unified-chars-table string] 3] ""] 6]) (defalias 'ispell-get-casechars #[nil "\300\301!\207" [ispell-get-decoded-string 1] 2]) (defalias 'ispell-get-not-casechars #[nil "\300\301!\207" [ispell-get-decoded-string 2] 2]) (defalias 'ispell-get-otherchars #[nil "\300\301!\207" [ispell-get-decoded-string 3] 2]) (defalias 'ispell-get-many-otherchars-p #[nil "\303\304 \"\206\f\304\n\"8\207" [ispell-current-dictionary ispell-local-dictionary-alist ispell-dictionary-alist 4 assoc] 4]) (defalias 'ispell-get-ispell-args #[nil "\303\304 \"\206\f\304\n\"8\207" [ispell-current-dictionary ispell-local-dictionary-alist ispell-dictionary-alist 5 assoc] 4]) (defalias 'ispell-get-extended-character-mode #[nil "\303\304 \"\206\f\304\n\"8\207" [ispell-current-dictionary ispell-local-dictionary-alist ispell-dictionary-alist 6 assoc] 4]) (defalias 'ispell-get-coding-system #[nil "\303\304 \"\206\f\304\n\"8\207" [ispell-current-dictionary ispell-local-dictionary-alist ispell-dictionary-alist 7 assoc] 4]) #@66 Non-nil means personal dictionary has modifications to be saved. (defvar ispell-pdict-modified-p nil (#$ . 35320)) (byte-code "\301B\302\301!\204\303\301\304\"\210\304\207" [current-load-list ispell-quit default-boundp set-default nil] 3) #@51 The directory where `ispell-process' was started. (defvar ispell-process-directory nil (#$ . 35569)) #@43 Output filter from piped calls to Ispell. (defvar ispell-filter nil (#$ . 35676)) #@46 Control variable for Ispell filter function. (defvar ispell-filter-continue nil (#$ . 35764)) #@68 Buffer used for reading output of a synchronous Ispell subprocess. (defvar ispell-output-buffer nil (#$ . 35864)) #@67 Buffer used for passing input to a synchronous Ispell subprocess. (defvar ispell-session-buffer nil (#$ . 35984)) #@68 Command-line arguments to pass to a synchronous Ispell subprocess. (defvar ispell-cmd-args nil (#$ . 36104)) #@40 Marker for `query-replace' processing. (defvar ispell-query-replace-marker (make-marker) (#$ . 36219)) #@46 Marker for return point from recursive edit. (defvar ispell-recursive-edit-marker (make-marker) (#$ . 36328)) #@104 Non-nil when we're checking a mail message. Set to the MIME boundary locations when checking messages. (defvar ispell-checking-message nil (#$ . 36445)) (byte-code "\301B\302\303!\207" [current-load-list ispell-choices-buffer (lambda (#1=#:defconst-tmp-var) (defconst ispell-choices-buffer #1#)) "*Choices*"] 2) #@43 Overlay variable for Ispell highlighting. (defvar ispell-overlay nil (#$ . 36765)) #@175 The keyword for local oddly-spelled words to accept. The keyword will be followed by any number of local word spellings. There can be multiple of these keywords in the file. (defconst ispell-words-keyword "LocalWords: " (#$ . 36855)) #@244 The keyword for a local dictionary to use. The keyword must be followed by a valid dictionary name, defined in `ispell-local-dictionary-alist' or `ispell-dictionary-alist'. When multiple occurrences exist, the last keyword definition is used. (defconst ispell-dictionary-keyword "Local IspellDict: " (#$ . 37096)) #@178 The keyword for defining buffer local dictionaries. Keyword must be followed by the filename of a personal dictionary. The last occurring definition in the buffer will be used. (defconst ispell-pdict-keyword "Local IspellPersDict: " (#$ . 37417)) #@375 The keyword for overriding default Ispell parsing. The above keyword string should be followed by `latex-mode' or `nroff-mode' to put the current buffer into the desired parsing mode. Extended character mode can be changed for this buffer by placing a `~' followed by an extended-character mode -- such as `~.tex'. The last occurring definition in the buffer will be used. (defconst ispell-parsing-keyword "Local IspellParsing: " (#$ . 37671)) #@379 Alist expressing beginning and end of regions not to spell check. The alist key must be a regular expression. Valid forms include: (KEY) - just skip the key. (KEY . REGEXP) - skip to the end of REGEXP. REGEXP may be string or symbol. (KEY REGEXP) - skip to end of REGEXP. REGEXP must be a string. (KEY FUNCTION ARGS) - FUNCTION called with ARGS returns end of region. (defvar ispell-skip-region-alist '((ispell-words-keyword forward-line) (ispell-dictionary-keyword forward-line) (ispell-pdict-keyword forward-line) (ispell-parsing-keyword forward-line) ("^---*BEGIN PGP [A-Z ]*--*" . "^---*END PGP [A-Z ]*--*") ("^begin [0-9][0-9][0-9] [^ ]+$" . "\nend\n") ("^%!PS-Adobe-[123].0" . "\n%%EOF\n") ("^---* \\(Start of \\)?[Ff]orwarded [Mm]essage" . "^---* End of [Ff]orwarded [Mm]essage") ("\\(--+\\|_+\\|\\(/\\w\\|\\(\\(\\w\\|[-_]\\)+[.:@]\\)\\)\\(\\w\\|[-_]\\)*\\([.:/@]+\\(\\w\\|[-_~=?&]\\)+\\)+\\)")) (#$ . 38123)) (put 'ispell-skip-region-alist 'risky-local-variable t) #@207 *Lists of regions to be skipped in TeX mode. First list is used raw. Second list has key placed inside \begin{}. Delete or add any regions you want to be automatically selected for skipping in latex mode. (defvar ispell-tex-skip-alists '((("\\\\addcontentsline" ispell-tex-arg-end 2) ("\\\\add\\(tocontents\\|vspace\\)" ispell-tex-arg-end) ("\\\\\\([aA]lph\\|arabic\\)" ispell-tex-arg-end) ("\\\\bibliographystyle" ispell-tex-arg-end) ("\\\\makebox" ispell-tex-arg-end 0) ("\\\\e?psfig" ispell-tex-arg-end) ("\\\\document\\(class\\|style\\)" . "\\\\begin[ \n]*{[ \n]*document[ \n]*}")) (("\\(figure\\|table\\)\\*?" ispell-tex-arg-end 0) ("list" ispell-tex-arg-end 2) ("program" . "\\\\end[ \n]*{[ \n]*program[ \n]*}") ("verbatim\\*?" . "\\\\end[ \n]*{[ \n]*verbatim\\*?[ \n]*}"))) (#$ . -39114)) (put 'ispell-tex-skip-alist 'risky-local-variable t) #@186 *Lists of start and end keys to skip in HTML buffers. Same format as `ispell-skip-region-alist' Note - substrings of other matches must come last (e.g. "<[tT][tT]/" and "<[^ \t\n>]"). (defvar ispell-html-skip-alists '(("<[cC][oO][dD][eE]\\>[^>]*>" "") ("<[sS][cC][rR][iI][pP][tT]\\>[^>]*>" "") ("<[aA][pP][pP][lL][eE][tT]\\>[^>]*>" "") ("<[vV][eE][rR][bB]\\>[^>]*>" "<[vV][eE][rR][bB]\\>[^>]*>") ("<[tT][tT]/" "/") ("<[^ \n>]" ">") ("&[^ \n;]" "[; \n]")) (#$ . -39980)) (put 'ispell-html-skip-alists 'risky-local-variable t) #@437 A buffer local variable containing the current personal dictionary. If non-nil, the value must be a string, which is a file name. If you specify a personal dictionary for the current buffer which is different from the current personal dictionary, the effect is similar to calling \[ispell-change-dictionary]. This variable is automatically set when defined in the file with either `ispell-pdict-keyword' or the local variable syntax. (defvar ispell-local-pdict ispell-personal-dictionary (#$ . 40590)) (make-variable-buffer-local 'ispell-local-pdict) #@128 Contains the buffer name if local word definitions were used. Ispell is then restarted because the local words could conflict. (defvar ispell-buffer-local-name nil (#$ . 41150)) #@350 *Indicates whether ispell should parse the current buffer as TeX Code. Special value `use-mode-name' tries to guess using the name of `major-mode'. Default parser is `nroff'. Currently the only other valid parser is `tex'. You can set this variable in hooks in your init file -- eg: (add-hook 'tex-mode-hook (lambda () (setq ispell-parser 'tex))) (defvar ispell-parser 'use-mode-name (#$ . -41335)) #@44 Marker that allows spelling continuations. (defvar ispell-region-end (make-marker) (#$ . 41742)) #@61 If non-nil, `ispell-word' does not try to correct the word. (defvar ispell-check-only nil (#$ . 41845)) #@196 Wait for output from ispell process, or TIMEOUT-SECS and TIMEOUT-MSECS. If asynchronous subprocesses are not supported, call `ispell-filter' and pass it the output of the last ispell invocation. (defalias 'ispell-accept-output #[(&optional timeout-secs timeout-msecs) "\203\n\306 \n #\207 \204\307\310!\207\f\311\312!\204%\311\211\f\202=\212q\210\313ed\")\314\315 \"\210\212q\210\316 )*\207" [ispell-async-processp ispell-process timeout-secs timeout-msecs ispell-output-buffer ispell-output accept-process-output error "No Ispell process to read output from!" nil bufferp buffer-substring-no-properties ispell-filter t erase-buffer buf] 4 (#$ . 41956)]) #@137 Notify aspell that MISSPELLED should be spelled REPLACEMENT. This allows it to improve the suggestion list based on actual mispellings. (defalias 'ispell-send-replacement #[(misspelled replacement) "\205 \303\304 \305\n\306\260!\207" [ispell-really-aspell misspelled replacement ispell-send-string "$$ra " "," "\n"] 6 (#$ . 42635)]) #@47 Send the string STRING to the Ispell process. (defalias 'ispell-send-string #[(string) "\203 \306 \n\"\207\n\307H\310\311 \f \312 !\"#$%&\212#q\210` '\nc\210&%>?\205\335\312\211\211()*\313\314!\203X\f\203X\315 *\315 )\"q\210\316 \210#q\210\317\320ed+\312\"\312\321\322!&\n(\"q\210eb\210\323 ,\324\216\325\326!\204\223\327\330\331`\312\210`\"\"\210\n\332\230\204\240\312y\210e`|\210#q\210`|\210(\333>\205\334\334-eb\210-\205\333\325\335!\203\320`.\312y\210.`|\210)\202\266\312y\307U\211-\204\273\312)-. \207" [ispell-async-processp ispell-process string ispell-session-buffer ispell-output-buffer ispell-cmd-args process-send-string 0 (42 64 126 43 45 33 37) fundamental-mode nil boundp enable-multibyte-characters ispell-get-coding-system erase-buffer apply ispell-call-process-region "-a" "-m" match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at "@(#) " error "Ispell error: %s" buffer-substring-no-properties "\n" (0 nil) t "^\\*" ispell-process-directory prev-pos defdir ispell-args output-buf session-buf default-major-mode cmds-to-defer cmd default-directory status coding-system-for-write coding-system-for-read ispell-program-name save-match-data-internal more-lines start] 12 (#$ . 42977)]) (defalias 'ispell-insert-word #[(word) "` c\210\303\n!\205\304`\n#)\207" [pos word translation-table-for-input char-table-p translate-region] 4]) #@1142 Check spelling of word under or before the cursor. If the word is not found in dictionary, display possible corrections in a window allowing you to choose one. If optional argument FOLLOWING is non-nil or if `ispell-following-word' is non-nil when called interactively, then the following word (rather than preceding) is checked when the cursor is not over a word. When the optional argument QUIETLY is non-nil or `ispell-quietly' is non-nil when called interactively, non-corrective messages are suppressed. With a prefix argument (or if CONTINUE is non-nil), resume interrupted spell-checking of a buffer or region. Word syntax is controlled by the definition of the chosen dictionary, which is in `ispell-local-dictionary-alist' or `ispell-dictionary-alist'. This will check or reload the dictionary. Use \[ispell-change-dictionary] or \[ispell-region] to update the Ispell process. Return values: nil word is correct or spelling is accepted. 0 word is inserted into buffer-local definitions. "word" word corrected from word list. ("word" arg) word is hand entered. quit spell session exited. (defalias 'ispell-word #[(&optional following quietly continue) "\203\306 \207\307 \210\310 \210`\311 !\312\211\211\211\211/010A@/0AA@0@02\204?\313\31430!\"\210\315\316!\210\315\3170\320Q!\210\321 \2104@\322\230\203K4A\2114\203z4<\203z4G\323V\203t\324\325!\210\202z\3264@!\f\327=\203\2532\204\216\313\33030!\"\210\331\332!\203\225\332/!\203\225\331\333!\203\225\333\332/!!\210\202\225\f;\203\3372\204\302\313\33430!3\f!#\210\331\332!\203\225\332/!\203\225\331\333!\203\225\333\332/!!\210\202\225\f\204\352\313\335!\210\202\2255\203$\331\336!\203\331\337!\203\225\336/ \"6\3376\3407#\210\3376\341\342#\210)\202\225\343 \210\313\34430!\"\210\202\225\345\213\210\n\346\232\2035\347\f@!\210\202\211\n\203\211\n:\204B\n\202D\n@0G /ZZ1\\1 \f@\232\204o/b\210\350 !\210`` /Z\\|\210`1`\n:\203\211\nA@\203}\351\213\210/b\210\352/ \"?8\3539!\203\225\3549!\210\355:!\2108\203\244\3128\3561b\210\n.\207" [continue following replace new-word poss end ispell-continue ispell-maybe-find-aspell-dictionaries ispell-accept-buffer-local-defs ispell-get-word nil message "Checking spelling of %s..." ispell-send-string "%\n" "^" "\n" ispell-accept-output "" 1 error "Ispell and its process have different character maps" ispell-parse-output t "%s is correct" fboundp extent-at delete-extent "%s is correct because of root %s" "Error in ispell process" make-extent set-extent-property face priority 2000 beep "%s is incorrect" ((byte-code "\304AA@AAA@@ \n%\304\207" [poss start end replace ispell-command-loop] 6)) 0 ispell-add-per-file-word-list ispell-insert-word ((query-replace word new-word t)) ispell-region get-buffer kill-buffer ispell-pdict-save quit start word cursor-location quietly ispell-format-word-function ispell-filter ispell-check-only ext ispell-highlight-face ispell-quit ispell-choices-buffer ispell-silently-savep] 8 (#$ . 44445) (list ispell-following-word ispell-quietly current-prefix-arg)]) #@500 Return the word for spell-checking according to ispell syntax. If optional argument FOLLOWING is non-nil or if `ispell-following-word' is non-nil when called interactively, then the following word (rather than preceding) is checked when the cursor is not over a word. Optional second argument contains otherchars that can be included in word many times. Word syntax is controlled by the definition of the chosen dictionary, which is in `ispell-local-dictionary-alist' or `ispell-dictionary-alist'. (defalias 'ispell-get-word #[(following &optional extra-otherchars) "\306 \307 \310 \311 \312\n\313\230?\205\n\314P\f\205\f\314P\315 \204)\f\203-\316\202.\314\260\317\211\317\211\317\320!\204Z \203T\321d\322#\210\202Z\323e\322#\210\323 e\324#\210\n\313\230\204l\320\n!\204v\f\203\304\320\f!\203\304o\204\304\203\203 \203\304`=\204\304\f\203\246\320\f!\203\246\325u\210\320!\203`\323 e\326#\210\202`\322`\325u\210\320!\203\276\323 e\326#\210\202`\327u\210\202`\321 d\322#\204\336!\203\330\313``E\202\363\330\331!\202\363\332\224`\333\"\211E.\n\207" [ispell-casechars ispell-not-casechars ispell-otherchars ispell-many-otherchars-p extra-otherchars word-regexp ispell-get-casechars ispell-get-not-casechars ispell-get-otherchars ispell-get-many-otherchars-p "+\\(" "" "?" "+\\)" "*" nil looking-at re-search-forward t re-search-backward start -1 move 1 error "No word found to check!" 0 buffer-substring-no-properties did-it-once prevpt end word following ispell-check-only] 8 (#$ . 47596)]) #@96 Check to see if the personal dictionary has been modified. If so, ask if it needs to be saved. (defalias 'ispell-pdict-save #[(&optional no-query force-save) "\203\f<\203\f@\204 \203&\n\204\303\304!\203&\305\306!\210\307\310!\210\311\211\207" [ispell-pdict-modified-p force-save no-query y-or-n-p "Personal dictionary modified. Save? " ispell-send-string "#\n" message "Personal dictionary saved." nil] 2 (#$ . 49167) (list ispell-silently-savep t)]) #@671 Display possible corrections from list MISS. GUESS lists possibly valid affix construction of WORD. Returns nil to keep word. Returns 0 to insert locally into buffer-local dictionary. Returns string for new chosen word. Returns list for new replacement word (will be rechecked). Query-replace when list length is 2. Automatic query-replace when second element is `query-replace'. Highlights the word, which is assumed to run from START to END. Global `ispell-pdict-modified-p' becomes a list where the only value indicates whether the dictionary has been modified when option `a' or `i' is used. Global `ispell-quit' set to start location to continue spell session. (defalias 'ispell-command-loop #[(miss guess word start end) "\306\307 \310Z \n^\311\312\313 !\314\315\211\211\211\211@ABCDEFGH\212\316I!q\210\317J\320K\206<\321\322\323L!\260M\324\325!\203Z\326\327!\203Z\325\315p\315B#\210\330 \210N\203\244\331\332\261\210N\203\222iN@G\\\310\\\333 V\203\202\334c\210GTGN@\335\261\210NA\211N\204l\336c\210GE\203\240\337\202\241\340\\GE\203 iE@G\\H\341V\203\272\337\202\273\314\\\342\\\333 V\203\320\343c\210GT\211G\202\322GFW\203 HD>\203\357\344HT!HBTB\202\330\345H\346E@\347\261\210EAE\344HT!H\202\244\344HBZ\306Z!H)\350O!\204 \351\314!\210C\203-\313 \352 \315\"\210\353GO\"\210\354\355 \211!\210\356\216P\203J\357QO\360#\210\361 \210\315R\362\363!\210)\360S\324\364!\203c\364 \202e\365 A\314BT\204vA\342U\203|\366A\315T)D\211U\203\244U@\306V\203\233U@AW\203\233BTBUA\211U\204\205ABZ\306Z@)A\367U\203\271\315\202\347A\370U\203\317\371\372J\343Q!\210\373V\315\202\347A\374U\204\335A\375U\203\372\371\376J\343Q!\210V\204\357VCVA\375U\205\347\314\202\347A\377U\204\nA\201_U\203cP\201`=\203\357QO\315\360$\210A\201_U\204*W\203>\201a\201b\201cJ\"J\"\360D\202I\201a\201dJ\"\315BP\201`=\203^\357QO\315\201`$\210 )\202\347A\201eU\204}AXU\204}A\201fU\203\254P\201`=\203\217\357QO\315\360$\210\201g \210P\201`=\203\250\357QO\315\201`$\210\360\202\347A\201hU\203\311\201iY!\210\362\201j!\210\360Z\315\202\347A\366U\203\354\201iY!\210\362\201k\201l\201m!\"\210QZ\315\202\347A\201nU\203\201o\201p!\203\201q\360!\210[?\206\f`Z\315\211V\202\347\360\202\347A\201rU\203\377P\201`=\2034\357QO\315\360$\210\201a\201sJ\"\211\\\203\346\212\316I!q\210\330 \210\306H\314B\317\\\320]RM\201t\\!\211EGE\203\316iE@G\\H\341V\203\337\202\200\314\\\342\\\333 V\203\225\343c\210GT\211G\202\227GFW\203\316HD>\203\264\344HT!HBTB\202\235\345H\346E@\347\261\210EAE\344HT!H\202i\344HBZ\306Z!H)\353GO\"\210\354\355 !\210)P\201`=\203\373\357QO\315\201`$\210\360\202\347A\201uU\203\371\372J\227\343Q!\210\201vV\315\202\347A\201wU\203>\371\372\201a\201xJ\"\343Q!\210\201yVJ\315B\202\347@\314Y\203d@HW\203dW\203]@ 8\201zD\202\347@ 8\202\347A\201{U\203v\201| \210\360\202\347A\201}U\203\313\201~^!\203\232\362\201!\210\201\200 \210\351\340!\210\202\304^Q\315\223\210P\203\255\357QO\"\210\201\201\216\362\201k\201l\201\202!\"\210\201\203\213\210)J\315D\202\347A\201\204U\203\341\201\205\201\206! \210\360\202\347\201\207 \210\360\211\360=\204J .\207" [ispell-choices-win-default-height miss window-min-height dedicated-win textwin result 48 ispell-adjusted-window-height 4 (32 105 97 65 114 82 63 120 88 113 108 117 109) window-dedicated-p selected-window 0 nil get-buffer-create "-- %b -- word: " " -- dict: " "default" " -- prog: " file-name-nondirectory fboundp set-specifier boundp horizontal-scrollbar-visible-p erase-buffer "Affix rules generate and capitalize " "this word as shown below:\n " window-width "\n " " " "\nUse option `i' to accept this spelling and put it in your private dictionary." 3 2 126 7 "\n" ispell-int-char "(" ") " " " pos-visible-in-window-p sit-for set-window-dedicated-p ispell-show-choices select-window next-window ((byte-code "\203\303\213\210 \203\304\n\305\"\210\304\207" [ispell-highlight-p dedicated dedicated-win ((byte-code "\303!\210\304 \n\"\207" [textwin start end select-window ispell-highlight-spelling-error] 3)) set-window-dedicated-p t] 3)) ispell-highlight-spelling-error t undo-boundary message "C-h or ? for more options; SPC to leave unchanged, Character to replace word" read-char-exclusive read-char 88 32 105 ispell-send-string "*" (t) 97 65 "@" 114 num char skipped dedicated command-characters choices max-lines line count ispell-choices-buffer word ispell-current-dictionary ispell-program-name mode-line-format guess end ispell-highlight-p start message-log-max inhibit-quit quit-flag com-chars ispell-pdict-modified-p ispell-query-replace-choices help-char ispell-silently-savep ispell-quit ispell-checking-message new-word ispell-alternate-dictionary ispell-recursive-edit-marker 82 block read-string format "Query-replacement for %s: " "Replacement for: " 63 8 ispell-help 120 ispell-pdict-save "Exited spell-checking" "%s" substitute-command-keys "Spell-checking suspended; use C-u \\[ispell-word] to resume" 113 y-or-n-p "Really kill Ispell process? " ispell-kill-ispell 108 "Lookup string (`*' is wildcard): " lookup-words 117 (t) 109 "Insert: " (t) query-replace 12 redraw-display 18 marker-position "Only one recursive edit session supported" beep ((byte-code "b\210\301!p\232\204\302\211\223\210\303\304!\210\302\211\223\207" [ispell-recursive-edit-marker marker-buffer nil error "Cannot continue ispell from this buffer."] 3)) "Exit recursive edit with \\[exit-recursive-edit]" ((byte-code "\212\300 \210)\300\207" [recursive-edit] 1)) 26 key-binding "" ding] 14 (#$ . 49640)]) #@47 Shows the choices in another buffer or frame. (defalias 'ispell-show-choices #[(line end) "\203\306\307!\203\307\310 !!\210\311\312 !\207\313 !\211\203n \314\n!U\203,\311\n!\210\202u \314\n!Z\315\316!\210` W\203F  Z\\\317\320!\210\315 !\210\321\322 `\fV\203[\f\202\\`\"\210b\210\311\n!\210\323 !\210*\202u\324 ]!\210\325 !\210eb)\207" [ispell-use-framepop-p ispell-choices-buffer choices-window line visible window-line fboundp framepop-display-buffer get-buffer select-window previous-window get-buffer-window ispell-adjusted-window-height vertical-motion -1 move-to-window-line 0 set-window-start selected-window enlarge-window ispell-overlay-window switch-to-buffer ispell-choices-win-default-height end] 5 (#$ . 55441)]) #@1041 Display a list of the options available when a misspelling is encountered. Selections are: DIGIT: Replace the word with a digit offered in the *Choices* buffer. SPC: Accept word this time. `i': Accept word and insert into private dictionary. `a': Accept word for this session. `A': Accept word and place in `buffer-local dictionary'. `r': Replace word with typed-in value. Rechecked. `R': Replace word with typed-in value. Query-replaced in buffer. Rechecked. `?': Show these commands. `x': Exit spelling buffer. Move cursor to original point. `X': Exit spelling buffer. Leaves cursor at the current point, and permits the aborted check to be completed later. `q': Quit spelling session (Kills ispell process). `l': Look up typed-in replacement in alternate dictionary. Wildcards okay. `u': Like `i', but the word is lower-cased first. `m': Place typed-in value in personal dictionary, then recheck current word. `C-l': Redraw screen. `C-r': Recursive edit. `C-z': Suspend Emacs or iconify frame. (defalias 'ispell-help #[nil "\304\232\203\305\306!\210\307\310!\207\311\312\313\314\213+\207" [ispell-help-in-bufferp help-3 help-2 help-1 electric require ehelp with-electric-help #[nil "\300\301!\210\302\207" [princ "Selections are:\n\nDIGIT: Replace the word with a digit offered in the *Choices* buffer.\nSPC: Accept word this time.\n`i': Accept word and insert into private dictionary.\n`a': Accept word for this session.\n`A': Accept word and place in `buffer-local dictionary'.\n`r': Replace word with typed-in value. Rechecked.\n`R': Replace word with typed-in value. Query-replaced in buffer. Rechecked.\n`?': Show these commands.\n`x': Exit spelling buffer. Move cursor to original point.\n`X': Exit spelling buffer. Leaves cursor at the current point, and permits\n the aborted check to be completed later.\n`q': Quit spelling session (Kills ispell process).\n`l': Look up typed-in replacement in alternate dictionary. Wildcards okay.\n`u': Like `i', but the word is lower-cased first.\n`m': Place typed-in value in personal dictionary, then recheck current word.\n`C-l': Redraw screen.\n`C-r': Recursive edit.\n`C-z': Suspend Emacs or iconify frame." nil] 2] "[r/R]eplace word; [a/A]ccept for this session; [i]nsert into private dictionary" "[l]ook a word up in alternate dictionary; e[x/X]it; [q]uit session" "[u]ncapitalized insert into dict. Type 'x C-h f ispell-help' for more help" ((byte-code "\203\305\306!\210\307\310\311!!\210 \312\n\312 \260c\210\313\314!\210\315\311!\207\316\216\317\320\321 !\210\322 \210\323\324!\210\325\326!\210 \312\n\312 \260c\210\313\314!*\207" [ispell-help-in-bufferp help-1 help-2 help-3 resize-mini-windows ispell-overlay-window 4 switch-to-buffer get-buffer-create "*Ispell Help*" "\n" sit-for 5 kill-buffer ((erase-buffer)) grow-only select-window minibuffer-window erase-buffer message nil enlarge-window 2] 5))] 3 (#$ . 56198)]) #@353 Look up WORD in optional word-list dictionary LOOKUP-DICT. A `*' serves as a wild card. If no wild cards, `look' is used if it exists. Otherwise the variable `ispell-grep-command' contains the command used to search for the words (usually egrep). Optional second argument contains the dictionary to use; the default is `ispell-alternate-dictionary'. (defalias 'lookup-words #[(word &optional lookup-dict) "\204 \n\306\307\f\" \205\206 ?\310\311!\203*\202,\2038\202:\312\211\312\313\216\314\213\210). \207" [lookup-dict ispell-alternate-dictionary ispell-use-ptys-p process-connection-type word wild-p string-match "\\*" get-buffer-create "*Ispell-Temp*" nil ((byte-code "\303!\210 \203\304\305 @\"\203\306\307\n @#\210\303\207" [ispell-grep-buffer results ispell-grep-command kill-buffer string-match ".+: " error "%s error: %s"] 4)) ((byte-code "\306\307\310!\"\210 q\210\n\204(\311 \312\261\210\313\314\315\316#\203\"\317c\210\202\320 \321 \210\322\323\315\316\315\f\203>\fG\324V\203>\fC\202E\n?\205E\325C C\244 \205N C\244&\211;\203h\326\327\310!#B\202\220db\210o\204xh\330U\204x\330c\210o\204\220`\331y\210\332`S\"B\202x\315\207" [prog ispell-grep-buffer look-p word args lookup-dict message "Starting \"%s\" process..." file-name-nondirectory "^" "$" search-backward "*" nil t "." buffer-string erase-buffer apply ispell-call-process 0 "-e" format "error: %s exited with signal %s" 10 -1 buffer-substring-no-properties status results loc] 9)) ispell-look-p ispell-have-new-look look-p ispell-grep-buffer ispell-look-command ispell-grep-command prog ispell-look-options ispell-grep-options args status results loc] 4 (#$ . 59184)]) #@52 Output filter function for ispell, grep, and look. (defalias 'ispell-filter #[(process output) "\306\307\310 \205T\311\312 \n#\f\203* \203* <\203* \211@ \nOP\240\210\2021 \nO B\204=\307\310\211\202\310T\211 GU\203O\310\211\202\202+\207" [end continue start output ispell-filter-continue ispell-filter 0 t nil string-match "\n"] 6 (#$ . 60915)]) #@347 Highlight the word from START to END with a kludge using `inverse-video'. When the optional third arg HIGHLIGHT is set, the word is highlighted; otherwise it is displayed normally. Uses block cursor to highlight one character. Optional REFRESH will unhighlighted then highlight, using block cursor highlighting when REFRESH is equal to `block'. (defalias 'ispell-highlight-spelling-error-generic #[(start end &optional highlight refresh) "\306=\203 \306=\204\nT\307 \310\311\n \"\312\211 b\210\n |\210\313\314 \nZ\"\210\315\316!\210\203<?\n |\210c\210\315\316!\210\204S b\210\202b?\306=\203b\nSb\210\317!\210 \205|\320 \306=\203v\n\202y\n\321Z \312#-\207" [ispell-highlight-p refresh start end buffer-undo-list inhibit-quit block buffer-modified-p nil buffer-substring-no-properties t insert-char 32 sit-for 0 set-buffer-modified-p ispell-highlight-spelling-error-generic 2 text buffer-read-only modified highlight inverse-video] 5 (#$ . 61296)]) #@172 Highlight the word from START to END using `isearch-highlight'. When the optional third arg HIGHLIGHT is set, the word is highlighted, otherwise it is displayed normally. (defalias 'ispell-highlight-spelling-error-xemacs #[(start end &optional highlight) "\203 \303 \n\"\207\304 \207" [highlight start end isearch-highlight isearch-dehighlight] 3 (#$ . 62289)]) #@240 Highlight the word from START to END using overlays. When the optional third arg HIGHLIGHT is set, the word is highlighted otherwise it is displayed normally. The variable `ispell-highlight-face' selects the face to use for highlighting. (defalias 'ispell-highlight-spelling-error-overlay #[(start end &optional highlight) "\203& \203\306 \n p$\210\202.\307\n \"\310 \311\312#\210\310 \313\f#\210\202. \203.\314 !\210 \205j\315\316!\205j\203a\317\320\321\n \"!\317Q\322\323\324\315\325!\205V\315\326!\205^\"+\207\316!\210\323\211\207" [highlight ispell-overlay start end ispell-highlight-face ispell-lazy-highlight move-overlay make-overlay overlay-put priority 1001 face delete-overlay boundp lazy-highlight-cleanup "\\b" regexp-quote buffer-substring-no-properties t nil isearch-lazy-highlight-new-loop reg-start reg-end isearch-case-fold-search isearch-regexp isearch-string isearch-lazy-highlight-last-string] 5 (#$ . 62660)]) (defalias 'ispell-highlight-spelling-error #[(start end &optional highlight refresh) "\305\306!\203\307\310!\203\310 \204\203\311 \n #\207\312 \n \f$\207" [window-system start end highlight refresh featurep faces fboundp display-color-p ispell-highlight-spelling-error-overlay ispell-highlight-spelling-error-generic] 5]) #@367 Like `window-height', adjusted to correct for the effect of tall mode-lines. The value returned is actually the nominal number of text-lines in the window plus 1. On a terminal, this is the same value returned by `window-height', but if the window has a mode-line is taller than a normal text line, the returned value may be smaller than that from `window-height'. (defalias 'ispell-adjusted-window-height #[(&optional window) "\301\302!\203 \302!T\207\301\303!\203\303 \203\304!S\207\304!\207" [window fboundp window-text-height display-graphic-p window-height] 2 (#$ . 63958)]) #@202 Create a window covering the top HEIGHT lines of the current window. Ensure that the line above point is still visible but otherwise avoid scrolling the current window. Leave the new window selected. (defalias 'ispell-overlay-window #[(height) "\212\212\305\306!\210`)\212\307!\210`)\211 W\203\n\310\311\312 !\236A\2039\312 \313 \314\"\210\315\316\"\210\313 \317\"\210)\202>\315\316\"\210\320 Z\211\321V\203X\322\f!\210 b\210\305\f!\210`\n^)\323\324 \"+\207" [height top oldot frame deficit vertical-motion -1 move-to-window-line unsplittable frame-parameters selected-frame modify-frame-parameters ((unsplittable)) split-window nil ((unsplittable . t)) ispell-adjusted-window-height 0 enlarge-window set-window-start next-window] 4 (#$ . 64554)]) #@629 Parse the OUTPUT string from Ispell process and return: 1: t for an exact match. 2: A string containing the root word matched via suffix removal. 3: A list of possible correct spellings of the format: ("ORIGINAL-WORD" OFFSET MISS-LIST GUESS-LIST) ORIGINAL-WORD is a string of the possibly misspelled word. OFFSET is an integer giving the line offset of the word. MISS-LIST and GUESS-LIST are possibly null lists of guesses and misses. 4: nil when an error has occurred. Optional second arg ACCEPT-LIST is list of words already accepted. Optional third arg SHIFT is an offset to apply based on previous corrections. (defalias 'ispell-parse-output #[(output &optional accept-list shift) "\306\230\203\307\207\310\230\203\307\207\311\230\203\307\207\312H\313=\203%\314\315O\207\316\317\"\312\232\203<\320 \210\321\322\"\210\323\324!\210\315\207\312H\314\316\325\314#O\312\315\211\211\211\312\225\315O\326=\203g\312\202u\327!\316\325\330#T\315O\327!\326=\203\205\315\202\217\316\325\330#T\315O\203\313\316\331\" T\211\fV\203\255\312O\nB\202\265\312O B\330\225\203\277\315\202\307\314\\\315O)\202\217\235\203\327\307\202\354\247\203\346 \\\202\347 \237\n\237F.\207" [output offset guess-list miss-list count cur-count "" t "*" "-" 0 43 2 nil string-match "[ a-zA-Z]" ding message "Ispell error: %s" sit-for 5 " " 35 string-to-number 1 ", \\|\\($\\)" original-word type end accept-list shift] 8 (#$ . 65326)]) #@115 Return the status of the Ispell process. When asynchronous processes are not supported, `run' is always returned. (defalias 'ispell-process-status #[nil "\203\302 !\207 \205 \303\207" [ispell-async-processp ispell-process process-status run] 2 (#$ . 66839)]) #@143 Start the ispell process, with support for no asynchronous processes. Keeps argument list for future ispell invocations for no async support. (defalias 'ispell-start-process #[nil "\306 \206\n\f\206 \307  \203#\310\235\204#\311\310 D\"\2032\311\312\313!D\"\311\"\306\203S\314\315\316\306\317\320&)\202e\321\322!\321\323! \324\325!\210\326)\207" [args ispell-local-dictionary ispell-dictionary ispell-current-dictionary ispell-local-pdict ispell-personal-dictionary nil ispell-get-ispell-args "-d" append "-p" expand-file-name apply start-process "ispell" "-a" "-m" generate-new-buffer " *ispell-output*" " *ispell-session*" ispell-send-string "\n" t ispell-current-personal-dictionary ispell-extra-args ispell-buffer-local-name ispell-async-processp ispell-use-ptys-p process-connection-type ispell-program-name ispell-cmd-args ispell-output-buffer ispell-session-buffer] 8 (#$ . 67109)]) #@56 Check status of Ispell process and start if necessary. (defalias 'ispell-init-process #[nil "\203\306 \307=\203 \203\n \232\203\310\211\211\207\311\312!\210\313\314(\206,)\206,\315\"\210\316\317!\210\320 * \321 \310\211+\203I\322\304\"\210\323\324!\203b\203b\325\326!\203b\326\327 \327 #\210\330\331!\210\f\204n\330\331!\210\f\204{\332\333,\"\210\202\262\f@;\203\241\334\335\f@\"\203\223\330\331!\210\f@;\202\226\fA?\203\241\334\336\f@\"\204\262\337\340!\210\330\331!\210\332\341\342\343\f\344#\"\210\310\345 \211-\203\303\346-\344P!\210)+\205\315\347\310\"\207" [ispell-process ispell-personal-dictionary ispell-process-directory default-directory ispell-filter ispell-filter-continue ispell-process-status run nil ispell-kill-ispell t message "Starting new Ispell process [%s] ..." "default" sit-for 0 ispell-check-version ispell-start-process set-process-filter boundp enable-multibyte-characters fboundp set-process-coding-system ispell-get-coding-system ispell-accept-output 3 error "%s did not output version line" string-match "warning: " "^@(#) " sleep-for 1 "%s" mapconcat identity "\n" ispell-get-extended-character-mode ispell-send-string set-process-query-on-exit-flag ispell-local-dictionary ispell-dictionary ispell-library-directory ispell-async-processp ispell-program-name extended-char-mode] 7 (#$ . 68050)]) #@133 Kill current Ispell process (so that you may start a fresh one). With NO-ERROR, just return non-nil if there was no Ispell running. (defalias 'ispell-kill-ispell #[(&optional no-error) "\305\306!\210\203\307 \310=\204 \2069\311\312!\207\n\203\"\313!\210\2022\314\315!\210\316 !\210\316\f!\210\317\211\317\320\321!\210\317\207" [ispell-process no-error ispell-async-processp ispell-output-buffer ispell-session-buffer run-hooks ispell-kill-ispell-hook ispell-process-status run error "There is no ispell process running!" delete-process ispell-send-string "\n" kill-buffer nil message "Ispell process killed"] 3 (#$ . 69429) nil]) #@228 Change to dictionary DICT for Ispell. With a prefix arg, set it "globally", for all buffers. Without a prefix arg, set it "locally", just for this buffer. By just answering RET you can find out what the current dictionary is. (defalias 'ispell-change-dictionary #[(dict &optional arg) "\306 \210\204 \307\310!\210 \311\232\203\312 \313\232\203-\314 \210\315\316\204&\n\206+ \206+\311\"\207 \2046\n\206; \206;\311\232\203K\314 \210t\205\315\317 \"\207\320 \f\"\204Y\320 \"\203j\203b \202o \321\202o\322\323 \"\210\314 \210\315\324\203|\325\202}\326 #\207" [arg dict ispell-local-dictionary ispell-dictionary ispell-local-dictionary-alist ispell-dictionary-alist ispell-maybe-find-aspell-dictionaries ispell-buffer-local-dict no-reload "default" nil "" ispell-internal-change-dictionary message "Using %s dictionary" "No change, using %s dictionary" assoc t error "Undefined dictionary: %s" "%s Ispell dictionary set to %s" "Global" "Local" ispell-local-dictionary-overridden] 4 (#$ . 70078) (list (completing-read "Use new dictionary (RET for current, SPC to complete): " (and (fboundp 'ispell-valid-dictionary-list) (mapcar 'list (ispell-valid-dictionary-list))) nil t) current-prefix-arg)]) #@147 Update the dictionary and the personal dictionary used by Ispell. This may kill the Ispell process; if so, a new one will be started when needed. (defalias 'ispell-internal-change-dictionary #[nil "\206 \n\206\n  \232\205 \f\232?\205&\306\307!\210 \f\211 *\207" [ispell-local-dictionary ispell-dictionary ispell-local-pdict ispell-personal-dictionary pdict dict ispell-kill-ispell t ispell-current-dictionary ispell-current-personal-dictionary] 2 (#$ . 71309)]) #@152 Interactively check a region for spelling errors. Return nil if spell session is quit, otherwise returns shift offset amount for last line processed. (defalias 'ispell-region #[(reg-start reg-end &optional recheckp shift) "\306 \210\204\n\307 \210\310 \310 \311\216\212\312\313 eU\203&\fdU\203&\314 \202'\315\316 !\2060\317$\210\320\213\210?\205A\206A\321,\207" [recheckp rstart skip-region-start reg-start reg-end ispell-program-name ispell-maybe-find-aspell-dictionaries ispell-accept-buffer-local-defs make-marker ((byte-code "\203 \204\306\n!\203\307\n!\210 \310\211\223\210\f\310\211\223\210 \203J \247\204.\310\211\223\210\2021 b\210\203A \247\203A\310\311\312!\210\204g\310\202g\204T\310\211\223\210\313!\210\314\315\316!\206e\317#\210\310\207" [recheckp ispell-keep-choices-win ispell-choices-buffer skip-region-start rstart ispell-quit get-buffer kill-buffer nil error "Message send aborted" ispell-pdict-save message "Spell-checking using %s with %s dictionary done" file-name-nondirectory "default" ispell-region-end ispell-checking-message ispell-silently-savep ispell-program-name ispell-current-dictionary] 4)) message "Spell checking %s using %s with %s dictionary..." buffer-name "region" file-name-nondirectory "default" ((byte-code "b\210\306 \307\306\211\306\310\311!\210)\312\313 \307#\2032\314\315\224\315\225\"`\nGZ\306\223\210b\210\306\310\316\317!\206A\320#\210)\306\223\210\306\223\210 \204(`W\203(\321!\203\320`X\203\320`!\205\216\"\203~\"\322\230\205\216\212\323 \210\312! \307#)\205\216!\324\n!\210`\306\223\210\f\205\243\325\"W\203\312\312\313 \307#\203\312\326\315!`\nGZ\306\223\210b\210\202\320\306\211\223\210`\321!\203\340^\202\344\321!]`#\212\306\210`^)$\327#$ #% \203 # GZ#\306`$%\203 \330%&\205'\"'$b\210+\202Q-\306\207" [reg-start case-fold-search key in-comment query-fcc transient-mark-mode nil t message "searching for regions to skip" re-search-forward ispell-begin-skip-region-regexp buffer-substring-no-properties 0 "Continuing spelling check using %s with %s dictionary..." file-name-nondirectory "default" marker-position "" beginning-of-line ispell-skip-region ispell-ignore-fcc match-string-no-properties ispell-get-line ispell-process-line message-log-max reg-end skip-region-start ispell-program-name ispell-current-dictionary rstart ispell-region-end ispell-quit comment-start comment-end start end string recheckp shift] 5)) 0 ispell-current-dictionary ispell-quit shift] 5 (#$ . 71793) "r"]) #@206 Returns a regexp of the search keys for region skipping. Includes `ispell-skip-region-alist' plus tex, tib, html, and comment keys. Must call after `ispell-buffer-local-parsing' due to dependence on mode. (defalias 'ispell-begin-skip-region-regexp #[nil "\306!\n\204 \203\307 !\310 Q\n\311=\203. \203.\f\312\230\203'\313\202*\307\f!\310 Q \2038\310 Q\203E\306!\310 Q\314=\203R\315 \310 Q\203h\316=\204h\317\320\310#\310 Q )\207" [ispell-skip-region-alist skip-regexp ispell-check-comments comment-start comment-end ispell-skip-tib ispell-begin-skip-region regexp-quote "\\|" exclusive "" "^" tex ispell-begin-tex-skip-regexp t mapconcat #[(lst) "@\207" [lst] 1] ispell-tib-ref-beginning ispell-skip-html ispell-html-skip-alists ispell-parser ispell-checking-message] 4 (#$ . 74403)]) #@162 Regular expression for start of regions to skip generated from SKIP-ALIST. Each selection should be a key of SKIP-ALIST; otherwise, the current line is skipped. (defalias 'ispell-begin-skip-region #[(skip-alist) "\301\302\303#\207" [skip-alist mapconcat #[(lst) "@;\203 @\207\301@!\207" [lst eval] 2] "\\|"] 4 (#$ . 75230)]) #@86 Regular expression of tex commands to skip. Generated from `ispell-tex-skip-alists'. (defalias 'ispell-begin-tex-skip-regexp #[nil "\301\302@\303#\303\301\304A@\303#Q\207" [ispell-tex-skip-alists mapconcat #[(lst) "@\207" [lst] 1] "\\|" #[(lst) "\301@\302Q\207" [lst "\\\\begin[ \n]*{[ \n]*" "[ \n]*}"] 3]] 6 (#$ . 75566)]) #@402 Returns a list describing key and body regions to skip for this buffer. Includes regions defined by `ispell-skip-region-alist', tex mode, `ispell-html-skip-alists', and `ispell-checking-message'. Manual checking must include comments and tib references. The list is of the form described by variable `ispell-skip-region-alist'. Must call after `ispell-buffer-local-parsing' due to dependence on mode. (defalias 'ispell-skip-region-list #[nil "\n\306=\203\307\310\f@\fA@ # \203\310\n \" \203/ \311=\204/\310 \" )\207" [ispell-skip-region-alist skip-alist ispell-parser case-fold-search ispell-tex-skip-alists ispell-skip-html tex nil append t ispell-html-skip-alists ispell-checking-message] 4 (#$ . 75904)]) #@35 Skip across ARG number of braces. (defalias 'ispell-tex-arg-end #[(&optional arg) "\300\301\302\217\207" [nil (byte-code "\301\302!\203\f\303 \210\202\303\206\304!\207" [arg looking-at "[ \n]*\\[" forward-sexp 1] 2) ((error (byte-code "\300\301`\"\210\302 \210\303\304!\207" [message "error skipping s-expressions at point %d." beep sit-for 2] 3)))] 3 (#$ . 76635)]) #@255 Deletes the Fcc: message header when large attachments are included. Return value `nil' if file with large attachments are saved. This can be used to avoid multiple questions for multiple large attachments. Returns point to starting location afterwards. (defalias 'ispell-ignore-fcc #[(start end) "\306 \203S\n\203S\n \fZW\203S\307\211eb\210\310\311\312!\313Q\307\306#\2061\310\314\307\306#\2061eeb\210\310\315 \306#\203O\316\317!\203H\307\202O\320 \210\321\322!\210 b\210*)\207" [result ispell-checking-message ispell-message-fcc-skip end start head-end t nil re-search-forward "^" regexp-quote "$" "^$" "^Fcc:" y-or-n-p "Save copy of this message with large attachments? " beginning-of-line kill-line 1 case-fold-search mail-header-separator] 4 (#$ . 77016)]) #@125 Skips across KEY and then to end of region. Key lookup determines region to skip. Point is placed at end of skipped region. (defalias 'ispell-skip-region #[(key) "Gu\210`\306 \307\211 \2045\2035\230\2035\310\230\203*\307y\210\202\322\311\312#\210\202\322 \313=\203R\203R\230\203R\311\314#\210\202\322\203j\315\"\203j\316\312#\210\202\322 \203\322\317 @@!\315\n\"\203\313 @A\211\204\210\312\202\305 :\204\230\316\317 !d\312#\210\202\305 G\320U\203\257 @;\203\257\316 @d\312#\210\202\305\312 A:\203\301\321 @ A\"\210\202\305 @ \210\307\211\202k A\211\204n\f`U\205\351 ?\205\351\322\323`#\210\324 \210\325\326!,\207" [key null-skip alist-key alist start ispell-check-comments ispell-skip-region-list nil "" search-forward t exclusive :end string-match re-search-forward eval 1 apply message "Matching region end for `%s' point %d not found" beep sit-for 2 comment-start comment-end ispell-region-end ispell-skip-tib ispell-tib-ref-beginning ispell-tib-ref-end] 5 (#$ . 77802)]) (defalias 'ispell-get-line #[(start end in-comment) "\305 \306l\203\306y\210\2021\307 \n\310#\204\307\311\n\310#\203.\312 \313\f\n\"\314R\nb\210\2021\nb\210*\207" [string ispell-casechars end in-comment start ispell-get-casechars nil re-search-forward t "[][()${}]" "^" buffer-substring-no-properties "\n"] 5]) (defalias 'ispell-looking-at #[(string) "\303 G` \\dX\205\304\n\"\304\305`` \\\"\n\"\232*\207" [string len coding ispell-get-coding-system encode-coding-string buffer-substring-no-properties] 6]) #@244 Sends STRING, a line of text, to ispell and processes the result. This will modify the buffer for spelling errors. Requires variables START and END to be defined in its lexical scope. Returns the sum SHIFT due to changes in word replacements. (defalias 'ispell-process-line #[(string shift) "\306\211\n\247\204 \307\310 !\210\311 \210\f@\312\230\203\fA\237 \204\372\f\203\372\313\f@\n#\211\203\364 <\203\364\314%&\\ A@\\! @G\314'!\314%!\306\211()*+,\211-b\210\315 \210,-\\b\210\315 \210-b\210\315 \210\316 @!\204\201\317\320 @\321-!#\210.\203\243\322 AA@ AAA@ @\321-!,\321-!\\%(\202\246\323\213\210-b\210(\203\337(<\203\337(G\324U\203\337/\325=\203\324\326\327\330 !\"\203\324\317\331!\210\202\337+`\306\223\210\306\332)(\203\353(\307\232\203\377(\307\232\203\367\333 @!\210 @B\202\221`,`\\|\210(<\204 \334(!\210\335 @(\"\210(B\202\210(@\2110c\210\335 @0\"\210(A@\2039\336\213\210-b\2100\235\203P0B0(\202\207\3141!2\f)\306\307\337-\2110G\\\332\n$\211\204o\30712\306\223\2102\306\211\223\210)\306)0())\n(G,Z\\ \204\247\3063\340\341\3424!5\206\244\343#\210)\344\307!\210\321*!%\321+!')\204\316'-,\\W\203\316-,\\'-1U\203\3401-,\\\306\223\210*\306\211\223\210-\306\211\223\210+\306\211\223\210.\fA\202\n*\207" [accept-list poss shift string ispell-filter ispell-quit nil 0 ispell-send-string ispell-accept-output "" ispell-parse-output copy-marker ispell-horiz-scroll ispell-looking-at error "Ispell misalignment: word `%s' point %d; probably incompatible versions" marker-position ispell-command-loop ((byte-code "\304AA@AAA@@\305 !\n\305 !\\%\304\207" [poss word-start word-len replace ispell-command-loop marker-position] 8)) 2 tex string-match "[\\\\][]()[]\\|\\\\begin\\|\\$" regexp-quote "Don't start query replace on a line with math characters" t ispell-add-per-file-word-list ispell-insert-word ispell-send-replacement ((byte-code "\302 \210\303@ @\304#\207" [poss replace delete-other-windows query-replace t] 4)) ispell-region message "Continuing spelling check using %s with %s dictionary..." file-name-nondirectory "default" sit-for start ispell-offset end replace recheck-region line-start line-end word-len word-start ispell-keep-choices-win ispell-parser replace-word ispell-region-end region-end message-log-max ispell-program-name ispell-current-dictionary] 9 (#$ . 79378)]) #@71 Check comments and strings in the current buffer for spelling errors. (defalias 'ispell-comments-and-strings #[nil "eb\210\303\211?\205K\304\305`d\303\211 \306&\307 8\204$\310 8\203`\305\nd\303\211 \306&\307 8\204<\310 8\203@\311\312!\210\212\313\n`\"?*\202*\207" [done state start nil t parse-partial-sexp syntax-table 3 4 error "Unterminated string or comment" ispell-region] 7 (#$ . 81812) nil]) #@61 Check the current buffer for spelling errors interactively. (defalias 'ispell-buffer #[nil "\300ed\"\207" [ispell-region] 3 (#$ . 82235) nil]) #@69 Continue a halted spelling session beginning with the current word. (defalias 'ispell-continue #[nil "\301!\204\n\302\303!\207\304!p\232\204\302\305\306\304!!\"\207\307\310\311!A@\301!\"\207" [ispell-region-end marker-position message "No session to continue. Use 'X' command when checking!" marker-buffer "Must continue ispell from buffer %s" buffer-name ispell-region ispell-get-word t] 5 (#$ . 82384) nil]) #@67 Places point within the horizontal visibility of its window area. (defalias 'ispell-horiz-scroll #[nil "\2055i\302 \303]Z\211\304W\203!\302 \304V\203!\305 [\306]!\2024 \307 \310ZY\2054\311 \307 Z\312Z\306]!)\207" [truncate-lines column window-hscroll 1 0 scroll-right 10 window-width 2 scroll-left -3] 4 (#$ . 82808)]) #@212 Try to complete the word before or under point (see `lookup-words'). If optional INTERIOR-FRAG is non-nil then the word may be a character sequence inside of a word. Standard ispell choices are then available. (defalias 'ispell-complete-word #[(&optional interior-frag) "`\306\307\310\"\307\211\211\211 A@ AA@ @\211\311\230\206=\312\205,\313 \2048?\2059\313Q\"\211\314=\203K\315\316!\210\202\310\n\204W\315\317 \"\210\202\310\307 \226 \230\203h\320\321\n\"\202x \322H\226 \322H=\203x\320\323\n\"\324\213\210 \322\232\203\213\325 !\210\202\274 \203\274\f |\210 :\204\234 \202\236 @\211G \fZZ\\\326 !\210 :\203\274b\210\327\307\314\"\210\330 !\203\310\331 !\210\332!!\210b.\207" [case-fold-search replacement possibilities end start word ispell-get-word nil "\\*" "" lookup-words "*" t message "No word to complete" "No match for \"%s\"" mapcar upcase 0 #[(pos) "\302H \302H=\203\f \207\303 !\207" [word pos 0 capitalize] 3] ((byte-code "\305\306 \n %\306\207" [possibilities word start end replacement ispell-command-loop nil] 6)) ispell-add-per-file-word-list ispell-insert-word ispell-word get-buffer kill-buffer ispell-pdict-save case-fold-search-val cursor-location interior-frag ispell-look-p ispell-complete-word-dict ispell-choices-buffer ispell-silently-savep] 8 (#$ . 83141) "P"]) #@59 Completes word matching character sequence inside a word. (defalias 'ispell-complete-word-interior-frag #[nil "\300\301!\207" [ispell-complete-word t] 2 (#$ . 84500) nil]) #@402 Interactively check a region or buffer for spelling errors. If `transient-mark-mode' is on, and a region is active, spell-check that region. Otherwise spell-check the buffer. Ispell dictionaries are not distributed with Emacs. If you are looking for a dictionary, please see the distribution of the GNU ispell program, or do an Internet search; there are various dictionaries available on the net. (defalias 'ispell #[nil "\302\300!\203\203\302\301!\203 \203\303\304 \305 \"\207\306 \207" [transient-mark-mode mark-active boundp ispell-region region-beginning region-end ispell-buffer] 3 (#$ . 84679) nil]) #@42 Non-nil if Ispell minor mode is enabled. (defvar ispell-minor-mode nil (#$ . 85304)) (byte-code "\301\302!\210\302\236\204\303B\301\207" [minor-mode-alist make-variable-buffer-local ispell-minor-mode (ispell-minor-mode " Spell")] 2) #@36 Keymap used for Ispell minor mode. (defvar ispell-minor-keymap (byte-code "\301 \302\303\304#\210\302\305\304#\210)\207" [map make-sparse-keymap define-key " " ispell-minor-check " "] 4) (#$ . 85548)) (byte-code "\302\300!\203\303\304\"\204\304 BB\302\207" [minor-mode-map-alist ispell-minor-keymap boundp assoc ispell-minor-mode] 3) #@324 Toggle Ispell minor mode. With prefix arg, turn Ispell minor mode on iff arg is positive. In Ispell minor mode, pressing SPC or RET warns you if the previous word is incorrectly spelled. All the buffer-local variables and dictionaries are ignored -- to read them into the running ispell process, type \[ispell-word] SPC. (defalias 'ispell-minor-mode #[(&optional arg) "\204 \206 \302!\303X?\304 \207" [arg ispell-minor-mode prefix-numeric-value 0 force-mode-line-update] 2 (#$ . 85900) "P"]) #@197 Check previous word then continue with the normal binding of this key. Don't check previous word when character before point is a space or newline. Don't read buffer-local settings or word lists. (defalias 'ispell-minor-check #[nil "\304\305`Sf\306\307\310 !!\210\311=\206,\312=\206, \203%\313=\206, \205,\314=?\2054\315\304\305\"+\207" [last-char ispell-check-only ispell-minor-mode ispell-skip-html nil t command-execute key-binding this-command-keys 32 10 62 59 ispell-word] 3 (#$ . 86407) "*"]) #@197 *End of text which will be checked in `ispell-message'. If it is a string, limit at first occurrence of that regular expression. Otherwise, it must be a function which is called to get the limit. (defvar ispell-message-text-end (mapconcat 'identity '("^-- $" "^#! /bin/[ck]?sh" "\\(\\(^cd .*\n\\)?diff -c .*\\)?\n\\*\\*\\* .*\n--- .*\n\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*" "\\(diff -u .*\\)?\n--- .*\n\\+\\+\\+ .*\n@@ [-+][0-9]+,[0-9]+ [-+][0-9]+,[0-9]+ @@\n" "^current state:\n==============\n" "^\\(- \\)?[-=_]+\\s ?\\(cut here\\|Environment Follows\\)") "\\|") (#$ . -86926)) (put 'ispell-message-text-end 'risky-local-variable t) #@57 Return multipart message start boundary or nil if none. (defalias 'ispell-mime-multipartp #[(&optional limit) "\303\304\305#\205Q\306\307\310!\203,\306\211u\210`\307\310!\204#\311u\210\202\312\n`\")\202@`\307\313!\203:\306u\210\202.\312\n`\") G\311W\203M\306\211\202P\314 P)\207" [limit boundary start re-search-forward "Content-Type: *multipart/\\([^ \n]*;[ ]*[\n]?[ ]*\\)+boundary=" t nil looking-at "\"" 1 buffer-substring-no-properties "[-0-9a-zA-Z'()+_,./:=?]" "--"] 5 (#$ . 87575)]) #@468 Moves point across header, or entire MIME part if message is encoded. All specified types except `7bit' `8bit' and `quoted-printable' are considered encoded and therefore skipped. See rfc 1521, 2183, ... If no boundary is given, then entire message is skipped. This starts one line ABOVE the MIME content messages, on the boundary marker, for operation with the generic region-skipping code. This places new MIME boundaries into variable `ispell-checking-message'. (defalias 'ispell-mime-skip-part #[(boundary) "\306y\210\307\306\307\306\n\203\233\306\310\311!\2032\312\225b\210\310\313!\203%\307\307\211\314\315\306\307#\210\306y\210\310\316!\203S\317\224\317\225{\211\226\320\235\307\312\225b\210\314\315\306\307#\210\306y\210)\310\321!\203\211\322 \323\"\203k\307\202\205\306y\210\324E\307=?\205~B\307\211)\202 \310\325!\203 \307\312\225b\210\306y\210\202  \203\245`\202\272\204\257db\202\272\314\306\307#\210\326 \210`+\207" [case-fold-search textp continuep save-case-fold-search ispell-skip-html match nil t looking-at "Content-Type: *text/" 0 "html" re-search-forward "\\(.*;[ ]*[\n]\\)*.*$" "Content-Transfer-Encoding: *\\([^ \n]*\\)" 1 ("7BIT" "8BIT" "QUOTED-PRINTABLE" "BINARY") "Content-Type: *multipart/" ispell-mime-multipartp string-match ispell-mime-skip-part "Content-[^ ]*: *\\(.*;[ ]*[\n]\\)*.*$" beginning-of-line new-boundary boundary ispell-checking-message] 5 (#$ . 88092)]) #@887 Check the spelling of a mail message or news post. Don't check spelling of message headers except the Subject field. Don't check included messages. To abort spell checking of a message region and send the message anyway, use the `x' command. (Any subsequent regions will be checked.) The `X' command aborts the message send so that you can edit the buffer. To spell-check whenever a message is sent, include the appropriate lines in your .emacs file: (add-hook 'message-send-hook 'ispell-message) ;; GNUS 5 (add-hook 'news-inews-hook 'ispell-message) ;; GNUS 4 (add-hook 'mail-send-hook 'ispell-message) (add-hook 'mh-before-send-letter-hook 'ispell-message) You can bind this to the key C-c i in GNUS or mail by adding to `news-reply-mode-hook' or `mail-mode-hook' the following lambda expression: (function (lambda () (local-set-key "\C-ci" 'ispell-message))) (defalias 'ispell-message #[nil "\212eb\210\306\211\n\307\310\311\f!\312Q\306\313#\314 \206#\307\315\306\313#\206#e!6\3147\2040d\202N\3167!\203I\3077\306\313#\203E\317\224\202Nd\202Nd7 ^!8\320\321!\203c\203c\322!\202d\3239\324\325!\203z\326\325 \327\330\322:!\260\202\325\320\325!\203\216\326\327\330\322:!\260\202\325;\331\232\204\234;\332\232\203\252\333\330\334\330<\3309\260\202\325;\335\232\203\273\336\330\322=!Q\202\325 \204\303\337\202\325\320\340!\203\323\336\330\322 !Q\202\3259>\341>\327Q\342D\nB?@AB\313C\343\344p\"\204B\203eb\210\307B@@6\313#\203B@A$\306\211B\202\365BA\211B\204\370\345\216eb\210\313?\307\3466\313#eb\210\307\3476\313#\203`\317\225b\210\350\351!\204`\350\352!\204`@?\353`\306\210\350\354!\203]\355\210\202Q`\"\210 \203leb\210\3566!\203\221\307\357P\306\313#\203\221\360\306\313#\203\221`\3618!W\203\2218`\306\223\210eb\210 \203\276\204\276\306Deb\210\307\3626\313#\210\363y\210\364\306!\210`8V\203\2758`\306\223\210)6`]b\210\365y\210@?\203\326\364ECC\353`8\".\207" [boundary mimep ispell-skip-region-alist ispell-skip-region-alist-save mail-header-separator internal-messagep nil re-search-forward "^" regexp-quote "$" t copy-marker "^$" char-or-string-p 0 boundp mail-yank-prefix ispell-non-empty-string " \\| " functionp sc-cite-regexp "\\(" "\\)" "\\|" news-reply-mode message-mode "In article <" "[^,;&+=\n]+ <[^,;&+=]+> writes:" mh-letter-mode "[^,;&+=\n]+ writes:" "In [a-zA-Z.]+ you write:\\|In <[^,;&+=]+> [^,;&+=]+ writes:\\| *> *" vm-included-text-prefix "^\\(" forward-line local-variable-p ispell-local-dictionary ((byte-code "\306\211\223\210 \306\211\223\210\n\306 \306\207" [end-of-headers limit ispell-skip-region-alist-save ispell-skip-region-alist ispell-skip-html old-case-fold-search nil case-fold-search] 3)) "MIME-Version:" "^Subject: *" looking-at ".*Re\\>" "\\[" ispell-region "\n[ ]" 2 ispell-mime-multipartp "--" re-search-backward marker-position "Content-[^ ]*:" -1 ispell-mime-skip-part 1 end-of-headers ispell-message-text-end limit default-prefix sc-reference-tag-string major-mode message-cite-prefix-regexp mh-ins-buf-prefix cite-regexp case-fold-search old-case-fold-search ispell-message-dictionary-alist dictionary-alist ispell-checking-message skip-regexp] 8 (#$ . 89556) nil]) (defalias 'ispell-non-empty-string #[(string) "\203\n\301\230\203\f\302\207\303!\207" [string "" "\\'\\`" regexp-quote] 2]) #@70 Load all buffer-local information, restarting Ispell when necessary. (defalias 'ispell-accept-buffer-local-defs #[nil "\300 \210\301 \210\302 \207" [ispell-buffer-local-dict ispell-buffer-local-words ispell-buffer-local-parsing] 1 (#$ . 92952)]) #@141 Place Ispell into parsing mode for this buffer. Overrides the default parsing mode. Includes Latex/Nroff modes and extended character mode. (defalias 'ispell-buffer-local-parsing #[nil "\306\307!\210\310=\2042 \311=\203\312\313\314\n!\"\204 \315=\2032\306\316!\210 \315=\2046\317\301!\210\315\2026\306\320!\210 \203J \321=\204J\312\322\314\n!\227\"??\323 \211\203W\306\f\324P!\210)\212db\210\325 \326\321#\205\304\212\326\210`)\326%&\327 !\210\330\331&\321#\205\303\332\333!\227%\312\334%\"\203\227\310=\204\227\306\335!\210\202s\312\336%\"\203\246\306\337!\210\202s\312\340%\"\203\270\306%\324P!\210\202s\341\342!\210\343\344!\210\202s*)\207" [ispell-check-comments ispell-parser major-mode ispell-skip-html extended-char-mode ispell-parsing-keyword ispell-send-string "!\n" exclusive use-mode-name string-match "[Tt][Ee][Xx]-mode" symbol-name tex "+\n" make-local-variable "-\n" t "sgml\\|html\\|xml" ispell-get-extended-character-mode "\n" search-backward nil search-forward re-search-forward " *\\([^ \"]+\\)" match-string-no-properties 1 "latex-mode" "+\n~tex\n" "nroff-mode" "-\n~nroff\n" "~" message "Invalid Ispell Parsing argument!" sit-for 2 string end] 5 (#$ . 93205)]) #@350 Initializes local dictionary and local personal dictionary. If optional NO-RELOAD is non-nil, do not make any dictionary reloading. When a dictionary is defined in the buffer (see variable `ispell-dictionary-keyword'), it will override the local setting from \[ispell-change-dictionary]. Both should not be used to define a buffer-local dictionary. (defalias 'ispell-buffer-local-dict #[(&optional no-reload) "\212eb\210\306db\210 \204,\307\n\306\310#\203,\311\n!\210\212\306\210`)\312\313\310#\203,\314\315!db\210\307\f\306\310#\203N\311\f!\210\212\306\210`)\312\313\310#\203N\314\315!*?\205W\316 \207" [end ispell-local-dictionary-overridden ispell-dictionary-keyword ispell-local-dictionary ispell-pdict-keyword ispell-local-pdict nil search-backward t search-forward re-search-forward " *\\([^ \"]+\\)" match-string-no-properties 1 ispell-internal-change-dictionary no-reload] 4 (#$ . 94428)]) #@58 Loads the buffer-local dictionary in the current buffer. (defalias 'ispell-buffer-local-words #[nil "\203\305 \232\204\306\307!\210\310 \210\212eb\210\311 \312\307#\205[\204%\305 \212\312\210`)\313 \312\314\315\f\307#\203W\316\317!\317\nGW\2031\320 \n\"\321\232\2031\322\323\n\324Q!\210\2021+\202)\207" [ispell-buffer-local-name ispell-words-keyword string ispell-casechars end buffer-name ispell-kill-ispell t ispell-init-process search-forward nil ispell-get-casechars re-search-forward " *\\([^ ]+\\)" match-string-no-properties 1 string-match 0 ispell-send-string "@" "\n"] 4 (#$ . 95349)]) #@37 Add WORD to the per-file word list. (defalias 'ispell-add-per-file-word-list #[(word) "\204\306 \212eb\210 \307\211\211\211 ?\205y\307\310\307\311#\n\206)\fG\307\210i\\\312\\\313W\f\203B \204F\f\204\314\f\204p\315\312!\210\n\204W\316 \210\317Qc\210G\320V\203p\212\316 \210c\210)\317Pc\210\202.\207" [ispell-buffer-local-name case-fold-search found done search line-okay buffer-name nil search-forward move 1 80 t open-line newline " " 0 old-case-fold-search ispell-words-keyword word comment-start comment-end] 5 (#$ . 95971)]) (byte-code "\300\301\302\"\210\303\304!\207" [add-to-list debug-ignored-errors "^No word found to check!$" provide ispell] 3)