diff -u -Naur emacs-21.3/configure emacs-21.3.fink/configure
--- emacs-21.3/configure	Tue Mar 18 09:19:12 2003
+++ emacs-21.3.fink/configure	Wed Apr  2 16:51:59 2003
@@ -555,8 +555,8 @@
 
 
 lispdir='${datadir}/emacs/${version}/lisp'
-locallisppath='${datadir}/emacs/${version}/site-lisp:'\
-'${datadir}/emacs/site-lisp:${datadir}/emacs/${version}/leim'
+locallisppath='@PREFIX@/etc/emacs21:@PREFIX@/etc/emacs:@PREFIX@/etc/lisp/emacs/21.2/site-lisp:'\
+'@PREFIX@/etc/lisp/emacs/site-lisp:${datadir}/emacs/${version}/site-lisp:${datadir}/emacs/site-lisp:${datadir}/emacs/${version}/leim'
 lisppath='${locallisppath}:${lispdir}'
 etcdir='${datadir}/emacs/${version}/etc'
 archlibdir='${libexecdir}/emacs/${version}/${configuration}'
@@ -1177,6 +1177,24 @@
   ;;
   hppa*-*-nextstep* )
     machine=hp800 opsys=nextstep
+  ;;
+
+  ## Mac OS X Server
+  *-*-rhapsody*)
+    opsys=rhapsody
+    case "${canonical}" in
+      powerpc-*-rhapsody*) machine=powermacintosh ;;
+      i386-*-rhapsody*)    machine=intel386 ;;
+    esac
+  ;;
+
+  ## Darwin / Mac OS X
+  *-*-darwin*)
+    opsys=darwin
+    case "${canonical}" in
+      powerpc-*-darwin*) machine=powermacintosh ;;
+      i?86-*-darwin*)    machine=intel386 ;;
+    esac
   ;;
 
   ## Orion machines
diff -u -Naur emacs-21.3/configure.in emacs-21.3.fink/configure.in
--- emacs-21.3/configure.in	Sun Mar 16 17:06:05 2003
+++ emacs-21.3.fink/configure.in	Wed Apr  2 16:51:59 2003
@@ -28,8 +28,9 @@
 AC_CONFIG_HEADER(src/config.h:src/config.in)
 
 lispdir='${datadir}/emacs/${version}/lisp'
-locallisppath='${datadir}/emacs/${version}/site-lisp:'\
-'${datadir}/emacs/site-lisp:${datadir}/emacs/${version}/leim'
+
+locallisppath='@PREFIX@/etc/emacs21:@PREFIX@/etc/emacs:@PREFIX@/etc/lisp/emacs/21.2/site-lisp:'\
+'@PREFIX@/etc/lisp/emacs/site-lisp:${datadir}/emacs/${version}/site-lisp:${datadir}/emacs/site-lisp:${datadir}/emacs/${version}/leim'
 lisppath='${locallisppath}:${lispdir}'
 etcdir='${datadir}/emacs/${version}/etc'
 archlibdir='${libexecdir}/emacs/${version}/${configuration}'
@@ -551,6 +552,24 @@
   ;;
   hppa*-*-nextstep* )
     machine=hp800 opsys=nextstep
+  ;;
+
+  ## Mac OS X Server
+  *-*-rhapsody*)
+    opsys=rhapsody
+    case "${canonical}" in
+      powerpc-*-rhapsody*) machine=powermacintosh ;;
+      i386-*-rhapsody*)    machine=intel386 ;;
+    esac
+  ;;
+
+  ## Darwin / Mac OS X
+  *-*-darwin*)
+    opsys=darwin
+    case "${canonical}" in
+      powerpc-*-darwin*) machine=powermacintosh ;;
+      i?86-*-darwin*)    machine=intel386 ;;
+    esac
   ;;
 
   ## Orion machines
diff -u -Naur emacs-21.3/fix-info emacs-21.3.fink/fix-info
--- emacs-21.3/fix-info	Wed Dec 31 19:00:00 1969
+++ emacs-21.3.fink/fix-info	Wed Apr  2 16:51:59 2003
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+THE_INFO_PREFIX=$1
+
+for file in ada-mode autotype ccmode cl dired-x ebrowse ediff efaq \
+            emacs emacs-mime eshell eudc forms gnus idlwave info message mh-e \
+            pcl-cvs reftex sc speedbar vip viper widget woman
+do
+    ./mangle-info ${THE_INFO_PREFIX}/${file}
+done
diff -u -Naur emacs-21.3/lisp/loaddefs.el emacs-21.3.fink/lisp/loaddefs.el
--- emacs-21.3/lisp/loaddefs.el	Tue Mar 18 09:36:18 2003
+++ emacs-21.3.fink/lisp/loaddefs.el	Wed Apr  2 18:10:40 2003
@@ -1661,7 +1661,7 @@
 ;;;;;;  (15853 63299))
 ;;; Generated autoloads from net/browse-url.el
 
-(defvar browse-url-browser-function (if (memq system-type (quote (windows-nt ms-dos))) (quote browse-url-default-windows-browser) (quote browse-url-netscape)) "\
+(defvar browse-url-browser-function (if (memq system-type (quote (windows-nt ms-dos))) (quote browse-url-default-windows-browser) (quote browse-url-generic)) "\
 *Function to display the current buffer in a WWW browser.
 This is used by the `browse-url-at-point', `browse-url-at-mouse', and
 `browse-url-of-file' commands.
@@ -1685,7 +1685,7 @@
 *If non-nil, save the buffer before displaying its file.
 Used by the `browse-url-of-file' command.")
 
-(defvar browse-url-generic-program nil "\
+(defvar browse-url-generic-program "open" "\
 *The name of the browser program used by `browse-url-generic'.")
 
 (autoload (quote browse-url-of-file) "browse-url" "\
diff -u -Naur emacs-21.3/lisp/loaddefs.elc emacs-21.3.fink/lisp/loaddefs.elc
--- emacs-21.3/lisp/loaddefs.elc	Wed Dec 31 19:00:00 1969
+++ emacs-21.3.fink/lisp/loaddefs.elc	Wed Apr  2 18:11:00 2003
@@ -0,0 +1,13907 @@
+;ELC
+;;; Compiled by cds@moth.ccs.brandeis.edu on Wed Apr  2 18:10:59 2003
+;;; from file /Users/cds/Desktop/Emacs/emacs-21.3.fink/lisp/loaddefs.el
+;;; in Emacs version 21.3.1
+;;; with bytecomp version 2.85.4.1
+;;; 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 "`loaddefs.el' was compiled for Emacs 19.29 or later"))
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+
+#@731 Play 5x5.
+
+The object of 5x5 is very simple, by moving around the grid and flipping
+squares you must fill the grid.
+
+5x5 keyboard bindings are:
+\<5x5-mode-map>
+Flip                      \[5x5-flip-current] 
+Move up                   \[5x5-up]           
+Move down                 \[5x5-down]         
+Move left                 \[5x5-left]         
+Move right                \[5x5-right]        
+Start new game            \[5x5-new-game]
+New game with random grid \[5x5-randomize]
+Random cracker            \[5x5-crack-randomly]
+Mutate current cracker    \[5x5-crack-mutating-current]
+Mutate best cracker       \[5x5-crack-mutating-best]
+Mutate xor cracker        \[5x5-crack-xor-mutate]
+Quit current game         \[5x5-quit-game]
+(autoload '5x5 "5x5" '(#$ . 635) t nil)
+#@46 Attempt to crack 5x5 using random solutions.
+(autoload '5x5-crack-randomly "5x5" '(#$ . 1411) t nil)
+#@56 Attempt to crack 5x5 by mutating the current solution.
+(autoload '5x5-crack-mutating-current "5x5" '(#$ . 1518) t nil)
+#@53 Attempt to crack 5x5 by mutating the best solution.
+(autoload '5x5-crack-mutating-best "5x5" '(#$ . 1643) t nil)
+#@89 Attempt to crack 5x5 by xor the current and best solution and then
+mutating the result.
+(autoload '5x5-crack-xor-mutate "5x5" '(#$ . 1762) t nil)
+#@318 Attempt to find a solution for 5x5.
+
+5x5-crack takes the argument BREEDER which should be a function that takes
+two parameters, the first will be a grid vector array that is the current
+solution and the second will be the best solution so far. The function
+should return a grid vector array that is the new solution.
+(autoload '5x5-crack "5x5" '(#$ . 1915) t nil)
+#@216 Define SPEC and BODY as being valid extensions for Ada files.
+Going from body to spec with `ff-find-other-file' used these
+extensions.
+SPEC and BODY are two regular expressions that must match against the file
+name
+(autoload 'ada-add-extensions "ada-mode" '(#$ . 2286) nil nil)
+#@2160 Ada mode is the major mode for editing Ada code.
+
+Bindings are as follows: (Note: 'LFD' is control-j.)
+
+ Indent line                                          '\[ada-tab]'
+ Indent line, insert newline and indent the new line. '\[newline-and-indent]'
+
+ Re-format the parameter-list point is in             '\[ada-format-paramlist]'
+ Indent all lines in region                           '\[ada-indent-region]'
+
+ Adjust case of identifiers and keywords in region    '\[ada-adjust-case-region]'
+ Adjust case of identifiers and keywords in buffer    '\[ada-adjust-case-buffer]'
+
+ Fill comment paragraph, justify and append postfix   '\[fill-paragraph]'
+
+ Next func/proc/task '\[ada-next-procedure]'  Previous func/proc/task '\[ada-previous-procedure]'
+ Next package        '\[ada-next-package]'  Previous package        '\[ada-previous-package]'
+
+ Goto matching start of current 'end ...;'            '\[ada-move-to-start]'
+ Goto end of current block                            '\[ada-move-to-end]'
+
+Comments are handled using standard GNU Emacs conventions, including:
+ Start a comment                                      '\[indent-for-comment]'
+ Comment region                                       '\[comment-region]'
+ Uncomment region                                     '\[ada-uncomment-region]'
+ Continue comment on next line                        '\[indent-new-comment-line]'
+
+If you use imenu.el:
+ Display index-menu of functions & procedures         '\[imenu]'
+
+If you use find-file.el:
+ Switch to other file (Body <-> Spec)                 '\[ff-find-other-file]'
+                                                   or '\[ff-mouse-find-other-file]
+ Switch to other file in other window                 '\[ada-ff-other-window]'
+                                                   or '\[ff-mouse-find-other-file-other-window]
+ If you use this function in a spec and no body is available, it gets created with body stubs.
+
+If you use ada-xref.el:
+ Goto declaration:          '\[ada-point-and-xref]' on the identifier
+                         or '\[ada-goto-declaration]' with point on the identifier
+ Complete identifier:       '\[ada-complete-identifier]'.
+(autoload 'ada-mode "ada-mode" '(#$ . 2572) t nil)
+#@53 Insert a descriptive header at the top of the file.
+(autoload 'ada-header "ada-stmt" '(#$ . 4788) t nil)
+#@133 *Full name of user, for inclusion in ChangeLog daily headers.
+This defaults to the value returned by the function `user-full-name'.
+(defvar add-log-full-name nil (#$ . -4900))
+#@128 *Electronic mail address of user, for inclusion in ChangeLog daily headers.
+This defaults to the value of `user-mail-address'.
+(defvar add-log-mailing-address nil (#$ . -5083))
+#@31 Prompt for a change log name.
+(autoload 'prompt-for-change-log-name "add-log" '(#$ . 5266) nil nil)
+#@686 Find a change log file for \[add-change-log-entry] and return the name.
+
+Optional arg FILE-NAME specifies the file to use.
+If FILE-NAME is nil, use the value of `change-log-default-name'.
+If 'change-log-default-name' is nil, behave as though it were 'ChangeLog'
+(or whatever we use on this operating system).
+
+If 'change-log-default-name' contains a leading directory component, then
+simply find it in the current directory.  Otherwise, search in the current
+directory and its successive parents for a file so named.
+
+Once a file is found, `change-log-default-name' is set locally in the
+current buffer to the complete file name.
+Optional arg BUFFER-FILE overrides `buffer-file-name'.
+(autoload 'find-change-log "add-log" '(#$ . 5373) nil nil)
+#@583 Find change log file and add an entry for today.
+Optional arg WHOAMI (interactive prefix) non-nil means prompt for user
+name and site.
+
+Second arg is FILE-NAME of change log.  If nil, uses `change-log-default-name'.
+Third arg OTHER-WINDOW non-nil means visit in other window.
+Fourth arg NEW-ENTRY non-nil means always create a new entry at the front;
+never append to an existing entry.  Option `add-log-keep-changes-together'
+otherwise affects whether a new entry is created.
+
+Today's date is calculated according to `change-log-time-zone-rule' if
+non-nil, otherwise in local time.
+(autoload 'add-change-log-entry "add-log" '(#$ . 6124) t nil)
+#@306 Find change log file in other window and add an entry for today.
+Optional arg WHOAMI (interactive prefix) non-nil means prompt for user
+name and site.
+Second optional arg FILE-NAME is file name of change log.
+If nil, use `change-log-default-name'.
+
+Affected by the same options as `add-change-log-entry'.
+(autoload 'add-change-log-entry-other-window "add-log" '(#$ . 6775) t nil)
+(define-key ctl-x-4-map "a" 'add-change-log-entry-other-window)
+#@346 Major mode for editing change logs; like Indented Text Mode.
+Prevents numeric backups and sets `left-margin' to 8 and `fill-column' to 74.
+New log entries are usually made with \[add-change-log-entry] or \[add-change-log-entry-other-window].
+Each entry behaves as a paragraph, and the entries for one day as a page.
+Runs `change-log-mode-hook'.
+(autoload 'change-log-mode "add-log" '(#$ . 7226) t nil)
+#@56 *Modes that look like Lisp to `add-log-current-defun'.
+(defvar add-log-lisp-like-modes '(emacs-lisp-mode lisp-mode scheme-mode dsssl-mode lisp-interaction-mode) (#$ . -7634))
+#@53 *Modes that look like C to `add-log-current-defun'.
+(defvar add-log-c-like-modes '(c-mode c++-mode c++-c-mode objc-mode) (#$ . -7815))
+#@55 *Modes that look like TeX to `add-log-current-defun'.
+(defvar add-log-tex-like-modes '(TeX-mode plain-TeX-mode LaTeX-mode plain-tex-mode latex-mode) (#$ . -7956))
+#@457 Return name of function definition point is in, or nil.
+
+Understands C, Lisp, LaTeX ("functions" are chapters, sections, ...),
+Texinfo (@node titles) and Perl.
+
+Other modes are handled by a heuristic that looks in the 10K before
+point for uppercase headings starting in the first column or
+identifiers followed by `:' or `='.  See variables
+`add-log-current-defun-header-regexp' and
+`add-log-current-defun-function'
+
+Has a preference of looking backwards.
+(autoload 'add-log-current-defun "add-log" '(#$ . 8126) nil nil)
+#@286 Merge the contents of ChangeLog file OTHER-LOG with this buffer.
+Both must be found in Change Log mode (since the merging depends on
+the appropriate motion commands).
+
+Entries are inserted in chronological order.  Both the current and
+old-style time formats for entries are supported.
+(autoload 'change-log-merge "add-log" '(#$ . 8654) t nil)
+#@75 Fix any old-style date entries in the current log file to default format.
+(autoload 'change-log-redate "add-log" '(#$ . 9003) t nil)
+#@615 *Defines what to do with redefinitions during Advice de/activation.
+Redefinition occurs if a previously activated function that already has an
+original definition associated with it gets redefined and then de/activated.
+In such a case we can either accept the current definition as the new
+original definition, discard the current definition and replace it with the
+old original, or keep it and raise an error.  The values `accept', `discard',
+`error' or `warn' govern what will be done.  `warn' is just like `accept' but
+it additionally prints a warning message.  All other values will be
+interpreted as `error'.
+(defvar ad-redefinition-action 'warn (#$ . -9143))
+#@502 *Defines whether to compile advised definitions during activation.
+A value of `always' will result in unconditional compilation, `never' will
+always avoid compilation, `maybe' will compile if the byte-compiler is already
+loaded, and `like-original' will compile if the original definition of the
+advised function is compiled or a built-in function.  Every other value will
+be interpreted as `maybe'.  This variable will only be considered if the
+COMPILE argument of `ad-activate' was supplied as nil.
+(defvar ad-default-compilation-action 'maybe (#$ . -9815))
+#@699 Add a piece of ADVICE to FUNCTION's list of advices in CLASS.
+If FUNCTION already has one or more pieces of advice of the specified
+CLASS then POSITION determines where the new piece will go.  The value
+of POSITION can either be `first', `last' or a number where 0 corresponds
+to `first'.  Numbers outside the range will be mapped to the closest
+extreme position.  If there was already a piece of ADVICE with the same
+name, then the position argument will be ignored and the old advice
+will be overwritten with the new one.
+    If the FUNCTION was not advised already, then its advice info will be
+initialized.  Redefining a piece of advice whose name is part of the cache-id
+will clear the cache.
+(autoload 'ad-add-advice "advice" '(#$ . 10382) nil nil)
+#@2456 Define a piece of advice for FUNCTION (a symbol).
+The syntax of `defadvice' is as follows:
+
+  (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] FLAG...)
+    [DOCSTRING] [INTERACTIVE-FORM]
+    BODY... )
+
+FUNCTION ::= Name of the function to be advised.
+CLASS ::= `before' | `around' | `after' | `activation' | `deactivation'.
+NAME ::= Non-nil symbol that names this piece of advice.
+POSITION ::= `first' | `last' | NUMBER. Optional, defaults to `first',
+    see also `ad-add-advice'.
+ARGLIST ::= An optional argument list to be used for the advised function
+    instead of the argument list of the original.  The first one found in
+    before/around/after-advices will be used.
+FLAG ::= `protect'|`disable'|`activate'|`compile'|`preactivate'|`freeze'.
+    All flags can be specified with unambiguous initial substrings.
+DOCSTRING ::= Optional documentation for this piece of advice.
+INTERACTIVE-FORM ::= Optional interactive form to be used for the advised
+    function.  The first one found in before/around/after-advices will be used.
+BODY ::= Any s-expression.
+
+Semantics of the various flags:
+`protect': The piece of advice will be protected against non-local exits in
+any code that precedes it.  If any around-advice of a function is protected
+then automatically all around-advices will be protected (the complete onion).
+
+`activate': All advice of FUNCTION will be activated immediately if
+FUNCTION has been properly defined prior to this application of `defadvice'.
+
+`compile': In conjunction with `activate' specifies that the resulting
+advised function should be compiled.
+
+`disable': The defined advice will be disabled, hence, it will not be used
+during activation until somebody enables it.
+
+`preactivate': Preactivates the advised FUNCTION at macro-expansion/compile
+time.  This generates a compiled advised definition according to the current
+advice state that will be used during activation if appropriate.  Only use
+this if the `defadvice' gets actually compiled.
+
+`freeze': Expands the `defadvice' into a redefining `defun/defmacro' according
+to this particular single advice.  No other advice information will be saved.
+Frozen advices cannot be undone, they behave like a hard redefinition of
+the advised function.  `freeze' implies `activate' and `preactivate'.  The
+documentation of the advised function can be dumped onto the `DOC' file
+during preloading.
+
+See Info node `(elisp)Advising Functions' for comprehensive documentation.
+(autoload 'defadvice "advice" '(#$ . 11145) nil 'macro)
+#@734 Attempt to align a region based on a set of alignment rules.
+BEG and END mark the region.  If BEG and END are specifically set to
+nil (this can only be done programmatically), the beginning and end of
+the current alignment section will be calculated based on the location
+of point, and the value of `align-region-separate' (or possibly each
+rule's `separate' attribute).
+
+If SEPARATE is non-nil, it overrides the value of
+`align-region-separate' for all rules, except those that have their
+`separate' attribute set.
+
+RULES and EXCLUDE-RULES, if either is non-nil, will replace the
+default rule lists defined in `align-rules-list' and
+`align-exclude-rules-list'.  See `align-rules-list' for more details
+on the format of these lists.
+(autoload 'align "align" '(#$ . 13663) t nil)
+#@1061 Align the current region using an ad-hoc rule read from the minibuffer.
+BEG and END mark the limits of the region.  This function will prompt
+for the REGEXP to align with.  If no prefix arg was specified, you
+only need to supply the characters to be lined up and any preceding
+whitespace is replaced.  If a prefix arg was specified, the full
+regexp with parenthesized whitespace should be supplied; it will also
+prompt for which parenthesis GROUP within REGEXP to modify, the amount
+of SPACING to use, and whether or not to REPEAT the rule throughout
+the line.  See `align-rules-list' for more information about these
+options.
+
+For example, let's say you had a list of phone numbers, and wanted to
+align them so that the opening parentheses would line up:
+
+    Fred (123) 456-7890
+    Alice (123) 456-7890
+    Mary-Anne (123) 456-7890
+    Joe (123) 456-7890
+
+There is no predefined rule to handle this, but you could easily do it
+using a REGEXP like "(". All you would have to do is to mark the
+region, call `align-regexp' and type in that regular expression.
+(autoload 'align-regexp "align" '(#$ . 14450) t nil)
+#@290 Align the selected region as if it were one alignment section.
+BEG and END mark the extent of the region.  If RULES or EXCLUDE-RULES
+is set to a list of rules (see `align-rules-list'), it can be used to
+override the default alignment rules that would have been used to
+align that section.
+(autoload 'align-entire "align" '(#$ . 15570) t nil)
+#@349 Call `align' on the current alignment section.
+This function assumes you want to align only the current section, and
+so saves you from having to specify the region.  If RULES or
+EXCLUDE-RULES is set to a list of rules (see `align-rules-list'), it
+can be used to override the default alignment rules that would have
+been used to align that section.
+(autoload 'align-current "align" '(#$ . 15919) t nil)
+#@360 Highlight the whitespace which a given rule would have modified.
+BEG and END mark the extent of the region.  TITLE identifies the rule
+that should be highlighted.  If RULES or EXCLUDE-RULES is set to a
+list of rules (see `align-rules-list'), it can be used to override the
+default alignment rules that would have been used to identify the text
+to be colored.
+(autoload 'align-highlight-rule "align" '(#$ . 16328) t nil)
+#@67 Remove any highlighting that was added by `align-highlight-rule'.
+(autoload 'align-unhighlight-rule "align" '(#$ . 16754) t nil)
+#@71 A replacement function for `newline-and-indent', aligning as it goes.
+(autoload 'align-newline-and-indent "align" '(#$ . 16889) t nil)
+(defalias 'ange-ftp-re-read-dir 'ange-ftp-reread-dir)
+#@323 Reread remote directory DIR to update the directory cache.
+The implementation of remote ftp file names caches directory contents
+for speed.  Therefore, when new remote files are created, Emacs
+may not know they exist.  You can use this command to reread a specific
+directory, so that Emacs will know its current contents.
+(autoload 'ange-ftp-reread-dir "ange-ftp" '(#$ . 17085) t nil)
+(byte-code "\301\302\303\304\211\211%\210\305\306\"\204\307B\305\310\"\204\311B\304\207" [file-name-handler-alist autoload ange-ftp-hook-function "ange-ftp" nil assoc "^/[^/:]*[^/:.]:" ("^/[^/:]*[^/:.]:" . ange-ftp-hook-function) "^/[^/:]*\\'" ("^/[^/:]*\\'" . ange-ftp-completion-hook-function)] 6)
+#@316 Display STRING starting at position VPOS, HPOS, using animation.
+The characters start at randomly chosen places,
+and all slide in parallel to their final positions,
+passing through `animate-n-steps' positions before the final ones.
+If HPOS is nil (or omitted), center the string horizontally
+in the current window.
+(autoload 'animate-string "animate" '(#$ . 17787) nil nil)
+#@127 Display strings from LIST-OF-STRING with animation in a new buffer.
+Strings will be separated from each other by SPACE lines.
+(autoload 'animate-sequence "animate" '(#$ . 18168) nil nil)
+#@51 Display Sarah's birthday present in a new buffer.
+(autoload 'animate-birthday-present "animate" '(#$ . 18361) t nil)
+#@40 Set `ansi-color-for-comint-mode' to t.
+(autoload 'ansi-color-for-comint-mode-on "ansi-color" '(#$ . 18484) t nil)
+#@513 Maybe translate SGR control sequences of comint output into text-properties.
+
+Depending on variable `ansi-color-for-comint-mode' the comint output is
+either not processed, SGR control sequences are filtered using
+`ansi-color-filter-region', or SGR control sequences are translated into
+text-properties using `ansi-color-apply-on-region'.
+
+The comint output is assumed to lie between the marker
+`comint-last-output-start' and the process-mark.
+
+This is a good function to put in `comint-output-filter-functions'.
+(autoload 'ansi-color-process-output "ansi-color" '(#$ . 18605) nil nil)
+#@785 Show Makefile rules for all grammar files in the current directory.
+If the `major-mode' of the current buffer has the value `makefile-mode',
+the rules are directory inserted at point.  Otherwise, a *Help* buffer
+is shown with the rules which are also put into the `kill-ring' for
+\[yank].
+
+This command considers import/export vocabularies and grammar
+inheritance and provides a value for the "-glib" option if necessary.
+Customize variable `antlr-makefile-specification' for the appearance of
+the rules.
+
+If the file for a super-grammar cannot be determined, special file names
+are used according to variable `antlr-unknown-file-formats' and a
+commentary with value `antlr-help-unknown-file-text' is added.  The
+*Help* buffer always starts with the text in `antlr-help-rules-intro'.
+(autoload 'antlr-show-makefile-rules "antlr-mode" '(#$ . 19197) t nil)
+#@63 Major mode for editing ANTLR grammar files.
+\{antlr-mode-map}
+(autoload 'antlr-mode "antlr-mode" '(#$ . 20058) t nil)
+#@139 Use ANTLR's convention for TABs according to `antlr-tab-offset-alist'.
+Used in `antlr-mode'.  Also a useful function in `java-mode-hook'.
+(autoload 'antlr-set-tabs "antlr-mode" '(#$ . 20183) nil nil)
+#@141 *Non-nil means check for appointments in the diary buffer.
+To be detected, the diary entry must have the time
+as the first thing on a line.
+(defvar appt-issue-message t (#$ . -20390))
+#@65 *Time in minutes before an appointment that the warning begins.
+(defvar appt-message-warning-time 12 (#$ . -20580))
+#@46 *Non-nil means beep to indicate appointment.
+(defvar appt-audible t (#$ . -20702))
+#@58 *Non-nil means display appointment message in echo area.
+(defvar appt-visible t (#$ . -20791))
+#@74 *Non-nil means display minutes to appointment and time on the mode line.
+(defvar appt-display-mode-line t (#$ . -20892))
+#@63 *Non-nil means display appointment message in another window.
+(defvar appt-msg-window t (#$ . -21019))
+#@61 *The number of seconds an appointment message is displayed.
+(defvar appt-display-duration 10 (#$ . -21128))
+#@129 *Non-nil means to display the next days diary on the screen. 
+This will occur at midnight when the appointment list is updated.
+(defvar appt-display-diary t (#$ . -21243))
+#@142 Add an appointment for the day at NEW-APPT-TIME and issue message NEW-APPT-MSG.
+The time should be in either 24 hour format or am/pm format.
+(autoload 'appt-add "appt" '(#$ . 21422) t nil)
+#@54 Delete an appointment from the list of appointments.
+(autoload 'appt-delete "appt" '(#$ . 21617) t nil)
+#@383 Create the appointments list from todays diary buffer.
+The time must be at the beginning of a line for it to be
+put in the appointments list.
+  02/23/89
+    12:00pm lunch
+   Wednesday
+     10:00am group meeting
+We assume that the variables DATE and NUMBER
+hold the arguments that `list-diary-entries' received.
+They specify the range of dates that the diary is being processed for.
+(autoload 'appt-make-list "appt" '(#$ . 21728) nil nil)
+#@89 Major mode for following hyperlinks in output of apropos commands.
+
+\{apropos-mode-map}
+(autoload 'apropos-mode "apropos" '(#$ . 22172) t nil)
+#@131 Show user variables that match REGEXP.
+With optional prefix DO-ALL or if `apropos-do-all' is non-nil, also show
+normal variables.
+(autoload 'apropos-variable "apropos" '(#$ . 22322) t nil)
+(fset 'command-apropos 'apropos-command)
+#@285 Show commands (interactively callable functions) that match APROPOS-REGEXP.
+With optional prefix DO-ALL, or if `apropos-do-all' is non-nil, also show
+noninteractive functions.
+
+If VAR-PREDICATE is non-nil, show only variables, and only those that
+satisfy the predicate VAR-PREDICATE.
+(autoload 'apropos-command "apropos" '(#$ . 22559) t nil)
+#@254 Show all bound symbols whose names match APROPOS-REGEXP.
+With optional prefix DO-ALL or if `apropos-do-all' is non-nil, also
+show unbound symbols and key bindings, which is a little more
+time-consuming.  Returns list of symbols and documentation found.
+(autoload 'apropos "apropos" '(#$ . 22908) t nil)
+#@245 Show all symbols whose value's printed image matches APROPOS-REGEXP.
+With optional prefix DO-ALL or if `apropos-do-all' is non-nil, also looks
+at the function and at the names and values of properties.
+Returns list of symbols and values found.
+(autoload 'apropos-value "apropos" '(#$ . 23218) t nil)
+#@273 Show symbols whose documentation contain matches for APROPOS-REGEXP.
+With optional prefix DO-ALL or if `apropos-do-all' is non-nil, also use
+documentation that is not stored in the documentation file and show key
+bindings.
+Returns list of symbols and documentation found.
+(autoload 'apropos-documentation "apropos" '(#$ . 23525) t nil)
+#@455 Major mode for viewing an archive file in a dired-like way.
+You can move around using the usual cursor motion commands.
+Letters no longer insert themselves.
+Type `e' to pull a file out of the archive and into its own buffer;
+or click mouse-2 on the file's line in the archive mode buffer.
+
+If you edit a sub-file of this archive (as with the `e' command) and
+save it, the contents of that buffer will be saved back into the
+archive.
+
+\{archive-mode-map}
+(autoload 'archive-mode "arc-mode" '(#$ . 23868) nil nil)
+#@3018 Major mode for editing arrays.
+
+  Array mode is a specialized mode for editing arrays.  An array is
+considered to be a two-dimensional set of strings.  The strings are
+NOT recognized as integers or real numbers.
+
+  The array MUST reside at the top of the buffer.
+
+  TABs are not respected, and may be converted into spaces at any time.
+Setting the variable 'array-respect-tabs to non-nil will prevent TAB conversion,
+but will cause many functions to give errors if they encounter one.
+
+  Upon entering array mode, you will be prompted for the values of
+several variables.  Others will be calculated based on the values you
+supply.  These variables are all local to the buffer.  Other buffer
+in array mode may have different values assigned to the variables.
+The variables are:
+
+Variables you assign:
+     array-max-row:          The number of rows in the array.
+     array-max-column:       The number of columns in the array.
+     array-columns-per-line: The number of columns in the array per line of buffer.
+     array-field-width:      The width of each field, in characters.
+     array-rows-numbered:    A logical variable describing whether to ignore
+                       row numbers in the buffer.
+
+Variables which are calculated:
+     array-line-length:      The number of characters in a buffer line.
+     array-lines-per-row:    The number of buffer lines used to display each row.
+
+  The following commands are available (an asterisk indicates it may
+take a numeric prefix argument):
+
+    *  	\<array-mode-map>\[array-forward-column]	  Move forward one column.
+    *  	\[array-backward-column]	  Move backward one column.
+    *  	\[array-next-row]	  Move down one row.
+    *  	\[array-previous-row]	  Move up one row.
+
+    *   \[array-copy-forward]	  Copy the current field into the column to the right.
+    *   \[array-copy-backward]	  Copy the current field into the column to the left.
+    *   \[array-copy-down]	  Copy the current field into the row below.
+    *   \[array-copy-up]	  Copy the current field into the row above.
+
+    *   \[array-copy-column-forward]   Copy the current column into the column to the right.
+    *   \[array-copy-column-backward]   Copy the current column into the column to the left.
+    *   \[array-copy-row-down]   Copy the current row into the row below.
+    *   \[array-copy-row-up]   Copy the current row into the row above.
+
+        \[array-fill-rectangle]   Copy the field at mark into every cell with row and column
+                  between that of point and mark.
+
+	\[array-what-position]	  Display the current array row and column.
+	\[array-goto-cell]	  Go to a particular array cell.
+
+	\[array-make-template]	  Make a template for a new array.
+	\[array-reconfigure-rows]	  Reconfigure the array.
+        \[array-expand-rows]   Expand the array (remove row numbers and
+                  newlines inside rows)
+
+        \[array-display-local-variables]   Display the current values of local variables.
+
+Entering array mode calls the function `array-mode-hook'.
+(autoload 'array-mode "array" '(#$ . 24388) t nil)
+#@7657 Toggle artist mode. With arg, turn artist mode on if arg is positive.
+Artist lets you draw lines, squares, rectangles and poly-lines, ellipses
+and circles with your mouse and/or keyboard.
+
+How to quit artist mode
+
+ Type \[artist-mode-off] to quit artist-mode.
+
+
+How to submit a bug report
+
+ Type \[artist-submit-bug-report] to submit a bug report.
+
+
+Drawing with the mouse:
+
+ mouse-2
+ shift mouse-2	Pops up a menu where you can select what to draw with
+		mouse-1, and where you can do some settings (described
+		below).
+
+ mouse-1
+ shift mouse-1	Draws lines, rectangles or poly-lines, erases, cuts, copies
+		or pastes:
+
+		Operation	Not shifted		  Shifted
+		--------------------------------------------------------------
+                Pen             fill-char at point        line from last point
+                                                          to new point
+		--------------------------------------------------------------
+		Line		Line in any direction	  Straight line
+		--------------------------------------------------------------
+		Rectangle	Rectangle		  Square
+		--------------------------------------------------------------
+		Poly-line	Poly-line in any dir	  Straight poly-lines
+		--------------------------------------------------------------
+		Ellipses	Ellipses		  Circles
+		--------------------------------------------------------------
+		Text		Text (see thru)		  Text (overwrite)
+		--------------------------------------------------------------
+		Spray-can	Spray-can		  Set size for spray
+		--------------------------------------------------------------
+		Erase		Erase character		  Erase rectangle
+		--------------------------------------------------------------
+		Vaporize	Erase single line	  Erase connected
+							  lines
+		--------------------------------------------------------------
+		Cut		Cut rectangle		  Cut square
+		--------------------------------------------------------------
+		Copy		Copy rectangle		  Copy square
+		--------------------------------------------------------------
+		Paste		Paste			  Paste
+		--------------------------------------------------------------
+		Flood-fill	Flood-fill		  Flood-fill
+		--------------------------------------------------------------
+
+		* Straight lines can only go horizontally, vertically
+		  or diagonally.
+
+		* Poly-lines are drawn while holding mouse-1 down. When you
+		  release the button, the point is set. If you want a segment
+		  to be straight, hold down shift before pressing the
+		  mouse-1 button. Click mouse-2 or mouse-3 to stop drawing
+		  poly-lines.
+
+		* See thru for text means that text already in the buffer
+		  will be visible through blanks in the text rendered, while
+		  overwrite means the opposite.
+
+		* Vaporizing connected lines only vaporizes lines whose
+		  _endpoints_ are connected. See also the variable
+		  `artist-vaporize-fuzziness'.
+
+		* Cut copies, then clears the rectangle/square.
+
+		* When drawing lines or poly-lines, you can set arrows.
+		  See below under ``Arrows'' for more info.
+
+		* The mode line shows the currently selected drawing operation.
+		  In addition, if it has an asterisk (*) at the end, you
+		  are currently drawing something.
+
+		* Be patient when flood-filling -- large areas take quite
+		  some time to fill.
+
+
+ mouse-3	Erases character under pointer
+ shift mouse-3	Erases rectangle
+
+
+Settings
+
+ Set fill	Sets the character used when filling rectangles/squares
+
+ Set line	Sets the character used when drawing lines
+
+ Erase char	Sets the character used when erasing
+
+ Rubber-banding	Toggles rubber-banding
+
+ Trimming	Toggles trimming of line-endings (that is: when the shape
+		is drawn, extraneous white-space at end of lines is removed)
+
+ Borders        Toggles the drawing of line borders around filled shapes.
+
+
+Drawing with keys
+
+ \[artist-key-set-point]		Does one of the following:
+		For lines/rectangles/squares: sets the first/second endpoint
+		For poly-lines: sets a point (use C-u \[artist-key-set-point] to set last point)
+		When erase characters: toggles erasing
+		When cutting/copying: Sets first/last endpoint of rect/square
+		When pasting: Pastes
+
+ \[artist-select-operation]	Selects what to draw
+
+ Move around with \[artist-next-line], \[artist-previous-line], \[artist-forward-char] and \[artist-backward-char].
+
+ \[artist-select-fill-char]	Sets the charater to use when filling
+ \[artist-select-line-char]	Sets the charater to use when drawing
+ \[artist-select-erase-char]	Sets the charater to use when erasing
+ \[artist-toggle-rubber-banding]	Toggles rubber-banding
+ \[artist-toggle-trim-line-endings]	Toggles trimming of line-endings
+ \[artist-toggle-borderless-shapes]	Toggles borders on drawn shapes
+
+
+Arrows
+
+ \[artist-toggle-first-arrow]		Sets/unsets an arrow at the beginning
+		of the line/poly-line
+
+ \[artist-toggle-second-arrow]		Sets/unsets an arrow at the end
+		of the line/poly-line
+
+
+Selecting operation
+
+ There are some keys for quickly selecting drawing operations:
+
+ \[artist-select-op-line]	Selects drawing lines
+ \[artist-select-op-straight-line]	Selects drawing straight lines
+ \[artist-select-op-rectangle]	Selects drawing rectangles
+ \[artist-select-op-square]	Selects drawing squares
+ \[artist-select-op-poly-line]	Selects drawing poly-lines
+ \[artist-select-op-straight-poly-line]	Selects drawing straight poly-lines
+ \[artist-select-op-ellipse]	Selects drawing ellipses
+ \[artist-select-op-circle]	Selects drawing circles
+ \[artist-select-op-text-see-thru]	Selects rendering text (see thru)
+ \[artist-select-op-text-overwrite]	Selects rendering text (overwrite)
+ \[artist-select-op-spray-can]	Spray with spray-can
+ \[artist-select-op-spray-set-size]	Set size for the spray-can
+ \[artist-select-op-erase-char]	Selects erasing characters
+ \[artist-select-op-erase-rectangle]	Selects erasing rectangles
+ \[artist-select-op-vaporize-line]	Selects vaporizing single lines
+ \[artist-select-op-vaporize-lines]	Selects vaporizing connected lines
+ \[artist-select-op-cut-rectangle]	Selects cutting rectangles
+ \[artist-select-op-copy-rectangle]	Selects copying rectangles
+ \[artist-select-op-paste]	Selects pasting
+ \[artist-select-op-flood-fill]	Selects flood-filling
+
+
+Variables
+
+ This is a brief overview of the different varaibles. For more info,
+ see the documentation for the variables (type \[describe-variable] <variable> RET).
+
+ artist-rubber-banding		Interactively do rubber-banding or not
+ artist-first-char		What to set at first/second point...
+ artist-second-char		...when not rubber-banding
+ artist-interface-with-rect	If cut/copy/paste should interface with rect
+ artist-arrows			The arrows to use when drawing arrows
+ artist-aspect-ratio		Character height-to-width for squares
+ artist-trim-line-endings	Trimming of line endings
+ artist-flood-fill-right-border	Right border when flood-filling
+ artist-flood-fill-show-incrementally	Update display while filling
+ artist-pointer-shape		Pointer shape to use while drawing
+ artist-ellipse-left-char	Character to use for narrow ellipses
+ artist-ellipse-right-char	Character to use for narrow ellipses
+ artist-borderless-shapes       If shapes should have borders
+ artist-picture-compatibility   Whether or not to be picture mode compatible
+ artist-vaporize-fuzziness      Tolerance when recognizing lines
+ artist-spray-interval          Seconds between repeated sprayings
+ artist-spray-radius            Size of the spray-area
+ artist-spray-chars             The spray-``color''
+ artist-spray-new-chars         Initial spray-``color''
+
+Hooks
+
+ When entering artist-mode, the hook `artist-mode-init-hook' is called.
+ When quitting artist-mode, the hook `artist-mode-exit-hook' is called.
+
+
+Keymap summary
+
+\{artist-mode-map}
+(autoload 'artist-mode "artist" '(#$ . 27464) t nil)
+#@676 Major mode for editing typical assembler code.
+Features a private abbrev table and the following bindings:
+
+\[asm-colon]	outdent a preceding label, tab to next tab stop.
+\[tab-to-tab-stop]	tab to next tab stop.
+\[asm-newline]	newline, then tab to next tab stop.
+\[asm-comment]	smart placement of assembler comments.
+
+The character used for making comments is set by the variable
+`asm-comment-char' (which defaults to `?\;').
+
+Alternatively, you may set this variable in `asm-mode-set-comment-hook',
+which is called near the beginning of mode initialization.
+
+Turning on Asm mode runs the hook `asm-mode-hook' at the end of initialization.
+
+Special commands:
+\{asm-mode-map}
+
+(autoload 'asm-mode "asm-mode" '(#$ . 35180) t nil)
+#@11 Obsolete.
+(defvar auto-show-mode nil (#$ . 35913))
+#@27 This command is obsolete.
+(autoload 'auto-show-mode "auto-show" '(#$ . 35970) t nil)
+#@210 Toggle Autoarg mode on or off.
+See the command `autoarg-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `autoarg-mode'.
+(defvar autoarg-mode nil (#$ . 36062))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group autoarg autoarg-mode custom-variable custom-add-load] 4)
+#@904 Toggle Autoarg minor mode globally.
+With ARG, turn Autoarg mode on if ARG is positive, off otherwise.
+\<autoarg-mode-map>
+In Autoarg mode digits are bound to `digit-argument' -- i.e. they
+supply prefix arguments as C-DIGIT and M-DIGIT normally do -- and
+C-DIGIT inserts DIGIT.  \[autoarg-terminate] terminates the prefix sequence
+and inserts the digits of the autoarg sequence into the buffer.
+Without a numeric prefix arg the normal binding of \[autoarg-terminate] is
+invoked, i.e. what it would be with Autoarg mode off.
+
+For example:
+`6 9 \[autoarg-terminate]' inserts `69' into the buffer, as does `C-6 C-9'.
+`6 9 a' inserts 69 `a's into the buffer.
+`6 9 \[autoarg-terminate] \[autoarg-terminate]' inserts `69' into the buffer and
+then invokes the normal binding of \[autoarg-terminate].
+`C-u \[autoarg-terminate]' invokes the normal binding of \[autoarg-terminate] four times.
+
+\{autoarg-mode-map}
+(autoload 'autoarg-mode "autoarg" '(#$ . 36448) t nil)
+#@219 Toggle Autoarg-Kp mode on or off.
+See the command `autoarg-kp-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `autoarg-kp-mode'.
+(defvar autoarg-kp-mode nil (#$ . 37413))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group autoarg-kp autoarg-kp-mode custom-variable custom-add-load autoarg] 4)
+#@253 Toggle Autoarg-KP minor mode globally.
+With ARG, turn Autoarg mode on if ARG is positive, off otherwise.
+\<autoarg-kp-mode-map>
+This is similar to \[autoarg-mode] but rebinds the keypad keys `kp-1'
+&c to supply digit arguments.
+
+\{autoarg-kp-mode-map}
+(autoload 'autoarg-kp-mode "autoarg" '(#$ . 37825) t nil)
+#@53 Major mode for editing Autoconf configure.in files.
+(autoload 'autoconf-mode "autoconf" '(#$ . 38141) t nil)
+#@153 Insert default contents into new files if variable `auto-insert' is non-nil.
+Matches the visited file name against the elements of `auto-insert-alist'.
+(autoload 'auto-insert "autoinsert" '(#$ . 38257) t nil)
+#@210 Associate CONDITION with (additional) ACTION in `auto-insert-alist'.
+Optional AFTER means to insert action after all existing actions for CONDITION,
+or if CONDITION had no actions, after all other CONDITIONs.
+(autoload 'define-auto-insert "autoinsert" '(#$ . 38473) nil nil)
+#@227 Non-nil if Auto-Insert mode is enabled.
+See the command `auto-insert-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `auto-insert-mode'.
+(defvar auto-insert-mode nil (#$ . 38755))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group auto-insert auto-insert-mode custom-variable custom-add-load autoinsert] 4)
+#@301 Toggle Auto-insert mode.
+With prefix ARG, turn Auto-insert mode on if and only if ARG is positive.
+Returns the new status of Auto-insert mode (non-nil means on).
+
+When Auto-insert mode is enabled, when new files are created you can
+insert a template for the file depending on the mode of the buffer.
+(autoload 'auto-insert-mode "autoinsert" '(#$ . 39181) t nil)
+#@108 Update the autoloads for FILE in `generated-autoload-file'
+(which FILE might bind in its local variables).
+(autoload 'update-file-autoloads "autoload" '(#$ . 39550) t nil)
+#@138 Update loaddefs.el with all the current autoloads from DIRS, and no old ones.
+This uses `update-file-autoloads' (which see) do its work.
+(autoload 'update-autoloads-from-directories "autoload" '(#$ . 39729) t nil)
+#@118 Update loaddefs.el autoloads in batch mode.
+Calls `update-autoloads-from-directories' on the command line arguments.
+(autoload 'batch-update-autoloads "autoload" '(#$ . 39950) nil nil)
+#@122 *Non-nil when Auto-Revert Mode is active.
+
+Never set this variable directly, use the command `auto-revert-mode'
+instead.
+(defvar auto-revert-mode nil (#$ . -40142))
+#@171 When on, buffers are automatically reverted when files on disk change.
+
+Set this variable using \[customize] only.  Otherwise, use the
+command `global-auto-revert-mode'.
+(defvar global-auto-revert-mode nil (#$ . 40314))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group auto-revert global-auto-revert-mode custom-variable custom-add-load autorevert] 4)
+#@246 Toggle reverting buffer when file on disk changes.
+
+With arg, turn Auto Revert mode on if and only if arg is positive.
+This is a minor mode that affects only the current buffer.
+Use `global-auto-revert-mode' to automatically revert all buffers.
+(autoload 'auto-revert-mode "autorevert" '(#$ . 40698) t nil)
+#@141 Turn on Auto-Revert Mode.
+
+This function is designed to be added to hooks, for example:
+  (add-hook 'c-mode-hook 'turn-on-auto-revert-mode)
+(autoload 'turn-on-auto-revert-mode "autorevert" '(#$ . 41012) nil nil)
+#@223 Revert any buffer when file on disk change.
+
+With arg, turn Auto Revert mode on globally if and only if arg is positive.
+This is a minor mode that affects all buffers.
+Use `auto-revert-mode' to revert a particular buffer.
+(autoload 'global-auto-revert-mode "autorevert" '(#$ . 41231) t nil)
+#@206 Activate mouse avoidance mode.
+See function `mouse-avoidance-mode' for possible values.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `mouse-avoidance-mode'.
+(defvar mouse-avoidance-mode nil (#$ . 41529))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group avoid mouse-avoidance-mode custom-variable custom-add-load] 4)
+#@1121 Set cursor avoidance mode to MODE.
+MODE should be one of the symbols `banish', `exile', `jump', `animate',
+`cat-and-mouse', `proteus', or `none'.
+
+If MODE is nil, toggle mouse avoidance between `none' and `banish'
+modes.  Positive numbers and symbols other than the above are treated
+as equivalent to `banish'; negative numbers and `-' are equivalent to `none'.
+
+Effects of the different modes:
+ * banish: Move the mouse to the upper-right corner on any keypress.
+ * exile: Move the mouse to the corner only if the cursor gets too close,
+     and allow it to return once the cursor is out of the way.
+ * jump: If the cursor gets too close to the mouse, displace the mouse
+     a random distance & direction.
+ * animate: As `jump', but shows steps along the way for illusion of motion.
+ * cat-and-mouse: Same as `animate'.
+ * proteus: As `animate', but changes the shape of the mouse pointer too.
+
+Whenever the mouse is moved, the frame is also raised.
+
+(see `mouse-avoidance-threshold' for definition of "too close",
+and `mouse-avoidance-nudge-dist' and `mouse-avoidance-nudge-var' for
+definition of "random distance".)
+(autoload 'mouse-avoidance-mode "avoid" '(#$ . 41926) t nil)
+#@286 Major mode for editing AWK code.
+This is much like C mode except for the syntax of comments.  Its keymap
+inherits from C mode's and it has the same variables for customizing
+indentation.  It has its own abbrev table and its own syntax table.
+
+Turning on AWK mode runs `awk-mode-hook'.
+(autoload 'awk-mode "awk-mode" '(#$ . 43114) t nil)
+#@494 Argument STRUCTURE describes a template to build.
+
+The whole structure acts as if it were quoted except for certain
+places where expressions are evaluated and inserted or spliced in.
+
+For example:
+
+b              => (ba bb bc)		; assume b has this value
+`(a b c)       => (a b c)		; backquote acts like quote
+`(a ,b c)      => (a (ba bb bc) c)	; insert the value of b
+`(a ,@b c)     => (a ba bb bc c)	; splice in the value of b
+
+Vectors work just like lists.  Nested backquotes are permitted.
+(autoload 'backquote "backquote" '(#$ . 43458) nil 'macro)
+(byte-code "\300\301\302K\"\207" [defalias \` backquote] 3)
+#@185 Display battery status information in the echo area.
+The text being displayed in the echo area is controlled by the variables
+`battery-echo-area-format' and `battery-status-function'.
+(autoload 'battery "battery" '(#$ . 44077) t nil)
+#@270 Display battery status information in the mode line.
+The text being displayed in the mode line is controlled by the variables
+`battery-mode-line-format' and `battery-status-function'.
+The mode line will be updated automatically every `battery-update-interval'
+seconds.
+(autoload 'display-battery "battery" '(#$ . 44318) t nil)
+#@3562 Major mode for editing BibTeX files.
+
+To submit a problem report, enter \[bibtex-submit-bug-report] from a
+BibTeX mode buffer.  This automatically sets up a mail buffer with
+version information already added.  You just need to add a description
+of the problem, including a reproducible test case and send the
+message.
+
+
+General information on working with BibTeX mode:
+
+You should use commands as \[bibtex-Book] to get a template for a
+specific entry. You should then fill in all desired fields using
+\[bibtex-next-field] to jump from field to field. After having filled
+in all desired fields in the entry, you should clean the new entry
+with command \[bibtex-clean-entry].
+
+Some features of BibTeX mode are available only by setting variable
+bibtex-maintain-sorted-entries to t. However, then BibTeX mode will
+work with buffer containing only valid (syntactical correct) entries
+and with entries being sorted. This is usually the case, if you have
+created a buffer completely with BibTeX mode and finished every new
+entry with \[bibtex-clean-entry].
+
+For third party BibTeX buffers, please call the function
+`bibtex-convert-alien' to fully take advantage of all features of
+BibTeX mode.
+
+
+Special information:
+
+A command such as \[bibtex-Book] will outline the fields for a BibTeX book entry.
+
+The optional fields start with the string OPT, and are thus ignored by BibTeX.
+Alternatives from which only one is required start with the string ALT.
+The OPT or ALT string may be removed from a field with \[bibtex-remove-OPT-or-ALT].
+\[bibtex-make-field] inserts a new field after the current one.
+\[bibtex-kill-field] kills the current field entirely.
+\[bibtex-yank] will yank the last recently killed field after the
+current field.
+\[bibtex-remove-delimiters] removes the double-quotes or braces around the text of the current field.
+ \[bibtex-empty-field] replaces the text of the current field with the default "" or {}.
+
+The command \[bibtex-clean-entry] cleans the current entry, i.e. it removes OPT/ALT
+from all non-empty optional or alternative fields, checks that no required
+fields are empty, and does some formatting dependent on the value of
+bibtex-entry-format.
+Note: some functions in BibTeX mode depend on entries being in a special
+format (all fields beginning on separate lines), so it is usually a bad
+idea to remove `realign' from bibtex-entry-format.
+
+Use \[bibtex-find-text] to position the cursor at the end of the current field.
+Use \[bibtex-next-field] to move to end of the next field.
+
+The following may be of interest as well:
+
+  Functions:
+    bibtex-entry
+    bibtex-kill-entry
+    bibtex-yank-pop
+    bibtex-pop-previous
+    bibtex-pop-next
+    bibtex-complete-string
+    bibtex-complete-key
+    bibtex-print-help-message
+    bibtex-generate-autokey
+    bibtex-beginning-of-entry
+    bibtex-end-of-entry
+    bibtex-reposition-window
+    bibtex-mark-entry
+    bibtex-ispell-abstract
+    bibtex-ispell-entry
+    bibtex-narrow-to-entry
+    bibtex-sort-buffer
+    bibtex-validate
+    bibtex-count
+    bibtex-fill-entry
+    bibtex-reformat
+    bibtex-convert-alien
+
+  Variables:
+    bibtex-field-delimiters
+    bibtex-include-OPTcrossref
+    bibtex-include-OPTkey
+    bibtex-user-optional-fields
+    bibtex-entry-format
+    bibtex-sort-ignore-string-entries
+    bibtex-maintain-sorted-entries
+    bibtex-entry-field-alist
+    bibtex-predefined-strings
+    bibtex-string-files
+
+---------------------------------------------------------
+Entry to BibTeX mode calls the value of `bibtex-mode-hook' if that value is
+non-nil.
+
+\{bibtex-mode-map}
+(autoload 'bibtex-mode "bibtex" '(#$ . 44653) t nil)
+(byte-code "\301B\302\301\207" [current-load-list binhex-begin-line "^:...............................................................$"] 2)
+#@5066 Play blackbox.  Optional prefix argument is the number of balls;
+the default is 4.
+
+What is blackbox?
+
+Blackbox is a game of hide and seek played on an 8 by 8 grid (the
+Blackbox).  Your opponent (Emacs, in this case) has hidden several
+balls (usually 4) within this box.  By shooting rays into the box and
+observing where they emerge it is possible to deduce the positions of
+the hidden balls.  The fewer rays you use to find the balls, the lower
+your score.
+
+Overview of play:
+
+\<blackbox-mode-map>To play blackbox, type \[blackbox].  An optional prefix argument
+specifies the number of balls to be hidden in the box; the default is
+four.
+
+The cursor can be moved around the box with the standard cursor
+movement keys.
+
+To shoot a ray, move the cursor to the edge of the box and press SPC.
+The result will be determined and the playfield updated.
+
+You may place or remove balls in the box by moving the cursor into the
+box and pressing \[bb-romp].
+
+When you think the configuration of balls you have placed is correct,
+press \[bb-done].  You will be informed whether you are correct or
+not, and be given your score.  Your score is the number of letters and
+numbers around the outside of the box plus five for each incorrectly
+placed ball.  If you placed any balls incorrectly, they will be
+indicated with `x', and their actual positions indicated with `o'.
+
+Details:
+
+There are three possible outcomes for each ray you send into the box:
+
+	Detour: the ray is deflected and emerges somewhere other than
+		where you sent it in.  On the playfield, detours are
+		denoted by matching pairs of numbers -- one where the
+		ray went in, and the other where it came out.
+
+	Reflection: the ray is reflected and emerges in the same place
+		it was sent in.  On the playfield, reflections are
+		denoted by the letter `R'.
+
+	Hit:	the ray strikes a ball directly and is absorbed.  It does
+		not emerge from the box.  On the playfield, hits are
+		denoted by the letter `H'.
+
+The rules for how balls deflect rays are simple and are best shown by
+example.
+
+As a ray approaches a ball it is deflected ninety degrees.  Rays can
+be deflected multiple times.  In the diagrams below, the dashes
+represent empty box locations and the letter `O' represents a ball.
+The entrance and exit points of each ray are marked with numbers as
+described under "Detour" above.  Note that the entrance and exit
+points are always interchangeable.  `*' denotes the path taken by the
+ray.
+
+Note carefully the relative positions of the ball and the ninety
+degree deflection it causes.
+
+    1                                            
+  - * - - - - - -         - - - - - - - -         - - - - - - - -       
+  - * - - - - - -         - - - - - - - -         - - - - - - - -       
+1 * * - - - - - -         - - - - - - - -         - O - - - - O -       
+  - - O - - - - -         - - O - - - - -         - - * * * * - -
+  - - - - - - - -         - - - * * * * * 2     3 * * * - - * - -
+  - - - - - - - -         - - - * - - - -         - - - O - * - -      
+  - - - - - - - -         - - - * - - - -         - - - - * * - -       
+  - - - - - - - -         - - - * - - - -         - - - - * - O -       
+                                2                         3
+
+As mentioned above, a reflection occurs when a ray emerges from the same point
+it was sent in.  This can happen in several ways:
+
+                                                                           
+  - - - - - - - -         - - - - - - - -          - - - - - - - -
+  - - - - O - - -         - - O - O - - -          - - - - - - - -
+R * * * * - - - -         - - - * - - - -          O - - - - - - -
+  - - - - O - - -         - - - * - - - -        R - - - - - - - -
+  - - - - - - - -         - - - * - - - -          - - - - - - - -
+  - - - - - - - -         - - - * - - - -          - - - - - - - -
+  - - - - - - - -       R * * * * - - - -          - - - - - - - -
+  - - - - - - - -         - - - - O - - -          - - - - - - - -
+
+In the first example, the ray is deflected downwards by the upper
+ball, then left by the lower ball, and finally retraces its path to
+its point of origin.  The second example is similar.  The third
+example is a bit anomalous but can be rationalized by realizing the
+ray never gets a chance to get into the box.  Alternatively, the ray
+can be thought of as being deflected downwards and immediately
+emerging from the box.
+
+A hit occurs when a ray runs straight into a ball:
+
+  - - - - - - - -         - - - - - - - -          - - - - - - - -
+  - - - - - - - -         - - - - - - - -          - - - - O - - -
+  - - - - - - - -         - - - - O - - -        H * * * * - - - -
+  - - - - - - - -       H * * * * O - - -          - - - * - - - -
+  - - - - - - - -         - - - - O - - -          - - - O - - - -
+H * * * O - - - -         - - - - - - - -          - - - - - - - -
+  - - - - - - - -         - - - - - - - -          - - - - - - - -
+  - - - - - - - -         - - - - - - - -          - - - - - - - -
+
+Be sure to compare the second example of a hit with the first example of
+a reflection.
+(autoload 'blackbox "blackbox" '(#$ . 48419) t nil)
+(byte-code "\301\302\303#\210\301\304\305#\210\301\306\307#\207" [ctl-x-map define-key "rb" bookmark-jump "rm" bookmark-set "rl" bookmark-bmenu-list] 4)
+#@279 Keymap containing bindings to bookmark functions.
+It is not bound to any key by default: to bind it
+so that you have a bookmark prefix, just use `global-set-key' and bind a
+key of your choice to `bookmark-map'.  All interactive bookmark
+functions have a binding in this keymap.
+(defvar bookmark-map nil (#$ . 53699))
+(byte-code "\301\300!\210\302\303\304#\210\302\305\304#\210\302\306\307#\210\302\310\307#\210\302\311\312#\210\302\313\314#\210\302\315\316#\210\302\317\320#\210\302\321\322#\210\302\323\324#\210\302\325\326#\210\302\327\330#\207" [bookmark-map define-prefix-command define-key "x" bookmark-set "m" "j" bookmark-jump "g" "i" bookmark-insert "e" edit-bookmarks "f" bookmark-insert-location "r" bookmark-rename "d" bookmark-delete "l" bookmark-load "w" bookmark-write "s" bookmark-save] 4)
+#@1009 Set a bookmark named NAME inside a file.
+If name is nil, then the user will be prompted.
+With prefix arg, will not overwrite a bookmark that has the same name
+as NAME if such a bookmark already exists, but instead will "push"
+the new bookmark onto the bookmark alist.  Thus the most recently set
+bookmark with name NAME would be the one in effect at any given time,
+but the others are still there, should you decide to delete the most
+recent one.
+
+To yank words from the text of the buffer and use them as part of the
+bookmark name, type C-w while setting a bookmark.  Successive C-w's
+yank successive words.
+
+Typing C-u inserts the name of the last bookmark used in the buffer
+(as an aid in using a single bookmark name to track your progress
+through a large file).  If no bookmark was used, then C-u inserts the
+name of the file being visited.
+
+Use \[bookmark-delete] to remove bookmarks (you give it a name,
+and it removes only the first instance of a bookmark with that name from
+the list of bookmarks.)
+(autoload 'bookmark-set "bookmark" '(#$ . 54524) t nil)
+#@514 Jump to bookmark BOOKMARK (a point in some file).
+You may have a problem using this function if the value of variable
+`bookmark-alist' is nil.  If that happens, you need to load in some
+bookmarks.  See help on function `bookmark-load' for more about
+this.
+
+If the file pointed to by BOOKMARK no longer exists, you will be asked
+if you wish to give the bookmark a new location, and bookmark-jump
+will then jump to the new location, as well as recording it in place
+of the old one in the permanent bookmark record.
+(autoload 'bookmark-jump "bookmark" '(#$ . 55595) t nil)
+#@241 Relocate BOOKMARK to another file (reading file name with minibuffer).
+This makes an already existing bookmark point to that file, instead of
+the one it used to point at.  Useful when a file has been renamed
+after a bookmark was set in it.
+(autoload 'bookmark-relocate "bookmark" '(#$ . 56172) t nil)
+#@161 Insert the name of the file associated with BOOKMARK.
+Optional second arg NO-HISTORY means don't record this in the
+minibuffer history list `bookmark-history'.
+(autoload 'bookmark-insert-location "bookmark" '(#$ . 56480) t nil)
+(defalias 'bookmark-locate 'bookmark-insert-location)
+#@484 Change the name of OLD bookmark to NEW name.
+If called from keyboard, prompt for OLD and NEW.  If called from
+menubar, select OLD from a menu and prompt for NEW.
+
+If called from Lisp, prompt for NEW if only OLD was passed as an
+argument.  If called with two strings, then no prompting is done.  You
+must pass at least OLD when calling from Lisp.
+
+While you are entering the new name, consecutive C-w's insert
+consecutive words from the text of the buffer into the new bookmark
+name.
+(autoload 'bookmark-rename "bookmark" '(#$ . 56769) t nil)
+#@268 Insert the text of the file pointed to by bookmark BOOKMARK.
+You may have a problem using this function if the value of variable
+`bookmark-alist' is nil.  If that happens, you need to load in some
+bookmarks.  See help on function `bookmark-load' for more about
+this.
+(autoload 'bookmark-insert "bookmark" '(#$ . 57318) t nil)
+#@402 Delete BOOKMARK from the bookmark list.
+Removes only the first instance of a bookmark with that name.  If
+there are one or more other bookmarks with the same name, they will
+not be deleted.  Defaults to the "current" bookmark (that is, the
+one most recently used in this file, if any).
+Optional second arg BATCH means don't update the bookmark list buffer,
+probably because we were called from there.
+(autoload 'bookmark-delete "bookmark" '(#$ . 57651) t nil)
+#@134 Write bookmarks to a file (reading the file name with the minibuffer).
+Don't use this in Lisp programs; use `bookmark-save' instead.
+(autoload 'bookmark-write "bookmark" '(#$ . 58118) t nil)
+#@709 Save currently defined bookmarks.
+Saves by default in the file defined by the variable
+`bookmark-default-file'.  With a prefix arg, save it in file FILE
+(second argument).
+
+If you are calling this from Lisp, the two arguments are PREFIX-ARG
+and FILE, and if you just want it to write to the default file, then
+pass no arguments.  Or pass in nil and FILE, and it will save in FILE
+instead.  If you pass in one argument, and it is non-nil, then the
+user will be interactively queried for a file to save in.
+
+When you want to load in the bookmarks from a file, use
+`bookmark-load', \[bookmark-load].  That function will prompt you
+for a file, defaulting to the file defined by variable
+`bookmark-default-file'.
+(autoload 'bookmark-save "bookmark" '(#$ . 58316) t nil)
+#@870 Load bookmarks from FILE (which must be in bookmark format).
+Appends loaded bookmarks to the front of the list of bookmarks.  If
+optional second argument OVERWRITE is non-nil, existing bookmarks are
+destroyed.  Optional third arg NO-MSG means don't display any messages
+while loading.
+
+If you load a file that doesn't contain a proper bookmark alist, you
+will corrupt Emacs's bookmark list.  Generally, you should only load
+in files that were created with the bookmark functions in the first
+place.  Your own personal bookmark file, `~/.emacs.bmk', is
+maintained automatically by Emacs; you shouldn't need to load it
+explicitly.
+
+If you load a file containing bookmarks with the same names as
+bookmarks already present in your Emacs, the new bookmarks will get
+unique numeric suffixes "<2>", "<3>", ... following the same
+method buffers use to resolve name collisions.
+(autoload 'bookmark-load "bookmark" '(#$ . 59088) t nil)
+#@210 Display a list of existing bookmarks.
+The list is displayed in a buffer named `*Bookmark List*'.
+The leftmost column displays a D if the bookmark is flagged for
+deletion, or > if it is flagged for displaying.
+(autoload 'bookmark-bmenu-list "bookmark" '(#$ . 60021) t nil)
+(byte-code "\300\301\302\"\210\300\303\302\"\207" [defalias list-bookmarks bookmark-bmenu-list edit-bookmarks] 3)
+#@420 Insert the text of the file pointed to by bookmark BOOKMARK.
+You may have a problem using this function if the value of variable
+`bookmark-alist' is nil.  If that happens, you need to load in some
+bookmarks.  See help on function `bookmark-load' for more about
+this.
+
+Warning: this function only takes an EVENT as argument.  Use the
+corresponding bookmark function from Lisp (the one without the
+"-menu-" in its name).
+(autoload 'bookmark-menu-insert "bookmark" '(#$ . 60414) t nil)
+#@409 Jump to bookmark BOOKMARK (a point in some file).
+You may have a problem using this function if the value of variable
+`bookmark-alist' is nil.  If that happens, you need to load in some
+bookmarks.  See help on function `bookmark-load' for more about
+this.
+
+Warning: this function only takes an EVENT as argument.  Use the
+corresponding bookmark function from Lisp (the one without the
+"-menu-" in its name).
+(autoload 'bookmark-menu-jump "bookmark" '(#$ . 60904) t nil)
+#@260 Insert the name of the file associated with BOOKMARK.
+(This is not the same as the contents of that file).
+
+Warning: this function only takes an EVENT as argument.  Use the
+corresponding bookmark function from Lisp (the one without the
+"-menu-" in its name).
+(autoload 'bookmark-menu-locate "bookmark" '(#$ . 61381) t nil)
+#@690 Change the name of OLD-BOOKMARK to NEWNAME.
+If called from keyboard, prompts for OLD-BOOKMARK and NEWNAME.
+If called from menubar, OLD-BOOKMARK is selected from a menu, and
+prompts for NEWNAME.
+If called from Lisp, prompts for NEWNAME if only OLD-BOOKMARK was
+passed as an argument.  If called with two strings, then no prompting
+is done.  You must pass at least OLD-BOOKMARK when calling from Lisp.
+
+While you are entering the new name, consecutive C-w's insert
+consecutive words from the text of the buffer into the new bookmark
+name.
+
+Warning: this function only takes an EVENT as argument.  Use the
+corresponding bookmark function from Lisp (the one without the
+"-menu-" in its name).
+(autoload 'bookmark-menu-rename "bookmark" '(#$ . 61711) t nil)
+#@454 Delete the bookmark named NAME from the bookmark list.
+Removes only the first instance of a bookmark with that name.  If
+there are one or more other bookmarks with the same name, they will
+not be deleted.  Defaults to the "current" bookmark (that is, the
+one most recently used in this file, if any).
+
+Warning: this function only takes an EVENT as argument.  Use the
+corresponding bookmark function from Lisp (the one without the
+"-menu-" in its name).
+(autoload 'bookmark-menu-delete "bookmark" '(#$ . 62471) t nil)
+(byte-code "\301B\302\301!\204\303\304!\305\301\211J\"\210\306	\307\310#\210\306	\311\312#\210\306	\313\314#\210\306	\315\316#\210\306	\317\320#\210\306	\321\322#\210\306	\323\324#\210\306	\325\326#\210\306	\327\330#\210\306	\331\332#\207" [current-load-list menu-bar-bookmark-map boundp make-sparse-keymap "Bookmark functions" defalias define-key [load] ("Load a Bookmark File..." . bookmark-load) [write] ("Save Bookmarks As..." . bookmark-write) [save] ("Save Bookmarks" . bookmark-save) [edit] ("Edit Bookmark List" . bookmark-bmenu-list) [delete] ("Delete Bookmark" . bookmark-menu-delete) [rename] ("Rename Bookmark" . bookmark-menu-rename) [locate] ("Insert Location" . bookmark-menu-locate) [insert] ("Insert Contents" . bookmark-menu-insert) [set] ("Set Bookmark" . bookmark-set) [jump] ("Jump to Bookmark" . bookmark-menu-jump)] 4)
+#@494 *Function to display the current buffer in a WWW browser.
+This is used by the `browse-url-at-point', `browse-url-at-mouse', and
+`browse-url-of-file' commands.
+
+If the value is not a function it should be a list of pairs
+(REGEXP . FUNCTION).  In this case the function called will be the one
+associated with the first REGEXP which matches the current URL.  The
+function is passed the URL and any other args of `browse-url'.  The last
+regexp should probably be "." to specify a default browser.
+(defvar browse-url-browser-function (byte-code "\301>\203\302\207\303\207" [system-type (windows-nt ms-dos) browse-url-default-windows-browser browse-url-generic] 2) (#$ . -63842))
+#@289 *If non-nil, always open a new browser window with appropriate browsers.
+Passing an interactive argument to \[browse-url], or specific browser
+commands reverses the effect of this variable.  Requires Netscape version
+1.1N or later or XMosaic version 2.5 or later if using those browsers.
+(defvar browse-url-new-window-flag nil (#$ . -64526))
+#@61 *The X display for running Netscape, if not same as Emacs'.
+(defvar browse-url-netscape-display nil (#$ . -64874))
+#@100 *If non-nil, save the buffer before displaying its file.
+Used by the `browse-url-of-file' command.
+(defvar browse-url-save-file nil (#$ . -64996))
+#@64 *The name of the browser program used by `browse-url-generic'.
+(defvar browse-url-generic-program "@PREFIX@/bin/launch" (#$ . -65149))
+#@275 Ask a WWW browser to display FILE.
+Display the current buffer's file if FILE is nil or if called
+interactively.  Turn the filename into a URL with function
+`browse-url-file-url'.  Pass the URL to a browser using the
+`browse-url' function then run `browse-url-of-file-hook'.
+(autoload 'browse-url-of-file "browse-url" '(#$ . 65291) t nil)
+#@181 Ask a WWW browser to display BUFFER.
+Display the current buffer if BUFFER is nil.  Display only the
+currently visible part of BUFFER (from a temporary file) if buffer is
+narrowed.
+(autoload 'browse-url-of-buffer "browse-url" '(#$ . 65636) t nil)
+#@69 In Dired, ask a WWW browser to display the file named on this line.
+(autoload 'browse-url-of-dired-file "browse-url" '(#$ . 65888) t nil)
+#@50 Ask a WWW browser to display the current region.
+(autoload 'browse-url-of-region "browse-url" '(#$ . 66032) t nil)
+#@160 Ask a WWW browser to load URL.
+Prompts for a URL, defaulting to the URL at or before point.  Variable
+`browse-url-browser-function' says which browser to use.
+(autoload 'browse-url "browse-url" '(#$ . 66154) t nil)
+#@170 Ask a WWW browser to load the URL at or before point.
+Doesn't let you edit the URL like `browse-url'.  Variable
+`browse-url-browser-function' says which browser to use.
+(autoload 'browse-url-at-point "browse-url" '(#$ . 66376) t nil)
+#@267 Ask a WWW browser to load a URL clicked with the mouse.
+The URL is the one around or before the position of the mouse click
+but point is not changed.  Doesn't let you edit the URL like
+`browse-url'.  Variable `browse-url-browser-function' says which browser
+to use.
+(autoload 'browse-url-at-mouse "browse-url" '(#$ . 66617) t nil)
+#@543 Ask the Netscape WWW browser to load URL.
+Default to the URL around or before point.  The strings in variable
+`browse-url-netscape-arguments' are also passed to Netscape.
+
+When called interactively, if variable `browse-url-new-window-flag' is
+non-nil, load the document in a new Netscape window, otherwise use a
+random existing one.  A non-nil interactive prefix argument reverses
+the effect of `browse-url-new-window-flag'.
+
+When called non-interactively, optional second argument NEW-WINDOW is
+used instead of `browse-url-new-window-flag'.
+(autoload 'browse-url-netscape "browse-url" '(#$ . 66955) t nil)
+#@558 Ask Mozilla/Netscape to load URL via the GNOME program `gnome-moz-remote'.
+Default to the URL around or before point.  The strings in variable
+`browse-url-gnome-moz-arguments' are also passed.
+
+When called interactively, if variable `browse-url-new-window-flag' is
+non-nil, load the document in a new browser window, otherwise use an
+existing one.  A non-nil interactive prefix argument reverses the
+effect of `browse-url-new-window-flag'.
+
+When called non-interactively, optional second argument NEW-WINDOW is
+used instead of `browse-url-new-window-flag'.
+(autoload 'browse-url-gnome-moz "browse-url" '(#$ . 67569) t nil)
+#@618 Ask the XMosaic WWW browser to load URL.
+
+Default to the URL around or before point.  The strings in variable
+`browse-url-mosaic-arguments' are also passed to Mosaic and the
+program is invoked according to the variable
+`browse-url-mosaic-program'.
+
+When called interactively, if variable `browse-url-new-window-flag' is
+non-nil, load the document in a new Mosaic window, otherwise use a
+random existing one.  A non-nil interactive prefix argument reverses
+the effect of `browse-url-new-window-flag'.
+
+When called non-interactively, optional second argument NEW-WINDOW is
+used instead of `browse-url-new-window-flag'.
+(autoload 'browse-url-mosaic "browse-url" '(#$ . 68199) t nil)
+#@132 Location of Grail remote control client script `rcgrail.py'.
+Typically found in $GRAILDIR/rcgrail.py, or ~/.grail/user/rcgrail.py.
+(defvar browse-url-grail (byte-code "\300\301!\206\302\303P\207" [getenv "GRAILDIR" "~/.grail" "/user/rcgrail.py"] 2) (#$ . 68886))
+#@137 Ask the Grail WWW browser to load URL.
+Default to the URL around or before point.  Runs the program in the
+variable `browse-url-grail'.
+(autoload 'browse-url-grail "browse-url" '(#$ . 69158) t nil)
+#@667 Ask the XMosaic WWW browser to load URL.
+Default to the URL around or before point.
+
+This function only works for XMosaic version 2.5 or later.  You must
+select `CCI' from XMosaic's File menu, set the CCI Port Address to the
+value of variable `browse-url-CCI-port', and enable `Accept requests'.
+
+When called interactively, if variable `browse-url-new-window-flag' is
+non-nil, load the document in a new browser window, otherwise use a
+random existing one.  A non-nil interactive prefix argument reverses
+the effect of `browse-url-new-window-flag'.
+
+When called non-interactively, optional second argument NEW-WINDOW is
+used instead of `browse-url-new-window-flag'.
+(autoload 'browse-url-cci "browse-url" '(#$ . 69363) t nil)
+#@87 Ask the IXIMosaic WWW browser to load URL.
+Default to the URL around or before point.
+(autoload 'browse-url-iximosaic "browse-url" '(#$ . 70095) t nil)
+#@405 Ask the w3 WWW browser to load URL.
+Default to the URL around or before point.
+
+When called interactively, if variable `browse-url-new-window-flag' is
+non-nil, load the document in a new window.  A non-nil interactive
+prefix argument reverses the effect of `browse-url-new-window-flag'.
+
+When called non-interactively, optional second argument NEW-WINDOW is
+used instead of `browse-url-new-window-flag'.
+(autoload 'browse-url-w3 "browse-url" '(#$ . 70254) t nil)
+#@215 Ask another Emacs running gnuserv to load the URL using the W3 browser.
+The `browse-url-gnudoit-program' program is used with options given by
+`browse-url-gnudoit-args'.  Default to the URL around or before point.
+(autoload 'browse-url-w3-gnudoit "browse-url" '(#$ . 70724) t nil)
+#@248 Ask the Lynx WWW browser to load URL.
+Default to the URL around or before point.  A new Lynx process is run
+in an Xterm window using the Xterm program named by `browse-url-xterm-program'
+with possible additional arguments `browse-url-xterm-args'.
+(autoload 'browse-url-lynx-xterm "browse-url" '(#$ . 71012) t nil)
+#@523 Ask the Lynx WWW browser to load URL.
+Default to the URL around or before point.  With a prefix argument, run
+a new Lynx process in a new buffer.
+
+When called interactively, if variable `browse-url-new-window-flag' is
+non-nil, load the document in a new lynx in a new term window,
+otherwise use any existing one.  A non-nil interactive prefix argument
+reverses the effect of `browse-url-new-window-flag'.
+
+When called non-interactively, optional second argument NEW-WINDOW is
+used instead of `browse-url-new-window-flag'.
+(autoload 'browse-url-lynx-emacs "browse-url" '(#$ . 71333) t nil)
+#@81 Ask the MMM WWW browser to load URL.
+Default to the URL around or before point.
+(autoload 'browse-url-mmm "browse-url" '(#$ . 71928) t nil)
+#@609 Open a new mail message buffer within Emacs.
+Default to using the mailto: URL around or before point as the
+recipient's address.  Supplying a non-nil interactive prefix argument
+will cause the mail to be composed in another window rather than the
+current one.
+
+When called interactively, if variable `browse-url-new-window-flag' is
+non-nil use `compose-mail-other-window', otherwise `compose-mail'.  A
+non-nil interactive prefix argument reverses the effect of
+`browse-url-new-window-flag'.
+
+When called non-interactively, optional second argument NEW-WINDOW is
+used instead of `browse-url-new-window-flag'.
+(autoload 'browse-url-mail "browse-url" '(#$ . 72075) t nil)
+#@317 Ask the WWW browser defined by `browse-url-generic-program' to load URL.
+Default to the URL around or before point.  A fresh copy of the
+browser is started up in a new process with possible additional arguments
+`browse-url-generic-args'.  This is appropriate for browsers which
+don't offer a form of remote control.
+(autoload 'browse-url-generic "browse-url" '(#$ . 72751) t nil)
+#@81 Ask the KDE WWW browser to load URL.
+Default to the URL around or before point.
+(autoload 'browse-url-kde "browse-url" '(#$ . 73137) t nil)
+#@57 Adds that special touch of class to your outgoing mail.
+(autoload 'bruce "bruce" '(#$ . 73283) t nil)
+#@65 Return a vector containing the lines from `bruce-phrases-file'.
+(autoload 'snarf-bruces "bruce" '(#$ . 73391) nil nil)
+#@156 Select next buffer defined by buffer cycling.
+The buffers taking part in buffer cycling are defined
+by buffer configuration `bs-cycle-configuration-name'.
+(autoload 'bs-cycle-next "bs" '(#$ . 73517) t nil)
+#@160 Select previous buffer defined by buffer cycling.
+The buffers taking part in buffer cycling are defined
+by buffer configuration `bs-cycle-configuration-name'.
+(autoload 'bs-cycle-previous "bs" '(#$ . 73730) t nil)
+#@54 Customization of group bs for Buffer Selection Menu.
+(autoload 'bs-customize "bs" '(#$ . 73950) t nil)
+#@566 Make a menu of buffers so you can manipulate buffers or the buffer list.
+\<bs-mode-map>
+There are many key commands similar to `Buffer-menu-mode' for
+manipulating buffer list and buffers itself.
+User can move with [up] or [down], select a buffer
+by \[bs-select] or [SPC]
+
+Type \[bs-kill] to leave Buffer Selection Menu without a selection.
+Type \[bs-help] after invocation to get help on commands available.
+With prefix argument ARG show a different buffer list.  Function
+`bs--configuration-name-for-prefix-arg' determine accordingly
+name of buffer configuration.
+(autoload 'bs-show "bs" '(#$ . 74060) t nil)
+#@130 Recompile every `.el' file in DIRECTORY that already has a `.elc' file.
+Files in subdirectories of DIRECTORY are processed also.
+(autoload 'byte-force-recompile "bytecomp" '(#$ . 74677) t nil)
+#@609 Recompile every `.el' file in DIRECTORY that needs recompilation.
+This is if a `.elc' file exists but is older than the `.el' file.
+Files in subdirectories of DIRECTORY are processed also.
+
+If the `.elc' file does not exist, normally the `.el' file is *not* compiled.
+But a prefix argument (optional second arg) means ask user,
+for each such `.el' file, whether to compile it.  Prefix argument 0 means
+don't ask and compile the file anyway.
+
+A nonzero prefix argument also means ask about each subdirectory.
+
+If the third argument FORCE is non-nil,
+recompile every `.el' file that already has a `.elc' file.
+(autoload 'byte-recompile-directory "bytecomp" '(#$ . 74877) t nil)
+#@273 Compile a file of Lisp code named FILENAME into a file of byte code.
+The output file's name is made by appending `c' to the end of FILENAME.
+With prefix arg (noninteractively: 2nd arg), load the file after compiling.
+The value is t if there were no errors, nil if errors.
+(autoload 'byte-compile-file "bytecomp" '(#$ . 75560) t nil)
+#@148 Compile and evaluate the current top-level form.
+Print the result in the minibuffer.
+With argument, insert value in current buffer after the form.
+(autoload 'compile-defun "bytecomp" '(#$ . 75900) t nil)
+#@123 If FORM is a symbol, byte-compile its function definition.
+If FORM is a lambda or a macro, byte-compile it as a function.
+(autoload 'byte-compile "bytecomp" '(#$ . 76111) nil nil)
+#@601 Display a call graph of a specified file.
+This lists which functions have been called, what functions called
+them, and what functions they call.  The list includes all functions
+whose definitions have been compiled in this Emacs session, as well as
+all functions called by those functions.
+
+The call graph does not include macros, inline functions, or
+primitives that the byte-code interpreter knows about directly (eq,
+cons, etc.).
+
+The call tree also lists those functions which are not known to be called
+(that is, to which no calls have been compiled), and which cannot be
+invoked interactively.
+(autoload 'display-call-tree "bytecomp" '(#$ . 76298) t nil)
+#@288 Run `byte-compile-file' on the files remaining on the command line.
+Use this from the command line, with `-batch';
+it won't work in an interactive Emacs.
+Each file is processed even if an error occurred previously.
+For example, invoke "emacs -batch -f batch-byte-compile $emacs/ ~/*.el"
+(autoload 'batch-byte-compile "bytecomp" '(#$ . 76966) nil nil)
+#@212 Runs `byte-recompile-directory' on the dirs remaining on the command line.
+Must be used only with `-batch', and kills Emacs on completion.
+For example, invoke `emacs -batch -f batch-byte-recompile-directory .'.
+(autoload 'batch-byte-recompile-directory "bytecomp" '(#$ . 77324) nil nil)
+(byte-code "\300\301\302\303#\210\300\304\302\303#\207" [put calendar-daylight-savings-starts risky-local-variable t calendar-daylight-savings-ends] 4)
+#@182 List Yahrzeit dates for *Gregorian* DEATH-DATE from START-YEAR to END-YEAR.
+When called interactively from the calendar window, the date of death is taken
+from the cursor position.
+(autoload 'list-yahrzeit-dates "cal-hebrew" '(#$ . 77770) t nil)
+#@93 Run the Emacs calculator.
+See the documentation for `calculator-mode' for more information.
+(autoload 'calculator "calculator" '(#$ . 78022) t nil)
+#@115 *The day of the week on which a week in the calendar begins.
+0 means Sunday (default), 1 means Monday, and so on.
+(defvar calendar-week-start-day 0 (#$ . -78177))
+#@246 *The offset of the principal month from the center of the calendar window.
+0 means the principal month is in the center (default), -1 means on the left,
++1 means on the right.  Larger (or smaller) values push the principal month off
+the screen.
+(defvar calendar-offset 0 (#$ . -78347))
+#@276 *Non-nil means display current date's diary entries on entry.
+The diary is displayed in another window when the calendar is first displayed,
+if the current date is visible.  The number of days of diary entries displayed
+is governed by the variable `number-of-diary-entries'.
+(defvar view-diary-entries-initially nil (#$ . -78640))
+#@906 *Specifies how many days of diary entries are to be displayed initially.
+This variable affects the diary display when the command \[diary] is used,
+or if the value of the variable `view-diary-entries-initially' is t.  For
+example, if the default value 1 is used, then only the current day's diary
+entries will be displayed.  If the value 2 is used, then both the current
+day's and the next day's entries will be displayed.
+
+The value can also be a vector such as [0 2 2 2 2 4 1]; this value
+says to display no diary entries on Sunday, the display the entries
+for the current date and the day after on Monday through Thursday,
+display Friday through Monday's entries on Friday, and display only
+Saturday's entries on Saturday.
+
+This variable does not affect the diary display with the `d' command
+from the calendar; in that case, the prefix argument controls the
+number of days of diary entries displayed.
+(defvar number-of-diary-entries 1 (#$ . -78978))
+#@141 *Non-nil means mark dates with diary entries, in the calendar window.
+The marking symbol is specified by the variable `diary-entry-marker'.
+(defvar mark-diary-entries-in-calendar nil (#$ . -79939))
+#@134 *Determine how the calendar mode removes a frame no longer needed.
+If nil, make an icon of the frame.  If non-nil, delete the frame.
+(defvar calendar-remove-frame-by-deleting nil (#$ . -80144))
+#@157 *Non-nil means display holidays for current three month period on entry.
+The holidays are displayed in another window when the calendar is first
+displayed.
+(defvar view-calendar-holidays-initially nil (#$ . -80345))
+#@138 *Non-nil means mark dates of holidays in the calendar window.
+The marking symbol is specified by the variable `calendar-holiday-marker'.
+(defvar mark-holidays-in-calendar nil (#$ . -80568))
+#@211 *If nil, show only major holidays from the Hebrew calendar.
+This means only those Jewish holidays that appear on secular calendars.
+
+If t, show all the holidays that would appear in a complete Hebrew calendar.
+(defvar all-hebrew-calendar-holidays nil (#$ . -80765))
+#@220 *If nil, show only major holidays from the Christian calendar.
+This means only those Christian holidays that appear on secular calendars.
+
+If t, show all the holidays that would appear in a complete Christian
+calendar.
+(defvar all-christian-calendar-holidays nil (#$ . -81038))
+#@214 *If nil, show only major holidays from the Islamic calendar.
+This means only those Islamic holidays that appear on secular calendars.
+
+If t, show all the holidays that would appear in a complete Islamic
+calendar.
+(defvar all-islamic-calendar-holidays nil (#$ . -81323))
+#@131 *List of functions to be called after the calendar is first loaded.
+This is the place to add key bindings to `calendar-mode-map'.
+(defvar calendar-load-hook nil (#$ . -81600))
+#@292 *List of functions to be called when the calendar window is first opened.
+The functions invoked are called after the calendar window is opened, but
+once opened is never called again.  Leaving the calendar with the `q' command
+and reentering it will cause these functions to be called again.
+(defvar initial-calendar-window-hook nil (#$ . -81783))
+#@794 *List of functions called whenever the current date is visible.
+This can be used, for example, to replace today's date with asterisks; a
+function `calendar-star-date' is included for this purpose:
+    (setq today-visible-calendar-hook 'calendar-star-date)
+It can also be used to mark the current date with `calendar-today-marker';
+a function is also provided for this:
+    (setq today-visible-calendar-hook 'calendar-mark-today)
+
+The corresponding variable `today-invisible-calendar-hook' is the list of
+functions called when the calendar function was called when the current
+date is not visible in the window.
+
+Other than the use of the provided functions, the changing of any
+characters in the calendar buffer by the hooks may cause the failure of the
+functions that move by days and weeks.
+(defvar today-visible-calendar-hook nil (#$ . -82137))
+#@427 *List of functions called whenever the current date is not visible.
+
+The corresponding variable `today-visible-calendar-hook' is the list of
+functions called when the calendar function was called when the current
+date is visible in the window.
+
+Other than the use of the provided functions, the changing of any
+characters in the calendar buffer by the hooks may cause the failure of the
+functions that move by days and weeks.
+(defvar today-invisible-calendar-hook nil (#$ . -82992))
+#@217 *List of functions called whenever the cursor moves in the calendar.
+
+For example,
+
+  (add-hook 'calendar-move-hook (lambda () (view-diary-entries 1)))
+
+redisplays the diary for whatever date the cursor is moved to.
+(defvar calendar-move-hook nil (#$ . -83482))
+#@4101 *Name of the file in which one's personal diary of dates is kept.
+
+The file's entries are lines in any of the forms
+
+            MONTH/DAY
+            MONTH/DAY/YEAR
+            MONTHNAME DAY
+            MONTHNAME DAY, YEAR
+            DAYNAME
+
+at the beginning of the line; the remainder of the line is the diary entry
+string for that date.  MONTH and DAY are one or two digit numbers, YEAR is
+a number and may be written in full or abbreviated to the final two digits.
+If the date does not contain a year, it is generic and applies to any year.
+DAYNAME entries apply to any date on which is on that day of the week.
+MONTHNAME and DAYNAME can be spelled in full, abbreviated to three
+characters (with or without a period), capitalized or not.  Any of DAY,
+MONTH, or MONTHNAME, YEAR can be `*' which matches any day, month, or year,
+respectively.
+
+The European style (in which the day precedes the month) can be used
+instead, if you execute `european-calendar' when in the calendar, or set
+`european-calendar-style' to t in your .emacs file.  The European forms are
+
+            DAY/MONTH
+            DAY/MONTH/YEAR
+            DAY MONTHNAME
+            DAY MONTHNAME YEAR
+            DAYNAME
+
+To revert to the default American style from the European style, execute
+`american-calendar' in the calendar.
+
+A diary entry can be preceded by the character
+`diary-nonmarking-symbol' (ordinarily `&') to make that entry
+nonmarking--that is, it will not be marked on dates in the calendar
+window but will appear in a diary window.
+
+Multiline diary entries are made by indenting lines after the first with
+either a TAB or one or more spaces.
+
+Lines not in one the above formats are ignored.  Here are some sample diary
+entries (in the default American style):
+
+     12/22/1988 Twentieth wedding anniversary!!
+     &1/1. Happy New Year!
+     10/22 Ruth's birthday.
+     21: Payday
+     Tuesday--weekly meeting with grad students at 10am
+              Supowit, Shen, Bitner, and Kapoor to attend.
+     1/13/89 Friday the thirteenth!!
+     &thu 4pm squash game with Lloyd.
+     mar 16 Dad's birthday
+     April 15, 1989 Income tax due.
+     &* 15 time cards due.
+
+If the first line of a diary entry consists only of the date or day name with
+no trailing blanks or punctuation, then that line is not displayed in the
+diary window; only the continuation lines is shown.  For example, the
+single diary entry
+
+     02/11/1989
+      Bill Blattner visits Princeton today
+      2pm Cognitive Studies Committee meeting
+      2:30-5:30 Lizzie at Lawrenceville for `Group Initiative'
+      4:00pm Jamie Tappenden
+      7:30pm Dinner at George and Ed's for Alan Ryan
+      7:30-10:00pm dance at Stewart Country Day School
+
+will appear in the diary window without the date line at the beginning.  This
+facility allows the diary window to look neater, but can cause confusion if
+used with more than one day's entries displayed.
+
+Diary entries can be based on Lisp sexps.  For example, the diary entry
+
+      %%(diary-block 11 1 1990 11 10 1990) Vacation
+
+causes the diary entry "Vacation" to appear from November 1 through November
+10, 1990.  Other functions available are `diary-float', `diary-anniversary',
+`diary-cyclic', `diary-day-of-year', `diary-iso-date', `diary-french-date',
+`diary-hebrew-date', `diary-islamic-date', `diary-mayan-date',
+`diary-chinese-date', `diary-coptic-date', `diary-ethiopic-date',
+`diary-persian-date', `diary-yahrzeit', `diary-sunrise-sunset',
+`diary-phases-of-moon', `diary-parasha', `diary-omer', `diary-rosh-hodesh',
+and `diary-sabbath-candles'.  See the documentation for the function
+`list-sexp-diary-entries' for more details.
+
+Diary entries based on the Hebrew and/or the Islamic calendar are also
+possible, but because these are somewhat slow, they are ignored
+unless you set the `nongregorian-diary-listing-hook' and the
+`nongregorian-diary-marking-hook' appropriately.  See the documentation
+for these functions for details.
+
+Diary files can contain directives to include the contents of other files; for
+details, see the documentation for the variable `list-diary-entries-hook'.
+(defvar diary-file "~/diary" (#$ . -83752))
+#@76 *Symbol indicating that a diary entry is not to be marked in the calendar.
+(defvar diary-nonmarking-symbol "&" (#$ . -87902))
+#@68 *Symbol indicating a diary entry according to the Hebrew calendar.
+(defvar hebrew-diary-entry-symbol "H" (#$ . -88034))
+#@69 *Symbol indicating a diary entry according to the Islamic calendar.
+(defvar islamic-diary-entry-symbol "I" (#$ . -88160))
+#@136 *The string indicating inclusion of another file of diary entries.
+See the documentation for the function `include-other-diary-files'.
+(defvar diary-include-string "#include" (#$ . -88289))
+#@132 *The string used to indicate a sexp diary entry in `diary-file'.
+See the documentation for the function `list-sexp-diary-entries'.
+(defvar sexp-diary-entry-symbol "%%" (#$ . -88486))
+#@205 *Interpret a two-digit year DD in a diary entry as either 19DD or 20DD.
+For the Gregorian calendar; similarly for the Hebrew and Islamic calendars.
+If this variable is nil, years must be written in full.
+(defvar abbreviated-calendar-year t (#$ . -88676))
+#@427 *Use the European style of dates in the diary and in any displays.
+If this variable is t, a date 1/2/1990 would be interpreted as February 1,
+1990.  The accepted European date styles are
+
+            DAY/MONTH
+            DAY/MONTH/YEAR
+            DAY MONTHNAME
+            DAY MONTHNAME YEAR
+            DAYNAME
+
+Names can be capitalized or not, written in full, or abbreviated to three
+characters with or without a period.
+(defvar european-calendar-style nil (#$ . -88938))
+#@137 *List of pseudo-patterns describing the American patterns of date used.
+See the documentation of `diary-date-forms' for an explanation.
+(defvar american-date-diary-pattern '((month "/" day "[^/0-9]") (month "/" day "/" year "[^0-9]") (monthname " *" day "[^,0-9]") (monthname " *" day ", *" year "[^0-9]") (dayname "\\W")) (#$ . -89422))
+#@137 *List of pseudo-patterns describing the European patterns of date used.
+See the documentation of `diary-date-forms' for an explanation.
+(defvar european-date-diary-pattern '((day "/" month "[^/0-9]") (day "/" month "/" year "[^0-9]") (backup day " *" monthname "\\W+\\<\\([^*0-9]\\|\\([0-9]+[:aApP]\\)\\)") (day " *" monthname " *" year "[^0-9]") (dayname "\\W")) (#$ . -89767))
+#@145 *Pseudo-pattern governing the way a date appears in the European style.
+See the documentation of calendar-date-display-form for an explanation.
+(defvar european-calendar-display-form '((if dayname (concat dayname ", ")) day " " monthname " " year) (#$ . -90153))
+#@147 *Pseudo-pattern governing the way a date appears in the American style.
+See the documentation of `calendar-date-display-form' for an explanation.
+(defvar american-calendar-display-form '((if dayname (concat dayname ", ")) monthname " " day ", " year) (#$ . -90423))
+#@369 *List of functions called after a temporary diary buffer is prepared.
+The buffer shows only the diary entries currently visible in the diary
+buffer.  The default just does the printing.  Other uses might include, for
+example, rearranging the lines into order by day and time, saving the buffer
+instead of deleting it, or changing the function used to do the printing.
+(defvar print-diary-entries-hook 'lpr-buffer (#$ . -90696))
+#@1139 *List of functions called after diary file is culled for relevant entries.
+It is to be used for diary entries that are not found in the diary file.
+
+A function `include-other-diary-files' is provided for use as the value of
+this hook.  This function enables you to use shared diary files together
+with your own.  The files included are specified in the diary file by lines
+of the form
+
+        #include "filename"
+
+This is recursive; that is, #include directives in files thus included are
+obeyed.  You can change the "#include" to some other string by changing
+the variable `diary-include-string'.  When you use `include-other-diary-files'
+as part of the list-diary-entries-hook, you will probably also want to use the
+function `mark-included-diary-files' as part of `mark-diary-entries-hook'.
+
+For example, you could use
+
+     (setq list-diary-entries-hook
+       '(include-other-diary-files sort-diary-entries))
+     (setq diary-display-hook 'fancy-diary-display)
+
+in your `.emacs' file to cause the fancy diary buffer to be displayed with
+diary entries from various included files, each day's entries sorted into
+lexicographic order.
+(defvar list-diary-entries-hook nil (#$ . -91132))
+#@101 *List of functions called after the display of the diary.
+Can be used for appointment notification.
+(defvar diary-hook nil (#$ . -92328))
+#@1203 *List of functions that handle the display of the diary.
+If nil (the default), `simple-diary-display' is used.  Use `ignore' for no
+diary display.
+
+Ordinarily, this just displays the diary buffer (with holidays indicated in
+the mode line), if there are any relevant entries.  At the time these
+functions are called, the variable `diary-entries-list' is a list, in order
+by date, of all relevant diary entries in the form of ((MONTH DAY YEAR)
+STRING), where string is the diary entry for the given date.  This can be
+used, for example, a different buffer for display (perhaps combined with
+holidays), or produce hard copy output.
+
+A function `fancy-diary-display' is provided as an alternative
+choice for this hook; this function prepares a special noneditable diary
+buffer with the relevant diary entries that has neat day-by-day arrangement
+with headings.  The fancy diary buffer will show the holidays unless the
+variable `holidays-in-diary-buffer' is set to nil.  Ordinarily, the fancy
+diary buffer will not show days for which there are no diary entries, even
+if that day is a holiday; if you want such days to be shown in the fancy
+diary buffer, set the variable `diary-list-include-blanks' to t.
+(defvar diary-display-hook nil (#$ . -92474))
+#@342 *List of functions called for listing diary file and included files.
+As the files are processed for diary entries, these functions are used to cull
+relevant entries.  You can use either or both of `list-hebrew-diary-entries'
+and `list-islamic-diary-entries'.  The documentation for these functions
+describes the style of such diary entries.
+(defvar nongregorian-diary-listing-hook nil (#$ . -93729))
+#@717 *List of functions called after marking diary entries in the calendar.
+
+A function `mark-included-diary-files' is also provided for use as the
+`mark-diary-entries-hook'; it enables you to use shared diary files together
+with your own.  The files included are specified in the diary file by lines
+of the form
+        #include "filename"
+This is recursive; that is, #include directives in files thus included are
+obeyed.  You can change the "#include" to some other string by changing the
+variable `diary-include-string'.  When you use `mark-included-diary-files' as
+part of the mark-diary-entries-hook, you will probably also want to use the
+function `include-other-diary-files' as part of `list-diary-entries-hook'.
+(defvar mark-diary-entries-hook nil (#$ . -94136))
+#@342 *List of functions called for marking diary file and included files.
+As the files are processed for diary entries, these functions are used to cull
+relevant entries.  You can use either or both of `mark-hebrew-diary-entries'
+and `mark-islamic-diary-entries'.  The documentation for these functions
+describes the style of such diary entries.
+(defvar nongregorian-diary-marking-hook nil (#$ . -94910))
+#@167 *If nil, do not include days with no diary entry in the list of diary entries.
+Such days will then not be shown in the fancy diary buffer, even if they
+are holidays.
+(defvar diary-list-include-blanks nil (#$ . -95317))
+#@257 *Non-nil means include holidays in the diary display.
+The holidays appear in the mode line of the diary buffer, or in the
+fancy diary buffer next to the date.  This slows down the diary functions
+somewhat; setting it to nil makes the diary display faster.
+(defvar holidays-in-diary-buffer t (#$ . -95543))
+(put 'general-holidays 'risky-local-variable t)
+#@120 *General holidays.  Default value is for the United States.
+See the documentation for `calendar-holidays' for details.
+(defvar general-holidays '((holiday-fixed 1 1 "New Year's Day") (holiday-float 1 1 3 "Martin Luther King Day") (holiday-fixed 2 2 "Groundhog Day") (holiday-fixed 2 14 "Valentine's Day") (holiday-float 2 1 3 "President's Day") (holiday-fixed 3 17 "St. Patrick's Day") (holiday-fixed 4 1 "April Fools' Day") (holiday-float 5 0 2 "Mother's Day") (holiday-float 5 1 -1 "Memorial Day") (holiday-fixed 6 14 "Flag Day") (holiday-float 6 0 3 "Father's Day") (holiday-fixed 7 4 "Independence Day") (holiday-float 9 1 1 "Labor Day") (holiday-float 10 1 2 "Columbus Day") (holiday-fixed 10 31 "Halloween") (holiday-fixed 11 11 "Veteran's Day") (holiday-float 11 4 4 "Thanksgiving")) (#$ . -95904))
+(put 'oriental-holidays 'risky-local-variable t)
+#@80 *Oriental holidays.
+See the documentation for `calendar-holidays' for details.
+(defvar oriental-holidays '((if (fboundp 'atan) (holiday-chinese-new-year))) (#$ . -96765))
+(put 'local-holidays 'risky-local-variable t)
+#@77 *Local holidays.
+See the documentation for `calendar-holidays' for details.
+(defvar local-holidays nil (#$ . -96988))
+(put 'other-holidays 'risky-local-variable t)
+#@84 *User defined holidays.
+See the documentation for `calendar-holidays' for details.
+(defvar other-holidays nil (#$ . -97158))
+(byte-code "\305\301\306\307#\210\301B\310\301!\204\311\305\302\306\307#\210\302B\310\302!\204$\312\305\303\306\307#\210\303B\310\303!\2046\313\305\304\306\307#\210\304B\310\304!\204H\314\305\315\306\307#\207" [current-load-list hebrew-holidays-1 hebrew-holidays-2 hebrew-holidays-3 hebrew-holidays-4 put risky-local-variable t boundp ((holiday-rosh-hashanah-etc) (if all-hebrew-calendar-holidays (holiday-julian 11 (let* ((m displayed-month) (y displayed-year) (year)) (increment-calendar-month m y -1) (let ((year (extract-calendar-year (calendar-julian-from-absolute (calendar-absolute-from-gregorian (list m 1 y)))))) (if (zerop (% (1+ year) 4)) 22 21))) "\"Tal Umatar\" (evening)"))) ((if all-hebrew-calendar-holidays (holiday-hanukkah) (holiday-hebrew 9 25 "Hanukkah")) (if all-hebrew-calendar-holidays (holiday-hebrew 10 (let ((h-year (extract-calendar-year (calendar-hebrew-from-absolute (calendar-absolute-from-gregorian (list displayed-month 28 displayed-year)))))) (if (= (% (calendar-absolute-from-hebrew (list 10 10 h-year)) 7) 6) 11 10)) "Tzom Teveth")) (if all-hebrew-calendar-holidays (holiday-hebrew 11 15 "Tu B'Shevat"))) ((if all-hebrew-calendar-holidays (holiday-hebrew 11 (let ((m displayed-month) (y displayed-year)) (increment-calendar-month m y 1) (let* ((h-year (extract-calendar-year (calendar-hebrew-from-absolute (calendar-absolute-from-gregorian (list m (calendar-last-day-of-month m y) y))))) (s-s (calendar-hebrew-from-absolute (if (= (% (calendar-absolute-from-hebrew (list 7 1 h-year)) 7) 6) (calendar-dayname-on-or-before 6 (calendar-absolute-from-hebrew (list 11 17 h-year))) (calendar-dayname-on-or-before 6 (calendar-absolute-from-hebrew (list 11 16 h-year)))))) (day (extract-calendar-day s-s))) day)) "Shabbat Shirah"))) ((holiday-passover-etc) (if (and all-hebrew-calendar-holidays (let* ((m displayed-month) (y displayed-year) (year)) (increment-calendar-month m y -1) (let ((year (extract-calendar-year (calendar-julian-from-absolute (calendar-absolute-from-gregorian (list m 1 y)))))) (= 21 (% year 28))))) (holiday-julian 3 26 "Kiddush HaHamah")) (if all-hebrew-calendar-holidays (holiday-tisha-b-av-etc))) hebrew-holidays] 4)
+#@78 *Jewish holidays.
+See the documentation for `calendar-holidays' for details.
+(defvar hebrew-holidays (append hebrew-holidays-1 hebrew-holidays-2 hebrew-holidays-3 hebrew-holidays-4) (#$ . -99477))
+(put 'christian-holidays 'risky-local-variable t)
+#@81 *Christian holidays.
+See the documentation for `calendar-holidays' for details.
+(defvar christian-holidays '((if all-christian-calendar-holidays (holiday-fixed 1 6 "Epiphany")) (holiday-easter-etc) (if all-christian-calendar-holidays (holiday-greek-orthodox-easter)) (if all-christian-calendar-holidays (holiday-fixed 8 15 "Assumption")) (if all-christian-calendar-holidays (holiday-advent)) (holiday-fixed 12 25 "Christmas") (if all-christian-calendar-holidays (holiday-julian 12 25 "Eastern Orthodox Christmas"))) (#$ . -99730))
+(put 'islamic-holidays 'risky-local-variable t)
+#@79 *Islamic holidays.
+See the documentation for `calendar-holidays' for details.
+(defvar islamic-holidays '((holiday-islamic 1 1 (format "Islamic New Year %d" (let ((m displayed-month) (y displayed-year)) (increment-calendar-month m y 1) (extract-calendar-year (calendar-islamic-from-absolute (calendar-absolute-from-gregorian (list m (calendar-last-day-of-month m y) y))))))) (if all-islamic-calendar-holidays (holiday-islamic 1 10 "Ashura")) (if all-islamic-calendar-holidays (holiday-islamic 3 12 "Mulad-al-Nabi")) (if all-islamic-calendar-holidays (holiday-islamic 7 26 "Shab-e-Mi'raj")) (if all-islamic-calendar-holidays (holiday-islamic 8 15 "Shab-e-Bara't")) (holiday-islamic 9 1 "Ramadan Begins") (if all-islamic-calendar-holidays (holiday-islamic 9 27 "Shab-e Qadr")) (if all-islamic-calendar-holidays (holiday-islamic 10 1 "Id-al-Fitr")) (if all-islamic-calendar-holidays (holiday-islamic 12 10 "Id-al-Adha"))) (#$ . -100315))
+(put 'solar-holidays 'risky-local-variable t)
+#@83 *Sun-related holidays.
+See the documentation for `calendar-holidays' for details.
+(defvar solar-holidays '((if (fboundp 'atan) (solar-equinoxes-solstices)) (if (progn (require 'cal-dst) t) (funcall 'holiday-sexp calendar-daylight-savings-starts '(format "Daylight Savings Time Begins %s" (if (fboundp 'atan) (solar-time-string (/ calendar-daylight-savings-starts-time (float 60)) calendar-standard-time-zone-name) "")))) (funcall 'holiday-sexp calendar-daylight-savings-ends '(format "Daylight Savings Time Ends %s" (if (fboundp 'atan) (solar-time-string (/ calendar-daylight-savings-ends-time (float 60)) calendar-daylight-time-zone-name) "")))) (#$ . -101301))
+(put 'calendar-holidays 'risky-local-variable t)
+#@299 The frame set up of the calendar.
+The choices are `one-frame' (calendar and diary together in one separate,
+dedicated frame), `two-frames' (calendar and diary in separate, dedicated
+frames), `calendar-only' (calendar in a separate, dedicated frame); with
+any other value the current frame is used.
+(defvar calendar-setup nil (#$ . 102020))
+#@144 Choose between the one frame, two frame, or basic calendar displays.
+The original function `calendar' has been renamed `calendar-basic-setup'.
+(autoload 'calendar "calendar" '(#$ . 102367) t nil)
+#@38 Syntax table used in c-mode buffers.
+(defvar c-mode-syntax-table nil (#$ . 102569))
+#@40 Syntax table used in c++-mode buffers.
+(defvar c++-mode-syntax-table nil (#$ . 102659))
+#@41 Syntax table used in objc-mode buffers.
+(defvar objc-mode-syntax-table nil (#$ . 102753))
+#@41 Syntax table used in java-mode buffers.
+(defvar java-mode-syntax-table nil (#$ . 102849))
+#@40 Syntax table used in idl-mode buffers.
+(defvar idl-mode-syntax-table nil (#$ . 102945))
+#@41 Syntax table used in pike-mode buffers.
+(defvar pike-mode-syntax-table nil (#$ . 103039))
+(byte-code "\300\301\302\303\211\211%\207" [autoload c-initialize-cc-mode "cc-mode" nil] 6)
+#@569 Major mode for editing K&R and ANSI C code.
+To submit a problem report, enter `\[c-submit-bug-report]' from a
+c-mode buffer.  This automatically sets up a mail buffer with version
+information already added.  You just need to add a description of the
+problem, including a reproducible test case and send the message.
+
+To see what version of CC Mode you are running, enter `\[c-version]'.
+
+The hook variable `c-mode-hook' is run with no args, if that value is
+bound and has a non-nil value.  Also the hook `c-mode-common-hook' is
+run first.
+
+Key bindings:
+\{c-mode-map}
+(autoload 'c-mode "cc-mode" '(#$ . 103228) t nil)
+#@568 Major mode for editing C++ code.
+To submit a problem report, enter `\[c-submit-bug-report]' from a
+c++-mode buffer.  This automatically sets up a mail buffer with
+version information already added.  You just need to add a description
+of the problem, including a reproducible test case, and send the
+message.
+
+To see what version of CC Mode you are running, enter `\[c-version]'.
+
+The hook variable `c++-mode-hook' is run with no args, if that
+variable is bound and has a non-nil value.  Also the hook
+`c-mode-common-hook' is run first.
+
+Key bindings:
+\{c++-mode-map}
+(autoload 'c++-mode "cc-mode" '(#$ . 103853) t nil)
+#@577 Major mode for editing Objective C code.
+To submit a problem report, enter `\[c-submit-bug-report]' from an
+objc-mode buffer.  This automatically sets up a mail buffer with
+version information already added.  You just need to add a description
+of the problem, including a reproducible test case, and send the
+message.
+
+To see what version of CC Mode you are running, enter `\[c-version]'.
+
+The hook variable `objc-mode-hook' is run with no args, if that value
+is bound and has a non-nil value.  Also the hook `c-mode-common-hook'
+is run first.
+
+Key bindings:
+\{objc-mode-map}
+(autoload 'objc-mode "cc-mode" '(#$ . 104479) t nil)
+#@714 Major mode for editing Java code.
+To submit a problem report, enter `\[c-submit-bug-report]' from a
+java-mode buffer.  This automatically sets up a mail buffer with
+version information already added.  You just need to add a description
+of the problem, including a reproducible test case and send the
+message.
+
+To see what version of CC Mode you are running, enter `\[c-version]'.
+
+The hook variable `java-mode-hook' is run with no args, if that value
+is bound and has a non-nil value.  Also the common hook
+`c-mode-common-hook' is run first.  Note that this mode automatically
+sets the "java" style before calling any hooks so be careful if you
+set styles in `c-mode-common-hook'.
+
+Key bindings:
+\{java-mode-map}
+(autoload 'java-mode "cc-mode" '(#$ . 105115) t nil)
+#@577 Major mode for editing CORBA's IDL code.
+To submit a problem report, enter `\[c-submit-bug-report]' from an
+idl-mode buffer.  This automatically sets up a mail buffer with
+version information already added.  You just need to add a description
+of the problem, including a reproducible test case, and send the
+message.
+
+To see what version of CC Mode you are running, enter `\[c-version]'.
+
+The hook variable `idl-mode-hook' is run with no args, if that
+variable is bound and has a non-nil value.  Also the hook
+`c-mode-common-hook' is run first.
+
+Key bindings:
+\{idl-mode-map}
+(autoload 'idl-mode "cc-mode" '(#$ . 105888) t nil)
+#@576 Major mode for editing Pike code.
+To submit a problem report, enter `\[c-submit-bug-report]' from an
+idl-mode buffer.  This automatically sets up a mail buffer with
+version information already added.  You just need to add a description
+of the problem, including a reproducible test case, and send the
+message.
+
+To see what version of CC Mode you are running, enter `\[c-version]'.
+
+The hook variable `pike-mode-hook' is run with no args, if that value
+is bound and has a non-nil value.  Also the common hook
+`c-mode-common-hook' is run first.
+
+Key bindings:
+\{pike-mode-map}
+(autoload 'pike-mode "cc-mode" '(#$ . 106523) t nil)
+#@836 Set CC Mode variables to use one of several different indentation styles.
+STYLENAME is a string representing the desired style from the list of
+styles described in the variable `c-style-alist'.  See that variable
+for details of setting up styles.
+
+The variable `c-indentation-style' always contains the buffer's current
+style name.
+
+If the optional argument DONT-OVERRIDE is non-nil, no style variables
+that already have values will be overridden.  I.e. in the case of
+`c-offsets-alist', syntactic symbols will only be added, and in the
+case of all other style variables, only those set to `set-from-style'
+will be reassigned.
+
+Obviously, specifying DONT-OVERRIDE is useful mainly when the initial
+style is chosen for a CC Mode buffer by a major mode.  Since this is
+done internally by CC Mode, there's hardly ever a reason to use it.
+(autoload 'c-set-style "cc-styles" '(#$ . 107158) t nil)
+#@456 Adds a style to `c-style-alist', or updates an existing one.
+STYLE is a string identifying the style to add or update.  DESCRIP is
+an association list describing the style and must be of the form:
+
+  ([BASESTYLE] (VARIABLE . VALUE) [(VARIABLE . VALUE) ...])
+
+See the variable `c-style-alist' for the semantics of BASESTYLE,
+VARIABLE and VALUE.  This function also sets the current style to
+STYLE using `c-set-style' if the optional SET-P flag is non-nil.
+(autoload 'c-add-style "cc-styles" '(#$ . 108057) t nil)
+#@254 Change the value of a syntactic element symbol in `c-offsets-alist'.
+SYMBOL is the syntactic element symbol to change and OFFSET is the new
+offset for that syntactic element.  The optional argument is not used
+and exists only for compatibility reasons.
+(autoload 'c-set-offset "cc-styles" '(#$ . 108576) t nil)
+#@394 A list of features extant in the Emacs you are using.
+There are many flavors of Emacs out there, each with different
+features supporting those needed by CC Mode.  Here's the current
+supported list, along with the values for this variable:
+
+ XEmacs 19, 20, 21:          (8-bit)
+ Emacs 19, 20:               (1-bit)
+
+Infodock (based on XEmacs) has an additional symbol on this list:
+`infodock'.
+(defconst c-emacs-features (byte-code "\304\305!\306 \307\310\311\312	#\210\313	!\203#	\311H\211:\203J@\202J\314\315!\2031\315\311	\"\202J\314\316!\203F\316	!\203F\317	\320\"@\202J\321\322!\210\323\324\325\"\326\"\326U\203Z\327\202[\330*\211\203h\n\331D\202j\nC*\207" [entry table comments infodock-p boundp infodock-version copy-syntax-table nil modify-syntax-entry 97 ". 12345678" arrayp fboundp get-char-table char-table-p char-table-range [97] error "CC Mode is incompatible with this version of Emacs" logand lsh -16 255 8-bit 1-bit infodock] 6) (#$ . 108894))
+#@66 Return the compiled code of CCL-PROGRAM as a vector of integers.
+(autoload 'ccl-compile "ccl" '(#$ . 109881) nil nil)
+#@32 Disassemble compiled CCL-CODE.
+(autoload 'ccl-dump "ccl" '(#$ . 110005) nil nil)
+#@387 Declare NAME as a name of CCL program.
+
+This macro exists for backward compatibility.  In the old version of
+Emacs, to compile a CCL program which calls another CCL program not
+yet defined, it must be declared as a CCL program in advance.  But,
+now CCL program names are resolved not at compile time but before
+execution.
+
+Optional arg VECTOR is a compiled CCL code of the CCL program.
+(autoload 'declare-ccl-program "ccl" '(#$ . 110093) nil 'macro)
+#@6156 Set NAME the compiled code of CCL-PROGRAM.
+
+CCL-PROGRAM has this form:
+	(BUFFER_MAGNIFICATION
+	 CCL_MAIN_CODE
+	 [ CCL_EOF_CODE ])
+
+BUFFER_MAGNIFICATION is an integer value specifying the approximate
+output buffer magnification size compared with the bytes of input data
+text.  If the value is zero, the CCL program can't execute `read' and
+`write' commands.
+
+CCL_MAIN_CODE and CCL_EOF_CODE are CCL program codes.  CCL_MAIN_CODE
+executed at first.  If there's no more input data when `read' command
+is executed in CCL_MAIN_CODE, CCL_EOF_CODE is executed.  If
+CCL_MAIN_CODE is terminated, CCL_EOF_CODE is not executed.
+
+Here's the syntax of CCL program code in BNF notation.  The lines
+starting by two semicolons (and optional leading spaces) describe the
+semantics.
+
+CCL_MAIN_CODE := CCL_BLOCK
+
+CCL_EOF_CODE := CCL_BLOCK
+
+CCL_BLOCK := STATEMENT | (STATEMENT [STATEMENT ...])
+
+STATEMENT :=
+	SET | IF | BRANCH | LOOP | REPEAT | BREAK | READ | WRITE | CALL
+	| TRANSLATE | END
+
+SET :=	(REG = EXPRESSION)
+	| (REG ASSIGNMENT_OPERATOR EXPRESSION)
+	;; The following form is the same as (r0 = integer).
+	| integer
+
+EXPRESSION := ARG | (EXPRESSION OPERATOR ARG)
+
+;; Evaluate EXPRESSION.  If the result is nonzero, execute
+;; CCL_BLOCK_0.  Otherwise, execute CCL_BLOCK_1.
+IF :=	(if EXPRESSION CCL_BLOCK_0 CCL_BLOCK_1)
+
+;; Evaluate EXPRESSION.  Provided that the result is N, execute
+;; CCL_BLOCK_N.
+BRANCH := (branch EXPRESSION CCL_BLOCK_0 [CCL_BLOCK_1 ...])
+
+;; Execute STATEMENTs until (break) or (end) is executed.
+LOOP := (loop STATEMENT [STATEMENT ...])
+
+;; Terminate the most inner loop.
+BREAK := (break)
+
+REPEAT :=
+	;; Jump to the head of the most inner loop.
+	(repeat)
+	;; Same as: ((write [REG | integer | string])
+	;;	     (repeat))
+	| (write-repeat [REG | integer | string])
+	;; Same as: ((write REG [ARRAY])
+	;;	     (read REG)
+	;;	     (repeat))
+	| (write-read-repeat REG [ARRAY])
+	;; Same as: ((write integer)
+	;;	     (read REG)
+	;;	     (repeat))
+	| (write-read-repeat REG integer)
+
+READ := ;; Set REG_0 to a byte read from the input text, set REG_1
+	;; to the next byte read, and so on.
+	(read REG_0 [REG_1 ...])
+	;; Same as: ((read REG)
+	;;	     (if (REG OPERATOR ARG) CCL_BLOCK_0 CCL_BLOCK_1))
+	| (read-if (REG OPERATOR ARG) CCL_BLOCK_0 CCL_BLOCK_1)
+	;; Same as: ((read REG)
+	;;	     (branch REG CCL_BLOCK_0 [CCL_BLOCK_1 ...]))
+	| (read-branch REG CCL_BLOCK_0 [CCL_BLOCK_1 ...])
+	;; Read a character from the input text while parsing
+	;; multibyte representation, set REG_0 to the charset ID of
+	;; the character, set REG_1 to the code point of the
+	;; character.  If the dimension of charset is two, set REG_1
+	;; to ((CODE0 << 7) | CODE1), where CODE0 is the first code
+	;; point and CODE1 is the second code point.
+	| (read-multibyte-character REG_0 REG_1)
+
+WRITE :=
+	;; Write REG_0, REG_1, ... to the output buffer.  If REG_N is
+	;; a multibyte character, write the corresponding multibyte
+	;; representation.
+	(write REG_0 [REG_1 ...])
+	;; Same as: ((r7 = EXPRESSION)
+	;;	     (write r7))
+	| (write EXPRESSION)
+	;; Write the value of `integer' to the output buffer.  If it
+	;; is a multibyte character, write the corresponding multibyte
+	;; representation.
+	| (write integer)
+	;; Write the byte sequence of `string' as is to the output
+	;; buffer.
+	| (write string)
+	;; Same as: (write string)
+	| string
+	;; Provided that the value of REG is N, write Nth element of
+	;; ARRAY to the output buffer.  If it is a multibyte
+	;; character, write the corresponding multibyte
+	;; representation.
+	| (write REG ARRAY)
+	;; Write a multibyte representation of a character whose
+	;; charset ID is REG_0 and code point is REG_1.  If the
+	;; dimension of the charset is two, REG_1 should be ((CODE0 <<
+	;; 7) | CODE1), where CODE0 is the first code point and CODE1
+	;; is the second code point of the character.
+	| (write-multibyte-character REG_0 REG_1)
+
+;; Call CCL program whose name is ccl-program-name.
+CALL := (call ccl-program-name)
+
+;; Terminate the CCL program.
+END := (end)
+
+;; CCL registers that can contain any integer value.  As r7 is also
+;; used by CCL interpreter, its value is changed unexpectedly.
+REG := r0 | r1 | r2 | r3 | r4 | r5 | r6 | r7
+
+ARG := REG | integer
+
+OPERATOR :=
+	;; Normal arithmethic operators (same meaning as C code).
+	+ | - | * | / | %
+
+	;; Bitwize operators (same meaning as C code)
+	| & | `|' | ^
+
+	;; Shifting operators (same meaning as C code)
+	| << | >>
+
+	;; (REG = ARG_0 <8 ARG_1) means:
+	;;	(REG = ((ARG_0 << 8) | ARG_1))
+	| <8
+
+	;; (REG = ARG_0 >8 ARG_1) means:
+	;;	((REG = (ARG_0 >> 8))
+	;;	 (r7 = (ARG_0 & 255)))
+	| >8
+
+	;; (REG = ARG_0 // ARG_1) means:
+	;;	((REG = (ARG_0 / ARG_1))
+	;;	 (r7 = (ARG_0 % ARG_1)))
+	| //
+
+	;; Normal comparing operators (same meaning as C code)
+	| < | > | == | <= | >= | !=
+
+	;; If ARG_0 and ARG_1 are higher and lower byte of Shift-JIS
+	;; code, and CHAR is the corresponding JISX0208 character,
+	;; (REG = ARG_0 de-sjis ARG_1) means:
+	;;	((REG = CODE0)
+	;;	 (r7 = CODE1))
+	;; where CODE0 is the first code point of CHAR, CODE1 is the
+	;; second code point of CHAR.
+	| de-sjis
+
+	;; If ARG_0 and ARG_1 are the first and second code point of
+	;; JISX0208 character CHAR, and SJIS is the correponding
+	;; Shift-JIS code,
+	;; (REG = ARG_0 en-sjis ARG_1) means:
+	;;	((REG = HIGH)
+	;;	 (r7 = LOW))
+	;; where HIGH is the higher byte of SJIS, LOW is the lower
+	;; byte of SJIS.
+	| en-sjis
+
+ASSIGNMENT_OPERATOR :=
+	;; Same meaning as C code
+	+= | -= | *= | /= | %= | &= | `|=' | ^= | <<= | >>=
+
+	;; (REG <8= ARG) is the same as:
+	;;	((REG <<= 8)
+	;;	 (REG |= ARG))
+	| <8=
+
+	;; (REG >8= ARG) is the same as:
+	;;	((r7 = (REG & 255))
+	;;	 (REG >>= 8))
+
+	;; (REG //= ARG) is the same as:
+	;;	((r7 = (REG % ARG))
+	;;	 (REG /= ARG))
+	| //=
+
+ARRAY := `[' integer ... `]'
+
+
+TRANSLATE :=
+	(translate-character REG(table) REG(charset) REG(codepoint))
+	| (translate-character SYMBOL REG(charset) REG(codepoint))
+        ;; SYMBOL must refer to a table defined by `define-translation-table'.
+MAP :=
+     (iterate-multiple-map REG REG MAP-IDs)
+     | (map-multiple REG REG (MAP-SET))
+     | (map-single REG REG MAP-ID)
+MAP-IDs := MAP-ID ...
+MAP-SET := MAP-IDs | (MAP-IDs) MAP-SET
+MAP-ID := integer
+
+(autoload 'define-ccl-program "ccl" '(#$ . 110551) nil 'macro)
+#@243 Check validity of CCL-PROGRAM.
+If CCL-PROGRAM is a symbol denoting a CCL program, return
+CCL-PROGRAM, else return nil.
+If CCL-PROGRAM is a vector and optional arg NAME (symbol) is supplied,
+register CCL-PROGRAM by name NAME, and return NAME.
+(autoload 'check-ccl-program "ccl" '(#$ . 116776) nil 'macro)
+#@206 Execute CCL-PROGRAM with registers initialized by the remaining args.
+The return value is a vector of resulting CCL registers.
+
+See the documentation of `define-ccl-program' for the detail of CCL program.
+(autoload 'ccl-execute-with-args "ccl" '(#$ . 117087) nil nil)
+#@172 Interactivly check the entire buffer for style errors.
+The current status of the ckeck will be displayed in a buffer which
+the users will view as each check is completed.
+(autoload 'checkdoc "checkdoc" '(#$ . 117362) t nil)
+#@437 Interactively check the current buffer for doc string errors.
+Prefix argument START-HERE will start the checking from the current
+point, otherwise the check starts at the beginning of the current
+buffer.  Allows navigation forward and backwards through document
+errors.  Does not check for comment or space warnings.
+Optional argument SHOWSTATUS indicates that we should update the
+checkdoc status window instead of the usual behavior.
+(autoload 'checkdoc-interactive "checkdoc" '(#$ . 117593) t nil)
+#@441 Interactively check the current buffer for message string errors.
+Prefix argument START-HERE will start the checking from the current
+point, otherwise the check starts at the beginning of the current
+buffer.  Allows navigation forward and backwards through document
+errors.  Does not check for comment or space warnings.
+Optional argument SHOWSTATUS indicates that we should update the
+checkdoc status window instead of the usual behavior.
+(autoload 'checkdoc-message-interactive "checkdoc" '(#$ . 118101) t nil)
+#@222 Evaluate and check documentation for the current buffer.
+Evaluation is done first because good documentation for something that
+doesn't work is just not useful.  Comments, doc strings, and rogue
+spacing are all verified.
+(autoload 'checkdoc-eval-current-buffer "checkdoc" '(#$ . 118621) t nil)
+#@218 Check current buffer for document, comment, error style, and rogue spaces.
+With a prefix argument (in Lisp, the argument TAKE-NOTES),
+store all errors found in a warnings buffer,
+otherwise stop after the first error.
+(autoload 'checkdoc-current-buffer "checkdoc" '(#$ . 118922) t nil)
+#@281 Start scanning the current buffer for documentation string style errors.
+Only documentation strings are checked.
+Use `checkdoc-continue' to continue checking if an error cannot be fixed.
+Prefix argument TAKE-NOTES means to collect all the warning messages into
+a separate buffer.
+(autoload 'checkdoc-start "checkdoc" '(#$ . 119214) t nil)
+#@293 Find the next doc string in the current buffer which has a style error.
+Prefix argument TAKE-NOTES means to continue through the whole buffer and
+save warnings in a separate buffer.  Second optional argument START-POINT
+is the starting location.  If this is nil, `point-min' is used instead.
+(autoload 'checkdoc-continue "checkdoc" '(#$ . 119560) t nil)
+#@212 Find missing comment sections in the current Emacs Lisp file.
+Prefix argument TAKE-NOTES non-nil means to save warnings in a
+separate buffer.  Otherwise print a message.  This returns the error
+if there is one.
+(autoload 'checkdoc-comments "checkdoc" '(#$ . 119921) t nil)
+#@269 Find extra spaces at the end of lines in the current file.
+Prefix argument TAKE-NOTES non-nil means to save warnings in a
+separate buffer.  Otherwise print a message.  This returns the error
+if there is one.
+Optional argument INTERACT permits more interactive fixing.
+(autoload 'checkdoc-rogue-spaces "checkdoc" '(#$ . 120201) t nil)
+#@134 Scan the buffer for occurrences of the error function, and verify text.
+Optional argument TAKE-NOTES causes all errors to be logged.
+(autoload 'checkdoc-message-text "checkdoc" '(#$ . 120542) t nil)
+#@283 Evaluate the current form with `eval-defun' and check its documentation.
+Evaluation is done first so the form will be read before the
+documentation is checked.  If there is a documentation error, then the display
+of what was evaluated will be overwritten by the diagnostic message.
+(autoload 'checkdoc-eval-defun "checkdoc" '(#$ . 120748) t nil)
+#@293 Examine the doc string of the function or variable under point.
+Call `error' if the doc string has problems.  If NO-ERROR is
+non-nil, then do not call error, but call `message' instead.
+If the doc string passes the test, then check the function for rogue white
+space at the end of each line.
+(autoload 'checkdoc-defun "checkdoc" '(#$ . 121101) t nil)
+#@164 Check the style and spelling of everything interactively.
+Calls `checkdoc' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc'
+(autoload 'checkdoc-ispell "checkdoc" '(#$ . 121459) t nil)
+#@188 Check the style and spelling of the current buffer.
+Calls `checkdoc-current-buffer' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc-current-buffer'
+(autoload 'checkdoc-ispell-current-buffer "checkdoc" '(#$ . 121689) t nil)
+#@196 Check the style and spelling of the current buffer interactively.
+Calls `checkdoc-interactive' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc-interactive'
+(autoload 'checkdoc-ispell-interactive "checkdoc" '(#$ . 121958) t nil)
+#@206 Check the style and spelling of message text interactively.
+Calls `checkdoc-message-interactive' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc-message-interactive'
+(autoload 'checkdoc-ispell-message-interactive "checkdoc" '(#$ . 122232) t nil)
+#@192 Check the style and spelling of message text interactively.
+Calls `checkdoc-message-text' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc-message-text'
+(autoload 'checkdoc-ispell-message-text "checkdoc" '(#$ . 122524) t nil)
+#@170 Check the style and spelling of the current buffer.
+Calls `checkdoc-start' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc-start'
+(autoload 'checkdoc-ispell-start "checkdoc" '(#$ . 122795) t nil)
+#@188 Check the style and spelling of the current buffer after point.
+Calls `checkdoc-continue' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc-continue'
+(autoload 'checkdoc-ispell-continue "checkdoc" '(#$ . 123037) t nil)
+#@187 Check the style and spelling of the current buffer's comments.
+Calls `checkdoc-comments' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc-comments'
+(autoload 'checkdoc-ispell-comments "checkdoc" '(#$ . 123300) t nil)
+#@181 Check the style and spelling of the current defun with Ispell.
+Calls `checkdoc-defun' with spell-checking turned on.
+Prefix argument TAKE-NOTES is the same as for `checkdoc-defun'
+(autoload 'checkdoc-ispell-defun "checkdoc" '(#$ . 123562) t nil)
+#@386 Toggle Checkdoc minor mode, a mode for checking Lisp doc strings.
+With prefix ARG, turn Checkdoc minor mode on iff ARG is positive.
+
+In Checkdoc minor mode, the usual bindings for `eval-defun' which is
+bound to \<checkdoc-minor-mode-map> \[checkdoc-eval-defun] and `checkdoc-eval-current-buffer' are overridden to include
+checking of documentation strings.
+
+\{checkdoc-minor-mode-map}
+(autoload 'checkdoc-minor-mode "checkdoc" '(#$ . 123815) t nil)
+#@87 Decode HZ/ZW encoded text in the current region.
+Return the length of resulting text.
+(autoload 'decode-hz-region "china-util" '(#$ . 124270) t nil)
+#@50 Decode HZ/ZW encoded text in the current buffer.
+(autoload 'decode-hz-buffer "china-util" '(#$ . 124425) t nil)
+#@83 Encode the text in the current region to HZ.
+Return the length of resulting text.
+(autoload 'encode-hz-region "china-util" '(#$ . 124543) t nil)
+#@46 Encode the text in the current buffer to HZ.
+(autoload 'encode-hz-buffer "china-util" '(#$ . 124694) t nil)
+#@317 Edit and re-evaluate complex command with name matching PATTERN.
+Matching occurrences are displayed, most recent first, until you select
+a form for evaluation.  If PATTERN is empty (or nil), every form in the
+command history is offered.  The form is placed in the minibuffer for
+editing and the result is evaluated.
+(autoload 'repeat-matching-complex-command "chistory" '(#$ . 124809) t nil)
+#@308 List history of commands typed to minibuffer.
+The number of commands listed is controlled by `list-command-history-max'.
+Calls value of `list-command-history-filter' (if non-nil) on each history
+element to judge if that element should be excluded from the list.
+
+The buffer is left in Command History mode.
+(autoload 'list-command-history "chistory" '(#$ . 125208) t nil)
+#@568 Examine commands from `command-history' in a buffer.
+The number of commands listed is controlled by `list-command-history-max'.
+The command history is filtered by `list-command-history-filter' if non-nil.
+Use \<command-history-map>\[command-history-repeat] to repeat the command on the current line.
+
+Otherwise much like Emacs-Lisp Mode except that there is no self-insertion
+and digits provide prefix arguments.  Tab does not indent.
+\{command-history-map}
+
+This command always recompiles the Command History listing
+and runs the normal hook `command-history-hook'.
+(autoload 'command-history "chistory" '(#$ . 125587) t nil)
+#@445 This is a list of functions that format user objects for printing.
+Each function is called in turn with three arguments: the object, the
+stream, and the print level (currently ignored).  If it is able to
+print the object it returns true; otherwise it returns nil and the
+printer proceeds to the next function on the list.
+
+This variable is not used at present, but it is defined in hopes that
+a future Emacs interpreter will be able to use it.
+(defvar custom-print-functions nil (#$ . 126221))
+(byte-code "\300\301\302\303\211\211%\207" [autoload common-lisp-indent-function "cl-indent" nil] 6)
+#@434 Expand C macros in the region, using the C preprocessor.
+Normally display output in temp buffer, but
+prefix arg means replace the region with it.
+
+`c-macro-preprocessor' specifies the preprocessor to use.
+Prompt for arguments to the preprocessor (e.g. `-DDEBUG -I ./include')
+if the user option `c-macro-prompt-flag' is non-nil.
+
+Noninteractive args are START, END, SUBST.
+For use inside Lisp programs, see also `c-macro-expansion'.
+(autoload 'c-macro-expand "cmacexp" '(#$ . 126823) t nil)
+#@396 Run an inferior Scheme process, input and output via buffer *scheme*.
+If there is a process already running in `*scheme*', switch to that buffer.
+With argument, allows you to edit the command line (default is value
+of `scheme-program-name').  Runs the hooks `inferior-scheme-mode-hook'
+(after the `comint-mode-hook' is run).
+(Type \[describe-mode] in the process buffer for a list of commands.)
+(autoload 'run-scheme "cmuscheme" '(#$ . 127321) t nil)
+(add-hook 'same-window-buffer-names "*scheme*")
+#@413 Create a coding system to convert IBM CODEPAGE into charset ISO-NAME
+whose first character is at offset OFFSET from the beginning of 8-bit
+ASCII table.
+
+The created coding system has the usual 3 subsidiary systems: for Unix-,
+DOS- and Mac-style EOL conversion.  However, unlike built-in coding
+systems, the Mac-style EOL conversion is currently not supported by the
+decoder and encoder created by this function.
+(autoload 'cp-make-coding-systems-for-codepage "codepage" '(#$ . 127827) nil nil)
+#@131 Return the charset for which there is a translation table to DOS CODEPAGE.
+CODEPAGE must be the name of a DOS codepage, a string.
+(autoload 'cp-charset-for-codepage "codepage" '(#$ . 128328) nil nil)
+#@119 Return the name of the MULE language environment for CODEPAGE.
+CODEPAGE must be the name of a DOS codepage, a string.
+(autoload 'cp-language-for-codepage "codepage" '(#$ . 128535) nil nil)
+#@128 Return the offset to be used in setting up coding systems for CODEPAGE.
+CODEPAGE must be the name of a DOS codepage, a string.
+(autoload 'cp-offset-for-codepage "codepage" '(#$ . 128731) nil nil)
+#@365 Return an alist of supported codepages.
+
+Each association in the alist has the form (NNN . CHARSET), where NNN is the
+codepage number, and CHARSET is the MULE charset which is the closest match
+for the character set supported by that codepage.
+
+A codepage NNN is supported if a variable called `cpNNN-decode-table' exists,
+is a vector, and has a charset property.
+(autoload 'cp-supported-codepages "codepage" '(#$ . 128934) nil nil)
+#@293 Create a coding system cpCODEPAGE to support the IBM codepage CODEPAGE.
+
+These coding systems are meant for encoding and decoding 8-bit non-ASCII
+characters used by the IBM codepages, typically in conjunction with files
+read/written by MS-DOS software, or for display on the MS-DOS terminal.
+(autoload 'codepage-setup "codepage" '(#$ . 129374) t nil)
+#@553 Make a comint process NAME in BUFFER, running PROGRAM.
+If BUFFER is nil, it defaults to NAME surrounded by `*'s.
+PROGRAM should be either a string denoting an executable program to create
+via `start-process', or a cons pair of the form (HOST . SERVICE) denoting a TCP
+connection to be opened via `open-network-stream'.  If there is already a
+running process in that buffer, it is not restarted.  Optional third arg
+STARTFILE is the name of a file to send the contents of to the process.
+
+If PROGRAM is a string, any more args are arguments to PROGRAM.
+(autoload 'make-comint-in-buffer "comint" '(#$ . 129732) nil nil)
+#@559 Make a comint process NAME in a buffer, running PROGRAM.
+The name of the buffer is made by surrounding NAME with `*'s.
+PROGRAM should be either a string denoting an executable program to create
+via `start-process', or a cons pair of the form (HOST . SERVICE) denoting a TCP
+connection to be opened via `open-network-stream'.  If there is already a
+running process in that buffer, it is not restarted.  Optional third arg
+STARTFILE is the name of a file to send the contents of to the process.
+
+If PROGRAM is a string, any more args are arguments to PROGRAM.
+(autoload 'make-comint "comint" '(#$ . 130357) nil nil)
+#@285 Run PROGRAM in a comint buffer and switch to it.
+The buffer name is made by surrounding the file name of PROGRAM with `*'s.
+The file name is used to make a symbol name, such as `comint-sh-hook', and any
+hooks on this symbol are run in the buffer.
+See `make-comint' and `comint-exec'.
+(autoload 'comint-run "comint" '(#$ . 130978) t nil)
+#@180 Send COMMAND to process in current buffer, with output to OUTPUT-BUFFER.
+With prefix arg, echo output in process buffer.
+
+If NO-DISPLAY is non-nil, do not show the output buffer.
+(autoload 'comint-redirect-send-command "comint" '(#$ . 131322) t nil)
+#@162 Send COMMAND to PROCESS, with output to OUTPUT-BUFFER.
+With prefix arg, echo output in process buffer.
+
+If NO-DISPLAY is non-nil, do not show the output buffer.
+(autoload 'comint-redirect-send-command-to-process "comint" '(#$ . 131579) t nil)
+#@160 Send COMMAND to current process.
+Return a list of expressions in the output which match REGEXP.
+REGEXP-GROUP is the regular expression group in REGEXP to use.
+(autoload 'comint-redirect-results-list "comint" '(#$ . 131829) nil nil)
+#@152 Send COMMAND to PROCESS.
+Return a list of expressions in the output which match REGEXP.
+REGEXP-GROUP is the regular expression group in REGEXP to use.
+(autoload 'comint-redirect-results-list-from-process "comint" '(#$ . 132068) nil nil)
+#@590 Compare text in current window with text in next window.
+Compares the text starting at point in each window,
+moving over text in each one as far as they match.
+
+This command pushes the mark in each window
+at the prior location of point in that window.
+If both windows display the same buffer,
+the mark is pushed twice in that buffer:
+first in the other window, then in the selected window.
+
+A prefix arg means ignore changes in whitespace.
+The variable `compare-windows-whitespace' controls how whitespace is skipped.
+If `compare-ignore-case' is non-nil, changes in case are also ignored.
+(autoload 'compare-windows "compare-w" '(#$ . 132312) t nil)
+#@70 *List of hook functions run by `compilation-mode' (see `run-hooks').
+(defvar compilation-mode-hook nil (#$ . -132968))
+#@71 *Number of lines in a compilation window.  If nil, use Emacs default.
+(defvar compilation-window-height nil (#$ . -133093))
+#@257 *Function to call to customize the compilation process.
+This functions is called immediately before the compilation process is
+started.  It can be used to set any variables or functions that are used
+while processing the output of the compilation process.
+(defvar compilation-process-setup-function nil (#$ . -133224))
+#@247 Function to compute the name of a compilation buffer.
+The function receives one argument, the name of the major mode of the
+compilation buffer.  It should return a string.
+nil means compute the name with `(concat "*" (downcase major-mode) "*")'.
+(defvar compilation-buffer-name-function nil (#$ . 133550))
+#@162 Function to call when a compilation process finishes.
+It is called with two arguments: the compilation buffer, and a string
+describing how the process finished.
+(defvar compilation-finish-function nil (#$ . 133863))
+#@174 Functions to call when a compilation process finishes.
+Each function is called with two arguments: the compilation buffer,
+and a string describing how the process finished.
+(defvar compilation-finish-functions nil (#$ . 134086))
+#@129 *Non-nil means \[compile] asks which buffers to save before compiling.
+Otherwise, it saves all modified buffers without asking.
+(defvar compilation-ask-about-save t (#$ . -134322))
+#@195 *List of directories to search for source files named in error messages.
+Elements should be directory names, not file names of directories.
+nil as an element means to try the default directory.
+(defvar compilation-search-path '(nil) (#$ . -134510))
+#@799 Compile the program including the current buffer.  Default: run `make'.
+Runs COMMAND, a shell command, in a separate process asynchronously
+with output going to the buffer `*compilation*'.
+
+You can then use the command \[next-error] to find the next error message
+and move to the source code that caused it.
+
+Interactively, prompts for the command if `compilation-read-command' is
+non-nil; otherwise uses `compile-command'.  With prefix arg, always prompts.
+
+To run more than one compilation at once, start one and rename the
+`*compilation*' buffer to some other name with \[rename-buffer].
+Then start the next one.
+
+The name used for the buffer is actually whatever is returned by
+the function in `compilation-buffer-name-function', so you can set that
+to a function that generates a unique name.
+(autoload 'compile "compile" '(#$ . 134766) t nil)
+#@598 Run grep, with user-specified args, and collect output in a buffer.
+While grep runs asynchronously, you can use \[next-error] (M-x next-error),
+or \<compilation-minor-mode-map>\[compile-goto-error] in the grep output buffer, to go to the lines
+where grep found matches.
+
+This command uses a special history list for its COMMAND-ARGS, so you can
+easily repeat a grep command.
+
+A prefix argument says to default the argument based upon the current
+tag the cursor is over, substituting it into the last grep command
+in the grep command history (or into `grep-command'
+if that history list is empty).
+(autoload 'grep "compile" '(#$ . 135622) t nil)
+#@301 Run grep via find, with user-specified args COMMAND-ARGS.
+Collect output in a buffer.
+While find runs asynchronously, you can use the \[next-error] command
+to find the text that grep hits refer to.
+
+This command uses a special history list for its arguments, so you can
+easily repeat a find command.
+(autoload 'grep-find "compile" '(#$ . 136274) t nil)
+#@291 Major mode for compilation log buffers.
+\<compilation-mode-map>To visit the source for a line-numbered error,
+move point to the error message line and type \[compile-goto-error].
+To kill the compilation, type \[kill-compilation].
+
+Runs `compilation-mode-hook' with `run-hooks' (which see).
+(autoload 'compilation-mode "compile" '(#$ . 136634) t nil)
+#@207 Toggle compilation shell minor mode.
+With arg, turn compilation mode on if and only if arg is positive.
+See `compilation-mode'.
+Turning the mode on runs the normal hook `compilation-shell-minor-mode-hook'.
+(autoload 'compilation-shell-minor-mode "compile" '(#$ . 136991) t nil)
+#@195 Toggle compilation minor mode.
+With arg, turn compilation mode on if and only if arg is positive.
+See `compilation-mode'.
+Turning the mode on runs the normal hook `compilation-minor-mode-hook'.
+(autoload 'compilation-minor-mode "compile" '(#$ . 137276) t nil)
+#@1060 Visit next compilation error message and corresponding source code.
+
+If all the error messages parsed so far have been processed already,
+the message buffer is checked for new ones.
+
+A prefix ARGP specifies how many error messages to move;
+negative means move back to previous error messages.
+Just \[universal-argument] as a prefix means reparse the error message buffer
+and start at the first error.
+
+\[next-error] normally uses the most recently started compilation or
+grep buffer.  However, it can operate on any buffer with output from
+the \[compile] and \[grep] commands, or, more generally, on any
+buffer in Compilation mode or with Compilation Minor mode enabled.  To
+specify use of a particular buffer for error messages, type
+\[next-error] in that buffer.
+
+Once \[next-error] has chosen the buffer for error messages,
+it stays with that buffer until you use it in some other buffer which
+uses Compilation mode or Compilation Minor mode.
+
+See variables `compilation-parse-errors-function' and
+`compilation-error-regexp-alist' for customization ideas.
+(autoload 'next-error "compile" '(#$ . 137544) t nil)
+(define-key ctl-x-map "`" 'next-error)
+#@248 Non-nil if Partial-Completion mode is enabled.
+See the command `partial-completion-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `partial-completion-mode'.
+(defvar partial-completion-mode nil (#$ . 138703))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group partial-completion partial-completion-mode custom-variable custom-add-load complete] 4)
+#@927 Toggle Partial Completion mode.
+With prefix ARG, turn Partial Completion mode on if ARG is positive.
+
+When Partial Completion mode is enabled, TAB (or M-TAB if `PC-meta-flag' is
+nil) is enhanced so that if some string is divided into words and each word is
+delimited by a character in `PC-word-delimiters', partial words are completed
+as much as possible and `*' characters are treated likewise in file names.
+
+For example, M-x p-c-m expands to M-x partial-completion-mode since no other
+command begins with that sequence of characters, and
+\[find-file] f_b.c TAB might complete to foo_bar.c if that file existed and no
+other file in that directory begin with that sequence of characters.
+
+Unless `PC-disable-includes' is non-nil, the `<...>' sequence is interpreted
+specially in \[find-file].  For example,
+\[find-file] <sys/time.h> RET finds the file `/usr/include/sys/time.h'.
+See also the variable `PC-include-file-path'.
+(autoload 'partial-completion-mode "complete" '(#$ . 139170) t nil)
+#@33 Enable dynamic word-completion.
+(autoload 'dynamic-completion-mode "completion" '(#$ . 140170) t nil)
+#@1423 Alist of symbols vs integer codes of glyph reference points.
+A glyph reference point symbol is to be used to specify a composition
+rule in COMPONENTS argument to such functions as `compose-region' and
+`make-composition'.
+
+Meanings of glyph reference point codes are as follows:
+
+    0----1----2 <---- ascent	0:tl or top-left
+    |         |			1:tc or top-center
+    |         |			2:tr or top-right
+    |         |			3:Bl or base-left     9:cl or center-left
+    9   10   11 <---- center	4:Bc or base-center  10:cc or center-center
+    |         |			5:Br or base-right   11:cr or center-right
+  --3----4----5-- <-- baseline	6:bl or bottom-left
+    |         |			7:bc or bottom-center
+    6----7----8 <---- descent	8:br or bottom-right
+
+Glyph reference point symbols are to be used to specify composition
+rule of the form (GLOBAL-REF-POINT . NEW-REF-POINT), where
+GLOBAL-REF-POINT is a reference point in the overall glyphs already
+composed, and NEW-REF-POINT is a reference point in the new glyph to
+be added.
+
+For instance, if GLOBAL-REF-POINT is `br' (bottom-right) and
+NEW-REF-POINT is `tc' (top-center), the overall glyph is updated as
+follows (the point `*' corresponds to both reference points):
+
+    +-------+--+ <--- new ascent
+    |       |  |
+    | global|  |
+    | glyph |  |
+ -- |       |  |-- <--- baseline (doesn't change)
+    +----+--*--+
+    |    | new |
+    |    |glyph|
+    +----+-----+ <--- new descent
+
+(defconst reference-point-alist '((tl . 0) (tc . 1) (tr . 2) (Bl . 3) (Bc . 4) (Br . 5) (bl . 6) (bc . 7) (br . 8) (cl . 9) (cc . 10) (cr . 11) (top-left . 0) (top-center . 1) (top-right . 2) (base-left . 3) (base-center . 4) (base-right . 5) (bottom-left . 6) (bottom-center . 7) (bottom-right . 8) (center-left . 9) (center-center . 10) (center-right . 11) (ml . 3) (mc . 10) (mr . 5) (mid-left . 3) (mid-center . 10) (mid-right . 5)) (#$ . 140280))
+#@1024 Compose characters in the current region.
+
+When called from a program, expects these four arguments.
+
+First two arguments START and END are positions (integers or markers)
+specifying the region.
+
+Optional 3rd argument COMPONENTS, if non-nil, is a character or a
+sequence (vector, list, or string) of integers.
+
+If it is a character, it is an alternate character to display instead
+of the text in the region.
+
+If it is a string, the elements are alternate characters.
+
+If it is a vector or list, it is a sequence of alternate characters and
+composition rules, where (2N)th elements are characters and (2N+1)th
+elements are composition rules to specify how to compose (2N+2)th
+elements with previously composed N glyphs.
+
+A composition rule is a cons of global and new glyph reference point
+symbols.  See the documentation of `reference-point-alist' for more
+detail.
+
+Optional 4th argument MODIFICATION-FUNC is a function to call to
+adjust the composition when it gets invalid because of a change of
+text in the composition.
+(autoload 'compose-region "composite" '(#$ . 142162) t nil)
+#@146 Decompose text in the current region.
+
+When called from a program, expects two arguments,
+positions (integers or markers) specifying the region.
+(autoload 'decompose-region "composite" '(#$ . 143252) t nil)
+#@614 Compose characters in string STRING.
+
+The return value is STRING where `composition' property is put on all
+the characters in it.
+
+Optional 2nd and 3rd arguments START and END specify the range of
+STRING to be composed.  They defaults to the beginning and the end of
+STRING respectively.
+
+Optional 4th argument COMPONENTS, if non-nil, is a character or a
+sequence (vector, list, or string) of integers.  See the function
+`compose-region' for more detail.
+
+Optional 5th argument MODIFICATION-FUNC is a function to call to
+adjust the composition when it gets invalid because of a change of
+text in the composition.
+(autoload 'compose-string "composite" '(#$ . 143466) nil nil)
+#@56 Return STRING where `composition' property is removed.
+(autoload 'decompose-string "composite" '(#$ . 144147) nil nil)
+#@426 Return a string from arguments in which all characters are composed.
+For relative composition, arguments are characters.
+For rule-based composition, Mth (where M is odd) arguments are
+characters, and Nth (where N is even) arguments are composition rules.
+A composition rule is a cons of glyph reference points of the form
+(GLOBAL-REF-POINT . NEW-REF-POINT).  See the documentation of
+`reference-point-alist' for more detail.
+(autoload 'compose-chars "composite" '(#$ . 144273) nil nil)
+#@1221 Return information about a composition at or nearest to buffer position POS.
+
+If the character at POS has `composition' property, the value is a list
+of FROM, TO, and VALID-P.
+
+FROM and TO specify the range of text that has the same `composition'
+property, VALID-P is non-nil if and only if this composition is valid.
+
+If there's no composition at POS, and the optional 2nd argument LIMIT
+is non-nil, search for a composition toward LIMIT.
+
+If no composition is found, return nil.
+
+Optional 3rd argument STRING, if non-nil, is a string to look for a
+composition in; nil means the current buffer.
+
+If a valid composition is found and the optional 4th argument DETAIL-P
+is non-nil, the return value is a list of FROM, TO, COMPONENTS,
+RELATIVE-P, MOD-FUNC, and WIDTH.
+
+COMPONENTS is a vector of integers, the meaning depends on RELATIVE-P.
+
+RELATIVE-P is t if the composition method is relative, else nil.
+
+If RELATIVE-P is t, COMPONENTS is a vector of characters to be
+composed.  If RELATIVE-P is nil, COMPONENTS is a vector of characters
+and composition rules as described in `compose-region'.
+
+MOD-FUNC is a modification function of the composition.
+
+WIDTH is a number of columns the composition occupies on the screen.
+(autoload 'find-composition "composite" '(#$ . 144767) nil nil)
+#@983 Compose characters in current buffer after position POS.
+
+It looks up the char-table `composition-function-table' (which see) by
+a character after POS.  If non-nil value is found, the format of the
+value should be an alist of PATTERNs vs FUNCs, where PATTERNs are
+regular expressions and FUNCs are functions.  If the text after POS
+matches one of PATTERNs, call the corresponding FUNC with three
+arguments POS, TO, and PATTERN, where TO is the end position of text
+matching PATTERN, and return what FUNC returns.  Otherwise, return
+nil.
+
+FUNC is responsible for composing the text properly.  The return value
+is:
+  nil -- if no characters were composed.
+  CHARS (integer) -- if CHARS characters were composed.
+
+Optional 2nd arg LIMIT, if non-nil, limits the matching of text.
+
+Optional 3rd arg OBJECT, if non-nil, is a string that contains the
+text to compose.  In that case, POS and LIMIT index to the string.
+
+This function is the default value of `compose-chars-after-function'.
+(autoload 'compose-chars-after "composite" '(#$ . 146058) nil nil)
+#@616 Compose last characters.
+The argument is a parameterized event of the form
+	(compose-last-chars N COMPONENTS),
+where N is the number of characters before point to compose,
+COMPONENTS, if non-nil, is the same as the argument to `compose-region'
+(which see).  If it is nil, `compose-chars-after' is called,
+and that function find a proper rule to compose the target characters.
+This function is intended to be used from input methods.
+The global keymap binds special event `compose-last-chars' to this
+function.  Input method may generate an event (compose-last-chars N COMPONENTS)
+after a sequence character events.
+(autoload 'compose-last-chars "composite" '(#$ . 147114) t nil)
+(global-set-key [compose-last-chars] 'compose-last-chars)
+#@310 Convert CHAR to string.
+This is only for backward compatibility with Emacs 20.4 and earlier.
+
+If optional 2nd arg TYPE is non-nil, it is `string', `list', or
+`vector'.  In this case, CHAR is converted to string, list of CHAR, or
+vector of CHAR respectively.
+Optional 3rd arg WITH-COMPOSITION-RULE is ignored.
+(autoload 'decompose-composite-char "composite" '(#$ . 147858) nil nil)
+#@130 Return a random phrase from PHRASE-FILE.  When the phrase file
+is read in, display STARTMSG at beginning of load, ENDMSG at end.
+(autoload 'cookie "cookie1" '(#$ . 148246) nil nil)
+#@144 Insert random phrases from PHRASE-FILE; COUNT of them.  When the phrase file
+is read in, display STARTMSG at beginning of load, ENDMSG at end.
+(autoload 'cookie-insert "cookie1" '(#$ . 148434) nil nil)
+#@188 Reads in the PHRASE-FILE, returns it as a vector of strings.
+Emit STARTMSG and ENDMSG before and after.  Caches the result; second
+and subsequent calls on the same file won't go to disk.
+(autoload 'cookie-snarf "cookie1" '(#$ . 148643) nil nil)
+#@75 Randomly permute the elements of VECTOR (all permutations equally likely)
+(autoload 'shuffle-vector "cookie1" '(#$ . 148894) nil nil)
+#@339 Update the copyright notice at the beginning of the buffer to indicate
+the current year.  If optional prefix ARG is given replace the years in the
+notice rather than adding the current year after them.  If necessary and
+`copyright-current-gpl-version' is set, the copying permissions following the
+copyright, if any, are updated as well.
+(autoload 'copyright-update "copyright" '(#$ . 149035) t nil)
+#@55 Insert a copyright by $ORGANIZATION notice at cursor.
+(autoload 'copyright "copyright" '(#$ . 149441) t nil)
+#@7601 Major mode for editing Perl code.
+Expression and list commands understand all C brackets.
+Tab indents for Perl code.
+Paragraphs are separated by blank lines only.
+Delete converts tabs to spaces as it moves back.
+
+Various characters in Perl almost always come in pairs: {}, (), [],
+sometimes <>.  When the user types the first, she gets the second as
+well, with optional special formatting done on {}.  (Disabled by
+default.)  You can always quote (with \[quoted-insert]) the left
+"paren" to avoid the expansion.  The processing of < is special,
+since most the time you mean "less".  Cperl mode tries to guess
+whether you want to type pair <>, and inserts is if it
+appropriate.  You can set `cperl-electric-parens-string' to the string that
+contains the parenths from the above list you want to be electrical.
+Electricity of parenths is controlled by `cperl-electric-parens'.
+You may also set `cperl-electric-parens-mark' to have electric parens
+look for active mark and "embrace" a region if possible.'
+
+CPerl mode provides expansion of the Perl control constructs:
+
+   if, else, elsif, unless, while, until, continue, do,
+   for, foreach, formy and foreachmy.
+
+and POD directives (Disabled by default, see `cperl-electric-keywords'.)
+
+The user types the keyword immediately followed by a space, which
+causes the construct to be expanded, and the point is positioned where
+she is most likely to want to be.  eg. when the user types a space
+following "if" the following appears in the buffer: if () { or if ()
+} { } and the cursor is between the parentheses.  The user can then
+type some boolean expression within the parens.  Having done that,
+typing \[cperl-linefeed] places you - appropriately indented - on a
+new line between the braces (if you typed \[cperl-linefeed] in a POD
+directive line, then appropriate number of new lines is inserted).
+
+If CPerl decides that you want to insert "English" style construct like
+
+            bite if angry;
+
+it will not do any expansion.  See also help on variable
+`cperl-extra-newline-before-brace'.  (Note that one can switch the
+help message on expansion by setting `cperl-message-electric-keyword'
+to nil.)
+
+\[cperl-linefeed] is a convenience replacement for typing carriage
+return.  It places you in the next line with proper indentation, or if
+you type it inside the inline block of control construct, like
+
+            foreach (@lines) {print; print}
+
+and you are on a boundary of a statement inside braces, it will
+transform the construct into a multiline and will place you into an
+appropriately indented blank line.  If you need a usual
+`newline-and-indent' behaviour, it is on \[newline-and-indent],
+see documentation on `cperl-electric-linefeed'.
+
+Use \[cperl-invert-if-unless] to change a construction of the form
+
+	    if (A) { B }
+
+into
+
+            B if A;
+
+\{cperl-mode-map}
+
+Setting the variable `cperl-font-lock' to t switches on font-lock-mode
+(even with older Emacsen), `cperl-electric-lbrace-space' to t switches
+on electric space between $ and {, `cperl-electric-parens-string' is
+the string that contains parentheses that should be electric in CPerl
+(see also `cperl-electric-parens-mark' and `cperl-electric-parens'),
+setting `cperl-electric-keywords' enables electric expansion of
+control structures in CPerl.  `cperl-electric-linefeed' governs which
+one of two linefeed behavior is preferable.  You can enable all these
+options simultaneously (recommended mode of use) by setting
+`cperl-hairy' to t.  In this case you can switch separate options off
+by setting them to `null'.  Note that one may undo the extra
+whitespace inserted by semis and braces in `auto-newline'-mode by
+consequent \[cperl-electric-backspace].
+
+If your site has perl5 documentation in info format, you can use commands
+\[cperl-info-on-current-command] and \[cperl-info-on-command] to access it.
+These keys run commands `cperl-info-on-current-command' and
+`cperl-info-on-command', which one is which is controlled by variable
+`cperl-info-on-command-no-prompt' and `cperl-clobber-lisp-bindings'
+(in turn affected by `cperl-hairy').
+
+Even if you have no info-format documentation, short one-liner-style
+help is available on \[cperl-get-help], and one can run perldoc or
+man via menu.
+
+It is possible to show this help automatically after some idle time.
+This is regulated by variable `cperl-lazy-help-time'.  Default with
+`cperl-hairy' (if the value of `cperl-lazy-help-time' is nil) is 5
+secs idle time .  It is also possible to switch this on/off from the
+menu, or via \[cperl-toggle-autohelp].  Requires `run-with-idle-timer'.
+
+Use \[cperl-lineup] to vertically lineup some construction - put the
+beginning of the region at the start of construction, and make region
+span the needed amount of lines.
+
+Variables `cperl-pod-here-scan', `cperl-pod-here-fontify',
+`cperl-pod-face', `cperl-pod-head-face' control processing of pod and
+here-docs sections.  With capable Emaxen results of scan are used
+for indentation too, otherwise they are used for highlighting only.
+
+Variables controlling indentation style:
+ `cperl-tab-always-indent'
+    Non-nil means TAB in CPerl mode should always reindent the current line,
+    regardless of where in the line point is when the TAB command is used.
+ `cperl-indent-left-aligned-comments'
+    Non-nil means that the comment starting in leftmost column should indent.
+ `cperl-auto-newline'
+    Non-nil means automatically newline before and after braces,
+    and after colons and semicolons, inserted in Perl code.  The following
+    \[cperl-electric-backspace] will remove the inserted whitespace.
+    Insertion after colons requires both this variable and
+    `cperl-auto-newline-after-colon' set.
+ `cperl-auto-newline-after-colon'
+    Non-nil means automatically newline even after colons.
+    Subject to `cperl-auto-newline' setting.
+ `cperl-indent-level'
+    Indentation of Perl statements within surrounding block.
+    The surrounding block's indentation is the indentation
+    of the line on which the open-brace appears.
+ `cperl-continued-statement-offset'
+    Extra indentation given to a substatement, such as the
+    then-clause of an if, or body of a while, or just a statement continuation.
+ `cperl-continued-brace-offset'
+    Extra indentation given to a brace that starts a substatement.
+    This is in addition to `cperl-continued-statement-offset'.
+ `cperl-brace-offset'
+    Extra indentation for line if it starts with an open brace.
+ `cperl-brace-imaginary-offset'
+    An open brace following other text is treated as if it the line started
+    this far to the right of the actual line indentation.
+ `cperl-label-offset'
+    Extra indentation for line that is a label.
+ `cperl-min-label-indent'
+    Minimal indentation for line that is a label.
+
+Settings for K&R and BSD indentation styles are
+  `cperl-indent-level'                5    8
+  `cperl-continued-statement-offset'  5    8
+  `cperl-brace-offset'               -5   -8
+  `cperl-label-offset'               -5   -8
+
+CPerl knows several indentation styles, and may bulk set the
+corresponding variables.  Use \[cperl-set-style] to do this.  Use
+\[cperl-set-style-back] to restore the memorized preexisting values
+(both available from menu).
+
+If `cperl-indent-level' is 0, the statement after opening brace in
+column 0 is indented on
+`cperl-brace-offset'+`cperl-continued-statement-offset'.
+
+Turning on CPerl mode calls the hooks in the variable `cperl-mode-hook'
+with no args.
+
+DO NOT FORGET to read micro-docs (available from `Perl' menu)
+or as help on variables `cperl-tips', `cperl-problems',
+`cperl-non-problems', `cperl-praise', `cperl-speed'.
+(autoload 'cperl-mode "cperl-mode" '(#$ . 149558) t nil)
+#@238 Highlight C code according to preprocessor conditionals.
+This command pops up a buffer which you should edit to specify
+what kind of highlighting to use, and the criteria for highlighting.
+A prefix arg suppresses display of that buffer.
+(autoload 'cpp-highlight-buffer "cpp" '(#$ . 157222) t nil)
+#@48 Edit display information for cpp conditionals.
+(autoload 'cpp-parse-edit "cpp" '(#$ . 157525) t nil)
+#@243 Track status of CRiSP emulation mode.
+A value of nil means CRiSP mode is not enabled.  A value of t
+indicates CRiSP mode is enabled.
+
+Setting this variable directly does not take effect;
+use either M-x customize or the function `crisp-mode'.
+(defvar crisp-mode nil (#$ . 157633))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group crisp crisp-mode custom-variable custom-add-load] 4)
+#@106 Toggle CRiSP/Brief emulation minor mode.
+With ARG, turn CRiSP mode on if ARG is positive, off otherwise.
+(autoload 'crisp-mode "crisp" '(#$ . 158047) t nil)
+(defalias 'brief-mode 'crisp-mode)
+#@1177 Read multiple strings in the minibuffer, with completion.
+By using this functionality, a user may specify multiple strings at a
+single prompt, optionally using completion.
+
+Multiple strings are specified by separating each of the strings with
+a prespecified separator character.  For example, if the separator
+character is a comma, the strings 'alice', 'bob', and 'eve' would be
+specified as 'alice,bob,eve'.
+
+The default value for the separator character is the value of
+`crm-default-separator' (comma).  The separator character may be
+changed by modifying the value of `crm-separator'.
+
+Continguous strings of non-separator-characters are referred to as
+'elements'.  In the aforementioned example, the elements are: 'alice',
+'bob', and 'eve'.
+
+Completion is available on a per-element basis.  For example, if the
+contents of the minibuffer are 'alice,bob,eve' and point is between
+'l' and 'i', pressing TAB operates on the element 'alice'.
+
+The return value of this function is a list of the read strings.
+
+See the documentation for `completing-read' for details on the arguments:
+PROMPT, TABLE, PREDICATE, REQUIRE-MATCH, INITIAL-INPUT, HIST, DEF, and
+INHERIT-INPUT-METHOD.
+(autoload 'completing-read-multiple "crm" '(#$ . 158247) nil nil)
+(add-hook 'same-window-regexps "\\`\\*Customiz.*\\*\\'")
+#@416 Set VARIABLE to VALUE.  VALUE is a Lisp object.
+
+If VARIABLE has a `variable-interactive' property, that is used as if
+it were the arg to `interactive' (which see) to interactively read the value.
+
+If VARIABLE has a `custom-type' property, it must be a widget and the
+`:prompt-value' property of that widget will be used for reading the value.
+
+If given a prefix (or a COMMENT argument), also prompt for a comment.
+(autoload 'customize-set-value "cus-edit" '(#$ . 159553) t nil)
+#@658 Set the default for VARIABLE to VALUE.  VALUE is a Lisp object.
+
+If VARIABLE has a `custom-set' property, that is used for setting
+VARIABLE, otherwise `set-default' is used.
+
+The `customized-value' property of the VARIABLE will be set to a list
+with a quoted VALUE as its sole list member.
+
+If VARIABLE has a `variable-interactive' property, that is used as if
+it were the arg to `interactive' (which see) to interactively read the value.
+
+If VARIABLE has a `custom-type' property, it must be a widget and the
+`:prompt-value' property of that widget will be used for reading the value.
+
+If given a prefix (or a COMMENT argument), also prompt for a comment.
+(autoload 'customize-set-variable "cus-edit" '(#$ . 160039) t nil)
+#@665 Set the default for VARIABLE to VALUE, and save it for future sessions.
+If VARIABLE has a `custom-set' property, that is used for setting
+VARIABLE, otherwise `set-default' is used.
+
+The `customized-value' property of the VARIABLE will be set to a list
+with a quoted VALUE as its sole list member.
+
+If VARIABLE has a `variable-interactive' property, that is used as if
+it were the arg to `interactive' (which see) to interactively read the value.
+
+If VARIABLE has a `custom-type' property, it must be a widget and the
+`:prompt-value' property of that widget will be used for reading the value.
+
+If given a prefix (or a COMMENT argument), also prompt for a comment.
+(autoload 'customize-save-variable "cus-edit" '(#$ . 160770) t nil)
+#@244 Select a customization buffer which you can use to set user options.
+User options are structured into "groups".
+Initially the top-level group `Emacs' and its immediate subgroups
+are shown; the contents of those subgroups are initially hidden.
+(autoload 'customize "cus-edit" '(#$ . 161509) t nil)
+#@55 Customize GROUP, which must be a customization group.
+(autoload 'customize-group "cus-edit" '(#$ . 161812) t nil)
+#@55 Customize GROUP, which must be a customization group.
+(autoload 'customize-group-other-window "cus-edit" '(#$ . 161932) t nil)
+(defalias 'customize-variable 'customize-option)
+#@57 Customize SYMBOL, which must be a user option variable.
+(autoload 'customize-option "cus-edit" '(#$ . 162114) t nil)
+#@398 Customize all user option variables changed in Emacs itself.
+This includes new user option variables and faces, and new
+customization groups, as well as older options and faces whose default
+values have changed since the previous major Emacs release.
+
+With argument SINCE-VERSION (a string), customize all user option
+variables that were added (or their meanings were changed) since that
+version.
+(autoload 'customize-changed-options "cus-edit" '(#$ . 162238) t nil)
+(defalias 'customize-variable-other-window 'customize-option-other-window)
+#@113 Customize SYMBOL, which must be a user option variable.
+Show the buffer in another window, but don't select it.
+(autoload 'customize-option-other-window "cus-edit" '(#$ . 162787) t nil)
+#@94 Customize SYMBOL, which should be a face name or nil.
+If SYMBOL is nil, customize all faces.
+(autoload 'customize-face "cus-edit" '(#$ . 162979) t nil)
+#@60 Show customization buffer for face SYMBOL in other window.
+(autoload 'customize-face-other-window "cus-edit" '(#$ . 163137) t nil)
+#@69 Customize all user options set since the last save in this session.
+(autoload 'customize-customized "cus-edit" '(#$ . 163274) t nil)
+#@43 Customize all already saved user options.
+(autoload 'customize-saved "cus-edit" '(#$ . 163413) t nil)
+#@288 Customize all user options matching REGEXP.
+If ALL is `options', include only options.
+If ALL is `faces', include only faces.
+If ALL is `groups', include only groups.
+If ALL is t (interactively, with prefix arg), include options which are not
+user-settable, as well as faces and groups.
+(autoload 'customize-apropos "cus-edit" '(#$ . 163522) t nil)
+#@107 Customize all user options matching REGEXP.
+With prefix arg, include options which are not user-settable.
+(autoload 'customize-apropos-options "cus-edit" '(#$ . 163878) t nil)
+#@43 Customize all user faces matching REGEXP.
+(autoload 'customize-apropos-faces "cus-edit" '(#$ . 164060) t nil)
+#@44 Customize all user groups matching REGEXP.
+(autoload 'customize-apropos-groups "cus-edit" '(#$ . 164176) t nil)
+#@227 Create a buffer containing OPTIONS.
+Optional NAME is the name of the buffer.
+OPTIONS should be an alist of the form ((SYMBOL WIDGET)...), where
+SYMBOL is a customization option, and WIDGET is a widget for editing
+that option.
+(autoload 'custom-buffer-create "cus-edit" '(#$ . 164295) nil nil)
+#@227 Create a buffer containing OPTIONS.
+Optional NAME is the name of the buffer.
+OPTIONS should be an alist of the form ((SYMBOL WIDGET)...), where
+SYMBOL is a customization option, and WIDGET is a widget for editing
+that option.
+(autoload 'custom-buffer-create-other-window "cus-edit" '(#$ . 164595) nil nil)
+#@52 Create a tree browser for the customize hierarchy.
+(autoload 'customize-browse "cus-edit" '(#$ . 164907) t nil)
+#@519 File used for storing customization information.
+The default is nil, which means to use your init file
+as specified by `user-init-file'.  If you specify some other file,
+you need to explicitly load that file for the settings to take effect.
+
+When you change this variable, look in the previous custom file
+(usually your init file) for the forms `(custom-set-variables ...)'
+and `(custom-set-faces ...)', and copy them (whichever ones you find)
+to the new custom file.  This will preserve your existing customizations.
+(defvar custom-file nil (#$ . 165026))
+#@60 Save all user options which have been set in this session.
+(autoload 'customize-save-customized "cus-edit" '(#$ . 165589) t nil)
+#@43 Save all customizations in `custom-file'.
+(autoload 'custom-save-all "cus-edit" '(#$ . 165724) nil nil)
+#@103 Create menu for customization group SYMBOL.
+The menu is in a format applicable to `easy-menu-define'.
+(autoload 'custom-menu-create "cus-edit" '(#$ . 165835) nil nil)
+#@220 Return a customize menu for customization group SYMBOL.
+If optional NAME is given, use that as the name of the menu.
+Otherwise the menu will be named `Customize'.
+The format is suitable for use with `easy-menu-define'.
+(autoload 'customize-menu-create "cus-edit" '(#$ . 166009) nil nil)
+#@61 Like `defface', but FACE is evaluated as a normal argument.
+(autoload 'custom-declare-face "cus-face" '(#$ . 166302) nil nil)
+#@337 Initialize faces according to user preferences.
+The arguments should be a list where each entry has the form:
+
+  (FACE SPEC [NOW [COMMENT]])
+
+SPEC is stored as the saved value for FACE.
+If NOW is present and non-nil, FACE is created now, according to SPEC.
+COMMENT is a string comment about FACE.
+
+See `defface' for the format of SPEC.
+(autoload 'custom-set-faces "cus-face" '(#$ . 166435) nil nil)
+#@34 Mode used for cvs status output.
+(autoload 'cvs-status-mode "cvs-status" '(#$ . 166840) t nil)
+#@287 Minor mode that highlights suspicious C and C++ constructions.
+
+Note, in addition to enabling this minor mode, the major mode must
+be included in the variable `cwarn-configuration'.  By default C and
+C++ modes are included.
+
+With ARG, turn CWarn mode on if and only if arg is positive.
+(autoload 'cwarn-mode "cwarn" '(#$ . 166942) t nil)
+#@129 Turn on CWarn mode.
+
+This function is designed to be added to hooks, for example:
+  (add-hook 'c-mode-hook 'turn-on-cwarn-mode)
+(autoload 'turn-on-cwarn-mode "cwarn" '(#$ . 167287) nil nil)
+#@134 Hightlight suspicious C and C++ constructions in all buffers.
+
+With ARG, turn CWarn mode on globally if and only if arg is positive.
+(autoload 'global-cwarn-mode "cwarn" '(#$ . 167484) t nil)
+#@63 Return KOI8-R external character code of CHAR if appropriate.
+(autoload 'cyrillic-encode-koi8-r-char "cyril-util" '(#$ . 167682) nil nil)
+#@70 Return ALTERNATIVNYJ external character code of CHAR if appropriate.
+(autoload 'cyrillic-encode-alternativnyj-char "cyril-util" '(#$ . 167826) nil nil)
+#@486 Display a cyrillic buffer using a transliteration.
+For readability, the table is slightly
+different from the one used for the input method `cyrillic-translit'.
+
+The argument is a string which specifies which language you are using;
+that affects the choice of transliterations slightly.
+Possible values are listed in 'cyrillic-language-alist'.
+If the argument is t, we use the default cyrillic transliteration.
+If the argument is nil, we return the display table to its standard state.
+(autoload 'standard-display-cyrillic-translit "cyril-util" '(#$ . 167985) t nil)
+(byte-code "\301\302\303#\210\301\304\305#\207" [esc-map define-key "/" dabbrev-expand [67108911] dabbrev-completion] 4)
+#@472 Completion on current word.
+Like \[dabbrev-expand] but finds all expansions in the current buffer
+and presents suggestions for completion.
+
+With a prefix argument, it searches all buffers accepted by the
+function pointed out by `dabbrev-friend-buffer-function' to find the
+completions.
+
+If the prefix argument is 16 (which comes from C-u C-u),
+then it searches *all* buffers.
+
+With no prefix argument, it reuses an old completion list
+if there is a suitable one already.
+(autoload 'dabbrev-completion "dabbrev" '(#$ . 168681) t nil)
+#@817 Expand previous word "dynamically".
+
+Expands to the most recent, preceding word for which this is a prefix.
+If no suitable preceding word is found, words following point are
+considered.  If still no suitable word is found, then look in the
+buffers accepted by the function pointed out by variable
+`dabbrev-friend-buffer-function'.
+
+A positive prefix argument, N, says to take the Nth backward *distinct*
+possibility.  A negative argument says search forward.
+
+If the cursor has not moved from the end of the previous expansion and
+no argument is given, replace the previously-made expansion
+with the next possible expansion not yet tried.
+
+The variable `dabbrev-backward-only' may be used to limit the
+direction of search to backward if set non-nil.
+
+See also `dabbrev-abbrev-char-regexp' and \[dabbrev-completion].
+(autoload 'dabbrev-expand "dabbrev" '(#$ . 169221) t nil)
+#@3859 Major mode for editing DCL-files.
+
+This mode indents command lines in blocks.  (A block is commands between
+THEN-ELSE-ENDIF and between lines matching dcl-block-begin-regexp and
+dcl-block-end-regexp.)
+
+Labels are indented to a fixed position unless they begin or end a block.
+Whole-line comments (matching dcl-comment-line-regexp) are not indented. 
+Data lines are not indented.
+
+Key bindings:
+
+\{dcl-mode-map}
+Commands not usually bound to keys:
+
+\[dcl-save-nondefault-options]		Save changed options
+\[dcl-save-all-options]		Save all options
+\[dcl-save-option]			Save any option
+\[dcl-save-mode]			Save buffer mode
+
+Variables controlling indentation style and extra features:
+
+ dcl-basic-offset
+    Extra indentation within blocks.
+
+ dcl-continuation-offset
+    Extra indentation for continued lines.
+
+ dcl-margin-offset
+    Indentation for the first command line in a file or SUBROUTINE.
+
+ dcl-margin-label-offset
+    Indentation for a label.
+
+ dcl-comment-line-regexp
+    Lines matching this regexp will not be indented. 
+
+ dcl-block-begin-regexp
+ dcl-block-end-regexp
+    Regexps that match command lines that begin and end, respectively,
+    a block of commmand lines that will be given extra indentation.
+    Command lines between THEN-ELSE-ENDIF are always indented; these variables
+    make it possible to define other places to indent.
+    Set to nil to disable this feature.
+
+ dcl-calc-command-indent-function
+    Can be set to a function that customizes indentation for command lines.
+    Two such functions are included in the package:
+	dcl-calc-command-indent-multiple
+	dcl-calc-command-indent-hang
+
+ dcl-calc-cont-indent-function
+    Can be set to a function that customizes indentation for continued lines.
+    One such function is included in the package:
+	dcl-calc-cont-indent-relative    (set by default)
+
+ dcl-tab-always-indent
+    If t, pressing TAB always indents the current line.
+    If nil, pressing TAB indents the current line if point is at the left 
+    margin.
+
+ dcl-electric-characters 
+    Non-nil causes lines to be indented at once when a label, ELSE or ENDIF is
+    typed.
+
+ dcl-electric-reindent-regexps
+    Use this variable and function dcl-electric-character to customize
+    which words trigger electric indentation.
+
+ dcl-tempo-comma
+ dcl-tempo-left-paren
+ dcl-tempo-right-paren
+    These variables control the look of expanded templates.
+
+ dcl-imenu-generic-expression
+    Default value for imenu-generic-expression.  The default includes
+    SUBROUTINE labels in the main listing and sub-listings for
+    other labels, CALL, GOTO and GOSUB statements. 
+
+ dcl-imenu-label-labels
+ dcl-imenu-label-goto
+ dcl-imenu-label-gosub
+ dcl-imenu-label-call
+    Change the text that is used as sub-listing labels in imenu.
+
+Loading this package calls the value of the variable
+`dcl-mode-load-hook' with no args, if that value is non-nil. 
+Turning on DCL mode calls the value of the variable `dcl-mode-hook' 
+with no args, if that value is non-nil.
+
+
+The following example uses the default values for all variables:
+
+$! This is a comment line that is not indented (it matches 
+$! dcl-comment-line-regexp)
+$! Next follows the first command line.  It is indented dcl-margin-offset.
+$       i = 1
+$       ! Other comments are indented like command lines.
+$       ! A margin label indented dcl-margin-label-offset:
+$ label: 
+$       if i.eq.1
+$       then
+$           ! Lines between THEN-ELSE and ELSE-ENDIF are 
+$           ! indented dcl-basic-offset
+$           loop1: ! This matches dcl-block-begin-regexp...
+$               ! ...so this line is indented dcl-basic-offset
+$               text = "This " + - ! is a continued line 
+                       "lined up with the command line"
+$               type sys$input
+Data lines are not indented at all. 
+$           endloop1: ! This matches dcl-block-end-regexp
+$       endif
+$
+
+(autoload 'dcl-mode "dcl-mode" '(#$ . 170103) t nil)
+(byte-code "\301\301\207" [debugger debug] 1)
+#@349 Enter debugger.  To return, type \<debugger-mode-map>`\[debugger-continue]'.
+Arguments are mainly for use when this is called from the internals
+of the evaluator.
+
+You may call with no args, or you may pass nil as the first arg and
+any other args you like.  In that case, the list of args after the
+first will be printed into the backtrace buffer.
+(autoload 'debug "debug" '(#$ . 174068) t nil)
+#@333 Request FUNCTION to invoke debugger each time it is called.
+If you tell the debugger to continue, FUNCTION's execution proceeds.
+This works by modifying the definition of FUNCTION,
+which must be written in Lisp, not predefined.
+Use \[cancel-debug-on-entry] to cancel the effect of this command.
+Redefining FUNCTION also cancels it.
+(autoload 'debug-on-entry "debug" '(#$ . 174470) t nil)
+#@112 Undo effect of \[debug-on-entry] on FUNCTION.
+If argument is nil or an empty string, cancel for all functions.
+(autoload 'cancel-debug-on-entry "debug" '(#$ . 174865) t nil)
+#@74 Format a buffer of ciphertext for cryptanalysis and enter Decipher mode.
+(autoload 'decipher "decipher" '(#$ . 175045) t nil)
+#@669 Major mode for decrypting monoalphabetic substitution ciphers.
+Lower-case letters enter plaintext.
+Upper-case letters are commands.
+
+The buffer is made read-only so that normal Emacs commands cannot
+modify it.
+
+The most useful commands are:
+\<decipher-mode-map>
+\[decipher-digram-list]  Display a list of all digrams & their frequency
+\[decipher-frequency-count]  Display the frequency of each ciphertext letter
+\[decipher-adjacency-list]  Show adjacency list for current letter (lists letters appearing next to it)
+\[decipher-make-checkpoint]  Save the current cipher alphabet (checkpoint)
+\[decipher-restore-checkpoint]  Restore a saved cipher alphabet (checkpoint)
+(autoload 'decipher-mode "decipher" '(#$ . 175178) t nil)
+#@35 Customization of `columns' group.
+(autoload 'delimit-columns-customize "delim-col" '(#$ . 175910) t nil)
+#@81 Prettify all columns in a text region.
+
+START and END delimits the text region.
+(autoload 'delimit-columns-region "delim-col" '(#$ . 176021) t nil)
+#@98 Prettify all columns in a text rectangle.
+
+START and END delimits the corners of text rectangle.
+(autoload 'delimit-columns-rectangle "delim-col" '(#$ . 176175) t nil)
+#@1896 Major mode for editing Delphi code. \<delphi-mode-map>
+\[delphi-tab]	- Indents the current line for Delphi code.
+\[delphi-find-unit]	- Search for a Delphi source file.
+\[delphi-fill-comment]	- Fill the current comment.
+\[delphi-new-comment-line]	- If in a // comment, do a new comment line.
+
+M-x indent-region also works for indenting a whole region.
+
+Customization:
+
+ `delphi-indent-level'                (default 3)
+    Indentation of Delphi statements with respect to containing block.
+ `delphi-compound-block-indent'       (default 0)
+    Extra indentation for blocks in compound statements.
+ `delphi-case-label-indent'           (default 0)
+    Extra indentation for case statement labels.
+ `delphi-tab-always-indents'          (default t)
+    Non-nil means TAB in Delphi mode should always reindent the current line,
+    regardless of where in the line point is when the TAB command is used.
+ `delphi-newline-always-indents'      (default t)
+    Non-nil means NEWLINE in Delphi mode should always reindent the current
+    line, insert a blank line and move to the default indent column of the
+    blank line.
+ `delphi-search-path'                 (default .)
+    Directories to search when finding external units.
+ `delphi-verbose'                     (default nil)
+    If true then delphi token processing progress is reported to the user.
+
+Coloring:
+
+ `delphi-comment-face'                (default font-lock-comment-face)
+    Face used to color delphi comments.
+ `delphi-string-face'                 (default font-lock-string-face)
+    Face used to color delphi strings.
+ `delphi-keyword-face'                (default font-lock-keyword-face)
+    Face used to color delphi keywords.
+ `delphi-other-face'                  (default nil)
+    Face used to color everything else.
+
+Turning on Delphi mode calls the value of the variable delphi-mode-hook with
+no args, if that value is non-nil.
+(autoload 'delphi-mode "delphi" '(#$ . 176351) t nil)
+(defalias 'pending-delete-mode 'delete-selection-mode)
+#@242 Non-nil if Delete-Selection mode is enabled.
+See the command `delete-selection-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `delete-selection-mode'.
+(defvar delete-selection-mode nil (#$ . 178362))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group editing-basics delete-selection-mode custom-variable custom-add-load delsel] 4)
+#@330 Toggle Delete Selection mode.
+With prefix ARG, turn Delete Selection mode on if and only if ARG is
+positive.
+
+When Delete Selection mode is enabled, Transient Mark mode is also
+enabled and typed text replaces the selection if the selection is
+active.  Otherwise, typed text is just inserted at point regardless of
+any selection.
+(autoload 'delete-selection-mode "delsel" '(#$ . 178813) t nil)
+#@1262 Create a new mode as a variant of an existing mode.
+
+The arguments to this command are as follow:
+
+CHILD:     the name of the command for the derived mode.
+PARENT:    the name of the command for the parent mode (e.g. `text-mode').
+NAME:      a string which will appear in the status line (e.g. "Hypertext")
+DOCSTRING: an optional documentation string--if you do not supply one,
+           the function will attempt to invent something useful.
+BODY:      forms to execute just before running the
+           hooks for the new mode.
+
+Here is how you could define LaTeX-Thesis mode as a variant of LaTeX mode:
+
+  (define-derived-mode LaTeX-thesis-mode LaTeX-mode "LaTeX-Thesis")
+
+You could then make new key bindings for `LaTeX-thesis-mode-map'
+without changing regular LaTeX mode.  In this example, BODY is empty,
+and DOCSTRING is generated by default.
+
+On a more complicated level, the following command uses `sgml-mode' as
+the parent, and then sets the variable `case-fold-search' to nil:
+
+  (define-derived-mode article-mode sgml-mode "Article"
+    "Major mode for editing technical articles."
+    (setq case-fold-search nil))
+
+Note that if the documentation string had been left out, it would have
+been generated automatically, with a reference to the keymap.
+(autoload 'define-derived-mode "derived" '(#$ . 179214) nil 'macro)
+#@207 Initialise variables for a new MODE.
+Right now, if they don't already exist, set up a blank keymap, an
+empty syntax table, and an empty abbrev table -- these will be merged
+the first time the mode is used.
+(autoload 'derived-mode-init-mode-variables "derived" '(#$ . 180550) nil nil)
+#@104 Read the Desktop file and the files it specifies.
+This is a no-op when Emacs is running in batch mode.
+(autoload 'desktop-read "desktop" '(#$ . 180841) t nil)
+#@165 Load the `default' start-up library manually.
+Also inhibit further loading of it.  Call this from your `.emacs' file
+to provide correct modes for autoloaded files.
+(autoload 'desktop-load-default "desktop" '(#$ . 181007) nil nil)
+#@109 Convert IS 13194 character CHAR to Devanagari basic characters.
+If CHAR is not IS 13194, return CHAR as is.
+(autoload 'indian-to-devanagari "devan-util" '(#$ . 181244) nil nil)
+#@127 Convert Devanagari basic character CHAR to IS 13194 characters.
+If CHAR is not Devanagari basic character, return CHAR as is.
+(autoload 'devanagari-to-indian "devan-util" '(#$ . 181428) nil nil)
+#@177 Convert IS 13194 characters in region to Devanagari basic characters.
+When called from a program, expects two arguments,
+positions (integers or markers) specifying the region.
+(autoload 'indian-to-devanagari-region "devan-util" '(#$ . 181630) t nil)
+#@175 Convert Devanagari basic characters in region to Indian characters.
+When called from a program, expects two arguments,
+positions (integers or markers) specifying the region.
+(autoload 'devanagari-to-indian-region "devan-util" '(#$ . 181887) t nil)
+#@69 Convert Indian characters in STRING to Devanagari Basic characters.
+(autoload 'indian-to-devanagari-string "devan-util" '(#$ . 182141) nil nil)
+#@108 Convert Devanagari characters in STRING to Devanagari glyphs.  
+Ligatures and special rules are processed.
+(autoload 'char-to-glyph-devanagari "devan-util" '(#$ . 182292) nil nil)
+#@33 Decompose Devanagari string STR
+(autoload 'devanagari-decompose-string "devan-util" '(#$ . 182478) nil nil)
+(byte-code "\300\301\302\303\304\303%\210\300\305\302\303\211\211%\210\300\306\302\303\304\303%\207" [autoload devanagari-decompose-region "devan-util" nil t devanagari-compose-string devanagari-compose-region] 6)
+#@69 Compose IS 13194 characters in the region to Devanagari characters.
+(autoload 'devanagari-compose-from-is13194-region "devan-util" '(#$ . 182806) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload in-is13194-devanagari-post-read-conversion "devan-util" nil] 6)
+#@71 Decompose Devanagari characters in the region to IS 13194 characters.
+(autoload 'devanagari-decompose-to-is13194-region "devan-util" '(#$ . 183082) t nil)
+(byte-code "\300\301\302\303\211\211%\210\300\304\302\303\305\303%\210\300\306\302\303\305\303%\207" [autoload in-is13194-devanagari-pre-write-conversion "devan-util" nil devanagari-encode-itrans-region t devanagari-decode-itrans-region] 6)
+#@252 Generate the diary window for ARG days starting with the current date.
+If no argument is provided, the number of days of diary entries is governed
+by the variable `number-of-diary-entries'.  This function is suitable for
+execution in a `.emacs' file.
+(autoload 'diary "diary-lib" '(#$ . 183485) t nil)
+#@838 Send a mail message showing diary entries for next NDAYS days.
+If no prefix argument is given, NDAYS is set to `diary-mail-days'.
+
+You can call `diary-mail-entries' every night using an at/cron job.
+For example, this script will run the program at 2am daily.  Since
+`emacs -batch' does not load your `.emacs' file, you must ensure that
+all relevant variables are set, as done here.
+
+#!/bin/sh
+# diary-rem.sh -- repeatedly run the Emacs diary-reminder
+emacs -batch \
+-eval "(setq diary-mail-days 3 \
+             european-calendar-style t \
+             diary-mail-addr \"user@host.name\" )" \
+-l diary-lib -f diary-mail-entries
+at -f diary-rem.sh 0200 tomorrow
+
+You may have to tweak the syntax of the `at' command to suit your
+system.  Alternatively, you can specify a cron entry:
+0 1 * * * diary-rem.sh
+to run it every morning at 1am.
+(autoload 'diary-mail-entries "diary-lib" '(#$ . 183794) t nil)
+#@75 *A string or list of strings specifying switches to be be passed to diff.
+(defvar diff-switches "-c" (#$ . -184701))
+#@34 *The command to use to run diff.
+(defvar diff-command "diff" (#$ . -184824))
+#@222 Find and display the differences between OLD and NEW files.
+Interactively the current buffer's file name is the default for NEW
+and a backup file for NEW is the default for OLD.
+With prefix arg, prompt for diff switches.
+(autoload 'diff "diff" '(#$ . 184908) t nil)
+#@220 Diff this file with its backup file or vice versa.
+Uses the latest backup, if there are several numerical backups.
+If this file is a backup, diff it with its original.
+The backup file is the first file given to `diff'.
+(autoload 'diff-backup "diff" '(#$ . 185181) t nil)
+#@191 Major mode for viewing/editing context diffs.
+Supports unified and context diffs as well as (to a lesser extent)
+normal diffs.
+When the buffer is read-only, the ESC prefix is not necessary.
+(autoload 'diff-mode "diff-mode" '(#$ . 185459) t nil)
+#@70 Minor mode for viewing/editing context diffs.
+\{diff-minor-mode-map}
+(autoload 'diff-minor-mode "diff-mode" '(#$ . 185710) t nil)
+#@243 *Switches passed to `ls' for dired.  MUST contain the `l' option.
+May contain all other options that don't contradict `-l';
+may contain even `F', `b', `i' and `s'.  See also the variable
+`dired-ls-F-marks-symlinks' concerning the `F' switch.
+(defvar dired-listing-switches "-al" (#$ . -185847))
+#@58 Name of chown command (usually `chown' or `/etc/chown').
+(defvar dired-chown-program (byte-code "\301>\203\302\207\303\304!\203\304\207\305\207" [system-type (hpux dgux usg-unix-v irix linux gnu/linux) "chown" file-exists-p "/usr/sbin/chown" "/etc/chown"] 2) (#$ . 186148))
+#@602 *Informs dired about how `ls -lF' marks symbolic links.
+Set this to t if `ls' (or whatever program is specified by
+`insert-directory-program') with `-lF' marks the symbolic link
+itself with a trailing @ (usually the case under Ultrix).
+
+Example: if `ln -s foo bar; ls -F bar' gives `bar -> foo', set it to
+nil (the default), if it gives `bar@ -> foo', set it to t.
+
+Dired checks if there is really a @ appended.  Thus, if you have a
+marking `ls' program on one host and a non-marking on another host, and
+don't care about symbolic links which really end in a @, you can
+always set this variable to t.
+(defvar dired-ls-F-marks-symlinks nil (#$ . -186434))
+#@151 *Regexp of files to skip when finding first file of a directory.
+A value of nil means move to the subdir line.
+A value of t means move to first file.
+(defvar dired-trivial-filenames "^\\.\\.?$\\|^#" (#$ . -187096))
+#@205 *Controls marking of renamed files.
+If t, files keep their previous marks when they are renamed.
+If a character, renamed files (whether previously marked or not)
+are afterward marked with that character.
+(defvar dired-keep-marker-rename t (#$ . -187318))
+#@192 *Controls marking of copied files.
+If t, copied files are marked if and as the corresponding original files were.
+If a character, copied files are unconditionally marked with that character.
+(defvar dired-keep-marker-copy 67 (#$ . -187580))
+#@184 *Controls marking of newly made hard links.
+If t, they are marked if and as the files linked to were marked.
+If a character, new links are unconditionally marked with that character.
+(defvar dired-keep-marker-hardlink 72 (#$ . -187828))
+#@188 *Controls marking of newly made symbolic links.
+If t, they are marked if and as the files linked to were marked.
+If a character, new links are unconditionally marked with that character.
+(defvar dired-keep-marker-symlink 89 (#$ . -188072))
+#@269 *If non-nil, dired tries to guess a default target directory.
+This means: if there is a dired buffer displayed in the next window,
+use its current subdir, instead of the current subdir of this dired buffer.
+
+The target is used in the prompt for file copy, rename etc.
+(defvar dired-dwim-target nil (#$ . -188319))
+#@104 *If non-nil, Dired preserves the last-modified time in a file copy.
+(This works on only some systems.)
+(defvar dired-copy-preserve-time t (#$ . -188640))
+(define-key ctl-x-map "d" 'dired)
+#@799 "Edit" directory DIRNAME--delete, rename, print, etc. some files in it.
+Optional second argument SWITCHES specifies the `ls' options used.
+(Interactively, use a prefix argument to be able to specify SWITCHES.)
+Dired displays a list of files in DIRNAME (which may also have
+shell wildcards appended to select certain files).  If DIRNAME is a cons,
+its first element is taken as the directory name and the rest as an explicit
+list of files to make directory entries for.
+\<dired-mode-map>You can move around in it with the usual commands.
+You can flag files for deletion with \[dired-flag-file-deletion] and then
+delete them by typing \[dired-do-flagged-delete].
+Type \[describe-mode] after entering dired for more info.
+
+If DIRNAME is already in a dired buffer, that buffer is used without refresh.
+(autoload 'dired "dired" '(#$ . 188835) t nil)
+(define-key ctl-x-4-map "d" 'dired-other-window)
+#@72 "Edit" directory DIRNAME.  Like `dired' but selects in another window.
+(autoload 'dired-other-window "dired" '(#$ . 189735) t nil)
+(define-key ctl-x-5-map "d" 'dired-other-frame)
+#@64 "Edit" directory DIRNAME.  Like `dired' but makes a new frame.
+(autoload 'dired-other-frame "dired" '(#$ . 189920) t nil)
+#@73 Like `dired' but returns the dired buffer as value, does not select it.
+(autoload 'dired-noselect "dired" '(#$ . 190048) nil nil)
+#@317 Compare file at point with file FILE using `diff'.
+FILE defaults to the file at the mark.  (That's the mark set by
+\[set-mark-command], not by Dired's \[dired-mark] command.)
+The prompted-for file is the first file given to `diff'.
+With prefix arg, prompt for second argument SWITCHES,
+ which is options for `diff'.
+(autoload 'dired-diff "dired-aux" '(#$ . 190185) t nil)
+#@295 Diff this file with its backup file or vice versa.
+Uses the latest backup, if there are several numerical backups.
+If this file is a backup, diff it with its original.
+The backup file is the first file given to `diff'.
+With prefix arg, prompt for argument SWITCHES which is options for `diff'.
+(autoload 'dired-backup-diff "dired-aux" '(#$ . 190564) t nil)
+#@114 Change the mode of the marked (or next ARG) files.
+This calls chmod, thus symbolic modes like `g+w' are allowed.
+(autoload 'dired-do-chmod "dired-aux" '(#$ . 190928) t nil)
+#@53 Change the group of the marked (or next ARG) files.
+(autoload 'dired-do-chgrp "dired-aux" '(#$ . 191107) t nil)
+#@53 Change the owner of the marked (or next ARG) files.
+(autoload 'dired-do-chown "dired-aux" '(#$ . 191225) t nil)
+#@129 Print the marked (or next ARG) files.
+Uses the shell command coming from variables `lpr-command' and
+`lpr-switches' as default.
+(autoload 'dired-do-print "dired-aux" '(#$ . 191344) t nil)
+#@1086 Run a shell command COMMAND on the marked files.
+If no files are marked or a specific numeric prefix arg is given,
+the next ARG files are used.  Just \[universal-argument] means the current file.
+The prompt mentions the file(s) or the marker, as appropriate.
+
+If there is output, it goes to a separate buffer.
+
+Normally the command is run on each file individually.
+However, if there is a `*' in the command then it is run
+just once with the entire file list substituted there.
+
+If there is no `*', but a `?' in the command then it is still run
+on each file individually but with the filename substituted there
+instead of at the end of the command.
+
+No automatic redisplay of dired buffers is attempted, as there's no
+telling what files the command may have changed.  Type
+\[dired-do-redisplay] to redisplay the marked files.
+
+The shell command has the top level directory as working directory, so
+output files usually are created there instead of in a subdir.
+
+In a noninteractive call (from Lisp code), you must specify
+the list of file names explicitly with the FILE-LIST argument.
+(autoload 'dired-do-shell-command "dired-aux" '(#$ . 191540) t nil)
+#@313 Kill all marked lines (not the files).
+With a prefix argument, kill that many lines starting with the current line.
+(A negative argument kills lines before the current line.)
+To kill an entire subdirectory, go to its directory header line
+and use this command with a prefix argument (the value does not matter).
+(autoload 'dired-do-kill-lines "dired-aux" '(#$ . 192700) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload dired-compress-file "dired-aux" nil] 6)
+#@52 Compress or uncompress marked (or next ARG) files.
+(autoload 'dired-do-compress "dired-aux" '(#$ . 193176) t nil)
+#@53 Byte compile marked (or next ARG) Emacs Lisp files.
+(autoload 'dired-do-byte-compile "dired-aux" '(#$ . 193296) t nil)
+#@49 Load the marked (or next ARG) Emacs Lisp files.
+(autoload 'dired-do-load "dired-aux" '(#$ . 193421) t nil)
+#@179 Redisplay all marked (or next ARG) files.
+If on a subdir line, redisplay that subdirectory.  In that case,
+a prefix arg lets you edit the `ls' switches used for the new listing.
+(autoload 'dired-do-redisplay "dired-aux" '(#$ . 193535) t nil)
+(byte-code "\300\301\302\303\211\211%\210\300\304\302\303\211\211%\210\300\305\302\303\211\211%\210\300\306\302\303\211\211%\210\300\307\302\303\211\211%\207" [autoload dired-add-file "dired-aux" nil dired-remove-file dired-relist-file dired-copy-file dired-rename-file] 6)
+#@38 Create a directory called DIRECTORY.
+(autoload 'dired-create-directory "dired-aux" '(#$ . 194057) t nil)
+#@473 Copy all marked (or next ARG) files, or copy the current file.
+This normally preserves the last-modified date when copying.
+When operating on just the current file, you specify the new name.
+When operating on multiple or marked files, you specify a directory,
+and new copies of these files are made in that directory
+with the same names that the files currently have.  The default
+suggested for the target directory depends on the value of
+`dired-dwim-target', which see.
+(autoload 'dired-do-copy "dired-aux" '(#$ . 194169) t nil)
+#@412 Make symbolic links to current file or all marked (or next ARG) files.
+When operating on just the current file, you specify the new name.
+When operating on multiple or marked files, you specify a directory
+and new symbolic links are made in that directory
+with the same names that the files currently have.  The default
+suggested for the target directory depends on the value of
+`dired-dwim-target', which see.
+(autoload 'dired-do-symlink "dired-aux" '(#$ . 194707) t nil)
+#@408 Add names (hard links) current file or all marked (or next ARG) files.
+When operating on just the current file, you specify the new name.
+When operating on multiple or marked files, you specify a directory
+and new hard links are made in that directory
+with the same names that the files currently have.  The default
+suggested for the target directory depends on the value of
+`dired-dwim-target', which see.
+(autoload 'dired-do-hardlink "dired-aux" '(#$ . 195187) t nil)
+#@287 Rename current file or all marked (or next ARG) files.
+When renaming just the current file, you specify the new name.
+When renaming multiple or marked files, you specify a directory.
+The default suggested for the target directory depends on the value
+of `dired-dwim-target', which see.
+(autoload 'dired-do-rename "dired-aux" '(#$ . 195664) t nil)
+#@622 Rename selected files whose names match REGEXP to NEWNAME.
+
+With non-zero prefix argument ARG, the command operates on the next ARG
+files.  Otherwise, it operates on all the marked files, or the current
+file if none are marked.
+
+As each match is found, the user must type a character saying
+  what to do with it.  For directions, type \[help-command] at that time.
+NEWNAME may contain \=\<n> or \& as in `query-replace-regexp'.
+REGEXP defaults to the last regexp used.
+
+With a zero prefix arg, renaming by regexp affects the absolute file name.
+Normally, only the non-directory part of the file name is used and changed.
+(autoload 'dired-do-rename-regexp "dired-aux" '(#$ . 196018) t nil)
+#@111 Copy selected files whose names match REGEXP to NEWNAME.
+See function `dired-do-rename-regexp' for more info.
+(autoload 'dired-do-copy-regexp "dired-aux" '(#$ . 196714) t nil)
+#@115 Hardlink selected files whose names match REGEXP to NEWNAME.
+See function `dired-do-rename-regexp' for more info.
+(autoload 'dired-do-hardlink-regexp "dired-aux" '(#$ . 196897) t nil)
+#@114 Symlink selected files whose names match REGEXP to NEWNAME.
+See function `dired-do-rename-regexp' for more info.
+(autoload 'dired-do-symlink-regexp "dired-aux" '(#$ . 197088) t nil)
+#@54 Rename all marked (or next ARG) files to upper case.
+(autoload 'dired-upcase "dired-aux" '(#$ . 197276) t nil)
+#@54 Rename all marked (or next ARG) files to lower case.
+(autoload 'dired-downcase "dired-aux" '(#$ . 197393) t nil)
+#@432 Insert this subdirectory into the same dired buffer.
+If it is already present, just move to it (type \[dired-do-redisplay] to refresh),
+  else inserts it at its natural place (as `ls -lR' would have done).
+With a prefix arg, you may edit the ls switches used for this listing.
+  You can add `R' to the switches to expand the whole tree starting at
+  this subdirectory.
+This function takes some pains to conform to `ls -lR' output.
+(autoload 'dired-maybe-insert-subdir "dired-aux" '(#$ . 197513) t nil)
+#@404 Insert this subdirectory into the same dired buffer.
+If it is already present, overwrites previous entry,
+  else inserts it at its natural place (as `ls -lR' would have done).
+With a prefix arg, you may edit the `ls' switches used for this listing.
+  You can add `R' to the switches to expand the whole tree starting at
+  this subdirectory.
+This function takes some pains to conform to `ls -lR' output.
+(autoload 'dired-insert-subdir "dired-aux" '(#$ . 198022) t nil)
+#@129 Go to previous subdirectory, regardless of level.
+When called interactively and not on a subdir line, go to this subdir's line.
+(autoload 'dired-prev-subdir "dired-aux" '(#$ . 198497) t nil)
+#@163 Go to end of header line of DIR in this dired buffer.
+Return value of point on success, otherwise return nil.
+The next char is either \n, or \r if DIR is hidden.
+(autoload 'dired-goto-subdir "dired-aux" '(#$ . 198695) t nil)
+#@183 Mark all files except `.' and `..' in current subdirectory.
+If the Dired buffer shows multiple directories, this command
+marks the files listed in the subdirectory that point is in.
+(autoload 'dired-mark-subdir-files "dired-aux" '(#$ . 198927) t nil)
+#@72 Remove all lines of current subdirectory.
+Lower levels are unaffected.
+(autoload 'dired-kill-subdir "dired-aux" '(#$ . 199184) t nil)
+#@37 Go up ARG levels in the dired tree.
+(autoload 'dired-tree-up "dired-aux" '(#$ . 199324) t nil)
+#@28 Go down in the dired tree.
+(autoload 'dired-tree-down "dired-aux" '(#$ . 199425) t nil)
+#@160 Hide or unhide the current subdirectory and move to next directory.
+Optional prefix arg is a repeat factor.
+Use \[dired-hide-all] to (un)hide all directories.
+(autoload 'dired-hide-subdir "dired-aux" '(#$ . 199520) t nil)
+#@192 Hide all subdirectories, leaving only their header lines.
+If there is already something hidden, make everything visible again.
+Use \[dired-hide-subdir] to (un)hide a particular subdirectory.
+(autoload 'dired-hide-all "dired-aux" '(#$ . 199749) t nil)
+#@159 Search through all marked files for a match for REGEXP.
+Stops when a match is found.
+To continue searching for next match, use command \[tags-loop-continue].
+(autoload 'dired-do-search "dired-aux" '(#$ . 200007) t nil)
+#@253 Do `query-replace-regexp' of FROM with TO, on all marked files.
+Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
+If you exit (\[keyboard-quit] or ESC), you can resume the query replace
+with the command \[tags-loop-continue].
+(autoload 'dired-do-query-replace-regexp "dired-aux" '(#$ . 200233) t nil)
+#@198 Print the type of FILE, according to the `file' command.
+If FILE is a symbolic link and the optional argument DEREF-SYMLINKS is
+true then the type of the file linked to by FILE is printed instead.
+(autoload 'dired-show-file-type "dired-aux" '(#$ . 200567) t nil)
+#@281 Jump to dired buffer corresponding to current buffer.
+If in a file, dired the current directory and move to file's line.
+If in dired already, pop up a level and goto old directory's line.
+In case the proper dired file line cannot be found, refresh the dired
+buffer and try again.
+(autoload 'dired-jump "dired-x" '(#$ . 200837) t nil)
+#@443 Determine the current directory by scanning the process output for a prompt.
+The prompt to look for is the first item in `dirtrack-list'.
+
+You can toggle directory tracking by using the function `dirtrack-toggle'.
+
+If directory tracking does not seem to be working, you can use the
+function `dirtrack-debug-toggle' to turn on debugging output.
+
+You can enable directory tracking by adding this function to 
+`comint-output-filter-functions'.
+
+(autoload 'dirtrack "dirtrack" '(#$ . 201178) nil nil)
+#@274 Print disassembled code for OBJECT in (optional) BUFFER.
+OBJECT can be a symbol defined as a function, or a function itself
+(a lambda expression or a compiled-function object).
+If OBJECT is not already compiled, we compile it, but do not
+redefine OBJECT if it is a symbol.
+(autoload 'disassemble "disass" '(#$ . 201682) t nil)
+#@36 Return a new, empty display table.
+(autoload 'make-display-table "disp-table" '(#$ . 202015) nil nil)
+#@239 Return the value of the extra slot in DISPLAY-TABLE named SLOT.
+SLOT may be a number from 0 to 5 inclusive, or a slot name (symbol).
+Valid symbols are `truncation', `wrap', `escape', `control',
+`selective-display', and `vertical-border'.
+(autoload 'display-table-slot "disp-table" '(#$ . 202124) nil nil)
+#@240 Set the value of the extra slot in DISPLAY-TABLE named SLOT to VALUE.
+SLOT may be a number from 0 to 5 inclusive, or a name (symbol).
+Valid symbols are `truncation', `wrap', `escape', `control',
+`selective-display', and `vertical-border'.
+(autoload 'set-display-table-slot "disp-table" '(#$ . 202436) nil nil)
+#@49 Describe the display table DT in a help buffer.
+(autoload 'describe-display-table "disp-table" '(#$ . 202752) nil nil)
+#@70 Describe the display table in use in the selected window and buffer.
+(autoload 'describe-current-display-table "disp-table" '(#$ . 202877) t nil)
+#@51 Display characters in the range L to H literally.
+(autoload 'standard-display-8bit "disp-table" '(#$ . 203029) nil nil)
+#@68 Display characters in the range L to H using the default notation.
+(autoload 'standard-display-default "disp-table" '(#$ . 203155) nil nil)
+#@47 Display character C using printable string S.
+(autoload 'standard-display-ascii "disp-table" '(#$ . 203301) nil nil)
+#@164 Display character C as character SC in the g1 character set.
+This function assumes that your terminal uses the SO/SI characters;
+it is meaningless for an X frame.
+(autoload 'standard-display-g1 "disp-table" '(#$ . 203425) nil nil)
+#@146 Display character C as character GC in graphics character set.
+This function assumes VT100-compatible escapes; it is meaningless for an
+X frame.
+(autoload 'standard-display-graphic "disp-table" '(#$ . 203663) nil nil)
+#@55 Display character C as character UC plus underlining.
+(autoload 'standard-display-underline "disp-table" '(#$ . 203887) nil nil)
+#@69 Allocate a glyph code to display by sending STRING to the terminal.
+(autoload 'create-glyph "disp-table" '(#$ . 204022) nil nil)
+#@1070 Semi-obsolete way to toggle display of ISO 8859 European characters.
+
+This function is semi-obsolete; if you want to do your editing with
+unibyte characters, it is better to `set-language-environment' coupled
+with either the `--unibyte' option or the EMACS_UNIBYTE environment
+variable, or else customize `enable-multibyte-characters'.
+
+With prefix argument, this command enables European character display
+if arg is positive, disables it otherwise.  Otherwise, it toggles
+European character display.
+
+When this mode is enabled, characters in the range of 160 to 255
+display not as octal escapes, but as accented characters.  Codes 146
+and 160 display as apostrophe and space, even though they are not the
+ASCII codes for apostrophe and space.
+
+Enabling European character display with this command noninteractively
+from Lisp code also selects Latin-1 as the language environment, and
+selects unibyte mode for all Emacs buffers (both existing buffers and
+those created subsequently).  This provides increased compatibility
+for users who call this function in `.emacs'.
+(autoload 'standard-display-european "disp-table" '(#$ . 204159) nil nil)
+#@315 Dissociate the text of the current buffer.
+Output goes in buffer named *Dissociation*,
+which is redisplayed each time text is added to it.
+Every so often the user must say whether to continue.
+If ARG is positive, require ARG chars of continuity.
+If ARG is negative, require -ARG words of continuity.
+Default is 2.
+(autoload 'dissociated-press "dissociate" '(#$ . 205309) t nil)
+#@59 Switch to *doctor* buffer and start giving psychotherapy.
+(autoload 'doctor "doctor" '(#$ . 205693) t nil)
+#@129 Toggle Double mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `double-mode'.
+(defvar double-mode nil (#$ . 205807))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group double double-mode custom-variable custom-add-load] 4)
+#@204 Toggle Double mode.
+With prefix arg, turn Double mode on iff arg is positive.
+
+When Double mode is on, some keys will insert different strings
+when pressed twice.  See variable `double-map' for details.
+(autoload 'double-mode "double" '(#$ . 206110) t nil)
+#@44 Switch to *dungeon* buffer and start game.
+(autoload 'dunnet "dunnet" '(#$ . 206373) t nil)
+#@33 Play sounds in message buffers.
+(autoload 'gnus-earcon-display "earcon" '(#$ . 206471) t nil)
+(defalias 'easy-mmode-define-minor-mode 'define-minor-mode)
+#@1258 Define a new minor mode MODE.
+This function defines the associated control variable MODE, keymap MODE-map,
+toggle command MODE, and hook MODE-hook.
+
+DOC is the documentation for the mode toggle command.
+Optional INIT-VALUE is the initial value of the mode's variable.
+Optional LIGHTER is displayed in the modeline when the mode is on.
+Optional KEYMAP is the default (defvar) keymap bound to the mode keymap.
+  If it is a list, it is passed to `easy-mmode-define-keymap'
+  in order to build a valid keymap.  It's generally better to use
+  a separate MODE-map variable than to use this argument.
+The above three arguments can be skipped if keyword arguments are
+used (see below).
+
+BODY contains code that will be executed each time the mode is (dis)activated.
+  It will be executed after any toggling but before running the hooks.
+  BODY can start with a list of CL-style keys specifying additional arguments.
+  The following keyword arguments are supported:
+:group   Followed by the group name to use for any generated `defcustom'.
+:global  If non-nil specifies that the minor mode is not meant to be
+         buffer-local.  By default, the variable is made buffer-local.
+:init-value  Same as the INIT-VALUE argument.
+:lighter  Same as the LIGHTER argument.
+(autoload 'define-minor-mode "easy-mmode" '(#$ . 206633) nil 'macro)
+#@276 Make GLOBAL-MODE out of the buffer-local minor MODE.
+TURN-ON is a function that will be called with no args in every buffer
+  and that should try to turn MODE on if applicable for that buffer.
+KEYS is a list of CL-style keyword arguments:
+:group to specify the custom group.
+(autoload 'easy-mmode-define-global-mode "easy-mmode" '(#$ . 207966) nil 'macro)
+#@283 Return a keymap built from bindings BS.
+BS must be a list of (KEY . BINDING) where
+KEY and BINDINGS are suitable for `define-key'.
+Optional NAME is passed to `make-sparse-keymap'.
+Optional map M can be used to modify an existing map.
+ARGS is a list of additional keyword arguments.
+(autoload 'easy-mmode-define-keymap "easy-mmode" '(#$ . 208329) nil nil)
+(byte-code "\300\301\302\303\211\304%\207" [autoload easy-mmode-defmap "easy-mmode" nil macro] 6)
+#@113 Define variable ST as a syntax-table.
+CSS contains a list of syntax specifications of the form (CHAR . SYNTAX).
+(autoload 'easy-mmode-defsyntax "easy-mmode" '(#$ . 208789) nil 'macro)
+(put 'easy-menu-define 'lisp-indent-function 'defun)
+#@3029 Define a menu bar submenu in maps MAPS, according to MENU.
+The menu keymap is stored in symbol SYMBOL, both as its value
+and as its function definition.  DOC is used as the doc string for SYMBOL.
+
+The first element of MENU must be a string.  It is the menu bar item name.
+It may be followed by the following keyword argument pairs
+
+   :filter FUNCTION
+
+FUNCTION is a function with one argument, the menu.  It returns the actual
+menu displayed.
+
+   :visible INCLUDE
+
+INCLUDE is an expression; this menu is only visible if this
+expression has a non-nil value.  `:include' is an alias for `:visible'.
+
+   :active ENABLE
+
+ENABLE is an expression; the menu is enabled for selection
+whenever this expression's value is non-nil.
+
+The rest of the elements in MENU, are menu items.
+
+A menu item is usually a vector of three elements:  [NAME CALLBACK ENABLE]
+
+NAME is a string--the menu item name.
+
+CALLBACK is a command to run when the item is chosen,
+or a list to evaluate when the item is chosen.
+
+ENABLE is an expression; the item is enabled for selection
+whenever this expression's value is non-nil.
+
+Alternatively, a menu item may have the form:
+
+   [ NAME CALLBACK [ KEYWORD ARG ] ... ]
+
+Where KEYWORD is one of the symbols defined below.
+
+   :keys KEYS
+
+KEYS is a string; a complex keyboard equivalent to this menu item.
+This is normally not needed because keyboard equivalents are usually
+computed automatically.
+KEYS is expanded with `substitute-command-keys' before it is used.
+
+   :key-sequence KEYS
+
+KEYS is nil, a string or a vector; nil or a keyboard equivalent to this
+menu item.
+This is a hint that will considerably speed up Emacs' first display of
+a menu.  Use `:key-sequence nil' when you know that this menu item has no
+keyboard equivalent.
+
+   :active ENABLE
+
+ENABLE is an expression; the item is enabled for selection
+whenever this expression's value is non-nil.
+
+   :included INCLUDE
+
+INCLUDE is an expression; this item is only visible if this
+expression has a non-nil value.
+
+   :suffix FORM
+
+FORM is an expression that will be dynamically evaluated and whose
+value will be concatenated to the menu entry's NAME.
+
+   :style STYLE
+
+STYLE is a symbol describing the type of menu item.  The following are
+defined:
+
+toggle: A checkbox.
+        Prepend the name with `(*) ' or `( ) ' depending on if selected or not.
+radio: A radio button.
+       Prepend the name with `[X] ' or `[ ] ' depending on if selected or not.
+button: Surround the name with `[' and `]'.  Use this for an item in the
+        menu bar itself.
+anything else means an ordinary menu item.
+
+   :selected SELECTED
+
+SELECTED is an expression; the checkbox or radio button is selected
+whenever this expression's value is non-nil.
+
+   :help HELP
+
+HELP is a string, the help to display for the menu item.
+
+A menu item can be a string.  Then that string appears in the menu as
+unselectable text.  A string consisting solely of hyphens is displayed
+as a solid horizontal line.
+
+A menu item can be a list with the same format as MENU.  This is a submenu.
+(autoload 'easy-menu-define "easymenu" '(#$ . 209034) nil 'macro)
+(byte-code "\300\301\302\303\211\211%\207" [autoload easy-menu-do-define "easymenu" nil] 6)
+#@215 Create a menu called MENU-NAME with items described in MENU-ITEMS.
+MENU-NAME is a string, the name of the menu.  MENU-ITEMS is a list of items
+possibly preceded by keyword pairs as described in `easy-menu-define'.
+(autoload 'easy-menu-create-menu "easymenu" '(#$ . 212227) nil nil)
+#@561 Change menu found at PATH as item NAME to contain ITEMS.
+PATH is a list of strings for locating the menu that
+should contain a submenu named NAME.
+ITEMS is a list of menu items, as in `easy-menu-define'.
+These items entirely replace the previous items in that submenu.
+
+If the menu located by PATH has no submenu named NAME, add one.
+If the optional argument BEFORE is present, add it just before
+the submenu named BEFORE, otherwise add it at the end of the menu.
+
+Either call this from `menu-bar-update-hook' or use a menu filter,
+to implement dynamic menus.
+(autoload 'easy-menu-change "easymenu" '(#$ . 212516) nil nil)
+#@31 Customization for ebnf group.
+(autoload 'ebnf-customize "ebnf2ps" '(#$ . 213145) t nil)
+#@498 Generate and print a PostScript syntatic chart image of the buffer.
+
+When called with a numeric prefix argument (C-u), prompts the user for
+the name of a file to save the PostScript image in, instead of sending
+it to the printer.
+
+More specifically, the FILENAME argument is treated as follows: if it
+is nil, send the image to the printer.  If FILENAME is a string, save
+the PostScript image in a file with that name.  If FILENAME is a
+number, prompt the user for the name of the file to save in.
+(autoload 'ebnf-print-buffer "ebnf2ps" '(#$ . 213240) t nil)
+#@131 Generate and print a PostScript syntatic chart image of the region.
+Like `ebnf-print-buffer', but prints just the current region.
+(autoload 'ebnf-print-region "ebnf2ps" '(#$ . 213805) t nil)
+#@262 Generate and spool a PostScript syntatic chart image of the buffer.
+Like `ebnf-print-buffer' except that the PostScript image is saved in a
+local buffer to be sent to the printer later.
+
+Use the command `ebnf-despool' to send the spooled images to the printer.
+(autoload 'ebnf-spool-buffer "ebnf2ps" '(#$ . 214003) t nil)
+#@214 Generate a PostScript syntatic chart image of the region and spool locally.
+Like `ebnf-spool-buffer', but spools just the current region.
+
+Use the command `ebnf-despool' to send the spooled images to the printer.
+(autoload 'ebnf-spool-region "ebnf2ps" '(#$ . 214332) t nil)
+#@593 Generate a PostScript syntatic chart image of the buffer in a EPS file.
+
+Indeed, for each production is generated a EPS file.
+The EPS file name has the following form:
+
+   <PREFIX><PRODUCTION>.eps
+
+<PREFIX>     is given by variable `ebnf-eps-prefix'.
+	     The default value is "ebnf--".
+
+<PRODUCTION> is the production name.
+	     The production name is mapped to form a valid file name.
+	     For example, the production name "A/B + C" is mapped to
+	     "A_B_+_C" and the EPS file name used is "ebnf--A_B_+_C.eps".
+
+WARNING: It's *NOT* asked any confirmation to override an existing file.
+(autoload 'ebnf-eps-buffer "ebnf2ps" '(#$ . 214613) t nil)
+#@593 Generate a PostScript syntatic chart image of the region in a EPS file.
+
+Indeed, for each production is generated a EPS file.
+The EPS file name has the following form:
+
+   <PREFIX><PRODUCTION>.eps
+
+<PREFIX>     is given by variable `ebnf-eps-prefix'.
+	     The default value is "ebnf--".
+
+<PRODUCTION> is the production name.
+	     The production name is mapped to form a valid file name.
+	     For example, the production name "A/B + C" is mapped to
+	     "A_B_+_C" and the EPS file name used is "ebnf--A_B_+_C.eps".
+
+WARNING: It's *NOT* asked any confirmation to override an existing file.
+(autoload 'ebnf-eps-region "ebnf2ps" '(#$ . 215271) t nil)
+(defalias 'ebnf-despool 'ps-despool)
+#@49 Does a syntatic analysis of the current buffer.
+(autoload 'ebnf-syntax-buffer "ebnf2ps" '(#$ . 215965) t nil)
+#@39 Does a syntatic analysis of a region.
+(autoload 'ebnf-syntax-region "ebnf2ps" '(#$ . 216081) t nil)
+#@35 Return the current ebnf2ps setup.
+(autoload 'ebnf-setup "ebnf2ps" '(#$ . 216187) nil nil)
+#@70 Insert a new style NAME with inheritance INHERITS and values VALUES.
+(autoload 'ebnf-insert-style "ebnf2ps" '(#$ . 216283) t nil)
+#@47 Merge values of style NAME with style VALUES.
+(autoload 'ebnf-merge-style "ebnf2ps" '(#$ . 216419) t nil)
+#@63 Set STYLE to current style.
+
+It returns the old style symbol.
+(autoload 'ebnf-apply-style "ebnf2ps" '(#$ . 216531) t nil)
+#@56 Reset current style.
+
+It returns the old style symbol.
+(autoload 'ebnf-reset-style "ebnf2ps" '(#$ . 216659) t nil)
+#@90 Push the current style and set STYLE to current style.
+
+It returns the old style symbol.
+(autoload 'ebnf-push-style "ebnf2ps" '(#$ . 216780) t nil)
+#@76 Pop a style and set it to current style.
+
+It returns the old style symbol.
+(autoload 'ebnf-pop-style "ebnf2ps" '(#$ . 216934) t nil)
+#@335 Major mode for Ebrowse class tree buffers.
+Each line corresponds to a class in a class tree.
+Letters do not insert themselves, they are commands.
+File operations in the tree buffer work on class tree data structures.
+E.g.\[save-buffer] writes the tree to the file it was loaded from.
+
+Tree mode key bindings:
+\{ebrowse-tree-mode-map}
+(autoload 'ebrowse-tree-mode "ebrowse" '(#$ . 217074) t nil)
+#@72 Return a buffer containing a tree or nil if no tree found or canceled.
+(autoload 'ebrowse-electric-choose-tree "ebrowse" '(#$ . 217475) t nil)
+#@223 Perform completion on the C++ symbol preceding point.
+A second call of this function without changing point inserts the next match.
+A call with prefix PREFIX reads the symbol to insert from the minibuffer with
+completion.
+(autoload 'ebrowse-tags-complete-symbol "ebrowse" '(#$ . 217625) t nil)
+#@174 Repeat last operation on files in tree.
+FIRST-TIME non-nil means this is not a repetition, but the first time.
+TREE-BUFFER if indirectly specifies which files to loop over.
+(autoload 'ebrowse-tags-loop-continue "ebrowse" '(#$ . 217926) t nil)
+#@113 Query replace FROM with TO in all files of a class tree.
+With prefix arg, process files of marked classes only.
+(autoload 'ebrowse-tags-query-replace "ebrowse" '(#$ . 218176) t nil)
+#@250 Search for call sites of a member.
+If FIX-NAME is specified, search uses of that member.
+Otherwise, read a member name from the minibuffer.
+Searches in all files mentioned in a class tree for something that
+looks like a function call to the member.
+(autoload 'ebrowse-tags-search-member-use "ebrowse" '(#$ . 218365) t nil)
+#@68 Move backward in the position stack.
+Prefix arg ARG says how much.
+(autoload 'ebrowse-back-in-position-stack "ebrowse" '(#$ . 218694) t nil)
+#@67 Move forward in the position stack.
+Prefix arg ARG says how much.
+(autoload 'ebrowse-forward-in-position-stack "ebrowse" '(#$ . 218841) t nil)
+#@61 List positions in the position stack in an electric buffer.
+(autoload 'ebrowse-electric-position-menu "ebrowse" '(#$ . 218990) t nil)
+#@52 Save current tree in same file it was loaded from.
+(autoload 'ebrowse-save-tree "ebrowse" '(#$ . 219130) t nil)
+#@166 Write the current tree data structure to a file.
+Read the file name from the minibuffer if interactive.
+Otherwise, FILE-NAME specifies the file to save the tree in.
+(autoload 'ebrowse-save-tree-as "ebrowse" '(#$ . 219249) t nil)
+#@38 Display statistics for a class tree.
+(autoload 'ebrowse-statistics "ebrowse" '(#$ . 219484) t nil)
+#@632 Pops up a buffer describing the set of Emacs buffers.
+Vaguely like ITS lunar select buffer; combining typeoutoid buffer
+listing with menuoid buffer selection.
+
+If the very next character typed is a space then the buffer list
+window disappears.  Otherwise, one may move around in the buffer list
+window, marking buffers to be selected, saved or deleted.
+
+To exit and select a new buffer, type a space when the cursor is on
+the appropriate line of the buffer-list window.  Other commands are
+much like those of buffer-menu-mode.
+
+Calls value of `electric-buffer-menu-mode-hook' on entry if non-nil.
+
+\{electric-buffer-menu-mode-map}
+(autoload 'electric-buffer-list "ebuff-menu" '(#$ . 219590) t nil)
+#@132 Edit current history line in minibuffer and execute result.
+With prefix arg NOCONFIRM, execute current line as-is without editing.
+(autoload 'Electric-command-history-redo-expression "echistory" '(#$ . 220295) t nil)
+#@444 *If non-nil, evaluation of any defining forms will instrument for Edebug.
+This applies to `eval-defun', `eval-region', `eval-buffer', and
+`eval-current-buffer'.  `eval-region' is also called by
+`eval-last-sexp', and `eval-print-last-sexp'.
+
+You can use the command `edebug-all-defs' to toggle the value of this
+variable.  You may wish to make it local to each buffer with
+(make-local-variable 'edebug-all-defs) in your
+`emacs-lisp-mode-hook'.
+(defvar edebug-all-defs nil (#$ . -220519))
+#@197 *Non-nil evaluation of all forms will instrument for Edebug.
+This doesn't apply to loading or evaluations in the minibuffer.
+Use the command `edebug-all-forms' to toggle the value of this option.
+(defvar edebug-all-forms nil (#$ . -221013))
+#@167 Set the `edebug-form-spec' property of SYMBOL according to SPEC.
+Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol
+(naming a function), or a list.
+(autoload 'def-edebug-spec "edebug" '(#$ . 221261) nil 'macro)
+(defalias 'edebug-defun 'edebug-eval-top-level-form)
+#@271 Evaluate a top level form, such as a defun or defmacro.
+This is like `eval-defun', but the code is always instrumented for Edebug.
+Print its name in the minibuffer and leave point where it is,
+or if an error occurs, leave point after it with mark at the original point.
+(autoload 'edebug-eval-top-level-form "edebug" '(#$ . 221550) t nil)
+#@50 Run Ediff on a pair of files, FILE-A and FILE-B.
+(autoload 'ediff-files "ediff" '(#$ . 221895) t nil)
+#@55 Run Ediff on three files, FILE-A, FILE-B, and FILE-C.
+(autoload 'ediff-files3 "ediff" '(#$ . 222003) t nil)
+(byte-code "\300\301\302\"\210\300\303\304\"\207" [defalias ediff3 ediff-files3 ediff ediff-files] 3)
+#@56 Run Ediff on a pair of buffers, BUFFER-A and BUFFER-B.
+(autoload 'ediff-buffers "ediff" '(#$ . 222219) t nil)
+(defalias 'ebuffers 'ediff-buffers)
+#@63 Run Ediff on three buffers, BUFFER-A, BUFFER-B, and BUFFER-C.
+(autoload 'ediff-buffers3 "ediff" '(#$ . 222371) t nil)
+(defalias 'ebuffers3 'ediff-buffers3)
+#@205 Run Ediff on a pair of directories, DIR1 and DIR2, comparing files that have
+the same name in both.  The third argument, REGEXP, is a regular expression
+that can be used to filter out certain file names.
+(autoload 'ediff-directories "ediff" '(#$ . 222534) t nil)
+(defalias 'edirs 'ediff-directories)
+#@229 Run Ediff on a directory, DIR1, comparing its files with their revisions.
+The second argument, REGEXP, is a regular expression that filters the file
+names.  Only the files that are under revision control are taken into account.
+(autoload 'ediff-directory-revisions "ediff" '(#$ . 222841) t nil)
+(defalias 'edir-revisions 'ediff-directory-revisions)
+#@212 Run Ediff on three directories, DIR1, DIR2, and DIR3, comparing files that
+have the same name in all three.  The last argument, REGEXP, is a regular
+expression that can be used to filter out certain file names.
+(autoload 'ediff-directories3 "ediff" '(#$ . 223197) t nil)
+(defalias 'edirs3 'ediff-directories3)
+#@203 Run Ediff on a pair of directories, DIR1 and DIR2, merging files that have
+the same name in both.  The third argument, REGEXP, is a regular expression
+that can be used to filter out certain file names.
+(autoload 'ediff-merge-directories "ediff" '(#$ . 223514) t nil)
+(defalias 'edirs-merge 'ediff-merge-directories)
+#@363 Merge files in directories DIR1 and DIR2 using files in ANCESTOR-DIR as ancestors.
+Ediff merges files that have identical names in DIR1, DIR2.  If a pair of files
+in DIR1 and DIR2 doesn't have an ancestor in ANCESTOR-DIR, Ediff will merge
+without ancestor.  The fourth argument, REGEXP, is a regular expression that
+can be used to filter out certain file names.
+(autoload 'ediff-merge-directories-with-ancestor "ediff" '(#$ . 223837) t nil)
+#@227 Run Ediff on a directory, DIR1, merging its files with their revisions.
+The second argument, REGEXP, is a regular expression that filters the file
+names.  Only the files that are under revision control are taken into account.
+(autoload 'ediff-merge-directory-revisions "ediff" '(#$ . 224285) t nil)
+(defalias 'edir-merge-revisions 'ediff-merge-directory-revisions)
+#@241 Run Ediff on a directory, DIR1, merging its files with their revisions and ancestors.
+The second argument, REGEXP, is a regular expression that filters the file
+names.  Only the files that are under revision control are taken into account.
+(autoload 'ediff-merge-directory-revisions-with-ancestor "ediff" '(#$ . 224657) t nil)
+(byte-code "\300\301\302\"\210\300\303\304\"\207" [defalias edir-merge-revisions-with-ancestor ediff-merge-directory-revisions-with-ancestor edirs-merge-with-ancestor ediff-merge-directories-with-ancestor] 3)
+#@236 Compare WIND-A and WIND-B, which are selected by clicking, wordwise.
+With prefix argument, DUMB-MODE, or on a non-windowing display, works as
+follows:
+If WIND-A is nil, use selected window.
+If WIND-B is nil, use window next to WIND-A.
+(autoload 'ediff-windows-wordwise "ediff" '(#$ . 225200) t nil)
+#@236 Compare WIND-A and WIND-B, which are selected by clicking, linewise.
+With prefix argument, DUMB-MODE, or on a non-windowing display, works as
+follows:
+If WIND-A is nil, use selected window.
+If WIND-B is nil, use window next to WIND-A.
+(autoload 'ediff-windows-linewise "ediff" '(#$ . 225506) t nil)
+#@252 Run Ediff on a pair of regions in two different buffers.
+Regions (i.e., point and mark) are assumed to be set in advance.
+This function is effective only for relatively small regions, up to 200
+lines.  For large regions, use `ediff-regions-linewise'.
+(autoload 'ediff-regions-wordwise "ediff" '(#$ . 225812) t nil)
+#@286 Run Ediff on a pair of regions in two different buffers.
+Regions (i.e., point and mark) are assumed to be set in advance.
+Each region is enlarged to contain full lines.
+This function is effective for large regions, over 100-200
+lines.  For small regions, use `ediff-regions-wordwise'.
+(autoload 'ediff-regions-linewise "ediff" '(#$ . 226134) t nil)
+(defalias 'ediff-merge 'ediff-merge-files)
+#@35 Merge two files without ancestor.
+(autoload 'ediff-merge-files "ediff" '(#$ . 226532) t nil)
+#@32 Merge two files with ancestor.
+(autoload 'ediff-merge-files-with-ancestor "ediff" '(#$ . 226631) t nil)
+(defalias 'ediff-merge-with-ancestor 'ediff-merge-files-with-ancestor)
+#@33 Merge buffers without ancestor.
+(autoload 'ediff-merge-buffers "ediff" '(#$ . 226812) t nil)
+#@30 Merge buffers with ancestor.
+(autoload 'ediff-merge-buffers-with-ancestor "ediff" '(#$ . 226911) t nil)
+#@129 Run Ediff by merging two revisions of a file.
+The file is the optional FILE argument or the file visited by the current
+buffer.
+(autoload 'ediff-merge-revisions "ediff" '(#$ . 227022) t nil)
+#@152 Run Ediff by merging two revisions of a file with a common ancestor.
+The file is the optional FILE argument or the file visited by the current
+buffer.
+(autoload 'ediff-merge-revisions-with-ancestor "ediff" '(#$ . 227220) t nil)
+#@191 Run Ediff-merge on appropriate revisions of the selected file.
+First run after `M-x cvs-update'.  Then place the cursor on a line describing a
+file and then run `run-ediff-from-cvs-buffer'.
+(autoload 'run-ediff-from-cvs-buffer "ediff" '(#$ . 227455) t nil)
+#@241 Run Ediff by patching SOURCE-FILENAME.
+If optional PATCH-BUF is given, use the patch in that buffer
+and don't ask the user.
+If prefix argument, then: if even argument, assume that the patch is in a
+buffer. If odd -- assume it is in a file.
+(autoload 'ediff-patch-file "ediff" '(#$ . 227719) t nil)
+#@316 Run Ediff by patching BUFFER-NAME.
+Without prefix argument: asks if the patch is in some buffer and prompts for
+the buffer or a file, depending on the answer.
+With prefix arg=1: assumes the patch is in a file and prompts for the file.
+With prefix arg=2: assumes the patch is in a buffer and prompts for the buffer.
+(autoload 'ediff-patch-buffer "ediff" '(#$ . 228024) t nil)
+(byte-code "\300\301\302\"\210\300\303\304\"\207" [defalias epatch ediff-patch-file epatch-buffer ediff-patch-buffer] 3)
+#@237 Run Ediff by comparing versions of a file.
+The file is an optional FILE argument or the file entered at the prompt.
+Default: the file visited by the current buffer.
+Uses `vc.el' or `rcs.el' depending on `ediff-version-control-package'.
+(autoload 'ediff-revision "ediff" '(#$ . 228527) t nil)
+(defalias 'erevision 'ediff-revision)
+#@97 Return string describing the version of Ediff.
+When called interactively, displays the version.
+(autoload 'ediff-version "ediff" '(#$ . 228863) t nil)
+#@64 Display Ediff's manual.
+With optional NODE, goes to that node.
+(autoload 'ediff-documentation "ediff" '(#$ . 229020) t nil)
+(byte-code "\301\302\303\304\305\304%\210\306B\304\207" [current-load-list autoload ediff-customize "ediff-help" nil t ediff-window-setup-function] 6)
+(defalias 'ediff-xemacs-init-menus #[nil "\304\305!\205#\306\307\310#\210\306\311	\310#\210\306\312\n\310#\210\306\313\310#\210\314\315\316\310#\207" [ediff-menu ediff-merge-menu epatch-menu ediff-misc-menu featurep menubar add-submenu ("Tools") "OO-Browser..." ("Tools") ("Tools") ("Tools") add-menu-button ("Tools") "-------"] 4])
+(byte-code "\306\307\"\203O\302	B\310\302!\204\311\303	B\310\303!\204\312\304	B\310\304!\204+\313\305	B\310\305!\2047\314\315\316!\203\340\315\317!\204\340\315\320!\204\340\321 \210\202\340\315\322!\203\340\323	B\310\323!\204d\324\325!\323\211JM\210\326	B\310\326!\204x\324\327!\326\211JM\210\330	B\310\330!\204\214\324\331!\330\211JM\210\332	B\310\332!\204\240\324\333!\332\211JM\210\334\335\336#\210\334\337\340#\210\334\341\342#\210\334\343\344#\210\334\345\346#\210\334\347\350#\210\334\351\352#\210\334\353\354#\210\334\355\356#\210\334\357\360#\210\334\361\362#\210\334\363\364#\210\334\365\366#\210\334\367\370#\210\334\371\372#\210\334\373\374#\210\334\375\376#\210\334\377\201@#\210\334\201A\201B#\210\334\201C\201D#\210\334\201E\201F#\210\334\201G\201H#\210\334\201I\201J#\210\334\201K\201L#\210\334\201M\201N#\210\334\201O\201P#\210\334\201Q\201R#\210\334\201S\201T#\210\334\201U\201V#\210\334\201W\201X#\210\334\201Y\201Z#\210\334\201[\201\\#\210\334\201]\201^#\210\334\201_\201`#\210\334\201a\201b#\210\306\207" [emacs-version current-load-list ediff-menu ediff-merge-menu epatch-menu ediff-misc-menu string-match "XEmacs" boundp ("Compare" ["Two Files..." ediff-files t] ["Two Buffers..." ediff-buffers t] ["Three Files..." ediff-files3 t] ["Three Buffers..." ediff-buffers3 t] "---" ["Two Directories..." ediff-directories t] ["Three Directories..." ediff-directories3 t] "---" ["File with Revision..." ediff-revision t] ["Directory Revisions..." ediff-directory-revisions t] "---" ["Windows Word-by-word..." ediff-windows-wordwise t] ["Windows Line-by-line..." ediff-windows-linewise t] "---" ["Regions Word-by-word..." ediff-regions-wordwise t] ["Regions Line-by-line..." ediff-regions-linewise t]) ("Merge" ["Files..." ediff-merge-files t] ["Files with Ancestor..." ediff-merge-files-with-ancestor t] ["Buffers..." ediff-merge-buffers t] ["Buffers with Ancestor..." ediff-merge-buffers-with-ancestor t] "---" ["Directories..." ediff-merge-directories t] ["Directories with Ancestor..." ediff-merge-directories-with-ancestor t] "---" ["Revisions..." ediff-merge-revisions t] ["Revisions with Ancestor..." ediff-merge-revisions-with-ancestor t] ["Directory Revisions..." ediff-merge-directory-revisions t] ["Directory Revisions with Ancestor..." ediff-merge-directory-revisions-with-ancestor t]) ("Apply Patch" ["To a file..." ediff-patch-file t] ["To a buffer..." ediff-patch-buffer t]) ("Ediff Miscellanea" ["Ediff Manual..." ediff-documentation t] ["Customize Ediff..." ediff-customize t] ["List Ediff Sessions..." ediff-show-registry t] ["Use separate frame for Ediff control buffer..." ediff-toggle-multiframe :style toggle :selected (if (and (featurep 'ediff-util) (boundp 'ediff-window-setup-function)) (eq ediff-window-setup-function 'ediff-setup-windows-multiframe))] ["Use a toolbar with Ediff control buffer" ediff-toggle-use-toolbar :style toggle :selected (if (featurep 'ediff-tbar) (ediff-use-toolbar-p))]) featurep menubar infodock ediff-hook ediff-xemacs-init-menus menu-bar menu-bar-ediff-misc-menu make-sparse-keymap "Ediff Miscellanea" menu-bar-epatch-menu "Apply Patch" menu-bar-ediff-merge-menu "Merge" menu-bar-ediff-menu "Compare" define-key [window] ("This Window and Next Window" . compare-windows) [ediff-windows-linewise] ("Windows Line-by-line..." . ediff-windows-linewise) [ediff-windows-wordwise] ("Windows Word-by-word..." . ediff-windows-wordwise) [separator-ediff-windows] ("--") [ediff-regions-linewise] ("Regions Line-by-line..." . ediff-regions-linewise) [ediff-regions-wordwise] ("Regions Word-by-word..." . ediff-regions-wordwise) [separator-ediff-regions] ("--") [ediff-dir-revision] ("Directory Revisions..." . ediff-directory-revisions) [ediff-revision] ("File with Revision..." . ediff-revision) [separator-ediff-directories] ("--") [ediff-directories3] ("Three Directories..." . ediff-directories3) [ediff-directories] ("Two Directories..." . ediff-directories) [separator-ediff-files] ("--") [ediff-buffers3] ("Three Buffers..." . ediff-buffers3) [ediff-files3] ("Three Files..." . ediff-files3) [ediff-buffers] ("Two Buffers..." . ediff-buffers) [ediff-files] ("Two Files..." . ediff-files) [ediff-merge-dir-revisions-with-ancestor] ("Directory Revisions with Ancestor..." . ediff-merge-directory-revisions-with-ancestor) [ediff-merge-dir-revisions] ("Directory Revisions..." . ediff-merge-directory-revisions) [ediff-merge-revisions-with-ancestor] ("Revisions with Ancestor..." . ediff-merge-revisions-with-ancestor) [ediff-merge-revisions] ("Revisions..." . ediff-merge-revisions) [separator-ediff-merge] ("--") [ediff-merge-directories-with-ancestor] ("Directories with Ancestor..." . ediff-merge-directories-with-ancestor) [ediff-merge-directories] ("Directories..." . ediff-merge-directories) [separator-ediff-merge-dirs] ("--") [ediff-merge-buffers-with-ancestor] ("Buffers with Ancestor..." . ediff-merge-buffers-with-ancestor) [ediff-merge-buffers] ("Buffers..." . ediff-merge-buffers) [ediff-merge-files-with-ancestor] ("Files with Ancestor..." . ediff-merge-files-with-ancestor) [ediff-merge-files] ("Files..." . ediff-merge-files) [ediff-patch-buffer] ("To a Buffer..." . ediff-patch-buffer) [ediff-patch-file] ("To a File..." . ediff-patch-file) [emultiframe] ("Toggle use of separate control buffer frame..." . ediff-toggle-multiframe) [eregistry] ("List Ediff Sessions..." . ediff-show-registry) [ediff-cust] ("Customize Ediff..." . ediff-customize) [ediff-doc] ("Ediff Manual..." . ediff-documentation)] 4)
+#@27 Display Ediff's registry.
+(autoload 'ediff-show-registry "ediff-mult" '(#$ . 235264) t nil)
+(defalias 'eregistry 'ediff-show-registry)
+#@148 Switch from multiframe display to single-frame display and back.
+To change the default, set the variable `ediff-window-setup-function',
+which see.
+(autoload 'ediff-toggle-multiframe "ediff-util" '(#$ . 235406) t nil)
+#@163 Enable or disable Ediff toolbar.
+Works only in versions of Emacs that support toolbars.
+To change the default, set the variable `ediff-use-toolbar-p', which see.
+(autoload 'ediff-toggle-use-toolbar "ediff-util" '(#$ . 235630) t nil)
+(define-key ctl-x-map "" 'edit-kbd-macro)
+#@134 *Non-nil if edit-kbd-macro should leave 8-bit characters intact.
+Default nil means to write characters above \177 in octal notation.
+(defvar edmacro-eight-bits nil (#$ . -235913))
+#@325 Edit a keyboard macro.
+At the prompt, type any key sequence which is bound to a keyboard macro.
+Or, type `C-x e' or RET to edit the last keyboard macro, `C-h l' to edit
+the last 100 keystrokes as a keyboard macro, or `M-x' to edit a macro by
+its command name.
+With a prefix argument, format the macro in a more concise way.
+(autoload 'edit-kbd-macro "edmacro" '(#$ . 236100) t nil)
+#@48 Edit the most recently defined keyboard macro.
+(autoload 'edit-last-kbd-macro "edmacro" '(#$ . 236488) t nil)
+#@77 Edit a keyboard macro which has been given a name by `name-last-kbd-macro'.
+(autoload 'edit-named-kbd-macro "edmacro" '(#$ . 236604) t nil)
+#@595 Read the region as a keyboard macro definition.
+The region is interpreted as spelled-out keystrokes, e.g., "M-x abc RET".
+See documentation for `edmacro-mode' for details.
+Leading/trailing "C-x (" and "C-x )" in the text are allowed and ignored.
+The resulting macro is installed as the "current" keyboard macro.
+
+In Lisp, may also be called with a single STRING argument in which case
+the result is returned rather than being installed as the current macro.
+The result will be a string if possible, otherwise an event vector.
+Second argument NEED-VECTOR means to return an event vector always.
+(autoload 'read-kbd-macro "edmacro" '(#$ . 236751) t nil)
+#@301 Return the keyboard macro MACRO as a human-readable string.
+This string is suitable for passing to `read-kbd-macro'.
+Second argument VERBOSE means to put one command per line with comments.
+If VERBOSE is `1', put everything on one line.  If VERBOSE is omitted
+or nil, use a compact 80-column format.
+(autoload 'format-kbd-macro "edmacro" '(#$ . 237410) nil nil)
+#@171 Set scroll margins.
+Argument TOP is the top margin in number of lines or percent of window.
+Argument BOTTOM is the bottom margin in number of lines or percent of window.
+(autoload 'edt-set-scroll-margins "edt" '(#$ . 237779) t nil)
+#@24 Turn on EDT Emulation.
+(autoload 'edt-emulation-on "edt" '(#$ . 238017) t nil)
+#@1208 Pop up an "electric" help buffer.
+The arguments are THUNK &optional BUFFER NOERASE MINHEIGHT.
+THUNK is a function of no arguments which is called to initialize the
+contents of BUFFER.  BUFFER defaults to `*Help*'.  BUFFER will be
+erased before THUNK is called unless NOERASE is non-nil.  THUNK will
+be called while BUFFER is current and with `standard-output' bound to
+the buffer specified by BUFFER.
+
+If THUNK returns nil, we display BUFFER starting at the top, and
+shrink the window to fit.  If THUNK returns non-nil, we don't do those things.
+
+After THUNK has been called, this function "electrically" pops up a window
+in which BUFFER is displayed and allows the user to scroll through that buffer
+in electric-help-mode. The window's height will be at least MINHEIGHT if
+this value is non-nil.
+
+If THUNK returns nil, we display BUFFER starting at the top, and
+shrink the window to fit if `electric-help-shrink-window' is non-nil.
+If THUNK returns non-nil, we don't do those things.
+
+When the user exits (with `electric-help-exit', or otherwise), the help
+buffer's window disappears (i.e., we use `save-window-excursion'), and
+BUFFER is put into `default-major-mode' (or `fundamental-mode') when we exit.
+(autoload 'with-electric-help "ehelp" '(#$ . 238104) nil nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload electric-helpify "ehelp" nil] 6)
+#@529 *If non-nil, show the defined parameters for the elisp function near point.
+
+For the emacs lisp function at the beginning of the sexp which point is
+within, show the defined parameters for the function in the echo area.
+This information is extracted directly from the function or macro if it is
+in pure lisp.  If the emacs function is a subr, the parameters are obtained
+from the documentation string if possible.
+
+If point is over a documented variable, print that variable's docstring
+instead.
+
+This variable is buffer-local.
+(defvar eldoc-mode nil (#$ . -239466))
+#@61 *String to display in mode line when Eldoc Mode is enabled.
+(defvar eldoc-minor-mode-string " ElDoc" (#$ . -240039))
+(byte-code "\300\301!\203\301\302\303\"\210\202 \302\304\305!\236\204 \306\305\307\304\305!\310\"\"\210\300\207" [fboundp add-minor-mode eldoc-mode eldoc-minor-mode-string default-value minor-mode-alist set-default append ((eldoc-mode eldoc-minor-mode-string))] 5)
+#@287 *Enable or disable eldoc mode.
+See documentation for the variable of the same name for more details.
+
+If called interactively with no prefix argument, toggle current condition
+of the mode.
+If called with a positive or negative prefix argument, enable or disable
+the mode, respectively.
+(autoload 'eldoc-mode "eldoc" '(#$ . -240432) t nil)
+#@64 Unequivocally turn on eldoc-mode (see variable documentation).
+(autoload 'turn-on-eldoc-mode "eldoc" '(#$ . 240777) t nil)
+#@251 Hide header material in buffer according to `elide-head-headers-to-hide'.
+
+The header is made invisible with an overlay.  With a prefix arg, show
+an elided material again.
+
+This is suitable as an entry on `find-file-hooks' or appropriate mode hooks.
+(autoload 'elide-head "elide-head" '(#$ . 240907) t nil)
+#@19 Initialize elint.
+(autoload 'elint-initialize "elint" '(#$ . 241220) t nil)
+#@81 Instrument FUNSYM for profiling.
+FUNSYM must be a symbol of a defined function.
+(autoload 'elp-instrument-function "elp" '(#$ . 241302) t nil)
+#@104 Instrument for profiling, all functions in `elp-function-list'.
+Use optional LIST if provided instead.
+(autoload 'elp-instrument-list "elp" '(#$ . 241452) t nil)
+#@174 Instrument for profiling, all functions which start with PREFIX.
+For example, to instrument all ELP functions, do the following:
+
+    \[elp-instrument-package] RET elp- RET
+(autoload 'elp-instrument-package "elp" '(#$ . 241621) t nil)
+#@182 Display current profiling results.
+If `elp-reset-after-results' is non-nil, then current profiling
+information for all instrumented functions are reset after results are
+displayed.
+(autoload 'elp-results "elp" '(#$ . 241863) t nil)
+#@83 Report a bug in GNU Emacs.
+Prompts for bug subject.  Leaves you in a mail buffer.
+(autoload 'report-emacs-bug "emacsbug" '(#$ . 242101) t nil)
+(byte-code "\301B\302\301!\204\303\304!\301\211JM\210\305	\306\307#\210\305	\310\311#\210\305	\312\313#\210\305	\314\315#\210\305	\316\317#\210\305	\320\321#\210\305	\322\323#\207" [current-load-list menu-bar-emerge-menu boundp make-sparse-keymap "Emerge" define-key [emerge-merge-directories] ("Merge Directories..." . emerge-merge-directories) [emerge-revisions-with-ancestor] ("Revisions with Ancestor..." . emerge-revisions-with-ancestor) [emerge-revisions] ("Revisions..." . emerge-revisions) [emerge-files-with-ancestor] ("Files with Ancestor..." . emerge-files-with-ancestor) [emerge-files] ("Files..." . emerge-files) [emerge-buffers-with-ancestor] ("Buffers with Ancestor..." . emerge-buffers-with-ancestor) [emerge-buffers] ("Buffers..." . emerge-buffers)] 4)
+#@26 Run Emerge on two files.
+(autoload 'emerge-files "emerge" '(#$ . 243025) t nil)
+#@63 Run Emerge on two files, giving another file as the ancestor.
+(autoload 'emerge-files-with-ancestor "emerge" '(#$ . 243111) t nil)
+#@28 Run Emerge on two buffers.
+(autoload 'emerge-buffers "emerge" '(#$ . 243248) t nil)
+#@67 Run Emerge on two buffers, giving another buffer as the ancestor.
+(autoload 'emerge-buffers-with-ancestor "emerge" '(#$ . 243338) t nil)
+(byte-code "\300\301\302\303\211\211%\210\300\304\302\303\211\211%\210\300\305\302\303\211\211%\210\300\306\302\303\211\211%\207" [autoload emerge-files-command "emerge" nil emerge-files-with-ancestor-command emerge-files-remote emerge-files-with-ancestor-remote] 6)
+#@37 Emerge two RCS revisions of a file.
+(autoload 'emerge-revisions "emerge" '(#$ . 243748) t nil)
+#@72 Emerge two RCS revisions of a file, with another revision as ancestor.
+(autoload 'emerge-revisions-with-ancestor "emerge" '(#$ . 243849) t nil)
+(autoload 'emerge-merge-directories "emerge" nil t nil)
+#@392 Toggle Encoded-kbd minor mode.
+With arg, turn Encoded-kbd mode on if and only if arg is positive.
+
+You should not turn this mode on manually, instead use the command
+\[set-keyboard-coding-system] which turns on or off this mode
+automatically.
+
+In Encoded-kbd mode, a text sent from keyboard is accepted
+as a multilingual text encoded in a coding system set by
+\[set-keyboard-coding-system].
+(autoload 'encoded-kbd-mode "encoded-kb" '(#$ . 244056) nil nil)
+#@360 Minor mode for editing text/enriched files.
+These are files with embedded formatting information in the MIME standard
+text/enriched format.
+Turning the mode on runs `enriched-mode-hook'.
+
+More information about Enriched mode is available in the file 
+etc/enriched.doc  in the Emacs distribution directory.
+
+Commands:
+
+\<enriched-mode-map>\{enriched-mode-map}
+(autoload 'enriched-mode "enriched" '(#$ . 244519) t nil)
+(byte-code "\300\301\302\303\211\211%\210\300\304\302\303\211\211%\207" [autoload enriched-encode "enriched" nil enriched-decode] 6)
+#@51 Emacs shell interactive mode.
+
+\{eshell-mode-map}
+(autoload 'eshell-mode "esh-mode" '(#$ . 245075) nil nil)
+#@50 Test Eshell to verify that it works as expected.
+(autoload 'eshell-test "esh-test" '(#$ . 245189) t nil)
+#@375 Create an interactive Eshell buffer.
+The buffer used for Eshell sessions is determined by the value of
+`eshell-buffer-name'.  If there is already an Eshell session active in
+that buffer, Emacs will simply switch to it.  Otherwise, a new session
+will begin.  A new session is always created if the prefix argument
+ARG is specified.  Returns the buffer selected (or created).
+(autoload 'eshell "eshell" '(#$ . 245301) t nil)
+#@109 Execute the Eshell command string COMMAND.
+With prefix ARG, insert output into the current buffer at point.
+(autoload 'eshell-command "eshell" '(#$ . 245731) t nil)
+#@275 Execute the given Eshell COMMAND, and return the result.
+The result might be any Lisp object.
+If STATUS-VAR is a symbol, it will be set to the exit status of the
+command.  This is the only way to determine whether the value returned
+corresponding to a successful execution.
+(autoload 'eshell-command-result "eshell" '(#$ . 245903) nil nil)
+#@143 Report a bug in Eshell.
+Prompts for the TOPIC.  Leaves you in a mail buffer.
+Please include any configuration details that might be involved.
+(autoload 'eshell-report-bug "eshell" '(#$ . 246250) t nil)
+#@207 *File name of tags table.
+To switch to a new tags table, setting this variable is sufficient.
+If you set this variable, do not also set `tags-table-list'.
+Use the `etags' program to make a tags table file.
+(defvar tags-file-name nil (#$ . -246459))
+(put 'tags-file-name 'variable-interactive "fVisit tags table: ")
+#@187 *Whether tags operations should be case-sensitive.
+A value of t means case-insensitive, a value of nil means case-sensitive.
+Any other value means use the setting of `case-fold-search'.
+(defvar tags-case-fold-search 'default (#$ . -246781))
+#@307 *List of file names of tags tables to search.
+An element that is a directory means the file "TAGS" in that directory.
+To switch to a new list of tags tables, setting this variable is sufficient.
+If you set this variable, do not also set `tags-file-name'.
+Use the `etags' program to make a tags table file.
+(defvar tags-table-list nil (#$ . -247029))
+#@277 *List of extensions tried by etags when jka-compr is used.
+An empty string means search the non-compressed file.
+These extensions will be tried only if jka-compr was activated
+(i.e. via customize of `auto-compression-mode' or by calling the function
+`auto-compression-mode').
+(defvar tags-compression-info-list '("" ".Z" ".bz2" ".gz" ".tgz") (#$ . -247386))
+#@242 *Control whether to add a new tags table to the current list.
+t means do; nil means don't (always start a new list).
+Any other value means ask the user whether to add a new tags table
+to the current list (as opposed to starting a new list).
+(defvar tags-add-tables 'ask-user (#$ . -247751))
+#@182 *Hook to be run by \[find-tag] after finding a tag.  See `run-hooks'.
+The value in the buffer in which \[find-tag] is done is used,
+not the value in the buffer \[find-tag] goes to.
+(defvar find-tag-hook nil (#$ . -248049))
+#@238 *A function of no arguments used by \[find-tag] to pick a default tag.
+If nil, and the symbol that is the value of `major-mode'
+has a `find-tag-default-function' property (see `put'), that is used.
+Otherwise, `find-tag-default' is used.
+(defvar find-tag-default-function nil (#$ . -248279))
+#@471 Tell tags commands to use tags table file FILE.
+FILE should be the name of a file created with the `etags' program.
+A directory name is ok too; it means file TAGS in that directory.
+
+Normally \[visit-tags-table] sets the global value of `tags-file-name'.
+With a prefix arg, set the buffer-local value instead.
+When you find a tag with \[find-tag], the buffer it finds the tag
+in is given a local value of this variable which is the name of the tags
+file the tag was in.
+(autoload 'visit-tags-table "etags" '(#$ . 248577) t nil)
+#@223 Return a list of files in the current tags table.
+Assumes the tags table is the current buffer.  The file names are returned
+as they appeared in the `etags' command that created the table, usually
+without directory names.
+(autoload 'tags-table-files "etags" '(#$ . 249112) nil nil)
+#@909 Find tag (in current tags table) whose name contains TAGNAME.
+Returns the buffer containing the tag's definition and moves its point there,
+but does not select the buffer.
+The default for TAGNAME is the expression in the buffer near point.
+
+If second arg NEXT-P is t (interactively, with prefix arg), search for
+another tag that matches the last tagname or regexp used.  When there are
+multiple matches for a tag, more exact matches are found first.  If NEXT-P
+is the atom `-' (interactively, with prefix arg that is a negative number
+or just \[negative-argument]), pop back to the previous tag gone to.
+
+If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp.
+
+A marker representing the point when this command is invoked is pushed
+onto a ring and may be popped back to with \[pop-tag-mark].
+Contrast this with the ring of marks gone to by the command.
+
+See documentation of variable `tags-file-name'.
+(autoload 'find-tag-noselect "etags" '(#$ . 249401) t nil)
+#@884 Find tag (in current tags table) whose name contains TAGNAME.
+Select the buffer containing the tag's definition, and move point there.
+The default for TAGNAME is the expression in the buffer around or before point.
+
+If second arg NEXT-P is t (interactively, with prefix arg), search for
+another tag that matches the last tagname or regexp used.  When there are
+multiple matches for a tag, more exact matches are found first.  If NEXT-P
+is the atom `-' (interactively, with prefix arg that is a negative number
+or just \[negative-argument]), pop back to the previous tag gone to.
+
+If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp.
+
+A marker representing the point when this command is invoked is pushed
+onto a ring and may be popped back to with \[pop-tag-mark].
+Contrast this with the ring of marks gone to by the command.
+
+See documentation of variable `tags-file-name'.
+(autoload 'find-tag "etags" '(#$ . 250375) t nil)
+(define-key esc-map "." 'find-tag)
+#@899 Find tag (in current tags table) whose name contains TAGNAME.
+Select the buffer containing the tag's definition in another window, and
+move point there.  The default for TAGNAME is the expression in the buffer
+around or before point.
+
+If second arg NEXT-P is t (interactively, with prefix arg), search for
+another tag that matches the last tagname or regexp used.  When there are
+multiple matches for a tag, more exact matches are found first.  If NEXT-P
+is negative (interactively, with prefix arg that is a negative number or
+just \[negative-argument]), pop back to the previous tag gone to.
+
+If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp.
+
+A marker representing the point when this command is invoked is pushed
+onto a ring and may be popped back to with \[pop-tag-mark].
+Contrast this with the ring of marks gone to by the command.
+
+See documentation of variable `tags-file-name'.
+(autoload 'find-tag-other-window "etags" '(#$ . 251350) t nil)
+(define-key ctl-x-4-map "." 'find-tag-other-window)
+#@898 Find tag (in current tags table) whose name contains TAGNAME.
+Select the buffer containing the tag's definition in another frame, and
+move point there.  The default for TAGNAME is the expression in the buffer
+around or before point.
+
+If second arg NEXT-P is t (interactively, with prefix arg), search for
+another tag that matches the last tagname or regexp used.  When there are
+multiple matches for a tag, more exact matches are found first.  If NEXT-P
+is negative (interactively, with prefix arg that is a negative number or
+just \[negative-argument]), pop back to the previous tag gone to.
+
+If third arg REGEXP-P is non-nil, treat TAGNAME as a regexp.
+
+A marker representing the point when this command is invoked is pushed
+onto a ring and may be popped back to with \[pop-tag-mark].
+Contrast this with the ring of marks gone to by the command.
+
+See documentation of variable `tags-file-name'.
+(autoload 'find-tag-other-frame "etags" '(#$ . 252370) t nil)
+(define-key ctl-x-5-map "." 'find-tag-other-frame)
+#@811 Find tag (in current tags table) whose name matches REGEXP.
+Select the buffer containing the tag's definition and move point there.
+
+If second arg NEXT-P is t (interactively, with prefix arg), search for
+another tag that matches the last tagname or regexp used.  When there are
+multiple matches for a tag, more exact matches are found first.  If NEXT-P
+is negative (interactively, with prefix arg that is a negative number or
+just \[negative-argument]), pop back to the previous tag gone to.
+
+If third arg OTHER-WINDOW is non-nil, select the buffer in another window.
+
+A marker representing the point when this command is invoked is pushed
+onto a ring and may be popped back to with \[pop-tag-mark].
+Contrast this with the ring of marks gone to by the command.
+
+See documentation of variable `tags-file-name'.
+(autoload 'find-tag-regexp "etags" '(#$ . 253387) t nil)
+(byte-code "\301\302\303#\210\301\304\305#\207" [esc-map define-key [67108910] find-tag-regexp "*" pop-tag-mark] 4)
+#@211 Pop back to where \[find-tag] was last invoked.
+
+This is distinct from invoking \[find-tag] with a negative argument
+since that pops a stack of markers at which tags were found, not from
+where they were found.
+(autoload 'pop-tag-mark "etags" '(#$ . 254379) t nil)
+#@475 Select next file among files in current tags table.
+
+A first argument of t (prefix arg, if interactive) initializes to the
+beginning of the list of files in the tags table.  If the argument is
+neither nil nor t, it is evalled to initialize the list of files.
+
+Non-nil second argument NOVISIT means use a temporary buffer
+ to save time and avoid uninteresting warnings.
+
+Value is nil if the file was already visited;
+if the file was newly read in, the value is the filename.
+(autoload 'next-file "etags" '(#$ . 254650) t nil)
+#@521 Continue last \[tags-search] or \[tags-query-replace] command.
+Used noninteractively with non-nil argument to begin such a command (the
+argument is passed to `next-file', which see).
+
+Two variables control the processing we do on each file: the value of
+`tags-loop-scan' is a form to be executed on each file to see if it is
+interesting (it returns non-nil if so) and `tags-loop-operate' is a form to
+evaluate to operate on an interesting file.  If the latter evaluates to
+nil, we exit; otherwise we scan the next file.
+(autoload 'tags-loop-continue "etags" '(#$ . 255182) t nil)
+(define-key esc-map "," 'tags-loop-continue)
+#@220 Search through all files listed in tags table for match for REGEXP.
+Stops when a match is found.
+To continue searching for next match, use command \[tags-loop-continue].
+
+See documentation of variable `tags-file-name'.
+(autoload 'tags-search "etags" '(#$ . 255814) t nil)
+#@314 `Query-replace-regexp' FROM with TO through all files listed in tags table.
+Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
+If you exit (\[keyboard-quit] or ESC), you can resume the query-replace
+with the command \[tags-loop-continue].
+
+See documentation of variable `tags-file-name'.
+(autoload 'tags-query-replace "etags" '(#$ . 256093) t nil)
+#@205 Display list of tags in file FILE.
+This searches only the first table in the list, and no included tables.
+FILE should be as it appeared in the `etags' command, usually without a
+directory specification.
+(autoload 'list-tags "etags" '(#$ . 256473) t nil)
+#@56 Display list of all tags in tags table REGEXP matches.
+(autoload 'tags-apropos "etags" '(#$ . 256734) t nil)
+#@212 Select a tags table file from a menu of those you have already used.
+The list of tags tables to select from is stored in `tags-table-set-list';
+see the doc of that variable if you want to add names to the list.
+(autoload 'select-tags-table "etags" '(#$ . 256850) t nil)
+#@208 Perform tags completion on the text around point.
+Completes to the set of names listed in the current tags table.
+The string to complete is chosen in the same way as the default
+for \[find-tag] (which see).
+(autoload 'complete-tag "etags" '(#$ . 257127) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload setup-ethiopic-environment-internal "ethio-util" nil] 6)
+#@541 Convert the characters in region from SERA to FIDEL.
+The variable `ethio-primary-language' specifies the primary language
+and `ethio-secondary-language' specifies the secondary.
+
+If the 3rd parameter SECONDARY is given and non-nil, assume the region
+begins begins with the secondary language; otherwise with the primary
+language.
+
+If the 4th parameter FORCE is given and non-nil, perform conversion
+even if the buffer is read-only.
+
+See also the descriptions of the variables
+`ethio-use-colon-for-colon' and
+`ethio-use-three-dot-question'.
+(autoload 'ethio-sera-to-fidel-region "ethio-util" '(#$ . 257505) t nil)
+#@526 Convert the current buffer from SERA to FIDEL.
+
+The variable `ethio-primary-language' specifies the primary
+language and `ethio-secondary-language' specifies the secondary.
+
+If the 1st optional parameter SECONDARY is non-nil, assume the buffer
+begins with the secondary language; otherwise with the primary
+language.
+
+If the 2nd optional parametr FORCE is non-nil, perform conversion even if the
+buffer is read-only.
+
+See also the descriptions of the variables
+`ethio-use-colon-for-colon' and
+`ethio-use-three-dot-question'.
+(autoload 'ethio-sera-to-fidel-buffer "ethio-util" '(#$ . 258125) t nil)
+#@173 Execute ethio-sera-to-fidel-mail or ethio-sera-to-fidel-marker depending on the current major mode.
+If in rmail-mode or in mail-mode, execute the former; otherwise latter.
+(autoload 'ethio-sera-to-fidel-mail-or-marker "ethio-util" '(#$ . 258730) t nil)
+#@294 Convert SERA to FIDEL to read/write mail and news.
+
+If the buffer contains the markers "<sera>" and "</sera>",
+convert the segments between them into FIDEL.
+
+If invoked interactively and there is no marker, convert the subject field
+and the body into FIDEL using `ethio-sera-to-fidel-region'.
+(autoload 'ethio-sera-to-fidel-mail "ethio-util" '(#$ . 258990) t nil)
+#@203 Convert the regions surrounded by "<sera>" and "</sera>" from SERA to FIDEL.
+Assume that each region begins with `ethio-primary-language'.
+The markers "<sera>" and "</sera>" themselves are not deleted.
+(autoload 'ethio-sera-to-fidel-marker "ethio-util" '(#$ . 259361) t nil)
+#@609 Replace all the FIDEL characters in the region to the SERA format.
+The variable `ethio-primary-language' specifies the primary
+language and `ethio-secondary-language' specifies the secondary.
+
+If the 3dr parameter SECONDARY is given and non-nil, try to convert
+the region so that it begins in the secondary language; otherwise with
+the primary language.
+
+If the 4th parameter FORCE is given and non-nil, convert even if the
+buffer is read-only.
+
+See also the descriptions of the variables
+`ethio-use-colon-for-colon', `ethio-use-three-dot-question',
+`ethio-quote-vowel-always' and `ethio-numeric-reduction'.
+(autoload 'ethio-fidel-to-sera-region "ethio-util" '(#$ . 259643) t nil)
+#@615 Replace all the FIDEL characters in the current buffer to the SERA format.
+The variable `ethio-primary-language' specifies the primary
+language and `ethio-secondary-language' specifies the secondary.
+
+If the 1st optional parameter SECONDARY is non-nil, try to convert the
+region so that it begins in the secondary language; otherwise with the
+primary language.
+
+If the 2nd optional parameter FORCE is non-nil, convert even if the
+buffer is read-only.
+
+See also the descriptions of the variables
+`ethio-use-colon-for-colon', `ethio-use-three-dot-question',
+`ethio-quote-vowel-always' and `ethio-numeric-reduction'.
+(autoload 'ethio-fidel-to-sera-buffer "ethio-util" '(#$ . 260331) t nil)
+#@173 Execute ethio-fidel-to-sera-mail or ethio-fidel-to-sera-marker depending on the current major mode.
+If in rmail-mode or in mail-mode, execute the former; otherwise latter.
+(autoload 'ethio-fidel-to-sera-mail-or-marker "ethio-util" '(#$ . 261025) t nil)
+#@309 Convert FIDEL to SERA to read/write mail and news.
+
+If the body contains at least one Ethiopic character,
+ 1) insert the string "<sera>" at the beginning of the body,
+ 2) insert "</sera>" at the end of the body, and
+ 3) convert the body into SERA.
+
+The very same procedure applies to the subject field, too.
+(autoload 'ethio-fidel-to-sera-mail "ethio-util" '(#$ . 261285) t nil)
+#@141 Convert the regions surrounded by "<sera>" and "</sera>" from FIDEL to SERA.
+The markers "<sera>" and "</sera>" themselves are not deleted.
+(autoload 'ethio-fidel-to-sera-marker "ethio-util" '(#$ . 261671) t nil)
+#@57 Modify the vowel of the FIDEL that is under the cursor.
+(autoload 'ethio-modify-vowel "ethio-util" '(#$ . 261890) t nil)
+#@443 Replace ASCII spaces with Ethiopic word separators in the region.
+
+In the specified region, replace word separators surrounded by two
+Ethiopic characters, depending on the first parameter CH, which should
+be 1, 2, or 3.
+
+If CH = 1, word separator will be replaced with an ASCII space.
+If CH = 2, with two ASCII spaces.
+If CH = 3, with the Ethiopic colon-like word separator.
+
+The second and third parameters BEGIN and END specify the region.
+(autoload 'ethio-replace-space "ethio-util" '(#$ . 262018) t nil)
+#@45 Allow the user to input special characters.
+(autoload 'ethio-input-special-character "ethio-util" '(#$ . 262532) t nil)
+#@124 Convert each fidel characters in the current buffer into a fidel-tex command.
+Each command is always surrounded by braces.
+(autoload 'ethio-fidel-to-tex-buffer "ethio-util" '(#$ . 262659) t nil)
+#@68 Convert fidel-tex commands in the current buffer into fidel chars.
+(autoload 'ethio-tex-to-fidel-buffer "ethio-util" '(#$ . 262860) t nil)
+#@245 Convert Ethiopic characters into the Java escape sequences.
+
+Each escape sequence is of the form uXXXX, where XXXX is the
+character's codepoint (in hex) in Unicode.
+
+If `ethio-java-save-lowercase' is non-nil, use [0-9a-f].
+Otherwise, [0-9A-F].
+(autoload 'ethio-fidel-to-java-buffer "ethio-util" '(#$ . 263006) nil nil)
+#@75 Convert the Java escape sequences into corresponding Ethiopic characters.
+(autoload 'ethio-java-to-fidel-buffer "ethio-util" '(#$ . 263331) nil nil)
+#@68 Transcribe file content into Ethiopic dependig on filename suffix.
+(autoload 'ethio-find-file "ethio-util" '(#$ . 263486) nil nil)
+#@74 Transcribe Ethiopic characters in ASCII depending on the file extension.
+(autoload 'ethio-write-file "ethio-util" '(#$ . 263623) nil nil)
+#@142 Set the directory server to SERVER using PROTOCOL.
+Unless NO-SAVE is non-nil, the server is saved as the default
+server for future sessions.
+(autoload 'eudc-set-server "eudc" '(#$ . 263768) t nil)
+#@56 Get the email field of NAME from the directory server.
+(autoload 'eudc-get-email "eudc" '(#$ . 263971) t nil)
+#@56 Get the phone field of NAME from the directory server.
+(autoload 'eudc-get-phone "eudc" '(#$ . 264087) t nil)
+#@734 Query the directory server, and expand the query string before point.
+The query string consists of the buffer substring from the point back to
+the preceding comma, colon or beginning of line.
+The variable `eudc-inline-query-format' controls how to associate the
+individual inline query words with directory attribute names.
+After querying the server for the given string, the expansion specified by
+`eudc-inline-expansion-format' is inserted in the buffer at point.
+If REPLACE is non nil, then this expansion replaces the name in the buffer.
+`eudc-expansion-overwrites-query' being non nil inverts the meaning of REPLACE.
+Multiple servers can be tried with the same query until one finds a match,
+see `eudc-inline-expansion-servers'
+(autoload 'eudc-expand-inline "eudc" '(#$ . 264204) t nil)
+#@196 Display a form to query the directory server.
+If given a non-nil argument GET-FIELDS-FROM-SERVER, the function first
+queries the server for the existing fields and displays a corresponding form.
+(autoload 'eudc-query-form "eudc" '(#$ . 265003) t nil)
+#@105 Load the Emacs Unified Directory Client.
+This does nothing except loading eudc by autoload side-effect.
+(autoload 'eudc-load-eudc "eudc" '(#$ . 265261) t nil)
+(byte-code "\305\306\"\204M\302	B\307\302!\204\310\311!\302\211JM\210\312\n\313\314#\210\312\n\315\316#\210\312\n\317\320#\210\312\n\321\322#\210\312\n\323\324#\210\312\n\325\326#\210\312\n\327\330#\210\312\n\331\332#\210\202\233\333\334\335!\204\232\305\306\"\203p\334\336!\203\232\334\337!\204\232\340\341\"\210\202\232\342\343!\210\344\345!\203\210\345\346\347\350@A\"#\210\202\232\344\351!\203\232\312\f\352\311\351\311A\"B#\210)\346\207" [emacs-version current-load-list eudc-tools-menu menu global-map string-match "XEmacs" boundp make-sparse-keymap "Directory Search" define-key [phone] ("Get Phone" . eudc-get-phone) [email] ("Get Email" . eudc-get-email) [separator-eudc-email] ("--") [expand-inline] ("Expand Inline Query" . eudc-expand-inline) [query] ("Query with Form" . eudc-query-form) [separator-eudc-query] ("--") [new] ("New Server" . eudc-set-server) [load] ("Load Hotlist of Servers" . eudc-load-eudc) ("Directory Search" ["Load Hotlist of Servers" eudc-load-eudc t] ["New Server" eudc-set-server t] ["---" nil nil] ["Query with Form" eudc-query-form t] ["Expand Inline Query" eudc-expand-inline t] ["---" nil nil] ["Get Email" eudc-get-email t] ["Get Phone" eudc-get-phone t]) featurep eudc-autoloads menubar infodock add-submenu ("Tools") require easymenu fboundp easy-menu-add-item nil ("tools") easy-menu-create-menu easy-menu-create-keymaps [menu-bar tools eudc]] 7)
+#@48 Display a button for unidentified binary DATA.
+(autoload 'eudc-display-generic-binary "eudc-bob" '(#$ . 266839) nil nil)
+#@36 Display URL and make it clickable.
+(autoload 'eudc-display-url "eudc-bob" '(#$ . 266966) nil nil)
+#@42 Display a button to play the sound DATA.
+(autoload 'eudc-display-sound "eudc-bob" '(#$ . 267070) nil nil)
+#@52 Display the JPEG DATA inline at point if possible.
+(autoload 'eudc-display-jpeg-inline "eudc-bob" '(#$ . 267182) nil nil)
+#@37 Display a button for the JPEG DATA.
+(autoload 'eudc-display-jpeg-as-button "eudc-bob" '(#$ . 267310) nil nil)
+#@119 Insert record at point into the BBDB database.
+This function can only be called from a directory query result buffer.
+(autoload 'eudc-insert-record-at-point-into-bbdb "eudc-export" '(#$ . 267427) t nil)
+#@62 Call `eudc-insert-record-at-point-into-bbdb' if on a record.
+(autoload 'eudc-try-bbdb-insert "eudc-export" '(#$ . 267636) t nil)
+#@64 Edit the hotlist of directory servers in a specialized buffer.
+(autoload 'eudc-edit-hotlist "eudc-hotlist" '(#$ . 267771) t nil)
+#@128 Search for COMMAND in exec-path and return the absolute file name.
+Return nil if COMMAND is not found anywhere in `exec-path'.
+(autoload 'executable-find "executable" '(#$ . 267907) nil nil)
+#@293 Set this buffer's interpreter to INTERPRETER with optional ARGUMENT.
+The variables `executable-magicless-file-regexp', `executable-prefix',
+`executable-insert', `executable-query' and `executable-chmod' control
+when and how magic numbers are inserted or replaced and scripts made
+executable.
+(autoload 'executable-set-magic "executable" '(#$ . 268105) t nil)
+#@121 Turn a text file into a self-displaying Un*x command.
+The magic number of such a command displays all lines but itself.
+(autoload 'executable-self-display "executable" '(#$ . 268471) t nil)
+#@152 Make file executable according to umask if not already executable.
+If file already has any execute bits set at all, do not change existing
+file modes.
+(autoload 'executable-make-buffer-file-executable-if-script-p "executable" '(#$ . 268668) nil nil)
+#@823 Add a list of abbrev to abbrev table TABLE.
+ABBREVS is a list of abbrev definitions; each abbrev description entry
+has the form (ABBREV EXPANSION ARG).
+
+ABBREV is the abbreviation to replace.
+
+EXPANSION is the replacement string or a function which will make the
+expansion.  For example you, could use the DMacros or skeleton packages
+to generate such functions.
+
+ARG is an optional argument which can be a number or a list of
+numbers.  If ARG is a number, point is placed ARG chars from the
+beginning of the expanded text.
+
+If ARG is a list of numbers, point is placed according to the first
+member of the list, but you can visit the other specified positions
+cyclicaly with the functions `expand-jump-to-previous-slot' and
+`expand-jump-to-next-slot'.
+
+If ARG is omitted, point is placed at the end of the expanded text.
+(autoload 'expand-add-abbrevs "expand" '(#$ . 268925) nil nil)
+#@128 Move the cursor to the previous slot in the last abbrev expansion.
+This is used only in conjunction with `expand-add-abbrevs'.
+(autoload 'expand-jump-to-previous-slot "expand" '(#$ . 269817) t nil)
+#@124 Move the cursor to the next slot in the last abbrev expansion.
+This is used only in conjunction with `expand-add-abbrevs'.
+(autoload 'expand-jump-to-next-slot "expand" '(#$ . 270022) t nil)
+(byte-code "\301\302\303#\210\301\304\305#\207" [ctl-x-map define-key "ap" expand-jump-to-previous-slot "an" expand-jump-to-next-slot] 4)
+#@2219 Major mode for editing Fortran 90 code in free format.
+
+\[f90-indent-new-line] corrects current indentation and creates new indented line.
+\[f90-indent-line] indents the current line correctly.
+\[f90-indent-subprogram] indents the current subprogram.
+
+Type `? or `\[help-command] to display a list of built-in abbrevs for F90 keywords.
+
+Key definitions:
+\{f90-mode-map}
+
+Variables controlling indentation style and extra features:
+
+ f90-do-indent
+    Extra indentation within do blocks.  (default 3)
+ f90-if-indent
+    Extra indentation within if/select case/where/forall blocks. (default 3)
+ f90-type-indent
+    Extra indentation within type/interface/block-data blocks.  (default 3)
+ f90-program-indent
+    Extra indentation within program/module/subroutine/function blocks.
+      (default 2)
+ f90-continuation-indent
+    Extra indentation applied to continuation lines.  (default 5)
+ f90-comment-region
+    String inserted by \[f90-comment-region] at start of each line in
+    region.  (default "!!!$")
+ f90-indented-comment-re
+    Regexp determining the type of comment to be intended like code.
+    (default "!")
+ f90-directive-comment-re
+    Regexp of comment-like directive like "!HPF\\$", not to be indented.
+    (default "!hpf\\$")
+ f90-break-delimiters
+    Regexp holding list of delimiters at which lines may be broken.
+    (default "[-+*/><=,% \t]")
+ f90-break-before-delimiters
+    Non-nil causes `f90-do-auto-fill' to break lines before delimiters.
+    (default t)
+ f90-beginning-ampersand
+    Automatic insertion of & at beginning of continuation lines. (default t)
+ f90-smart-end
+    From an END statement, check and fill the end using matching block start.
+    Allowed values are 'blink, 'no-blink, and nil, which determine
+    whether to blink the matching beginning.) (default 'blink)
+ f90-auto-keyword-case
+    Automatic change of case of keywords. (default nil)
+    The possibilities are 'downcase-word, 'upcase-word, 'capitalize-word.
+ f90-leave-line-no
+    Do not left-justify line numbers. (default nil)
+ f90-keywords-re
+    List of keywords used for highlighting/upcase-keywords etc.
+
+Turning on F90 mode calls the value of the variable `f90-mode-hook'
+with no args, if that value is non-nil.
+(autoload 'f90-mode "f90" '(#$ . 270360) t nil)
+(define-key global-map "\347" 'facemenu-keymap)
+#@36 Keymap for face-changing commands.
+(autoload 'facemenu-keymap "facemenu" '(#$ . 272680) t 'keymap)
+#@24 Menu keymap for faces.
+(defvar facemenu-face-menu (byte-code "\301\302!\303\304\305\306B#\210)\207" [map make-sparse-keymap "Face" define-key "o" "Other..." facemenu-set-face] 5) (#$ . 272785))
+(defalias 'facemenu-face-menu facemenu-face-menu)
+#@36 Menu keymap for foreground colors.
+(defvar facemenu-foreground-menu (byte-code "\301\302!\303\304\305\306B#\210)\207" [map make-sparse-keymap "Foreground Color" define-key "o" "Other..." facemenu-set-foreground] 5) (#$ . 273038))
+(defalias 'facemenu-foreground-menu facemenu-foreground-menu)
+#@36 Menu keymap for background colors.
+(defvar facemenu-background-menu (byte-code "\301\302!\303\304\305\306B#\210)\207" [map make-sparse-keymap "Background Color" define-key "o" "Other..." facemenu-set-background] 5) (#$ . 273339))
+(defalias 'facemenu-background-menu facemenu-background-menu)
+#@43 Menu keymap for non-face text-properties.
+(defvar facemenu-special-menu (byte-code "\301\302!\303\304\305\306!\307B#\210\303\310\305\311!\312B#\210\303\313\305\314!\315B#\210\303\316\305\317!\320B#\210)\207" [map make-sparse-keymap "Special" define-key [115] purecopy "Remove Special" facemenu-remove-special [116] "Intangible" facemenu-set-intangible [118] "Invisible" facemenu-set-invisible [114] "Read-Only" facemenu-set-read-only] 5) (#$ . 273640))
+(defalias 'facemenu-special-menu facemenu-special-menu)
+#@42 Submenu for text justification commands.
+(defvar facemenu-justification-menu (byte-code "\301\302!\303\304\305\306!\307B#\210\303\310\305\311!\312B#\210\303\313\305\314!\315B#\210\303\316\305\317!\320B#\210\303\321\305\322!\323B#\210)\207" [map make-sparse-keymap "Justification" define-key [99] purecopy "Center" set-justification-center [98] "Full" set-justification-full [114] "Right" set-justification-right [108] "Left" set-justification-left [117] "Unfilled" set-justification-none] 5) (#$ . 274161))
+(defalias 'facemenu-justification-menu facemenu-justification-menu)
+#@35 Submenu for indentation commands.
+(defvar facemenu-indentation-menu (byte-code "\301\302!\303\304\305\306!\307B#\210\303\310\305\311!\312B#\210\303\313\305\314!\315B#\210\303\316\305\317!\320B#\210)\207" [map make-sparse-keymap "Indentation" define-key [decrease-right-margin] purecopy "Indent Right Less" decrease-right-margin [increase-right-margin] "Indent Right More" increase-right-margin [decrease-left-margin] "Indent Less" decrease-left-margin [increase-left-margin] "Indent More" increase-left-margin] 5) (#$ . 274749))
+(defalias 'facemenu-indentation-menu facemenu-indentation-menu)
+#@33 Facemenu top-level menu keymap.
+(defvar facemenu-menu nil (#$ . 275354))
+(byte-code "\302\303!\211\304	\305\306\307!\310B#\210\304	\311\306\312!\313B#\210\304	\314\306\315!\316B#\210\304	\317\306\320!\321B#\210\304	\322\306\323!\324B#\210\304	\325\306\326!C#\210)\304	\327\306\330!\331B#\210\304	\332\306\333!\334B#\210\304	\335\306\326!C#\210\304	\336\306\337!\340B#\210\304	\341\306\342!\343B#\210\304	\344\306\345!\346B#\210\304	\347\306\350!\351B#\210)\352\300\"\207" [facemenu-menu map make-sparse-keymap "Text Properties" define-key [dc] purecopy "Display Colors" list-colors-display [df] "Display Faces" list-faces-display [dp] "List Properties" list-text-properties-at [ra] "Remove Text Properties" facemenu-remove-all [rm] "Remove Face Properties" facemenu-remove-face-props [s1] "--" [in] "Indentation" facemenu-indentation-menu [ju] "Justification" facemenu-justification-menu [s2] [sp] "Special Properties" facemenu-special-menu [bg] "Background Color" facemenu-background-menu [fg] "Foreground Color" facemenu-foreground-menu [fc] "Face" facemenu-face-menu defalias] 6)
+#@552 Add FACE to the region or next character typed.
+It will be added to the top of the face list; any faces lower on the list that
+will not show through at all will be removed.
+
+Interactively, the face to be used is read with the minibuffer.
+
+In the Transient Mark mode, if the region is active and there is no
+prefix argument, this command sets the region to the requested face.
+
+Otherwise, this command specifies the face for the next character
+inserted.  Moving point or switching buffers before
+typing a character to insert cancels the specification.
+(autoload 'facemenu-set-face "facemenu" '(#$ . 276449) t nil)
+#@437 Set the foreground COLOR of the region or next character typed.
+The color is prompted for.  A face named `fg:color' is used (or created).
+If the region is active, it will be set to the requested face.  If
+it is inactive (even if mark-even-if-inactive is set) the next
+character that is typed (via `self-insert-command') will be set to
+the selected face.  Moving point or switching buffers before
+typing a character cancels the request.
+(autoload 'facemenu-set-foreground "facemenu" '(#$ . 277069) t nil)
+#@437 Set the background COLOR of the region or next character typed.
+The color is prompted for.  A face named `bg:color' is used (or created).
+If the region is active, it will be set to the requested face.  If
+it is inactive (even if mark-even-if-inactive is set) the next
+character that is typed (via `self-insert-command') will be set to
+the selected face.  Moving point or switching buffers before
+typing a character cancels the request.
+(autoload 'facemenu-set-background "facemenu" '(#$ . 277580) t nil)
+#@459 Set the FACE of the region or next character typed.
+This function is designed to be called from a menu; the face to use
+is the menu item's name.
+
+In the Transient Mark mode, if the region is active and there is no
+prefix argument, this command sets the region to the requested face.
+
+Otherwise, this command specifies the face for the next character
+inserted.  Moving point or switching buffers before
+typing a character to insert cancels the specification.
+(autoload 'facemenu-set-face-from-menu "facemenu" '(#$ . 278091) t nil)
+#@118 Make the region invisible.
+This sets the `invisible' text property; it can be undone with
+`facemenu-remove-special'.
+(autoload 'facemenu-set-invisible "facemenu" '(#$ . 278628) t nil)
+#@145 Make the region intangible: disallow moving into it.
+This sets the `intangible' text property; it can be undone with
+`facemenu-remove-special'.
+(autoload 'facemenu-set-intangible "facemenu" '(#$ . 278819) t nil)
+#@121 Make the region unmodifiable.
+This sets the `read-only' text property; it can be undone with
+`facemenu-remove-special'.
+(autoload 'facemenu-set-read-only "facemenu" '(#$ . 279038) t nil)
+#@49 Remove `face' and `mouse-face' text properties.
+(autoload 'facemenu-remove-face-props "facemenu" '(#$ . 279231) t nil)
+#@45 Remove all text properties from the region.
+(autoload 'facemenu-remove-all "facemenu" '(#$ . 279356) t nil)
+#@135 Remove all the "special" text properties from the region.
+These special properties include `invisible', `intangible' and `read-only'.
+(autoload 'facemenu-remove-special "facemenu" '(#$ . 279471) t nil)
+#@54 Pop up a buffer listing text-properties at LOCATION.
+(autoload 'list-text-properties-at "facemenu" '(#$ . 279679) t nil)
+#@36 Read a color using the minibuffer.
+(autoload 'facemenu-read-color "facemenu" '(#$ . 279806) nil nil)
+#@236 Display names of defined colors, and show what they look like.
+If the optional argument LIST is non-nil, it should be a list of
+colors to display.  Otherwise, this command computes a list
+of colors that the current display can handle.
+(autoload 'list-colors-display "facemenu" '(#$ . 279914) t nil)
+#@1122 Toggle Fast Lock mode.
+With arg, turn Fast Lock mode on if and only if arg is positive and the buffer
+is associated with a file.  Enable it automatically in your `~/.emacs' by:
+
+ (setq font-lock-support-mode 'fast-lock-mode)
+
+If Fast Lock mode is enabled, and the current buffer does not contain any text
+properties, any associated Font Lock cache is used if its timestamp matches the
+buffer's file, and its `font-lock-keywords' match those that you are using.
+
+Font Lock caches may be saved:
+- When you save the file's buffer.
+- When you kill an unmodified file's buffer.
+- When you exit Emacs, for all unmodified or saved buffers.
+Depending on the value of `fast-lock-save-events'.
+See also the commands `fast-lock-read-cache' and `fast-lock-save-cache'.
+
+Use \[font-lock-fontify-buffer] to fontify the buffer if the cache is bad.
+
+Various methods of control are provided for the Font Lock cache.  In general,
+see variable `fast-lock-cache-directories' and function `fast-lock-cache-name'.
+For saving, see variables `fast-lock-minimum-size', `fast-lock-save-events',
+`fast-lock-save-others' and `fast-lock-save-faces'.
+(autoload 'fast-lock-mode "fast-lock" '(#$ . 280221) t nil)
+#@41 Unconditionally turn on Fast Lock mode.
+(autoload 'turn-on-fast-lock "fast-lock" '(#$ . 281408) nil nil)
+(byte-code "\302\303!\203\301B\304\301!\204\305\303\301\305\"\210\305\207" [current-load-list fast-lock-mode fboundp add-minor-mode boundp nil] 3)
+#@199 Send the current mail buffer using the Feedmail package.
+This is a suitable value for `send-mail-function'.  It can be used
+with various lower-level mechanisms to provide features such as queueing.
+(autoload 'feedmail-send-it "feedmail" '(#$ . 281674) nil nil)
+#@65 Like feedmail-run-the-queue, but suppress confirmation prompts.
+(autoload 'feedmail-run-the-queue-no-prompts "feedmail" '(#$ . 281941) t nil)
+#@210 Like feedmail-run-the-queue, but with a global confirmation prompt.
+This is generally most useful if run non-interactively, since you can
+bail out with an appropriate answer to the global confirmation prompt.
+(autoload 'feedmail-run-the-queue-global-prompt "feedmail" '(#$ . 282090) t nil)
+#@251 Visit each message in the feedmail queue directory and send it out.
+Return value is a list of three things: number of messages sent, number of
+messages skipped, and number of non-message things in the queue (commonly
+backup file names and the like).
+(autoload 'feedmail-run-the-queue "feedmail" '(#$ . 282387) t nil)
+#@1057 Perform some kind of reminder activity about queued and draft messages.
+Called with an optional symbol argument which says what kind of event
+is triggering the reminder activity.  The default is 'on-demand, which
+is what you typically would use if you were putting this in your emacs start-up
+or mail hook code.  Other recognized values for WHAT-EVENT (these are passed
+internally by feedmail):
+
+   after-immediate      (a message has just been sent in immediate mode)
+   after-queue          (a message has just been queued)
+   after-draft          (a message has just been placed in the draft directory)
+   after-run            (the queue has just been run, possibly sending messages)
+
+WHAT-EVENT is used as a key into the table feedmail-queue-reminder-alist.  If
+the associated value is a function, it is called without arguments and is expected
+to perform the reminder activity.  You can supply your own reminder functions
+by redefining feedmail-queue-reminder-alist.  If you don't want any reminders,
+you can set feedmail-queue-reminder-alist to nil.
+(autoload 'feedmail-queue-reminder "feedmail" '(#$ . 282712) t nil)
+#@322 Search buffer for next file or URL, and run ffap.
+Optional argument BACK says to search backwards.
+Optional argument WRAP says to try wrapping around if necessary.
+Interactively: use a single prefix to search backwards,
+double prefix to wrap forward, triple to wrap backwards.
+Actual search is done by `ffap-next-guess'.
+(autoload 'ffap-next "ffap" '(#$ . 283843) t nil)
+#@462 Find FILENAME, guessing a default from text around point.
+If `ffap-url-regexp' is not nil, the FILENAME may also be an URL.
+With a prefix, this command behaves exactly like `ffap-file-finder'.
+If `ffap-require-prefix' is set, the prefix meaning is reversed.
+See also the variables `ffap-dired-wildcards', `ffap-newfile-prompt',
+and the functions `ffap-file-at-point' and `ffap-url-at-point'.
+
+See <ftp://ftp.mathcs.emory.edu/pub/mic/emacs/> for latest version.
+(autoload 'find-file-at-point "ffap" '(#$ . 284221) t nil)
+(defalias 'ffap 'find-file-at-point)
+#@296 Put up a menu of files and urls mentioned in this buffer.
+Then set mark, jump to choice, and try to fetch it.  The menu is
+cached in `ffap-menu-alist', and rebuilt by `ffap-menu-rescan'.
+The optional RESCAN argument (a prefix, interactively) forces
+a rebuild.  Searches with `ffap-menu-regexp'.
+(autoload 'ffap-menu "ffap" '(#$ . 284785) t nil)
+#@276 Find file or url guessed from text around mouse click.
+Interactively, calls `ffap-at-mouse-fallback' if no guess is found.
+Return value:
+  * if a guess string is found, return it (after finding it)
+  * if the fallback is called, return whatever it returns
+  * otherwise, nil
+(autoload 'ffap-at-mouse "ffap" '(#$ . 285137) t nil)
+#@56 Start Dired, defaulting to file at point.  See `ffap'.
+(autoload 'dired-at-point "ffap" '(#$ . 285472) t nil)
+#@49 Evaluate the forms in variable `ffap-bindings'.
+(autoload 'ffap-bindings "ffap" '(#$ . 285588) t nil)
+#@361 Complete a filename in the minibuffer using a preloaded cache.
+Filecache does two kinds of substitution: it completes on names in
+the cache, and, once it has found a unique name, it cycles through
+the directories that the name is available in.  With a prefix argument,
+the name is considered already unique; only the second substitution
+(directories) is done.
+(autoload 'file-cache-minibuffer-complete "filecache" '(#$ . 285697) t nil)
+(byte-code "\303\304\305#\210\303	\306\305#\210\303\n\307\305#\207" [minibuffer-local-completion-map minibuffer-local-map minibuffer-local-must-match-map define-key [C-tab] file-cache-minibuffer-complete [C-tab] [C-tab]] 4)
+#@297 *Description of the option to `find' to produce an `ls -l'-type listing.
+This is a cons of two strings (FIND-OPTION . LS-SWITCHES).  FIND-OPTION
+gives the option (or options) to `find' that produce the desired output.
+LS-SWITCHES is a list of `ls' switches to tell dired how to parse the output.
+(defvar find-ls-option (byte-code "\301=\203\302\207\303\207" [system-type berkeley-unix ("-ls" . "-gilsb") ("-exec ls -ld {} \\;" . "-ld")] 2) (#$ . -286365))
+#@183 *Option to grep to be as silent as possible.
+On Berkeley systems, this is `-s'; on Posix, and with GNU grep, `-q' does it.
+On other systems, the closest you can come is to use `-l'.
+(defvar find-grep-options (byte-code "\302=\204\303\304	\"\204\303\305	\"\203\306\207\307\207" [system-type system-configuration berkeley-unix string-match "solaris2" "irix" "-s" "-q"] 3) (#$ . -286831))
+#@222 Run `find' and go into Dired mode on a buffer of the output.
+The command run (after changing into DIR) is
+
+    find . \( ARGS \) -ls
+
+except that the variable `find-ls-option' specifies what to use
+as the final argument.
+(autoload 'find-dired "find-dired" '(#$ . 287231) t nil)
+#@254 Search DIR recursively for files matching the globbing pattern PATTERN,
+and run dired on those files.
+PATTERN is a shell wildcard (not an Emacs regexp) and need not be quoted.
+The command run (after changing into DIR) is
+
+    find . -name 'PATTERN' -ls
+(autoload 'find-name-dired "find-dired" '(#$ . 287516) t nil)
+#@207 Find files in DIR containing a regexp ARG and start Dired on output.
+The command run (after changing into DIR) is
+
+    find . -exec grep -s ARG {} \; -ls
+
+Thus ARG can also contain additional grep options.
+(autoload 'find-grep-dired "find-dired" '(#$ . 287838) t nil)
+#@187 Find the header or source file corresponding to this file.
+See also the documentation for `ff-find-other-file'.
+
+If optional IN-OTHER-WINDOW is non-nil, find the file in another window.
+(autoload 'ff-get-other-file "find-file" '(#$ . 288113) t nil)
+#@1799 Find the header or source file corresponding to this file.
+Being on a `#include' line pulls in that file.
+
+If optional IN-OTHER-WINDOW is non-nil, find the file in the other window.
+If optional IGNORE-INCLUDE is non-nil, ignore being on `#include' lines.
+
+Variables of interest include:
+
+ - `ff-case-fold-search'
+   Non-nil means ignore cases in matches (see `case-fold-search').
+   If you have extensions in different cases, you will want this to be nil.
+
+ - `ff-always-in-other-window'
+   If non-nil, always open the other file in another window, unless an
+   argument is given to `ff-find-other-file'.
+
+ - `ff-ignore-include'
+   If non-nil, ignores #include lines.
+
+ - `ff-always-try-to-create'
+   If non-nil, always attempt to create the other file if it was not found.
+
+ - `ff-quiet-mode'
+   If non-nil, traces which directories are being searched.
+
+ - `ff-special-constructs'
+   A list of regular expressions specifying how to recognise special
+   constructs such as include files etc, and an associated method for
+   extracting the filename from that construct.
+
+ - `ff-other-file-alist'
+   Alist of extensions to find given the current file's extension.
+
+ - `ff-search-directories'
+   List of directories searched through with each extension specified in
+   `ff-other-file-alist' that matches this file's extension.
+
+ - `ff-pre-find-hooks'
+   List of functions to be called before the search for the file starts.
+
+ - `ff-pre-load-hooks'
+   List of functions to be called before the other file is loaded.
+
+ - `ff-post-load-hooks'
+   List of functions to be called after the other file is loaded.
+
+ - `ff-not-found-hooks'
+   List of functions to be called if the other file could not be found.
+
+ - `ff-file-created-hooks'
+   List of functions to be called if the other file has been created.
+(autoload 'ff-find-other-file "find-file" '(#$ . 288370) t nil)
+#@30 Visit the file you click on.
+(autoload 'ff-mouse-find-other-file "find-file" '(#$ . 290238) t nil)
+#@48 Visit the file you click on in another window.
+(autoload 'ff-mouse-find-other-file-other-window "find-file" '(#$ . 290343) t nil)
+#@360 Return a pair (BUFFER . POINT) pointing to the definition of FUNCTION.
+
+Finds the Emacs Lisp library containing the definition of FUNCTION
+in a buffer and the point of the definition.  The buffer is
+not selected.
+
+If the file where FUNCTION is defined is not known, then it is
+searched for in `find-function-source-path' if non nil, otherwise
+in `load-path'.
+(autoload 'find-function-noselect "find-func" '(#$ . 290480) nil nil)
+#@481 Find the definition of the FUNCTION near point.
+
+Finds the Emacs Lisp library containing the definition of the function
+near point (selected by `function-at-point') in a buffer and
+places point before the definition.  Point is saved in the buffer if
+it is one of the current buffers.
+
+The library where FUNCTION is defined is searched for in
+`find-function-source-path', if non nil, otherwise in `load-path'.
+See also `find-function-recenter-line' and `find-function-after-hook'.
+(autoload 'find-function "find-func" '(#$ . 290916) t nil)
+#@104 Find, in another window, the definition of FUNCTION near point.
+
+See `find-function' for more details.
+(autoload 'find-function-other-window "find-func" '(#$ . 291462) t nil)
+#@105 Find, in ananother frame, the definition of FUNCTION near point.
+
+See `find-function' for more details.
+(autoload 'find-function-other-frame "find-func" '(#$ . 291644) t nil)
+#@337 Return a pair `(buffer . point)' pointing to the definition of SYMBOL.
+
+Finds the Emacs Lisp library containing the definition of SYMBOL
+in a buffer and the point of the definition.  The buffer is
+not selected.
+
+The library where VARIABLE is defined is searched for in
+`find-function-source-path', if non nil, otherwise in `load-path'.
+(autoload 'find-variable-noselect "find-func" '(#$ . 291826) nil nil)
+#@481 Find the definition of the VARIABLE near point.
+
+Finds the Emacs Lisp library containing the definition of the variable
+near point (selected by `variable-at-point') in a buffer and
+places point before the definition.  Point is saved in the buffer if
+it is one of the current buffers.
+
+The library where VARIABLE is defined is searched for in
+`find-function-source-path', if non nil, otherwise in `load-path'.
+See also `find-function-recenter-line' and `find-function-after-hook'.
+(autoload 'find-variable "find-func" '(#$ . 292239) t nil)
+#@104 Find, in another window, the definition of VARIABLE near point.
+
+See `find-variable' for more details.
+(autoload 'find-variable-other-window "find-func" '(#$ . 292785) t nil)
+#@104 Find, in annother frame, the definition of VARIABLE near point.
+
+See `find-variable' for more details.
+(autoload 'find-variable-other-frame "find-func" '(#$ . 292967) t nil)
+#@108 Find the function that KEY invokes.  KEY is a string.
+Point is saved if FUNCTION is in the current buffer.
+(autoload 'find-function-on-key "find-func" '(#$ . 293148) t nil)
+#@58 Find directly the function at point in the other window.
+(autoload 'find-function-at-point "find-func" '(#$ . 293327) t nil)
+#@58 Find directly the function at point in the other window.
+(autoload 'find-variable-at-point "find-func" '(#$ . 293458) t nil)
+#@69 Define some key bindings for the find-function family of functions.
+(autoload 'find-function-setup-keys "find-func" '(#$ . 293589) nil nil)
+#@37 Find files in DIR, matching REGEXP.
+(autoload 'find-lisp-find-dired "find-lisp" '(#$ . 293735) t nil)
+#@33 Find all subdirectories of DIR.
+(autoload 'find-lisp-find-dired-subdirectories "find-lisp" '(#$ . 293843) t nil)
+#@63 Change the filter on a find-lisp-find-dired buffer to REGEXP.
+(autoload 'find-lisp-find-dired-filter "find-lisp" '(#$ . 293962) t nil)
+#@60 Display descriptions of the keywords in the Finder buffer.
+(autoload 'finder-list-keywords "finder" '(#$ . 294103) t nil)
+#@103 Display FILE's commentary section.
+FILE should be in a form suitable for passing to `locate-library'.
+(autoload 'finder-commentary "finder" '(#$ . 294232) t nil)
+#@41 Find packages matching a given keyword.
+(autoload 'finder-by-keyword "finder" '(#$ . 294400) t nil)
+#@173 Toggle flow control handling.
+When handling is enabled, user can type C-s as C-\, and C-q as C-^.
+With arg, enable flow control mode if arg is positive, otherwise disable.
+(autoload 'enable-flow-control "flow-ctrl" '(#$ . 294507) t nil)
+#@287 Enable flow control if using one of a specified set of terminal types.
+Use `(enable-flow-control-on "vt100" "h19")' to enable flow control
+on VT-100 and H19 terminals.  When flow control is enabled,
+you must type C-\ to get the effect of a C-s, and type C-^
+to get the effect of a C-q.
+(autoload 'enable-flow-control-on "flow-ctrl" '(#$ . 294751) nil nil)
+#@116 *String displayed on the modeline when flyspell is active.
+Set this to nil if you don't want a modeline indicator.
+(defvar flyspell-mode-line-string " Fly" (#$ . -295114))
+#@51 Turn on `flyspell-mode' for comments and strings.
+(autoload 'flyspell-prog-mode "flyspell" '(#$ . 295292) t nil)
+(byte-code "\301B\302\301!\204
\303 \301\207" [current-load-list flyspell-mode-map boundp make-sparse-keymap] 2)
+#@1000 Minor mode performing on-the-fly spelling checking.
+Ispell is automatically spawned on background for each entered words.
+The default flyspell behavior is to highlight incorrect words.
+With no argument, this command toggles Flyspell mode.
+With a prefix argument ARG, turn Flyspell minor mode on iff ARG is positive.
+
+Bindings:
+\[ispell-word]: correct words (using Ispell).
+\[flyspell-auto-correct-word]: automatically correct word.
+\[flyspell-correct-word] (or mouse-2): popup correct words.
+
+Hooks:
+flyspell-mode-hook is run after flyspell is entered.
+
+Remark:
+`flyspell-mode' uses `ispell-mode'.  Thus all Ispell options are
+valid.  For instance, a personal dictionary can be used by
+invoking `ispell-change-dictionary'.
+
+Consider using the `ispell-parser' to check your text.  For instance
+consider adding:
+(add-hook 'tex-mode-hook (function (lambda () (setq ispell-parser 'tex))))
+in your .emacs file.
+
+flyspell-region checks all words inside a region.
+
+flyspell-buffer checks the whole buffer.
+(autoload 'flyspell-mode "flyspell" '(#$ . 295530) t nil)
+(byte-code "\303\304!\203\304\305\306\307\305%\210\202)\310\305	\"\204\311	B\310\305\n\"\204)\305B\nB\307\207" [flyspell-mode-map minor-mode-alist minor-mode-map-alist fboundp add-minor-mode flyspell-mode flyspell-mode-line-string nil assoc (flyspell-mode flyspell-mode-line-string)] 6)
+#@25 Turn Flyspell mode off.
+(autoload 'flyspell-mode-off "flyspell" '(#$ . 296890) nil nil)
+#@36 Flyspell text between BEG and END.
+(autoload 'flyspell-region "flyspell" '(#$ . 296984) t nil)
+#@24 Flyspell whole buffer.
+(autoload 'flyspell-buffer "flyspell" '(#$ . 297085) t nil)
+#@61 Turn on Follow mode. Please see the function `follow-mode'.
+(autoload 'turn-on-follow-mode "follow" '(#$ . 297174) t nil)
+#@62 Turn off Follow mode. Please see the function `follow-mode'.
+(autoload 'turn-off-follow-mode "follow" '(#$ . 297302) t nil)
+#@1451 Minor mode that combines windows into one tall virtual window.
+
+The feeling of a "virtual window" has been accomplished by the use
+of two major techniques:
+
+* The windows always displays adjacent sections of the buffer.
+  This means that whenever one window is moved, all the
+  others will follow.  (Hence the name Follow Mode.)
+
+* Should the point (cursor) end up outside a window, another
+  window displaying that point is selected, if possible.  This
+  makes it possible to walk between windows using normal cursor
+  movement commands.
+
+Follow mode comes to its prime when used on a large screen and two
+side-by-side window are used. The user can, with the help of Follow
+mode, use two full-height windows as though they would have been
+one. Imagine yourself editing a large function, or section of text,
+and being able to use 144 lines instead of the normal 72... (your
+mileage may vary).
+
+To split one large window into two side-by-side windows, the commands
+`\[split-window-horizontally]' or `M-x follow-delete-other-windows-and-split' can be used.
+
+Only windows displayed in the same frame follow each-other.
+
+If the variable `follow-intercept-processes' is non-nil, Follow mode
+will listen to the output of processes and redisplay accordingly.
+(This is the default.)
+
+When Follow mode is switched on, the hook `follow-mode-hook'
+is called.  When turned off, `follow-mode-off-hook' is called.
+
+Keys specific to Follow mode:
+\{follow-mode-map}
+(autoload 'follow-mode "follow" '(#$ . 297434) t nil)
+#@792 Create two side by side windows and enter Follow Mode.
+
+Execute this command to display as much as possible of the text
+in the selected window.  All other windows, in the current
+frame, are deleted and the selected window is split in two
+side-by-side windows. Follow Mode is activated, hence the
+two windows always will display two successive pages.
+(If one window is moved, the other one will follow.)
+
+If ARG is positive, the leftmost window is selected.  If it negative,
+the rightmost is selected.  If ARG is nil, the leftmost window is
+selected if the original window is the first one in the frame.
+
+To bind this command to a hotkey, place the following line
+in your `~/.emacs' file, replacing [f7] by your favourite key:
+    (global-set-key [f7] 'follow-delete-other-windows-and-split)
+(autoload 'follow-delete-other-windows-and-split "follow" '(#$ . 298945) t nil)
+(make-variable-buffer-local 'font-lock-defaults)
+#@2567 Toggle Font Lock mode.
+With arg, turn Font Lock mode off if and only if arg is a non-positive
+number; if arg is nil, toggle Font Lock mode; anything else turns Font
+Lock on.
+(Font Lock is also known as "syntax highlighting".)
+
+When Font Lock mode is enabled, text is fontified as you type it:
+
+ - Comments are displayed in `font-lock-comment-face';
+ - Strings are displayed in `font-lock-string-face';
+ - Certain other expressions are displayed in other faces according to the
+   value of the variable `font-lock-keywords'.
+
+To customize the faces (colors, fonts, etc.) used by Font Lock for
+fontifying different parts of buffer text, use \[customize-face].
+
+You can enable Font Lock mode in any major mode automatically by turning on in
+the major mode's hook.  For example, put in your ~/.emacs:
+
+ (add-hook 'c-mode-hook 'turn-on-font-lock)
+
+Alternatively, you can use Global Font Lock mode to automagically turn on Font
+Lock mode in buffers whose major mode supports it and whose major mode is one
+of `font-lock-global-modes'.  For example, put in your ~/.emacs:
+
+ (global-font-lock-mode t)
+
+There are a number of support modes that may be used to speed up Font Lock mode
+in various ways, specified via the variable `font-lock-support-mode'.  Where
+major modes support different levels of fontification, you can use the variable
+`font-lock-maximum-decoration' to specify which level you generally prefer.
+When you turn Font Lock mode on/off the buffer is fontified/defontified, though
+fontification occurs only if the buffer is less than `font-lock-maximum-size'.
+
+For example, to specify that Font Lock mode use use Lazy Lock mode as a support
+mode and use maximum levels of fontification, put in your ~/.emacs:
+
+ (setq font-lock-support-mode 'lazy-lock-mode)
+ (setq font-lock-maximum-decoration t)
+
+To add your own highlighting for some major mode, and modify the highlighting
+selected automatically via the variable `font-lock-maximum-decoration', you can
+use `font-lock-add-keywords'.
+
+To fontify a buffer, without turning on Font Lock mode and regardless of buffer
+size, you can use \[font-lock-fontify-buffer].
+
+To fontify a block (the function or paragraph containing point, or a number of
+lines around point), perhaps because modification on the current line caused
+syntactic change on other lines, you can use \[font-lock-fontify-block].
+
+See the variable `font-lock-defaults-alist' for the Font Lock mode default
+settings.  You can set your own default settings for some mode, by setting a
+buffer local value for `font-lock-defaults', via its mode hook.
+(autoload 'font-lock-mode "font-lock" '(#$ . 299873) t nil)
+#@63 Turn on Font Lock mode (only if the terminal can display it).
+(autoload 'turn-on-font-lock "font-lock" '(#$ . 302505) nil nil)
+#@1253 Add highlighting KEYWORDS for MODE.
+MODE should be a symbol, the major mode command name, such as `c-mode'
+or nil.  If nil, highlighting keywords are added for the current buffer.
+KEYWORDS should be a list; see the variable `font-lock-keywords'.
+By default they are added at the beginning of the current highlighting list.
+If optional argument APPEND is `set', they are used to replace the current
+highlighting list.  If APPEND is any other non-nil value, they are added at the
+end of the current highlighting list.
+
+For example:
+
+ (font-lock-add-keywords 'c-mode
+  '(("\\\=<\\(FIXME\\):" 1 font-lock-warning-face prepend)
+    ("\\\=<\\(and\\|or\\|not\\)\\\=>" . font-lock-keyword-face)))
+
+adds two fontification patterns for C mode, to fontify `FIXME:' words, even in
+comments, and to fontify `and', `or' and `not' words as keywords.
+
+When used from an elisp package (such as a minor mode), it is recommended
+to use nil for MODE (and place the call in a loop or on a hook) to avoid
+subtle problems due to details of the implementation.
+
+Note that some modes have specialized support for additional patterns, e.g.,
+see the variables `c-font-lock-extra-types', `c++-font-lock-extra-types',
+`objc-font-lock-extra-types' and `java-font-lock-extra-types'.
+(autoload 'font-lock-add-keywords "font-lock" '(#$ . 302640) nil nil)
+#@389 Remove highlighting KEYWORDS for MODE.
+
+MODE should be a symbol, the major mode command name, such as `c-mode'
+or nil.  If nil, highlighting keywords are removed for the current buffer.
+
+When used from an elisp package (such as a minor mode), it is recommended
+to use nil for MODE (and place the call in a loop or on a hook) to avoid
+subtle problems due to details of the implementation.
+(autoload 'font-lock-remove-keywords "font-lock" '(#$ . 303969) nil nil)
+#@242 Non-nil if Global-Font-Lock mode is enabled.
+See the command `global-font-lock-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `global-font-lock-mode'.
+(defvar global-font-lock-mode nil (#$ . 304437))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group font-lock global-font-lock-mode custom-variable custom-add-load] 4)
+#@247 Toggle Font-Lock mode in every buffer.
+With prefix ARG, turn Global-Font-Lock mode on if and only if ARG is positive.
+Font-Lock mode is actually not turned on in every buffer but only in those
+in which `turn-on-font-lock-if-enabled' turns it on.
+(autoload 'global-font-lock-mode "font-lock" '(#$ . 304876) t nil)
+#@73 Fontify the current buffer the way the function `font-lock-mode' would.
+(autoload 'font-lock-fontify-buffer "font-lock" '(#$ . 305195) t nil)
+#@505 Create a fontset from fontset specification string FONTSET-SPEC.
+FONTSET-SPEC is a string of the format:
+	FONTSET-NAME,CHARSET-NAME0:FONT-NAME0,CHARSET-NAME1:FONT-NAME1, ...
+Any number of SPACE, TAB, and NEWLINE can be put before and after commas.
+
+Optional 2nd argument is ignored.  It exists just for backward
+compatibility.
+
+If this function attempts to create already existing fontset, error is
+signaled unless the optional 3rd argument NOERROR is non-nil.
+
+It returns a name of the created fontset.
+(autoload 'create-fontset-from-fontset-spec "fontset" '(#$ . 305344) nil nil)
+#@389 Toggle footnote minor mode.
+\<message-mode-map>
+key		binding
+---		-------
+
+\[Footnote-renumber-footnotes]		Footnote-renumber-footnotes
+\[Footnote-goto-footnote]		Footnote-goto-footnote
+\[Footnote-delete-footnote]		Footnote-delete-footnote
+\[Footnote-cycle-style]		Footnote-cycle-style
+\[Footnote-back-to-message]		Footnote-back-to-message
+\[Footnote-add-footnote]		Footnote-add-footnote
+
+(autoload 'footnote-mode "footnote" '(#$ . 305933) t nil)
+#@751 Major mode to visit files in a field-structured manner using a form.
+
+Commands:                        Equivalent keys in read-only mode:
+ TAB            forms-next-field          TAB
+ C-c TAB        forms-next-field          
+ C-c <          forms-first-record         <
+ C-c >          forms-last-record          >
+ C-c ?          describe-mode              ?
+ C-c C-k        forms-delete-record
+ C-c C-q        forms-toggle-read-only     q
+ C-c C-o        forms-insert-record
+ C-c C-l        forms-jump-record          l
+ C-c C-n        forms-next-record          n
+ C-c C-p        forms-prev-record          p
+ C-c C-r        forms-search-reverse       r
+ C-c C-s        forms-search-forward       s
+ C-c C-x        forms-exit                 x
+
+(autoload 'forms-mode "forms" '(#$ . 306386) t nil)
+#@29 Visit a file in Forms mode.
+(autoload 'forms-find-file "forms" '(#$ . 307194) t nil)
+#@45 Visit a file in Forms mode in other window.
+(autoload 'forms-find-file-other-window "forms" '(#$ . 307285) t nil)
+#@228 *Default tabbing/carriage control style for empty files in Fortran mode.
+A value of t specifies tab-digit style of continuation control.
+A value of nil specifies that continuation lines are marked
+with a character in column 6.
+(defvar fortran-tab-mode-default nil (#$ . -307406))
+#@3004 Major mode for editing Fortran code.
+\[fortran-indent-line] indents the current Fortran line correctly.
+DO statements must not share a common CONTINUE.
+
+Type ;? or ;\[help-command] to display a list of built-in abbrevs for
+Fortran keywords.
+
+Key definitions:
+\{fortran-mode-map}
+
+Variables controlling indentation style and extra features:
+
+ `comment-start'
+    If you want to use comments starting with `!',
+    set this to the string "!".
+ `fortran-do-indent'
+    Extra indentation within do blocks.  (default 3)
+ `fortran-if-indent'
+    Extra indentation within if blocks.  (default 3)
+ `fortran-structure-indent'
+    Extra indentation within structure, union, map and interface blocks.
+    (default 3)
+ `fortran-continuation-indent'
+    Extra indentation applied to continuation statements.  (default 5)
+ `fortran-comment-line-extra-indent'
+    Amount of extra indentation for text within full-line comments.  (default 0)
+ `fortran-comment-indent-style'
+    nil    means don't change indentation of text in full-line comments,
+    fixed  means indent that text at `fortran-comment-line-extra-indent' beyond
+           the value of `fortran-minimum-statement-indent-fixed' (for fixed
+           format continuation style) or `fortran-minimum-statement-indent-tab'
+           (for TAB format continuation style).
+    relative  means indent at `fortran-comment-line-extra-indent' beyond the
+ 	      indentation for a line of code.
+    (default 'fixed)
+ `fortran-comment-indent-char'
+    Single-character string to be inserted instead of space for
+    full-line comment indentation.  (default " ")
+ `fortran-minimum-statement-indent-fixed'
+    Minimum indentation for Fortran statements in fixed format mode.  (def.6)
+ `fortran-minimum-statement-indent-tab'
+    Minimum indentation for Fortran statements in TAB format mode.  (default 9)
+ `fortran-line-number-indent'
+    Maximum indentation for line numbers.  A line number will get
+    less than this much indentation if necessary to avoid reaching
+    column 5.  (default 1)
+ `fortran-check-all-num-for-matching-do'
+    Non-nil causes all numbered lines to be treated as possible "continue"
+    statements.  (default nil)
+ `fortran-blink-matching-if'
+    Non-nil causes \[fortran-indent-line] on an ENDIF statement to blink on
+    matching IF.  Also, from an ENDDO statement, blink on matching DO [WHILE]
+    statement.  (default nil)
+ `fortran-continuation-string'
+    Single-character string to be inserted in column 5 of a continuation
+    line.  (default "$")
+ `fortran-comment-region'
+    String inserted by \[fortran-comment-region] at start of each line in
+    region.  (default "c$$$")
+ `fortran-electric-line-number'
+    Non-nil causes line number digits to be moved to the correct column
+    as typed.  (default t)
+ `fortran-break-before-delimiters'
+    Non-nil causes lines to be broken before delimiters.
+    (default t)
+
+Turning on Fortran mode calls the value of the variable `fortran-mode-hook'
+with no args, if that value is non-nil.
+(autoload 'fortran-mode "fortran" '(#$ . 307694) t nil)
+#@157 Add STRING to a fortune file FILE.
+
+Interactively, if called with a prefix argument,
+read the file name to use.  Otherwise use the value of `fortune-file'.
+(autoload 'fortune-add-fortune "fortune" '(#$ . 310760) t nil)
+#@183 Append the current region to a local fortune-like data file.
+
+Interactively, if called with a prefix argument,
+read the file name to use.  Otherwise use the value of `fortune-file'.
+(autoload 'fortune-from-region "fortune" '(#$ . 310986) t nil)
+#@165 Compile fortune file.
+
+If called with a prefix asks for the FILE to compile, otherwise uses
+the value of `fortune-file'.  This currently cannot handle directories.
+(autoload 'fortune-compile "fortune" '(#$ . 311238) t nil)
+#@318 Create signature from output of the fortune program.
+
+If called with a prefix asks for the FILE to choose the fortune from,
+otherwise uses the value of `fortune-file'.  If you want to have fortune
+choose from a set of files in a directory, call interactively with prefix
+and choose the directory as the fortune-file.
+(autoload 'fortune-to-signature "fortune" '(#$ . 311468) t nil)
+#@291 Display a fortune cookie.
+
+If called with a prefix asks for the FILE to choose the fortune from,
+otherwise uses the value of `fortune-file'.  If you want to have fortune
+choose from a set of files in a directory, call interactively with prefix
+and choose the directory as the fortune-file.
+(autoload 'fortune "fortune" '(#$ . 311856) t nil)
+#@1372 Create a new generic mode with NAME.
+
+Args: (NAME COMMENT-LIST KEYWORD-LIST FONT-LOCK-LIST AUTO-MODE-LIST
+            FUNCTION-LIST &optional DESCRIPTION)
+
+NAME should be a symbol; its string representation is used as the function
+name. If DESCRIPTION is provided, it is used as the docstring for the new
+function.
+
+COMMENT-LIST is a list, whose entries are either a single character,
+a one or two character string or a cons pair. If the entry is a character
+or a one-character string, it is added to the mode's syntax table with
+`comment-start' syntax.  If the entry is a cons pair, the elements of the
+pair are considered to be `comment-start' and `comment-end' respectively.
+Note that Emacs has limitations regarding comment characters.
+
+KEYWORD-LIST is a list of keywords to highlight with `font-lock-keyword-face'.
+Each keyword should be a string.
+
+FONT-LOCK-LIST is a list of additional expressions to highlight. Each entry
+in the list should have the same form as an entry in `font-lock-defaults-alist'
+
+AUTO-MODE-LIST is a list of regular expressions to add to `auto-mode-alist'.
+These regexps are added to `auto-mode-alist' as soon as `define-generic-mode'
+is called; any old regexps with the same name are removed.
+
+FUNCTION-LIST is a list of functions to call to do some additional setup.
+
+See the file generic-x.el for some examples of `define-generic-mode'.
+(autoload 'define-generic-mode "generic" '(#$ . 312205) nil nil)
+#@289 Basic comment and font-lock functionality for `generic' files.
+(Files which are too small to warrant their own mode, but have
+comment characters, keywords, and the like.)
+
+To define a generic-mode, use the function `define-generic-mode'.
+Some generic modes are defined in `generic-x.el'.
+(autoload 'generic-mode "generic" '(#$ . 313648) t nil)
+#@160 Minor mode for making identifiers likeThis readable.
+When this mode is active, it tries to add virtual separators (like underscores)
+at places they belong to.
+(autoload 'glasses-mode "glasses" '(#$ . 313999) t nil)
+#@67 Read network news as a slave, without connecting to local server.
+(autoload 'gnus-slave-no-server "gnus" '(#$ . 314220) t nil)
+#@321 Read network news.
+If ARG is a positive number, Gnus will use that as the
+startup level.	If ARG is nil, Gnus will be started at level 2.
+If ARG is non-nil and not a positive number, Gnus will
+prompt the user for the name of an NNTP server to use.
+As opposed to `gnus', this command will not connect to the local server.
+(autoload 'gnus-no-server "gnus" '(#$ . 314354) t nil)
+#@23 Read news as a slave.
+(autoload 'gnus-slave "gnus" '(#$ . 314735) t nil)
+#@30 Pop up a frame to read news.
+(autoload 'gnus-other-frame "gnus" '(#$ . 314814) t nil)
+#@212 Read network news.
+If ARG is non-nil and a positive number, Gnus will use that as the
+startup level.	If ARG is non-nil and not a positive number, Gnus will
+prompt the user for the name of an NNTP server to use.
+(autoload 'gnus "gnus" '(#$ . 314907) t nil)
+#@23 Start Gnus unplugged.
+(autoload 'gnus-unplugged "gnus-agent" '(#$ . 315169) t nil)
+#@21 Start Gnus plugged.
+(autoload 'gnus-plugged "gnus-agent" '(#$ . 315258) t nil)
+#@330 Allow Gnus to be an offline newsreader.
+The normal usage of this command is to put the following as the
+last form in your `.gnus.el' file:
+
+(gnus-agentize)
+
+This will modify the `gnus-before-startup-hook', `gnus-post-method',
+and `message-send-mail-function' variables, and install the Gnus
+agent minor mode in all Gnus buffers.
+(autoload 'gnus-agentize "gnus-agent" '(#$ . 315344) t nil)
+#@31 Start Gnus and fetch session.
+(autoload 'gnus-agent-batch-fetch "gnus-agent" '(#$ . 315739) t nil)
+(autoload 'gnus-agent-batch "gnus-agent" nil t nil)
+#@51 Make the current buffer look like a nice article.
+(autoload 'gnus-article-prepare-display "gnus-art" '(#$ . 315896) nil nil)
+#@40 Play a sound FILE through the speaker.
+(autoload 'gnus-audio-play "gnus-audio" '(#$ . 316027) t nil)
+#@121 Go through all groups and put the articles into the cache.
+
+Usage:
+$ emacs -batch -l ~/.emacs -l gnus -f gnus-jog-cache
+(autoload 'gnus-jog-cache "gnus-cache" '(#$ . 316135) t nil)
+#@33 Generate the cache active file.
+(autoload 'gnus-cache-generate-active "gnus-cache" '(#$ . 316322) t nil)
+#@49 Generate NOV files recursively starting in DIR.
+(autoload 'gnus-cache-generate-nov-databases "gnus-cache" '(#$ . 316433) t nil)
+#@94 Start Gnus if necessary and enter GROUP.
+Returns whether the fetching was successful or not.
+(autoload 'gnus-fetch-group "gnus-group" '(#$ . 316567) t nil)
+#@33 Pop up a frame and enter GROUP.
+(autoload 'gnus-fetch-group-other-frame "gnus-group" '(#$ . 316729) t nil)
+(defalias 'gnus-batch-kill 'gnus-batch-score)
+#@82 Run batched scoring.
+Usage: emacs -batch -l ~/.emacs -l gnus -f gnus-batch-score
+(autoload 'gnus-batch-score "gnus-kill" '(#$ . 316888) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload turn-on-gnus-mailing-list-mode "gnus-ml" nil] 6)
+#@80 Minor mode for providing mailing-list commands.
+
+\{gnus-mailing-list-mode-map}
+(autoload 'gnus-mailing-list-mode "gnus-ml" '(#$ . 317139) t nil)
+#@1029 Set up the split for nnmail-split-fancy.
+Sets things up so that nnmail-split-fancy is used for mail
+splitting, and defines the variable nnmail-split-fancy according with
+group parameters.
+
+If AUTO-UPDATE is non-nil (prefix argument accepted, if called
+interactively), it makes sure nnmail-split-fancy is re-computed before
+getting new mail, by adding gnus-group-split-update to
+nnmail-pre-get-new-mail-hook.
+
+A non-nil CATCH-ALL replaces the current value of
+gnus-group-split-default-catch-all-group.  This variable is only used
+by gnus-group-split-update, and only when its CATCH-ALL argument is
+nil.  This argument may contain any fancy split, that will be added as
+the last split in a `|' split produced by gnus-group-split-fancy,
+unless overridden by any group marked as a catch-all group.  Typical
+uses are as simple as the name of a default mail group, but more
+elaborate fancy splits may also be useful to split mail that doesn't
+match any of the group-specified splitting rules.  See
+gnus-group-split-fancy for details.
+(autoload 'gnus-group-split-setup "gnus-mlspl" '(#$ . 317292) t nil)
+#@246 Computes nnmail-split-fancy from group params and CATCH-ALL, by
+calling (gnus-group-split-fancy nil nil CATCH-ALL).
+
+If CATCH-ALL is nil, gnus-group-split-default-catch-all-group is used
+instead.  This variable is set by gnus-group-split-setup.
+(autoload 'gnus-group-split-update "gnus-mlspl" '(#$ . 318396) t nil)
+#@174 Uses information from group parameters in order to split mail.
+See gnus-group-split-fancy for more information.
+
+gnus-group-split is a valid value for nnmail-split-methods.
+(autoload 'gnus-group-split "gnus-mlspl" '(#$ . 318718) nil nil)
+#@2019 Uses information from group parameters in order to split mail.
+It can be embedded into `nnmail-split-fancy' lists with the SPLIT
+
+(: gnus-group-split-fancy GROUPS NO-CROSSPOST CATCH-ALL)
+
+GROUPS may be a regular expression or a list of group names, that will
+be used to select candidate groups.  If it is ommited or nil, all
+existing groups are considered.
+
+if NO-CROSSPOST is ommitted or nil, a & split will be returned,
+otherwise, a | split, that does not allow crossposting, will be
+returned.
+
+For each selected group, a SPLIT is composed like this: if SPLIT-SPEC
+is specified, this split is returned as-is (unless it is nil: in this
+case, the group is ignored).  Otherwise, if TO-ADDRESS, TO-LIST and/or
+EXTRA-ALIASES are specified, a regexp that matches any of them is
+constructed (extra-aliases may be a list).  Additionally, if
+SPLIT-REGEXP is specified, the regexp will be extended so that it
+matches this regexp too, and if SPLIT-EXCLUDE is specified, RESTRICT
+clauses will be generated.
+
+If CATCH-ALL is nil, no catch-all handling is performed, regardless of
+catch-all marks in group parameters.  Otherwise, if there is no
+selected group whose SPLIT-REGEXP matches the empty string, nor is
+there a selected group whose SPLIT-SPEC is 'catch-all, this fancy
+split (say, a group name) will be appended to the returned SPLIT list,
+as the last element of a '| SPLIT.
+
+For example, given the following group parameters:
+
+nnml:mail.bar:
+((to-address . "bar@femail.com")
+ (split-regexp . ".*@femail\\.com"))
+nnml:mail.foo:
+((to-list . "foo@nowhere.gov")
+ (extra-aliases "foo@localhost" "foo-redist@home")
+ (split-exclude "bugs-foo" "rambling-foo")
+ (admin-address . "foo-request@nowhere.gov"))
+nnml:mail.others:
+((split-spec . catch-all))
+
+Calling (gnus-group-split-fancy nil nil "mail.misc") returns:
+
+(| (& (any "\\(bar@femail\\.com\\|.*@femail\\.com\\)"
+	   "mail.bar")
+      (any "\\(foo@nowhere\\.gov\\|foo@localhost\\|foo-redist@home\\)"
+           - "bugs-foo" - "rambling-foo" "mail.foo"))
+   "mail.others")
+(autoload 'gnus-group-split-fancy "gnus-mlspl" '(#$ . 318964) nil nil)
+#@103 Move from FROM-SERVER to TO-SERVER.
+Update the .newsrc.eld file to reflect the change of nntp server.
+(autoload 'gnus-change-server "gnus-move" '(#$ . 321060) t nil)
+#@145 Start editing a mail message to be sent.
+Like `message-mail', but with Gnus paraphernalia, particularly the
+Gcc: header for archiving purposes.
+(autoload 'gnus-msg-mail "gnus-msg" '(#$ . 321233) t nil)
+(define-mail-user-agent 'gnus-user-agent 'gnus-msg-mail 'message-send-and-exit 'message-kill-buffer 'message-send-hook)
+#@373 Specify that articles of news group NAME are encoded in CODING-SYSTEM.
+All news groups deeper than NAME are also the target.
+If CODING-SYSTEM is a cons, the car part is used and the cdr
+part is ignored.
+
+This function exists for backward comaptibility with Emacs 20.  It is
+recommended to customize the variable `gnus-group-charset-alist'
+rather than using this function.
+(autoload 'gnus-mule-add-group "gnus-mule" '(#$ . 321562) nil nil)
+#@402 Brew a SOUP packet from groups mention on the command line.
+Will use the remaining command line arguments as regular expressions
+for matching on group names.
+
+For instance, if you want to brew on all the nnml groups, as well as
+groups with "emacs" in the name, you could say something like:
+
+$ emacs -batch -f gnus-batch-brew-soup ^nnml ".*emacs.*"
+
+Note -- this function hasn't been implemented yet.
+(autoload 'gnus-batch-brew-soup "gnus-soup" '(#$ . 322008) t nil)
+#@45 Update the format specification near point.
+(autoload 'gnus-update-format "gnus-spec" '(#$ . 322481) t nil)
+#@203 Unload all Gnus features.
+(For some value of `all' or `Gnus'.)  Currently, features whose names
+have prefixes `gnus-', `nn', `mm-' or `rfc' are unloaded.  Use
+cautiously -- unloading may cause trouble.
+(autoload 'gnus-unload "gnus-start" '(#$ . 322596) t nil)
+#@56 Declare backend NAME with ABILITIES as a Gnus backend.
+(autoload 'gnus-declare-backend "gnus-start" '(#$ . 322862) nil nil)
+#@67 Add the window configuration CONF to `gnus-buffer-configuration'.
+(autoload 'gnus-add-configuration "gnus-win" '(#$ . 322992) nil nil)
+#@564 Start a Gomoku game between you and Emacs.
+If a game is in progress, this command allow you to resume it.
+If optional arguments N and M are given, an N by M board is used.
+If prefix arg is given for N, M is prompted for.
+
+You and Emacs play in turn by marking a free square.  You mark it with X
+and Emacs marks it with O. The winner is the first to get five contiguous
+marks horizontally, vertically or in diagonal.
+
+You play by moving the cursor over the square you choose and hitting
+\<gomoku-mode-map>\[gomoku-human-plays].
+Use \[describe-mode] for more info.
+(autoload 'gomoku "gomoku" '(#$ . 323134) t nil)
+#@273 Send to the e-mail address or load the URL clicked with the mouse.
+Send mail to address at position of mouse click.  See documentation for
+`goto-address-find-address-at-point'.  If no address is found
+there, then load the URL at or before the position of the mouse click.
+(autoload 'goto-address-at-mouse "goto-addr" '(#$ . 323753) t nil)
+#@215 Send to the e-mail address or load the URL at point.
+Send mail to address at point.  See documentation for
+`goto-address-find-address-at-point'.  If no address is found
+there, then load the URL at or before point.
+(autoload 'goto-address-at-point "goto-addr" '(#$ . 324099) t nil)
+#@324 Sets up goto-address functionality in the current buffer.
+Allows user to use mouse/keyboard command to click to go to a URL
+or to send e-mail.
+By default, goto-address binds to mouse-2 and C-c RET.
+
+Also fontifies the buffer appropriately (see `goto-address-fontify-p' and
+`goto-address-highlight-p' for more information).
+(autoload 'goto-address "goto-addr" '(#$ . 324387) t nil)
+#@243 Load a PS image for display on FRAME.
+SPEC is an image specification, IMG-HEIGHT and IMG-WIDTH are width
+and height of the image in pixels.  WINDOW-AND-PIXMAP-ID is a string of
+the form "WINDOW-ID PIXMAP-ID".  Value is non-nil if successful.
+(autoload 'gs-load-image "gs" '(#$ . 324775) nil nil)
+#@160 Run gdb on program FILE in buffer *gud-FILE*.
+The directory containing FILE becomes the initial working directory
+and source-file directory for your debugger.
+(autoload 'gdb "gud" '(#$ . 325078) t nil)
+#@160 Run sdb on program FILE in buffer *gud-FILE*.
+The directory containing FILE becomes the initial working directory
+and source-file directory for your debugger.
+(autoload 'sdb "gud" '(#$ . 325287) t nil)
+#@160 Run dbx on program FILE in buffer *gud-FILE*.
+The directory containing FILE becomes the initial working directory
+and source-file directory for your debugger.
+(autoload 'dbx "gud" '(#$ . 325496) t nil)
+#@311 Run xdb on program FILE in buffer *gud-FILE*.
+The directory containing FILE becomes the initial working directory
+and source-file directory for your debugger.
+
+You can set the variable 'gud-xdb-directories' to a list of program source
+directories if your program contains sources from more than one directory.
+(autoload 'xdb "gud" '(#$ . 325705) t nil)
+#@163 Run perldb on program FILE in buffer *gud-FILE*.
+The directory containing FILE becomes the initial working directory
+and source-file directory for your debugger.
+(autoload 'perldb "gud" '(#$ . 326065) t nil)
+#@162 Run pdb on program FILE in buffer `*gud-FILE*'.
+The directory containing FILE becomes the initial working directory
+and source-file directory for your debugger.
+(autoload 'pdb "gud" '(#$ . 326280) t nil)
+#@245 Run jdb with command line COMMAND-LINE in a buffer.  The buffer is named
+"*gud*" if no initial class is given or "*gud-<initial-class-basename>*"
+if there is.  If the "-classpath" switch is given, omit all whitespace
+between it and it's value.
+(autoload 'jdb "gud" '(#$ . 326491) t nil)
+(add-hook 'same-window-regexps "\\*gud-.*\\*\\(\\|<[0-9]+>\\)")
+#@367 Turns the buffer into a "handwritten" document.
+The functions `handwrite-10pt', `handwrite-11pt', `handwrite-12pt'
+and `handwrite-13pt' set up for various sizes of output.
+
+Variables: handwrite-linespace     (default 12)
+           handwrite-fontsize      (default 11)
+           handwrite-numlines      (default 60)
+           handwrite-pagenumbering (default nil)
+(autoload 'handwrite "handwrite" '(#$ . 326849) t nil)
+#@47 Towers of Hanoi diversion.  Use NRINGS rings.
+(autoload 'hanoi "hanoi" '(#$ . 327276) t nil)
+#@176 Towers of Hanoi, UNIX doomsday version.
+Displays 32-ring towers that have been progressing at one move per
+second since 1970-01-01 00:00:00 GMT.
+
+Repent before ring 31 moves.
+(autoload 'hanoi-unix "hanoi" '(#$ . 327376) t nil)
+#@196 Like hanoi-unix, but pretend to have a 64-bit clock.  
+This is, necessarily (as of emacs 20.3), a crock.  When the
+current-time interface is made s2G-compliant, hanoi.el will need
+to be updated.
+(autoload 'hanoi-unix-64 "hanoi" '(#$ . 327610) t nil)
+#@297 *Non-nil means give more info about Help command in three steps.
+The three steps are simple prompt, prompt with all options,
+and window listing and describing the options.
+A value of nil means skip the middle step, so that
+\[help-command] \[help-command] gives the window that lists the options.
+(defvar three-step-help nil (#$ . -327867))
+#@46 Describe local key bindings of current mode.
+(autoload 'Helper-describe-bindings "helper" '(#$ . 328213) t nil)
+#@32 Provide help for current mode.
+(autoload 'Helper-help "helper" '(#$ . 328331) t nil)
+#@3460 \<hexl-mode-map>A mode for editing binary files in hex dump format.
+This is not an ordinary major mode; it alters some aspects
+of the current mode's behavior, but not all; also, you can exit
+Hexl mode and return to the previous mode using `hexl-mode-exit'.
+
+This function automatically converts a buffer into the hexl format
+using the function `hexlify-buffer'.
+
+Each line in the buffer has an "address" (displayed in hexadecimal)
+representing the offset into the file that the characters on this line
+are at and 16 characters from the file (displayed as hexadecimal
+values grouped every 16 bits) and as their ASCII values.
+
+If any of the characters (displayed as ASCII characters) are
+unprintable (control or meta characters) they will be replaced as
+periods.
+
+If `hexl-mode' is invoked with an argument the buffer is assumed to be
+in hexl format.
+
+A sample format:
+
+  HEX ADDR: 0001 0203 0405 0607 0809 0a0b 0c0d 0e0f     ASCII-TEXT
+  --------  ---- ---- ---- ---- ---- ---- ---- ----  ----------------
+  00000000: 5468 6973 2069 7320 6865 786c 2d6d 6f64  This is hexl-mod
+  00000010: 652e 2020 4561 6368 206c 696e 6520 7265  e.  Each line re
+  00000020: 7072 6573 656e 7473 2031 3620 6279 7465  presents 16 byte
+  00000030: 7320 6173 2068 6578 6164 6563 696d 616c  s as hexadecimal
+  00000040: 2041 5343 4949 0a61 6e64 2070 7269 6e74   ASCII.and print
+  00000050: 6162 6c65 2041 5343 4949 2063 6861 7261  able ASCII chara
+  00000060: 6374 6572 732e 2020 416e 7920 636f 6e74  cters.  Any cont
+  00000070: 726f 6c20 6f72 206e 6f6e 2d41 5343 4949  rol or non-ASCII
+  00000080: 2063 6861 7261 6374 6572 730a 6172 6520   characters.are 
+  00000090: 6469 7370 6c61 7965 6420 6173 2070 6572  displayed as per
+  000000a0: 696f 6473 2069 6e20 7468 6520 7072 696e  iods in the prin
+  000000b0: 7461 626c 6520 6368 6172 6163 7465 7220  table character 
+  000000c0: 7265 6769 6f6e 2e0a                      region..
+
+Movement is as simple as movement in a normal emacs text buffer.  Most
+cursor movement bindings are the same (ie. Use \[hexl-backward-char], \[hexl-forward-char], \[hexl-next-line], and \[hexl-previous-line]
+to move the cursor left, right, down, and up).
+
+Advanced cursor movement commands (ala \[hexl-beginning-of-line], \[hexl-end-of-line], \[hexl-beginning-of-buffer], and \[hexl-end-of-buffer]) are
+also supported.
+
+There are several ways to change text in hexl mode:
+
+ASCII characters (character between space (0x20) and tilde (0x7E)) are
+bound to self-insert so you can simply type the character and it will
+insert itself (actually overstrike) into the buffer.
+
+\[hexl-quoted-insert] followed by another keystroke allows you to insert the key even if
+it isn't bound to self-insert.  An octal number can be supplied in place
+of another key to insert the octal number's ASCII representation.
+
+\[hexl-insert-hex-char] will insert a given hexadecimal value (if it is between 0 and 0xFF)
+into the buffer at the current point.
+
+\[hexl-insert-octal-char] will insert a given octal value (if it is between 0 and 0377)
+into the buffer at the current point.
+
+\[hexl-insert-decimal-char] will insert a given decimal value (if it is between 0 and 255)
+into the buffer at the current point.
+
+\[hexl-mode-exit] will exit hexl-mode.
+
+Note: saving the file with any of the usual Emacs commands
+will actually convert it back to binary format while saving.
+
+You can use \[hexl-find-file] to visit a file in Hexl mode.
+
+\[describe-bindings] for advanced commands.
+(autoload 'hexl-mode "hexl" '(#$ . 328424) t nil)
+#@106 Edit file FILENAME in hexl-mode.
+Switch to a buffer visiting file FILENAME, creating one in none exists.
+(autoload 'hexl-find-file "hexl" '(#$ . 331940) t nil)
+#@86 Convert a binary buffer to hexl format.
+This discards the buffer's undo information.
+(autoload 'hexlify-buffer "hexl" '(#$ . 332106) t nil)
+(custom-declare-group 'hi-lock-interactive-text-highlighting nil "Interactively add and remove font-lock patterns for highlighting text." :group 'faces)
+#@80 Toggle hi-lock, for interactively adding font-lock text-highlighting patterns.
+(defvar hi-lock-mode nil (#$ . 332405))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group hi-lock-interactive-text-highlighting hi-lock-mode custom-variable custom-add-load hi-lock] 4)
+#@1882 Toggle minor mode for interactively adding font-lock highlighting patterns.
+
+If ARG positive turn hi-lock on.  Issuing a hi-lock command will also
+turn hi-lock on.  When hi-lock is turned on, a "Regexp Highlighting"
+submenu is added to the "Edit" menu.  The commands in the submenu,
+which can be called interactively, are:
+
+\[highlight-regexp] REGEXP FACE
+  Highlight matches of pattern REGEXP in current buffer with FACE.
+
+\[highlight-phrase] PHRASE FACE
+  Highlight matches of phrase PHRASE in current buffer with FACE.
+  (PHRASE can be any REGEXP, but spaces will be replaced by matches
+  to whitespace and initial lower-case letters will become case insensitive.)
+ 
+\[highlight-lines-matching-regexp] REGEXP FACE
+  Highlight lines containing matches of REGEXP in current buffer with FACE.
+
+\[unhighlight-regexp] REGEXP
+  Remove highlighting on matches of REGEXP in current buffer.
+
+\[hi-lock-write-interactive-patterns]
+  Write active REGEXPs into buffer as comments (if possible). They will
+  be read the next time file is loaded or when the \[hi-lock-find-patterns] command
+  is issued.  The inserted regexps are in the form of font lock keywords.
+  (See `font-lock-keywords') They may be edited and re-loaded with \[hi-lock-find-patterns],
+  any valid `font-lock-keywords' form is acceptable.
+
+\[hi-lock-find-patterns]
+  Re-read patterns stored in buffer (in the format produced by \[hi-lock-write-interactive-patterns]).
+
+When hi-lock is started and if the mode is not excluded, the
+beginning of the buffer is searched for lines of the form:
+  Hi-lock: FOO
+where FOO is a list of patterns. These are added to the font lock keywords
+already present.  The patterns must start before position (number
+of characters into buffer) `hi-lock-file-patterns-range'.  Patterns
+will be read until
+ Hi-lock: end
+is found. A mode is excluded if it's in the list `hi-lock-exclude-modes'.
+(autoload 'hi-lock-mode "hi-lock" '(#$ . 332701) t nil)
+(defalias 'highlight-lines-matching-regexp 'hi-lock-line-face-buffer)
+#@357 Set face of all lines containing a match of REGEXP to FACE.
+
+Interactively, prompt for REGEXP then FACE.  Buffer-local history
+list maintained for regexps, global history maintained for faces.
+\<minibuffer-local-map>Use \[next-history-element] and \[previous-history-element] to retrieve next or previous history item.
+(See info node `Minibuffer History')
+(autoload 'hi-lock-line-face-buffer "hi-lock" '(#$ . 334715) t nil)
+(defalias 'highlight-regexp 'hi-lock-face-buffer)
+#@339 Set face of each match of REGEXP to FACE.
+
+Interactively, prompt for REGEXP then FACE.  Buffer-local history
+list maintained for regexps, global history maintained for faces.
+\<minibuffer-local-map>Use \[next-history-element] and \[previous-history-element] to retrieve next or previous history item.
+(See info node `Minibuffer History')
+(autoload 'hi-lock-face-buffer "hi-lock" '(#$ . 335196) t nil)
+(defalias 'highlight-phrase 'hi-lock-face-phrase-buffer)
+#@160 Set face of each match of phrase REGEXP to FACE.
+
+Whitespace in REGEXP converted to arbitrary whitespace and initial
+lower-case letters made case insensitive.
+(autoload 'hi-lock-face-phrase-buffer "hi-lock" '(#$ . 335661) t nil)
+(defalias 'unhighlight-regexp 'hi-lock-unface-buffer)
+#@396 Remove highlighting of each match to REGEXP set by hi-lock.
+
+Interactively, prompt for REGEXP.  Buffer-local history of inserted
+regexp's maintained.  Will accept only regexps inserted by hi-lock
+interactive functions.  (See `hi-lock-interactive-patterns'.)
+\<minibuffer-local-must-match-map>Use \[minibuffer-complete] to complete a partially typed regexp.
+(See info node `Minibuffer History'.)
+(autoload 'hi-lock-unface-buffer "hi-lock" '(#$ . 335951) t nil)
+#@252 Write interactively added patterns, if any, into buffer at point.
+
+Interactively added patterns are those normally specified using
+`highlight-regexp' and `highlight-lines-matching-regexp'; they can
+be found in variable `hi-lock-interactive-patterns'.
+(autoload 'hi-lock-write-interactive-patterns "hi-lock" '(#$ . 336418) t nil)
+#@44 Non-nil when hide-ifdef-mode is activated.
+(defvar hide-ifdef-mode nil (#$ . 336753))
+#@1142 Toggle Hide-Ifdef mode.  This is a minor mode, albeit a large one.
+With ARG, turn Hide-Ifdef mode on if arg is positive, off otherwise.
+In Hide-Ifdef mode, code within #ifdef constructs that the C preprocessor
+would eliminate may be hidden from view.  Several variables affect
+how the hiding is done:
+
+hide-ifdef-env
+	An association list of defined and undefined symbols for the
+	current buffer.  Initially, the global value of `hide-ifdef-env'
+	is used.
+
+hide-ifdef-define-alist
+	An association list of defined symbol lists.
+        Use `hide-ifdef-set-define-alist' to save the current `hide-ifdef-env'
+        and `hide-ifdef-use-define-alist' to set the current `hide-ifdef-env'
+        from one of the lists in `hide-ifdef-define-alist'.
+
+hide-ifdef-lines
+	Set to non-nil to not show #if, #ifdef, #ifndef, #else, and
+	#endif lines when hiding.
+
+hide-ifdef-initially
+	Indicates whether `hide-ifdefs' should be called when Hide-Ifdef mode
+	is activated.
+
+hide-ifdef-read-only
+	Set to non-nil if you want to make buffers read only while hiding.
+	After `show-ifdefs', read-only status is restored to previous value.
+
+\{hide-ifdef-mode-map}
+(autoload 'hide-ifdef-mode "hideif" '(#$ . 336847) t nil)
+#@76 *Non-nil means call `hide-ifdefs' when Hide-Ifdef mode is first activated.
+(defvar hide-ifdef-initially nil (#$ . -338052))
+#@71 *Set to non-nil if you want buffer to be read-only while hiding text.
+(defvar hide-ifdef-read-only nil (#$ . -338182))
+#@56 *Non-nil means hide the #ifX, #else, and #endif lines.
+(defvar hide-ifdef-lines nil (#$ . -338307))
+#@54 *Hide the comments too when you do an `hs-hide-all'.
+(defvar hs-hide-comments-when-hiding-all t (#$ . -338413))
+#@1155 *Alist for initializing the hideshow variables for different modes.
+Each element has the form
+  (MODE START END COMMENT-START FORWARD-SEXP-FUNC ADJUST-BEG-FUNC).
+
+If non-nil, hideshow will use these values as regexps to define blocks
+and comments, respectively for major mode MODE.
+
+START, END and COMMENT-START are regular expressions.  A block is
+defined as text surrounded by START and END.
+
+As a special case, START may be a list of the form (COMPLEX-START
+MDATA-SELECTOR), where COMPLEX-START is a regexp w/ multiple parts and
+MDATA-SELECTOR an integer that specifies which sub-match is the proper
+place to adjust point, before calling `hs-forward-sexp-func'.  For
+example, see the `hs-special-modes-alist' entry for `bibtex-mode'.
+
+For some major modes, `forward-sexp' does not work properly.  In those
+cases, FORWARD-SEXP-FUNC specifies another function to use instead.
+
+See the documentation for `hs-adjust-block-beginning' to see what is the
+use of ADJUST-BEG-FUNC.
+
+If any of the elements is left nil or omitted, hideshow tries to guess
+appropriate values.  The regexps should not contain leading or trailing
+whitespace.  Case does not matter.
+(defvar hs-special-modes-alist '((c-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning) (c++-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning) (bibtex-mode ("^@\\S(*\\(\\s(\\)" 1)) (java-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning)) (#$ . -338533))
+#@721 Toggle hideshow minor mode.
+With ARG, turn hideshow minor mode on if ARG is positive, off otherwise.
+When hideshow minor mode is on, the menu bar is augmented with hideshow
+commands and the hideshow commands are enabled.
+The value '(hs . t) is added to `buffer-invisibility-spec'.
+
+The main commands are: `hs-hide-all', `hs-show-all', `hs-hide-block',
+`hs-show-block', `hs-hide-level' and `hs-toggle-hiding'.  There is also
+`hs-hide-initial-comment-block' and `hs-mouse-toggle-hiding'.
+
+Turning hideshow minor mode off reverts the menu bar and the
+variables to default values and disables the hideshow commands.
+
+Lastly, the normal hook `hs-minor-mode-hook' is run using `run-hooks'.
+
+Key bindings:
+\{hs-minor-mode-map}
+(autoload 'hs-minor-mode "hideshow" '(#$ . 339973) t nil)
+(byte-code "\301B\302\301!\204\f\303\303\207" [current-load-list highlight-changes-mode boundp nil] 2)
+#@137 Remove the change face from the region between BEG and END.
+This allows you to manually remove highlighting from uninteresting changes.
+(autoload 'highlight-changes-remove-highlight "hilit-chg" '(#$ . 340865) t nil)
+#@1315 Toggle (or initially set) Highlight Changes mode.
+
+Without an argument:
+  If Highlight Changes mode is not enabled, then enable it (in either active
+  or passive state as determined by the variable
+  `highlight-changes-initial-state'); otherwise, toggle between active
+  and passive state.
+
+With an argument ARG:
+  If ARG is positive, set state to active;
+  If ARG is zero, set state to passive;
+  If ARG is negative, disable Highlight Changes mode completely.
+
+Active state  - means changes are shown in a distinctive face.
+Passive state - means changes are kept and new ones recorded but are
+		not displayed in a different face.
+
+Functions:
+\[highlight-changes-next-change] - move point to beginning of next change
+\[highlight-changes-previous-change] - move to beginning of previous change
+\[highlight-compare-with-file] - mark text as changed by comparing this
+	buffer with the contents of a file
+\[highlight-changes-remove-highlight] - remove the change face from the region
+\[highlight-changes-rotate-faces] - rotate different "ages" of changes through
+	various faces.
+
+Hook variables:
+`highlight-changes-enable-hook'  - when enabling Highlight Changes mode.
+`highlight-changes-toggle-hook'  - when entering active or passive state
+`highlight-changes-disable-hook' - when turning off Highlight Changes mode.
+(autoload 'highlight-changes-mode "hilit-chg" '(#$ . 341089) t nil)
+#@73 Move to the beginning of the next change, if in Highlight Changes mode.
+(autoload 'highlight-changes-next-change "hilit-chg" '(#$ . 342477) t nil)
+#@77 Move to the beginning of the previous change, if in Highlight Changes mode.
+(autoload 'highlight-changes-previous-change "hilit-chg" '(#$ . 342630) t nil)
+#@533 Rotate the faces used by Highlight Changes mode.
+
+Current changes are displayed in the face described by the first element
+of `highlight-changes-face-list', one level older changes are shown in
+face described by the second element, and so on.  Very old changes remain
+shown in the last face in the list.
+
+You can automatically rotate colours when the buffer is saved
+by adding the following to `local-write-file-hooks', by evaling it in the
+buffer to be saved):
+
+  (add-hook 'local-write-file-hooks 'highlight-changes-rotate-faces)
+(autoload 'highlight-changes-rotate-faces "hilit-chg" '(#$ . 342792) t nil)
+#@635 Compare this buffer with a file, and highlight differences.
+
+The current buffer must be an unmodified buffer visiting a file,
+and must not be read-only.
+
+If the buffer has a backup filename, it is used as the default when
+this function is called interactively.
+
+If the current buffer is visiting the file being compared against, it
+also will have its differences highlighted.  Otherwise, the file is
+read in temporarily but the buffer is deleted.
+
+If the buffer is read-only, differences will be highlighted but no property
+changes are made, so \[highlight-changes-next-change] and
+\[highlight-changes-previous-change] will not work.
+(autoload 'highlight-compare-with-file "hilit-chg" '(#$ . 343407) t nil)
+#@816 Turn on or off global Highlight Changes mode.
+
+When called interactively:
+- if no prefix, toggle global Highlight Changes mode on or off
+- if called with a positive prefix (or just C-u) turn it on in active mode
+- if called with a zero prefix  turn it on in passive mode
+- if called with a negative prefix turn it off
+
+When called from a program:
+- if ARG is nil or omitted, turn it off
+- if ARG is `active', turn it on in active mode
+- if ARG is `passive', turn it on in passive mode
+- otherwise just turn it on
+
+When global Highlight Changes mode is enabled, Highlight Changes mode is turned
+on for future "suitable" buffers (and for "suitable" existing buffers if
+variable `highlight-changes-global-changes-existing-buffers' is non-nil).
+"Suitability" is determined by variable `highlight-changes-global-modes'.
+(autoload 'global-highlight-changes "hilit-chg" '(#$ . 344121) t nil)
+#@174 The list of expansion functions tried in order by `hippie-expand'.
+To change the behavior of `hippie-expand', remove, change the order of,
+or insert functions in this list.
+(defvar hippie-expand-try-functions-list '(try-complete-file-name-partially try-complete-file-name try-expand-all-abbrevs try-expand-list try-expand-line try-expand-dabbrev try-expand-dabbrev-all-buffers try-expand-dabbrev-from-kill try-complete-lisp-symbol-partially try-complete-lisp-symbol) (#$ . 345013))
+#@68 *Non-nil makes `hippie-expand' output which function it is trying.
+(defvar hippie-expand-verbose t (#$ . -345501))
+#@72 *Non-nil means tolerate trailing spaces in the abbreviation to expand.
+(defvar hippie-expand-dabbrev-skip-space nil (#$ . -345622))
+#@75 *Non-nil means expand as symbols, i.e. syntax `_' is considered a letter.
+(defvar hippie-expand-dabbrev-as-symbol t (#$ . -345760))
+#@65 *Non-nil means that narrowed buffers are widened during search.
+(defvar hippie-expand-no-restriction t (#$ . -345898))
+#@101 *The maximum number of buffers (apart from the current) searched.
+If nil, all buffers are searched.
+(defvar hippie-expand-max-buffers nil (#$ . -346024))
+#@153 *A list specifying which buffers not to search (if not current).
+Can contain both regexps matching buffer names (as strings) and major modes
+(as atoms)
+(defvar hippie-expand-ignore-buffers '("^ \\*.*\\*$" dired-mode) (#$ . -346185))
+#@242 *A list specifying the only buffers to search (in addition to current).
+Can contain both regexps matching buffer names (as strings) and major modes
+(as atoms). If non-NIL, this variable overrides the variable
+`hippie-expand-ignore-buffers'.
+(defvar hippie-expand-only-buffers nil (#$ . -346425))
+#@430 Try to expand text before point, using multiple methods.
+The expansion functions in `hippie-expand-try-functions-list' are
+tried in order, until a possible expansion is found.  Repeated
+application of `hippie-expand' inserts successively possible
+expansions.  
+With a positive numeric argument, jumps directly to the ARG next
+function in this list.  With a negative argument or just \[universal-argument], 
+undoes the expansion.
+(autoload 'hippie-expand "hippie-exp" '(#$ . 346728) t nil)
+#@172 Construct a function similar to `hippie-expand'.
+Make it use the expansion functions in TRY-LIST.  An optional second
+argument VERBOSE non-nil makes the function verbose.
+(autoload 'make-hippie-expand-function "hippie-exp" '(#$ . 347224) nil 'macro)
+#@243 Minor mode to highlight the line about point in the current window.
+With ARG, turn Hl-Line mode on if ARG is positive, off otherwise.
+Uses functions `hl-line-unhighlight' and `hl-line-highlight' on
+`pre-command-hook' and `post-command-hook'.
+(autoload 'hl-line-mode "hl-line" '(#$ . 347481) t nil)
+#@236 Non-nil if Global-Hl-Line mode is enabled.
+See the command `global-hl-line-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `global-hl-line-mode'.
+(defvar global-hl-line-mode nil (#$ . 347786))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group hl-line global-hl-line-mode custom-variable custom-add-load] 4)
+#@225 Toggle Hl-Line mode in every buffer.
+With prefix ARG, turn Global-Hl-Line mode on if and only if ARG is positive.
+Hl-Line mode is actually not turned on in every buffer but only in those
+in which `hl-line-mode' turns it on.
+(autoload 'global-hl-line-mode "hl-line" '(#$ . 348213) t nil)
+#@197 Display the holidays for last month, this month, and next month.
+If called with an optional prefix argument, prompts for month and year.
+
+This function is suitable for execution in a .emacs file.
+(autoload 'holidays "holidays" '(#$ . 348507) t nil)
+#@250 Display holidays for years Y1 to Y2 (inclusive).
+
+The optional list of holidays L defaults to `calendar-holidays'.  See the
+documentation for that variable for a description of holiday lists.
+
+The optional LABEL is used to label the buffer created.
+(autoload 'list-holidays "holidays" '(#$ . 348763) t nil)
+#@134 This function is obsolete.
+Emacs now does hscrolling automatically, if `truncate-lines' is non-nil.
+Also see `automatic-hscrolling'.
+(autoload 'turn-on-hscroll "hscroll" '(#$ . 349077) nil nil)
+#@134 This function is obsolete.
+Emacs now does hscrolling automatically, if `truncate-lines' is non-nil.
+Also see `automatic-hscrolling'.
+(autoload 'hscroll-mode "hscroll" '(#$ . 349278) t nil)
+#@134 This function is obsolete.
+Emacs now does hscrolling automatically, if `truncate-lines' is non-nil.
+Also see `automatic-hscrolling'.
+(autoload 'hscroll-global-mode "hscroll" '(#$ . 349474) t nil)
+#@135 Toggle incremental minibuffer completion for this Emacs session.
+With a numeric argument, turn Icomplete mode on iff ARG is positive.
+(autoload 'icomplete-mode "icomplete" '(#$ . 349677) t nil)
+#@123 Run in minibuffer on activation to establish incremental completion.
+Usually run by inclusion in `minibuffer-setup-hook'.
+(autoload 'icomplete-minibuffer-setup "icomplete" '(#$ . 349878) nil nil)
+#@1381 Major mode for editing Icon code.
+Expression and list commands understand all Icon brackets.
+Tab indents for Icon code.
+Paragraphs are separated by blank lines only.
+Delete converts tabs to spaces as it moves back.
+\{icon-mode-map}
+Variables controlling indentation style:
+ icon-tab-always-indent
+    Non-nil means TAB in Icon mode should always reindent the current line,
+    regardless of where in the line point is when the TAB command is used.
+ icon-auto-newline
+    Non-nil means automatically newline before and after braces
+    inserted in Icon code.
+ icon-indent-level
+    Indentation of Icon statements within surrounding block.
+    The surrounding block's indentation is the indentation
+    of the line on which the open-brace appears.
+ icon-continued-statement-offset
+    Extra indentation given to a substatement, such as the
+    then-clause of an if or body of a while.
+ icon-continued-brace-offset
+    Extra indentation given to a brace that starts a substatement.
+    This is in addition to `icon-continued-statement-offset'.
+ icon-brace-offset
+    Extra indentation for line if it starts with an open brace.
+ icon-brace-imaginary-offset
+    An open brace following other text is treated as if it were
+    this far to the right of the start of its line.
+
+Turning on Icon mode calls the value of the variable `icon-mode-hook'
+with no args, if that value is non-nil.
+(autoload 'icon-mode "icon" '(#$ . 350082) t nil)
+#@712 Run an inferior IDL, with I/O through buffer `(idlwave-shell-buffer)'.
+If buffer exists but shell process is not running, start new IDL.
+If buffer exists and shell process is running, just switch to the buffer.
+
+When called with a prefix ARG, or when `idlwave-shell-use-dedicated-frame'
+is non-nil, the shell buffer and the source buffers will be in
+separate frames.
+
+The command to run comes from variable `idlwave-shell-explicit-file-name'.
+
+The buffer is put in `idlwave-shell-mode', providing commands for sending
+input and controlling the IDL job.  See help on `idlwave-shell-mode'.
+See also the variable `idlwave-shell-prompt-pattern'.
+
+(Type \[describe-mode] in the shell buffer for a list of commands.)
+(autoload 'idlwave-shell "idlw-shell" '(#$ . 351519) t nil)
+#@4785 Major mode for editing IDL and WAVE CL .pro files.
+
+The main features of this mode are
+
+1. Indentation and Formatting
+   --------------------------
+   Like other Emacs programming modes, C-j inserts a newline and indents.
+   TAB is used for explicit indentation of the current line.
+
+   To start a continuation line, use \[idlwave-split-line].  This function can also
+   be used in the middle of a line to split the line at that point.
+   When used inside a long constant string, the string is split at
+   that point with the `+' concatenation operator.
+
+   Comments are indented as follows:
+
+   `;;;' Indentation remains unchanged.
+   `;;'  Indent like the surrounding code
+   `;'   Indent to a minimum column.
+
+   The indentation of comments starting in column 0 is never changed.
+
+   Use \[idlwave-fill-paragraph] to refill a paragraph inside a comment.  The indentation
+   of the second line of the paragraph relative to the first will be
+   retained.  Use \[idlwave-auto-fill-mode] to toggle auto-fill mode for these comments.
+   When the variable `idlwave-fill-comment-line-only' is nil, code
+   can also be auto-filled and auto-indented (not recommended).
+
+   To convert pre-existing IDL code to your formatting style, mark the
+   entire buffer with \[mark-whole-buffer] and execute \[idlwave-expand-region-abbrevs].
+   Then mark the entire buffer again followed by \[indent-region] (`indent-region').
+
+2. Routine Info
+   ------------
+   IDLWAVE displays information about the calling sequence and the accepted
+   keyword parameters of a procedure or function with \[idlwave-routine-info].
+   \[idlwave-find-module] jumps to the source file of a module.
+   These commands know about system routines, all routines in idlwave-mode
+   buffers and (when the idlwave-shell is active) about all modules
+   currently compiled under this shell.  Use \[idlwave-update-routine-info] to update this
+   information, which is also used for completion (see item 4).
+
+3. Online IDL Help
+   ---------------
+   \[idlwave-context-help] displays the IDL documentation relevant
+   for the system variable, keyword, or routine at point.  A single key
+   stroke gets you directly to the right place in the docs.  Two additional
+   files (an ASCII version of the IDL documentation and a topics file) must
+   be installed for this - check the IDLWAVE webpage for these files.
+
+4. Completion
+   ----------
+   \[idlwave-complete] completes the names of procedures, functions
+   class names and keyword parameters.  It is context sensitive and
+   figures out what is expected at point (procedure/function/keyword).
+   Lower case strings are completed in lower case, other strings in
+   mixed or upper case.
+
+5. Code Templates and Abbreviations
+   --------------------------------
+   Many Abbreviations are predefined to expand to code fragments and templates.
+   The abbreviations start generally with a `\`.  Some examples
+
+   \pr        PROCEDURE template
+   \fu        FUNCTION template
+   \c         CASE statement template
+   \sw        SWITCH statement template
+   \f         FOR loop template
+   \r         REPEAT Loop template
+   \w         WHILE loop template
+   \i         IF statement template
+   \elif      IF-ELSE statement template
+   \b         BEGIN
+   
+   For a full list, use \[idlwave-list-abbrevs].  Some templates also have
+   direct keybindings - see the list of keybindings below.
+
+   \[idlwave-doc-header] inserts a documentation header at the beginning of the
+   current program unit (pro, function or main).  Change log entries
+   can be added to the current program unit with \[idlwave-doc-modification].
+
+6. Automatic Case Conversion
+   -------------------------
+   The case of reserved words and some abbrevs is controlled by
+   `idlwave-reserved-word-upcase' and `idlwave-abbrev-change-case'.
+
+7. Automatic END completion
+   ------------------------
+   If the variable `idlwave-expand-generic-end' is non-nil, each END typed
+   will be converted to the specific version, like ENDIF, ENDFOR, etc.
+
+8. Hooks
+   -----
+   Loading idlwave.el runs `idlwave-load-hook'.
+   Turning on `idlwave-mode' runs `idlwave-mode-hook'.
+
+9. Documentation and Customization
+   -------------------------------
+   Info documentation for this package is available.  Use \[idlwave-info]
+   to display (complain to your sysadmin if that does not work).
+   For Postscript and HTML versions of the documentation, check IDLWAVE's
+   homepage at `http://www.strw.leidenuniv.nl/~dominik/Tools/idlwave'.
+   IDLWAVE has customize support - see the group `idlwave'.
+
+10.Keybindings
+   -----------
+   Here is a list of all keybindings of this mode.
+   If some of the key bindings below show with ??, use \[describe-key]
+   followed by the key sequence to see what the key sequence does.
+
+\{idlwave-mode-map}
+(autoload 'idlwave-mode "idlwave" '(#$ . 352298) t nil)
+(add-hook 'same-window-buffer-names "*ielm*")
+#@117 Interactively evaluate Emacs Lisp expressions.
+Switches to the buffer `*ielm*', or creates it if it does not exist.
+(autoload 'ielm "ielm" '(#$ . 357191) t nil)
+#@129 Determine the image type from image data DATA.
+Value is a symbol specifying the image type or nil if type cannot
+be determined.
+(autoload 'image-type-from-data "image" '(#$ . 357359) nil nil)
+#@147 Determine the type of image file FILE from its first few bytes.
+Value is a symbol specifying the image type, or nil if type cannot
+be determined.
+(autoload 'image-type-from-file-header "image" '(#$ . 357558) nil nil)
+#@97 Value is non-nil if image type TYPE is available.
+Image types are symbols like `xbm' or `jpeg'.
+(autoload 'image-type-available-p "image" '(#$ . 357781) nil nil)
+#@566 Create an image.
+FILE-OR-DATA is an image file name or image data.
+Optional TYPE is a symbol describing the image type.  If TYPE is omitted
+or nil, try to determine the image type from its first few bytes
+of image data.  If that doesn't work, and FILE-OR-DATA is a file name,
+use its file extension as image type.
+Optional DATA-P non-nil means FILE-OR-DATA is a string containing image data.
+Optional PROPS are additional image attributes to assign to the image,
+like, e.g. `:mask MASK'.
+Value is the image created, or nil if images of type TYPE are not supported.
+(autoload 'create-image "image" '(#$ . 357950) nil nil)
+#@575 Put image IMAGE in front of POS in the current buffer.
+IMAGE must be an image created with `create-image' or `defimage'.
+IMAGE is displayed by putting an overlay into the current buffer with a
+`before-string' STRING that has a `display' property whose value is the
+image.  STRING is defaulted if you omit it.
+POS may be an integer or marker.
+AREA is where to display the image.  AREA nil or omitted means
+display it in the text area, a value of `left-margin' means
+display it in the left marginal area, a value of `right-margin'
+means display it in the right marginal area.
+(autoload 'put-image "image" '(#$ . 358578) nil nil)
+#@428 Insert IMAGE into current buffer at point.
+IMAGE is displayed by inserting STRING into the current buffer
+with a `display' property whose value is the image.  STRING is
+defaulted if you omit it.
+AREA is where to display the image.  AREA nil or omitted means
+display it in the text area, a value of `left-margin' means
+display it in the left marginal area, a value of `right-margin'
+means display it in the right marginal area.
+(autoload 'insert-image "image" '(#$ . 359212) nil nil)
+#@170 Remove images between START and END in BUFFER.
+Remove only images that were put in BUFFER with calls to `put-image'.
+BUFFER nil or omitted means use the current buffer.
+(autoload 'remove-images "image" '(#$ . 359702) nil nil)
+#@733 Find an image, choosing one of a list of image specifications.
+
+SPECS is a list of image specifications.
+
+Each image specification in SPECS is a property list.  The contents of
+a specification are image type dependent.  All specifications must at
+least contain the properties `:type TYPE' and either `:file FILE' or
+`:data DATA', where TYPE is a symbol specifying the image type,
+e.g. `xbm', FILE is the file to load the image from, and DATA is a
+string containing the actual image data.  The specification whose TYPE
+is supported, and FILE exists, is used to construct the image
+specification to be returned.  Return nil if no specification is
+satisfied.
+
+The image is looked for first on `load-path' and then in `data-directory'.
+(autoload 'find-image "image" '(#$ . 359935) nil nil)
+#@721 Define SYMBOL as an image.
+
+SPECS is a list of image specifications.  DOC is an optional
+documentation string.
+
+Each image specification in SPECS is a property list.  The contents of
+a specification are image type dependent.  All specifications must at
+least contain the properties `:type TYPE' and either `:file FILE' or
+`:data DATA', where TYPE is a symbol specifying the image type,
+e.g. `xbm', FILE is the file to load the image from, and DATA is a
+string containing the actual image data.  The first image
+specification whose TYPE is supported, and FILE exists, is used to
+define SYMBOL.
+
+Example:
+
+   (defimage test-image ((:type xpm :file "~/test1.xpm")
+                         (:type xbm :file "~/test1.xbm")))
+(autoload 'defimage "image" '(#$ . 360728) nil 'macro)
+#@401 *A list of image-file filename extensions.
+Filenames having one of these extensions are considered image files,
+in addition to those matching `image-file-name-regexps'.
+
+See `auto-image-file-mode'; if `auto-image-file-mode' is enabled,
+setting this variable directly does not take effect unless
+`auto-image-file-mode' is re-enabled; this happens automatically the
+variable is set using \[customize].
+(defvar image-file-name-extensions '("png" "jpeg" "jpg" "gif" "tiff" "tif" "xbm" "xpm" "pbm" "pgm" "ppm") (#$ . -361510))
+#@429 *List of regexps matching image-file filenames.
+Filenames matching one of these regexps are considered image files,
+in addition to those with an extension in `image-file-name-extensions'.
+
+See function `auto-image-file-mode'; if `auto-image-file-mode' is
+enabled, setting this variable directly does not take effect unless
+`auto-image-file-mode' is re-enabled; this happens automatically the
+variable is set using \[customize].
+(defvar image-file-name-regexps nil (#$ . -362039))
+#@60 Return a regular expression matching image-file filenames.
+(autoload 'image-file-name-regexp "image-file" '(#$ . 362525) nil nil)
+#@160 Insert the image file FILE into the current buffer.
+Optional arguments VISIT, BEG, END, and REPLACE are interpreted as for
+the command `insert-file-contents'.
+(autoload 'insert-image-file "image-file" '(#$ . 362662) nil nil)
+#@239 Non-nil if Auto-Image-File mode is enabled.
+See the command `auto-image-file-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `auto-image-file-mode'.
+(defvar auto-image-file-mode nil (#$ . 362894))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group image auto-image-file-mode custom-variable custom-add-load image-file] 4)
+#@284 Toggle visiting of image files as images.
+With prefix argument ARG, turn on if positive, otherwise off.
+Returns non-nil if the new state is enabled.
+
+Image files are those whose name has an extension in
+`image-file-name-extensions', or matches a regexp in
+`image-file-name-regexps'.
+(autoload 'auto-image-file-mode "image-file" '(#$ . 363335) t nil)
+#@501 *The function to use for sorting the index mouse-menu.
+
+Affects only the mouse index menu.
+
+Set this to nil if you don't want any sorting (faster).
+The items in the menu are then presented in the order they were found
+in the buffer.
+
+Set it to `imenu--sort-by-name' if you want alphabetic sorting.
+
+The function should take two arguments and return t if the first
+element should come before the second.  The arguments are cons cells;
+(NAME . POSITION).  Look at `imenu--sort-by-name' for an example.
+(defvar imenu-sort-function nil (#$ . -363692))
+#@1494 The regex pattern to use for creating a buffer index.
+
+If non-nil this pattern is passed to `imenu--generic-function'
+to create a buffer index.
+
+The value should be an alist with elements that look like this:
+ (MENU-TITLE REGEXP INDEX)
+or like this:
+ (MENU-TITLE REGEXP INDEX FUNCTION ARGUMENTS...)
+with zero or more ARGUMENTS.  The former format creates a simple element in
+the index alist when it matches; the latter creates a special element
+of the form  (NAME POSITION-MARKER FUNCTION ARGUMENTS...)
+with FUNCTION and ARGUMENTS copied from `imenu-generic-expression'.
+
+MENU-TITLE is a string used as the title for the submenu or nil if the
+entries are not nested.
+
+REGEXP is a regexp that should match a construct in the buffer that is
+to be displayed in the menu; i.e., function or variable definitions,
+etc.  It contains a substring which is the name to appear in the
+menu.  See the info section on Regexps for more information.
+
+INDEX points to the substring in REGEXP that contains the name (of the
+function, variable or type) that is to appear in the menu.
+
+The variable is buffer-local.
+
+The variable `imenu-case-fold-search' determines whether or not the
+regexp matches are case sensitive, and `imenu-syntax-alist' can be
+used to alter the syntax table for the search.
+
+For example, see the value of `lisp-imenu-generic-expression' used by
+`fortran-mode' with `imenu-syntax-alist' set locally to give the
+characters which normally have "symbol" syntax "word" syntax
+during matching.
+(defvar imenu-generic-expression nil (#$ . 364248))
+(make-variable-buffer-local 'imenu-generic-expression)
+#@535 The function to use for creating a buffer index.
+
+It should be a function that takes no arguments and returns an index
+of the current buffer as an alist.
+
+Simple elements in the alist look like (INDEX-NAME . INDEX-POSITION).
+Special elements look like (INDEX-NAME INDEX-POSITION FUNCTION ARGUMENTS...).
+A nested sub-alist element looks like (INDEX-NAME SUB-ALIST).
+The function `imenu--subalist-p' tests an element and returns t
+if it is a sub-alist.
+
+This function is called within a `save-excursion'.
+
+The variable is buffer-local.
+(defvar imenu-create-index-function 'imenu-default-create-index-function (#$ . 365855))
+(make-variable-buffer-local 'imenu-create-index-function)
+#@414 Function for finding the next index position.
+
+If `imenu-create-index-function' is set to
+`imenu-default-create-index-function', then you must set this variable
+to a function that will find the next index, looking backwards in the
+file.
+
+The function should leave point at the place to be connected to the
+index and it should return nil when it doesn't find another index.
+
+This variable is local in all buffers.
+(defvar imenu-prev-index-position-function 'beginning-of-defun (#$ . 366542))
+(make-variable-buffer-local 'imenu-prev-index-position-function)
+#@284 Function for extracting the index item name, given a position.
+
+This function is called after `imenu-prev-index-position-function'
+finds a position for an index item, with point at that position.
+It should return the name for that index item.
+
+This variable is local in all buffers.
+(defvar imenu-extract-index-name-function nil (#$ . 367105))
+(make-variable-buffer-local 'imenu-extract-index-name-function)
+#@352 Function to compare string with index item.
+
+This function will be called with two strings, and should return
+non-nil if they match.
+
+If nil, comparison is done with `string='.
+Set this to some other function for more advanced comparisons,
+such as "begins with" or "name matches and number of
+arguments match".
+
+This variable is local in all buffers.
+(defvar imenu-name-lookup-function nil (#$ . 367520))
+(make-variable-buffer-local 'imenu-name-lookup-function)
+#@135 The default function called when selecting an Imenu item.
+The function in this variable is called when selecting a normal index-item.
+(defvar imenu-default-goto-function 'imenu-default-goto-function (#$ . 367989))
+(byte-code "\300\301!\210\300\302!\210\300\303!\207" [make-variable-buffer-local imenu-default-goto-function imenu-syntax-alist imenu-case-fold-search] 2)
+#@157 Add an `imenu' entry to the menu bar for the current buffer.
+NAME is a string used to name the menu bar item.
+See the command `imenu' for more information.
+(autoload 'imenu-add-to-menubar "imenu" '(#$ . 368365) t nil)
+#@143 Add an Imenu "Index" entry on the menu bar for the current buffer.
+
+A trivial interface to `imenu-add-to-menubar' suitable for use in a hook.
+(autoload 'imenu-add-menubar-index "imenu" '(#$ . 368590) t nil)
+#@163 Jump to a place in the buffer chosen using a buffer menu or mouse menu.
+INDEX-ITEM specifies the position.  See `imenu-choose-buffer-index'
+for more information.
+(autoload 'imenu "imenu" '(#$ . 368804) t nil)
+#@228 *What not to save on inferior Lisp's input history.
+Input matching this regexp is not saved on the input history in Inferior Lisp
+mode.  Default is whitespace followed by 0 or 1 single-letter colon-keyword
+(as in :a, :c, etc.)
+(defvar inferior-lisp-filter-regexp "\\`\\s *\\(:\\(\\w\\|\\s_\\)\\)?\\s *\\'" (#$ . -369020))
+#@74 *Program name for invoking an inferior Lisp with for Inferior Lisp mode.
+(defvar inferior-lisp-program "lisp" (#$ . -369348))
+#@425 *Format-string for building a Lisp expression to load a file.
+This format string should use `%s' to substitute a file name
+and should result in a Lisp expression that will command the inferior Lisp
+to load that file.  The default works acceptably on most Lisps.
+The string "(progn (load \"%s\" :verbose nil :print t) (values))\n"
+produces cosmetically superior output for this application,
+but it works only in Common Lisp.
+(defvar inferior-lisp-load-command "(load \"%s\")\n" (#$ . -369481))
+#@491 Regexp to recognise prompts in the Inferior Lisp mode.
+Defaults to "^[^> \n]*>+:? *", which works pretty good for Lucid, kcl,
+and franz.  This variable is used to initialize `comint-prompt-regexp' in the
+Inferior Lisp buffer.
+
+This variable is only used if the variable
+`comint-use-prompt-regexp-instead-of-fields' is non-nil.
+
+More precise choices:
+Lucid Common Lisp: "^\\(>\\|\\(->\\)+\\) *"
+franz: "^\\(->\\|<[0-9]*>:\\) *"
+kcl: "^>+ *"
+
+This is a fine thing to set in your .emacs file.
+(defvar inferior-lisp-prompt "^[^> \n]*>+:? *" (#$ . 369981))
+#@43 *Hook for customising Inferior Lisp mode.
+(defvar inferior-lisp-mode-hook nil (#$ . -370539))
+#@420 Run an inferior Lisp process, input and output via buffer `*inferior-lisp*'.
+If there is a process already running in `*inferior-lisp*', just switch
+to that buffer.
+With argument, allows you to edit the command line (default is value
+of `inferior-lisp-program').  Runs the hooks from
+`inferior-lisp-mode-hook' (after the `comint-mode-hook' is run).
+(Type \[describe-mode] in the process buffer for a list of commands.)
+(autoload 'inferior-lisp "inf-lisp" '(#$ . 370640) t nil)
+(byte-code "\300\301\302\"\210\303\304\305\"\207" [add-hook same-window-buffer-names "*inferior-lisp*" defalias run-lisp inferior-lisp] 3)
+#@57 Like `info' but show the Info buffer in another window.
+(autoload 'info-other-window "info" '(#$ . 371262) t nil)
+(add-hook 'same-window-buffer-names "*info*")
+#@517 Enter Info, the documentation browser.
+Optional argument FILE specifies the file to examine;
+the default is the top-level directory of Info.
+Called from a program, FILE may specify an Info node of the form
+`(FILENAME)NODENAME'.
+
+In interactive use, a prefix argument directs this command
+to read a file name from the minibuffer.
+
+The search path for Info files is in the variable `Info-directory-list'.
+The top-level Info directory is made by combining all the files named `dir'
+in all the directories in that path.
+(autoload 'info "info" '(#$ . 371429) t nil)
+#@153 Run Emacs as a standalone Info reader.
+Usage:  emacs -f info-standalone [filename]
+In standalone mode, \<Info-mode-map>\[Info-exit] exits Emacs itself.
+(autoload 'info-standalone "info" '(#$ . 371997) nil nil)
+#@32 Go to the Info directory node.
+(autoload 'Info-directory "info" '(#$ . 372213) t nil)
+#@229 Go to the Info node in the Emacs manual for command COMMAND.
+The command is found by looking up in Emacs manual's indices
+or in another manual found via COMMAND's `info-file' property or
+the variable `Info-file-list-for-emacs'.
+(autoload 'Info-goto-emacs-command-node "info" '(#$ . 372306) t nil)
+#@342 Go to the node in the Emacs manual which describes the command bound to KEY.
+KEY is a string.
+Interactively, if the binding is `execute-extended-command', a command is read.
+The command is found by looking up in Emacs manual's indices
+or in another manual found via COMMAND's `info-file' property or
+the variable `Info-file-list-for-emacs'.
+(autoload 'Info-goto-emacs-key-command-node "info" '(#$ . 372610) t nil)
+#@99 Initialize speedbar to display an info node browser.
+This will add a speedbar major display mode.
+(autoload 'Info-speedbar-browser "info" '(#$ . 373030) t nil)
+#@187 Throw away all cached data.
+This command is useful if the user wants to start at the beginning without
+quitting Emacs, for example, after some Info documents were updated on the
+system.
+(autoload 'info-lookup-reset "info-look" '(#$ . 373197) t nil)
+#@358 Display the definition of SYMBOL, as found in the relevant manual.
+When this command is called interactively, it reads SYMBOL from the minibuffer.
+In the minibuffer, use M-n to yank the default argument value
+into the minibuffer so you can edit it.
+The default symbol is the one found at point.
+
+With prefix arg a query for the symbol help mode is offered.
+(autoload 'info-lookup-symbol "info-look" '(#$ . 373453) t nil)
+#@322 Display the documentation of a file.
+When this command is called interactively, it reads FILE from the minibuffer.
+In the minibuffer, use M-n to yank the default file name
+into the minibuffer so you can edit it.
+The default file name is the one found at point.
+
+With prefix arg a query for the file help mode is offered.
+(autoload 'info-lookup-file "info-look" '(#$ . 373881) t nil)
+#@47 Perform completion on symbol preceding point.
+(autoload 'info-complete-symbol "info-look" '(#$ . 374270) t nil)
+#@45 Perform completion on file preceding point.
+(autoload 'info-complete-file "info-look" '(#$ . 374388) t nil)
+#@72 Create or update Info file tag table in current buffer or in a region.
+(autoload 'Info-tagify "informat" '(#$ . 374502) t nil)
+#@590 Split an info file into an indirect file plus bounded-size subfiles.
+Each subfile will be up to 50,000 characters plus one node.
+
+To use this command, first visit a large Info file that has a tag
+table.  The buffer is modified into a (small) indirect info file which
+should be saved in place of the original visited file.
+
+The subfiles are written in the same directory the original file is
+in, with names generated by appending `-' and a number to the original
+file name.  The indirect file still functions as an Info file, but it
+contains just the tag table and a directory of subfiles.
+(autoload 'Info-split "informat" '(#$ . 374636) t nil)
+#@110 Check current buffer for validity as an Info file.
+Check that every node pointer points to an existing node.
+(autoload 'Info-validate "informat" '(#$ . 375287) t nil)
+#@268 Runs `Info-validate' on the files remaining on the command line.
+Must be used only with -batch, and kills Emacs on completion.
+Each file will be processed even if an error occurred previously.
+For example, invoke "emacs -batch -f batch-info-validate $info/ ~/*.info"
+(autoload 'batch-info-validate "informat" '(#$ . 375461) nil nil)
+#@62 Select an input method and turn it on in interactive search.
+(autoload 'isearch-toggle-specified-input-method "isearch-x" '(#$ . 375800) t nil)
+#@44 Toggle input method in interactive search.
+(autoload 'isearch-toggle-input-method "isearch-x" '(#$ . 375950) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload isearch-process-search-multibyte-characters "isearch-x" nil] 6)
+#@836 Toggle ISO Accents mode, in which accents modify the following letter.
+This permits easy insertion of accented characters according to ISO-8859-1.
+When Iso-accents mode is enabled, accent character keys
+(`, ', ", ^, / and ~) do not self-insert; instead, they modify the following
+letter key so that it inserts an ISO accented letter.
+
+You can customize ISO Accents mode to a particular language
+with the command `iso-accents-customize'.
+
+Special combinations: ~c gives a c with cedilla,
+~d gives an Icelandic eth (d with dash).
+~t gives an Icelandic thorn.
+"s gives German sharp s.
+/a gives a with ring.
+/e gives an a-e ligature.
+~< and ~> give guillemots.
+~! gives an inverted exclamation mark.
+~? gives an inverted question mark.
+
+With an argument, a positive argument enables ISO Accents mode, 
+and a negative argument disables it.
+(autoload 'iso-accents-mode "iso-acc" '(#$ . 376190) t nil)
+#@186 Translate net conventions for Spanish to ISO 8859-1.
+The region between FROM and TO is translated using the table TRANS-TAB.
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-spanish "iso-cvt" '(#$ . 377092) t nil)
+#@185 Translate net conventions for German to ISO 8859-1.
+The region between FROM and TO is translated using the table TRANS-TAB.
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-german "iso-cvt" '(#$ . 377339) t nil)
+#@183 Translate ISO 8859-1 characters to TeX sequences.
+The region between FROM and TO is translated using the table TRANS-TAB.
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-iso2tex "iso-cvt" '(#$ . 377584) t nil)
+#@183 Translate TeX sequences to ISO 8859-1 characters.
+The region between FROM and TO is translated using the table TRANS-TAB.
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-tex2iso "iso-cvt" '(#$ . 377828) t nil)
+#@190 Translate German TeX sequences to ISO 8859-1 characters.
+The region between FROM and TO is translated using the table TRANS-TAB.
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-gtex2iso "iso-cvt" '(#$ . 378072) t nil)
+#@190 Translate ISO 8859-1 characters to German TeX sequences.
+The region between FROM and TO is translated using the table TRANS-TAB.
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-iso2gtex "iso-cvt" '(#$ . 378324) t nil)
+#@190 Translate ISO 8859-1 characters to German TeX sequences.
+The region between FROM and TO is translated using the table TRANS-TAB.
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-iso2duden "iso-cvt" '(#$ . 378576) t nil)
+#@197 Translate ISO 8859-1 characters in the region to SGML entities.
+The entities used are from "ISO 8879:1986//ENTITIES Added Latin 1//EN".
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-iso2sgml "iso-cvt" '(#$ . 378829) t nil)
+#@197 Translate SGML entities in the region to ISO 8859-1 characters.
+The entities used are from "ISO 8879:1986//ENTITIES Added Latin 1//EN".
+Optional arg BUFFER is ignored (for use in `format-alist').
+(autoload 'iso-sgml2iso "iso-cvt" '(#$ . 379088) t nil)
+#@32 Warn that format is read-only.
+(autoload 'iso-cvt-read-only "iso-cvt" '(#$ . 379346) t nil)
+#@33 Warn that format is write-only.
+(autoload 'iso-cvt-write-only "iso-cvt" '(#$ . 379444) t nil)
+#@73 Add submenus to the Files menu, to convert to and from various formats.
+(autoload 'iso-cvt-define-menu "iso-cvt" '(#$ . 379544) t nil)
+(byte-code "\204\301 \302\303\304#\207" [key-translation-map make-sparse-keymap define-key "8" iso-transl-ctl-x-8-map] 4)
+#@26 Keymap for C-x 8 prefix.
+(autoload 'iso-transl-ctl-x-8-map "iso-transl" '(#$ . 379813) t 'keymap)
+#@26 Non nil if using XEmacs.
+(defconst xemacsp (string-match "Lucid\\|XEmacs" emacs-version) (#$ . 379917))
+#@36 Non nil if using emacs version 18.
+(defconst version18p (string-match "18\\.[0-9]+\\.[0-9]+" emacs-version) (#$ . 380027))
+#@36 Non nil if using emacs version 20.
+(defconst version20p (string-match "20\\.[0-9]+\\.[0-9]+" emacs-version) (#$ . 380156))
+#@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.
+(defvar ispell-personal-dictionary nil (#$ . -380286))
+#@86 *Contains local or customized dictionary definitions.
+See `ispell-dictionary-alist'.
+(defvar ispell-local-dictionary-alist nil (#$ . -380530))
+(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 ("-d" "brasileiro") nil iso-8859-1) ("british" "[A-Za-z]" "[^A-Za-z]" "[']" nil ("-B" "-d" "british") 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" "-d" "castellano") "~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" "-d" "czech") 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-1) ("esperanto-tex" "[A-Za-z^\\]" "[^A-Za-z^\\]" "[-'`\"]" t ("-C" "-d" "esperanto") "~tex" iso-8859-1) ("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-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" "[^A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" "[']" t ("-C") nil iso-8859-1) ("nederlands8" "[A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" "[^A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\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 ("-d" "norsk") "~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 ("-d" "polish") nil iso-8859-2) ("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 ("-d" "russian") nil koi8-r) ("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) ("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" "-d" "portugues") "~latin1" iso-8859-1) ("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" "-d" "slovak") nil iso-8859-2)) nil] 1)
+#@2098 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.
+
+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-local-dictionary-alist ispell-dictionary-alist-1 ispell-dictionary-alist-2 ispell-dictionary-alist-3 ispell-dictionary-alist-4 ispell-dictionary-alist-5 ispell-dictionary-alist-6) (#$ . 386321))
+#@26 Key map for ispell menu.
+(defvar ispell-menu-map nil (#$ . 388666))
+#@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 (#$ . 388741))
+(byte-code "\304B\306\304!\204	?\205\n?\205?\205\307\f\203\325\310\311!\203*\311 \204\325\312\313\314B
B!\306\315!\2059
\314\211;<=>\316\317!>\203\324>@@<\320\321>@8\235A@;>A><;\204}\322	\323\324!\325\326\327\314\330\331\313DFBB#\210\202G=\203\267\332=\333<\334R!\204\267\332=\333<\335R!\204\267;\203G\332=\333;\334R!\204\267\332=\333;\335R!\203G\322	\323\336<!!\337\340<!\341Q\327\314\342\331<DFB#\210\202G,\f\203\310\311!\203\344\311 \204\322	\343\344#\210\322	\345\346#\210\322	\347\350#\210\322	\351\352#\210\322	\353\354#\210\322	\355\356#\210\f\203)\310\311!\203\311 \204)\322	\357\360#\210\322	\361\362#\210\322	\363\364#\210\f\203O\310\311!\2038\311 \204O\322	\365\366#\210\322	\367\370#\210\322	\371\372#\210\301\211JM\210\314\207" [current-load-list ispell-menu-map version18p xemacsp ispell-menu-map-needed ispell-dictionary-alist boundp reload fboundp byte-compiling-files-p reverse "default" nil ispell-library-path make-sparse-keymap "Spell" "-d" 5 define-key vector default "Select Default Dict" "Dictionary for which Ispell was configured" lambda (interactive) ispell-change-dictionary file-exists-p "/" ".hash" ".has" intern "Select " capitalize " Dict" (interactive) [ispell-change-dictionary] (menu-item "Change Dictionary..." ispell-change-dictionary :help "Supply explicit path to dictionary") [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-help] (menu-item "Help" (lambda nil (interactive) (describe-function 'ispell-help)) :help "Show standard Ispell keybindings and commands") [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 :help "Skip headers and included message text") [ispell-buffer] (menu-item "Spell-Check Buffer" ispell-buffer :help "Check spelling of selected buffer") load-dict name path dicts] 10)
+#@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 ]*--*") ("^---* \\(Start of \\)?[Ff]orwarded [Mm]essage" . "^---* End of [Ff]orwarded [Mm]essage") ("\\(-+\\|\\(/\\|\\(\\(\\w\\|[-_]\\)+[.:@]\\)\\)\\(\\w\\|[-_]\\)*\\([.:/@]+\\(\\w\\|[-_]\\|~\\)+\\)+\\)")) (#$ . 391904))
+#@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]*}"))) (#$ . -392746))
+(define-key esc-map "$" 'ispell-word)
+#@1062 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 described by `ispell-dictionary-alist' (which see).
+
+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 accpeted.
+0             word is inserted into buffer-local definitions.
+"word"        word corrected from word list.
+("word" arg)  word is hand entered.
+quit          spell session exited.
+(autoload 'ispell-word "ispell" '(#$ . 393599) t nil)
+#@96 Check to see if the personal dictionary has been modified.
+If so, ask if it needs to be saved.
+(autoload 'ispell-pdict-save "ispell" '(#$ . 394720) t nil)
+#@1039 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':  redraws screen
+`C-r':  recursive edit
+`C-z':  suspend emacs or iconify frame
+(autoload 'ispell-help "ispell" '(#$ . 394883) nil nil)
+#@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.
+(autoload 'ispell-kill-ispell "ispell" '(#$ . 395984) t nil)
+#@243 Change `ispell-dictionary' (q.v.) to DICT and kill old Ispell process.
+A new one will be started as soon as necessary.
+
+By just answering RET you can find out what the current dictionary is.
+
+With prefix argument, set the default dictionary.
+(autoload 'ispell-change-dictionary "ispell" '(#$ . 396184) t nil)
+#@152 Interactively check a region for spelling errors.
+Return nil if spell session is quit,
+ otherwise returns shift offset amount for last line processed.
+(autoload 'ispell-region "ispell" '(#$ . 396500) t nil)
+#@71 Check comments and strings in the current buffer for spelling errors.
+(autoload 'ispell-comments-and-strings "ispell" '(#$ . 396713) t nil)
+#@61 Check the current buffer for spelling errors interactively.
+(autoload 'ispell-buffer "ispell" '(#$ . 396859) t nil)
+#@69 Continue a halted spelling session beginning with the current word.
+(autoload 'ispell-continue "ispell" '(#$ . 396981) t nil)
+#@211 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.
+(autoload 'ispell-complete-word "ispell" '(#$ . 397114) t nil)
+#@59 Completes word matching character sequence inside a word.
+(autoload 'ispell-complete-word-interior-frag "ispell" '(#$ . 397393) t 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.
+(autoload 'ispell "ispell" '(#$ . 397535) t nil)
+#@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.
+(autoload 'ispell-minor-mode "ispell" '(#$ . 397992) t nil)
+#@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)))
+(autoload 'ispell-message "ispell" '(#$ . 398382) t nil)
+#@133 Toggle Iswitchb mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `iswitchb-mode'.
+(defvar iswitchb-mode nil (#$ . 399332))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group iswitchb iswitchb-mode custom-variable custom-add-load] 4)
+#@287 Replacement for the built-in `read-buffer'.
+Return the name of a buffer selected.
+PROMPT is the prompt to give to the user.  DEFAULT if given is the default
+buffer to be selected, which will go to the front of the list.
+If REQUIRE-MATCH is non-nil, an existing-buffer must be selected.
+(autoload 'iswitchb-read-buffer "iswitchb" '(#$ . 399645) nil nil)
+#@190 Set up default keybindings for `iswitchb-buffer'.
+Call this function to override the normal bindings.  This function also
+adds a hook to the minibuffer.
+
+Obsolescent.  Use `iswitchb-mode'.
+(autoload 'iswitchb-default-keybindings "iswitchb" '(#$ . 400005) t nil)
+#@317 Switch to another buffer.
+
+The buffer name is selected interactively by typing a substring.  The
+buffer is displayed according to `iswitchb-default-method' -- the
+default is to show it in the same window, unless it is already visible
+in another frame.
+For details of keybindings, do `\[describe-function] iswitchb'.
+(autoload 'iswitchb-buffer "iswitchb" '(#$ . 400274) t nil)
+#@186 Switch to another buffer and show it in another window.
+The buffer name is selected interactively by typing a substring.
+For details of keybindings, do `\[describe-function] iswitchb'.
+(autoload 'iswitchb-buffer-other-window "iswitchb" '(#$ . 400657) t nil)
+#@186 Display a buffer in another window but don't select it.
+The buffer name is selected interactively by typing a substring.
+For details of keybindings, do `\[describe-function] iswitchb'.
+(autoload 'iswitchb-display-buffer "iswitchb" '(#$ . 400922) t nil)
+#@185 Switch to another buffer and show it in another frame.
+The buffer name is selected interactively by typing a substring.
+For details of keybindings, do `\[describe-function] iswitchb'.
+(autoload 'iswitchb-buffer-other-frame "iswitchb" '(#$ . 401182) t nil)
+#@192 Toggle Iswitchb global minor mode.
+With arg, turn Iswitchb mode on if and only iff ARG is positive.
+This mode enables switching between buffers using substrings.  See
+`iswitchb' for details.
+(autoload 'iswitchb-mode "iswitchb" '(#$ . 401445) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload setup-japanese-environment-internal "japan-util" nil] 6)
+#@395 Convert argument to Katakana and return that.
+The argument may be a character or string.  The result has the same type.
+The argument object is not altered--the value is a copy.
+Optional argument HANKAKU t means to convert to `hankaku' Katakana
+ (`japanese-jisx0201-kana'), in which case return value
+ may be a string even if OBJ is a character if two Katakanas are
+ necessary to represent OBJ.
+(autoload 'japanese-katakana "japan-util" '(#$ . 401811) nil nil)
+#@178 Convert argument to Hiragana and return that.
+The argument may be a character or string.  The result has the same type.
+The argument object is not altered--the value is a copy.
+(autoload 'japanese-hiragana "japan-util" '(#$ . 402278) nil nil)
+#@254 Convert argument to `hankaku' and return that.
+The argument may be a character or string.  The result has the same type.
+The argument object is not altered--the value is a copy.
+Optional argument ASCII-ONLY non-nil means to return only ASCII character.
+(autoload 'japanese-hankaku "japan-util" '(#$ . 402528) nil nil)
+#@179 Convert argument to `zenkaku' and return that.
+The argument may be a character or string.  The result has the same type.
+The argument object is not altered--the value is a copy.
+(autoload 'japanese-zenkaku "japan-util" '(#$ . 402853) nil nil)
+#@193 Convert Japanese `hiragana' chars in the region to `katakana' chars.
+Optional argument HANKAKU t means to convert to `hankaku katakana' character
+of which charset is `japanese-jisx0201-kana'.
+(autoload 'japanese-katakana-region "japan-util" '(#$ . 403103) t nil)
+#@70 Convert Japanese `katakana' chars in the region to `hiragana' chars.
+(autoload 'japanese-hiragana-region "japan-util" '(#$ . 403372) t nil)
+#@251 Convert Japanese `zenkaku' chars in the region to `hankaku' chars.
+`Zenkaku' chars belong to `japanese-jisx0208'
+`Hankaku' chars belong to `ascii' or `japanese-jisx0201-kana'.
+Optional argument ASCII-ONLY non-nil means to convert only to ASCII char.
+(autoload 'japanese-hankaku-region "japan-util" '(#$ . 403519) t nil)
+#@253 Convert hankaku' chars in the region to Japanese `zenkaku' chars.
+`Zenkaku' chars belong to `japanese-jisx0208'
+`Hankaku' chars belong to `ascii' or `japanese-jisx0201-kana'.
+Optional argument KATAKANA-ONLY non-nil means to convert only KATAKANA char.
+(autoload 'japanese-zenkaku-region "japan-util" '(#$ . 403846) t nil)
+#@150 Read a Hiragana string from the minibuffer, prompting with string PROMPT.
+If non-nil, second arg INITIAL-INPUT is a string to insert before reading.
+(autoload 'read-hiragana-string "japan-util" '(#$ . 404175) nil nil)
+#@255 Register FUN as a fontification function to be called in this buffer.
+FUN will be called with two arguments START and END indicating the region
+that needs to be (re)fontified.
+If non-nil, CONTEXTUAL means that a contextual fontification would be useful.
+(autoload 'jit-lock-register "jit-lock" '(#$ . 404400) nil nil)
+#@242 Non-nil if Auto-Compression mode is enabled.
+See the command `auto-compression-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `auto-compression-mode'.
+(defvar auto-compression-mode nil (#$ . 404725))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group jka-compr auto-compression-mode custom-variable custom-add-load] 4)
+#@191 Toggle automatic file compression and uncompression.
+With prefix argument ARG, turn auto compression on if positive, else off.
+Returns the new status of auto compression (non-nil means on).
+(autoload 'auto-compression-mode "jka-compr" '(#$ . 405164) t nil)
+#@73 Evalute BODY with automatic file compression and uncompression enabled.
+(autoload 'with-auto-compression-mode "jka-compr" '(#$ . 405427) nil 'macro)
+#@589 Go to a line breaking position near point by doing `kinsoku' processing.
+LINEBEG is a buffer position we can't break a line before.
+
+`Kinsoku' processing is to prohibit specific characters to be placed
+at beginning of line or at end of line.  Characters not to be placed
+at beginning and end of line have character category `>' and `<'
+respectively.  This restriction is dissolved by making a line longer or
+shorter.
+
+`Kinsoku' is a Japanese word which originally means ordering to stay
+in one place, and is used for the text processing described above in
+the context of text formatting.
+(autoload 'kinsoku "kinsoku" '(#$ . 405583) nil nil)
+#@325 Functions to run after a conversion is selected in `japanese' input method.
+With this input method, a user can select a proper conversion from
+candidate list.  Each time he changes the selection, functions in this
+list are called with two arguments; starting and ending buffer
+positions that contains the current selection.
+(defvar kkc-after-update-conversion-functions nil (#$ . 406231))
+#@375 Convert Kana string in the current region to Kanji-Kana mixed string.
+Users can select a desirable conversion interactively.
+When called from a program, expects two arguments,
+positions FROM and TO (integers or markers) specifying the target region.
+When it returns, the point is at the tail of the selected conversion,
+and the return value is the length of the conversion.
+(autoload 'kkc-region "kkc" '(#$ . 406627) t nil)
+#@76 *The kind of Korean keyboard for Korean input method.
+"" for 2, "3" for 3.
+(defvar default-korean-keyboard (byte-code "\300\301\302\303!\206	\304\"\203\301\207\304\207" [string-match "3" getenv "HANGUL_KEYBOARD_TYPE" ""] 4) (#$ . -407057))
+(byte-code "\300\301\302\303\211\211%\210\304\305\306\"\207" [autoload setup-korean-environment-internal "korea-util" nil defalias landmark-repeat lm-test-run] 6)
+#@72 Run 100 Lm games, each time saving the weights from the previous game.
+(autoload 'lm-test-run "landmark" '(#$ . 407469) t nil)
+(defalias 'landmark 'lm)
+#@614 Start or resume an Lm game.
+If a game is in progress, this command allows you to resume it.
+Here is the relation between prefix args and game options:
+
+prefix arg | robot is auto-started | weights are saved from last game
+---------------------------------------------------------------------
+none / 1   | yes                   | no
+       2   | yes                   | yes
+       3   | no                    | yes
+       4   | no                    | no
+
+You start by moving to a square and typing \[lm-start-robot],
+if you did not use a prefix arg to ask for automatic start.
+Use \[describe-mode] for more info.
+(autoload 'lm "landmark" '(#$ . 407628) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload lao-compose-string "lao-util" nil] 6)
+#@430 Transcribe a Romanized Lao syllable in the region FROM and TO to Lao string.
+Only the first syllable is transcribed.
+The value has the form: (START END LAO-STRING), where
+START and END are the beggining and end positions of the Roman Lao syllable,
+LAO-STRING is the Lao character transcription of it.
+
+Optional 3rd arg STR, if non-nil, is a string to search for Roman Lao
+syllable.  In that case, FROM and TO are indexes to STR.
+(autoload 'lao-transcribe-single-roman-syllable-to-lao "lao-util" '(#$ . 408386) nil nil)
+#@62 Transcribe Romanized Lao string STR to Lao character string.
+(autoload 'lao-transcribe-roman-to-lao-string "lao-util" '(#$ . 408911) nil nil)
+#@228 Compose Lao text in the region FROM and TO.
+The text matches the regular expression PATTERN.
+Optional 4th argument STRING, if non-nil, is a string containing text
+to compose.
+
+The return value is number of composed characters.
+(autoload 'lao-composition-function "lao-util" '(#$ . 409060) nil nil)
+(autoload 'lao-compose-region "lao-util" nil t nil)
+#@536 Set up Latin-1/ASCII display for ISO8859 character sets.
+This is done for each character set in the list `latin1-display-sets',
+if no font is available to display it.  Characters are displayed using
+the corresponding Latin-1 characters where they match.  Otherwise
+ASCII sequences are used, mostly following the Latin prefix input
+methods.  Some different ASCII sequences are used if
+`latin1-display-mnemonic' is non-nil.
+
+Setting this variable directly does not take effect;
+use either M-x customize of the function `latin1-display'.
+(defvar latin1-display nil (#$ . 409417))
+(byte-code "\300\301\211\302#\210\303\301\304\"\207" [custom-add-to-group latin1-display custom-variable custom-add-load latin1-disp] 4)
+#@272 Set up Latin-1/ASCII display for the arguments character SETS.
+See option `latin1-display' for the method.  The members of the list
+must be in `latin1-display-sets'.  With no arguments, reset the
+display for all of `latin1-display-sets'. See also `latin1-display-setup'.
+(autoload 'latin1-display "latin1-disp" '(#$ . 410138) nil nil)
+#@2800 Toggle Lazy Lock mode.
+With arg, turn Lazy Lock mode on if and only if arg is positive.  Enable it
+automatically in your `~/.emacs' by:
+
+ (setq font-lock-support-mode 'lazy-lock-mode)
+
+When Lazy Lock mode is enabled, fontification can be lazy in a number of ways:
+
+- Demand-driven buffer fontification if `lazy-lock-minimum-size' is non-nil.
+  This means initial fontification does not occur if the buffer is greater than
+  `lazy-lock-minimum-size' characters in length.  Instead, fontification occurs
+  when necessary, such as when scrolling through the buffer would otherwise
+  reveal unfontified areas.  This is useful if buffer fontification is too slow
+  for large buffers.
+
+- Deferred scroll fontification if `lazy-lock-defer-on-scrolling' is non-nil.
+  This means demand-driven fontification does not occur as you scroll.
+  Instead, fontification is deferred until after `lazy-lock-defer-time' seconds
+  of Emacs idle time, while Emacs remains idle.  This is useful if
+  fontification is too slow to keep up with scrolling.
+
+- Deferred on-the-fly fontification if `lazy-lock-defer-on-the-fly' is non-nil.
+  This means on-the-fly fontification does not occur as you type.  Instead,
+  fontification is deferred until after `lazy-lock-defer-time' seconds of Emacs
+  idle time, while Emacs remains idle.  This is useful if fontification is too
+  slow to keep up with your typing.
+
+- Deferred context fontification if `lazy-lock-defer-contextually' is non-nil.
+  This means fontification updates the buffer corresponding to true syntactic
+  context, after `lazy-lock-defer-time' seconds of Emacs idle time, while Emacs
+  remains idle.  Otherwise, fontification occurs on modified lines only, and
+  subsequent lines can remain fontified corresponding to previous syntactic
+  contexts.  This is useful where strings or comments span lines.
+
+- Stealthy buffer fontification if `lazy-lock-stealth-time' is non-nil.
+  This means remaining unfontified areas of buffers are fontified if Emacs has
+  been idle for `lazy-lock-stealth-time' seconds, while Emacs remains idle.
+  This is useful if any buffer has any deferred fontification.
+
+Basic Font Lock mode on-the-fly fontification behaviour fontifies modified
+lines only.  Thus, if `lazy-lock-defer-contextually' is non-nil, Lazy Lock mode
+on-the-fly fontification may fontify differently, albeit correctly.  In any
+event, to refontify some lines you can use \[font-lock-fontify-block].
+
+Stealth fontification only occurs while the system remains unloaded.
+If the system load rises above `lazy-lock-stealth-load' percent, stealth
+fontification is suspended.  Stealth fontification intensity is controlled via
+the variable `lazy-lock-stealth-nice' and `lazy-lock-stealth-lines', and
+verbosity is controlled via the variable `lazy-lock-stealth-verbose'.
+(autoload 'lazy-lock-mode "lazy-lock" '(#$ . 410481) t nil)
+#@41 Unconditionally turn on Lazy Lock mode.
+(autoload 'turn-on-lazy-lock "lazy-lock" '(#$ . 413346) nil nil)
+#@69 *Non-nil means Ledit should save files before transferring to Lisp.
+(defconst ledit-save-files t (#$ . -413457))
+#@48 *Shell commands to execute to resume Lisp job.
+(defconst ledit-go-to-lisp-string "%?lisp" (#$ . -413576))
+#@57 *Shell commands to execute to resume Lisp compiler job.
+(defconst ledit-go-to-liszt-string "%?liszt" (#$ . -413688))
+#@577 \<ledit-mode-map>Major mode for editing text and stuffing it to a Lisp job.
+Like Lisp mode, plus these special commands:
+  \[ledit-save-defun]	-- record defun at or after point
+	   for later transmission to Lisp job.
+  \[ledit-save-region] -- record region for later transmission to Lisp job.
+  \[ledit-go-to-lisp] -- transfer to Lisp job and transmit saved text.
+  \[ledit-go-to-liszt] -- transfer to Liszt (Lisp compiler) job
+	   and transmit saved text.
+\{ledit-mode-map}
+To make Lisp mode automatically change to Ledit mode,
+do (setq lisp-mode-hook 'ledit-from-lisp-mode)
+(autoload 'ledit-mode "ledit" '(#$ . 413812) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload ledit-from-lisp-mode "ledit" nil] 6)
+#@206 Run Conway's Life simulation.
+The starting pattern is randomly selected.  Prefix arg (optional first
+arg non-nil from a program) is the number of seconds to sleep between
+generations (this defaults to 1).
+(autoload 'life "life" '(#$ . 414537) t nil)
+#@170 Unload the library that provided FEATURE, restoring all its autoloads.
+If the feature is required by any other loaded code, and prefix arg FORCE
+is nil, raise an error.
+(autoload 'unload-feature "loadhist" '(#$ . 414794) t nil)
+#@120 Run the program `locate', putting results in `*Locate*' buffer.
+With prefix arg, prompt for the locate command to run.
+(autoload 'locate "locate" '(#$ . 415029) t nil)
+#@168 Run the locate command with a filter.
+
+The filter is a regular expression. Only results matching the filter are
+shown; this is often useful to constrain a big search.
+(autoload 'locate-with-filter "locate" '(#$ . 415204) t nil)
+#@796 Setup a buffer to enter a log message.
+\<log-edit-mode-map>The buffer will be put in `log-edit-mode'.
+If SETUP is non-nil, the buffer is then erased and `log-edit-hook' is run.
+Mark and point will be set around the entire contents of the
+buffer so that it is easy to kill the contents of the buffer with \[kill-region].
+Once you're done editing the message, pressing \[log-edit-done] will call
+`log-edit-done' which will end up calling CALLBACK to do the actual commit.
+LISTFUN if non-nil is a function of no arguments returning the list of files
+  that are concerned by the current operation (using relative names).
+If BUFFER is non-nil `log-edit' will jump to that buffer, use it to edit the
+  log message and go back to the current buffer when done.  Otherwise, it
+  uses the current buffer.
+(autoload 'log-edit "log-edit" '(#$ . 415439) nil nil)
+#@41 Major mode for browsing CVS log output.
+(autoload 'log-view-mode "log-view" '(#$ . 416295) t nil)
+(byte-code "\302B\304\302!\204	\305>\303B\304\303!\204	\306>\302\207" [current-load-list system-type lpr-windows-system lpr-lp-system boundp (emx win32 w32 mswindows ms-dos windows-nt) (usg-unix-v dgux hpux irix)] 2)
+#@737 *The name of a local printer to which data is sent for printing.
+(Note that PostScript files are sent to `ps-printer-name', which see.)
+
+On Unix-like systems, a string value should be a name understood by
+lpr's -P option; otherwise the value should be nil.
+
+On MS-DOS and MS-Windows systems, a string value is taken as the name of
+a printer device or port, provided `lpr-command' is set to "".
+Typical non-default settings would be "LPT1" to "LPT3" for parallel
+printers, or "COM1" to "COM4" or "AUX" for serial printers, or
+"//hostname/printer" for a shared network printer.  You can also set
+it to the name of a file, in which case the output gets appended to that
+file.  If you want to discard the printed output, set this to "NUL".
+(defvar printer-name (byte-code "\205\301\207" [lpr-windows-system "PRN"] 1) (#$ . -416627))
+#@181 *List of strings to pass as extra options for the printer program.
+It is recommended to set `printer-name' instead of including an explicit
+switch on this list.
+See `lpr-command'.
+(defvar lpr-switches nil (#$ . -417466))
+#@471 *Name of program for printing a file.
+
+On MS-DOS and MS-Windows systems, if the value is an empty string then
+Emacs will write directly to the printer port named by `printer-name'.
+The programs `print' and `nprint' (the standard print programs on
+Windows NT and Novell Netware respectively) are handled specially, using
+`printer-name' as the destination for output; any other program is
+treated like `lpr' except that an explicit filename is given as the last
+argument.
+(defvar lpr-command (byte-code "\203\302\207	\203\f\303\207\304\207" [lpr-windows-system lpr-lp-system "" "lp" "lpr"] 1) (#$ . -417694))
+#@152 Print buffer contents without pagination or page headers.
+See the variables `lpr-switches' and `lpr-command'
+for customization of the printer command.
+(autoload 'lpr-buffer "lpr" '(#$ . 418312) t nil)
+#@521 Paginate and print buffer contents.
+
+The variable `lpr-headers-switches' controls how to paginate.
+If it is nil (the default), we run the `pr' program (or whatever program
+`lpr-page-header-program' specifies) to paginate.
+`lpr-page-header-switches' specifies the switches for that program.
+
+Otherwise, the switches in `lpr-headers-switches' are used
+in the print command itself; we expect them to request pagination.
+ 
+See the variables `lpr-switches' and `lpr-command'
+for further customization of the printer command.
+(autoload 'print-buffer "lpr" '(#$ . 418520) t nil)
+#@152 Print region contents without pagination or page headers.
+See the variables `lpr-switches' and `lpr-command'
+for customization of the printer command.
+(autoload 'lpr-region "lpr" '(#$ . 419099) t nil)
+#@525 Paginate and print the region contents.
+
+The variable `lpr-headers-switches' controls how to paginate.
+If it is nil (the default), we run the `pr' program (or whatever program
+`lpr-page-header-program' specifies) to paginate.
+`lpr-page-header-switches' specifies the switches for that program.
+
+Otherwise, the switches in `lpr-headers-switches' are used
+in the print command itself; we expect them to request pagination.
+ 
+See the variables `lpr-switches' and `lpr-command'
+for further customization of the printer command.
+(autoload 'print-region "lpr" '(#$ . 419307) t nil)
+(custom-declare-group 'ls-lisp nil "Emulate the ls program completely in Emacs Lisp." :version "21.1" :group 'dired)
+#@209 Display the quarters of the moon for last month, this month, and next month.
+If called with an optional prefix argument, prompts for month and year.
+
+This function is suitable for execution in a .emacs file.
+(autoload 'phases-of-moon "lunar" '(#$ . 420007) t nil)
+#@54 A major mode to edit m4 macro files.
+\{m4-mode-map}
+
+(autoload 'm4-mode "m4-mode" '(#$ . 420277) t nil)
+#@238 Assign a name to the last keyboard macro defined.
+Argument SYMBOL is the name to define.
+The symbol's function definition becomes the keyboard macro string.
+Such a "function" cannot be called from Lisp, but it is a valid editor command.
+(autoload 'name-last-kbd-macro "macros" '(#$ . 420388) t nil)
+#@584 Insert in buffer the definition of kbd macro NAME, as Lisp code.
+Optional second arg KEYS means also record the keys it is on
+(this is the prefix argument, when calling interactively).
+
+This Lisp code will, when executed, define the kbd macro with the same
+definition it has now.  If you say to record the keys, the Lisp code
+will also rebind those keys to the macro.  Only global key bindings
+are recorded since executing this Lisp code always makes global
+bindings.
+
+To save a kbd macro, visit a file of Lisp code such as your `~/.emacs',
+use this command, and then save the file.
+(autoload 'insert-kbd-macro "macros" '(#$ . 420694) t nil)
+#@596 Query user during kbd macro execution.
+  With prefix argument, enters recursive edit, reading keyboard
+commands even within a kbd macro.  You can give different commands
+each time the macro executes.
+  Without prefix argument, asks whether to continue running the macro.
+Your options are: \<query-replace-map>
+\[act]	Finish this iteration normally and continue with the next.
+\[skip]	Skip the rest of this iteration, and start the next.
+\[exit]	Stop the macro entirely right now.
+\[recenter]	Redisplay the screen, then ask again.
+\[edit]	Enter recursive edit; ask again when you exit from that.
+(autoload 'kbd-macro-query "macros" '(#$ . 421343) t nil)
+#@1314 For each complete line between point and mark, move to the beginning
+of the line, and run the last keyboard macro.
+
+When called from lisp, this function takes two arguments TOP and
+BOTTOM, describing the current region.  TOP must be before BOTTOM.
+The optional third argument MACRO specifies a keyboard macro to
+execute.
+
+This is useful for quoting or unquoting included text, adding and
+removing comments, or producing tables where the entries are regular.
+
+For example, in Usenet articles, sections of text quoted from another
+author are indented, or have each line start with `>'.  To quote a
+section of text, define a keyboard macro which inserts `>', put point
+and mark at opposite ends of the quoted section, and use
+`\[apply-macro-to-region-lines]' to mark the entire section.
+
+Suppose you wanted to build a keyword table in C where each entry
+looked like this:
+
+    { "foo", foo_data, foo_function }, 
+    { "bar", bar_data, bar_function },
+    { "baz", baz_data, baz_function },
+
+You could enter the names in this format:
+
+    foo
+    bar
+    baz
+
+and write a macro to massage a word into a table entry:
+
+    \C-x (
+       \M-d { "\C-y", \C-y_data, \C-y_function },
+    \C-x )
+
+and then select the region of un-tablified names and use
+`\[apply-macro-to-region-lines]' to build the table from the names.
+
+(autoload 'apply-macro-to-region-lines "macros" '(#$ . 422004) t nil)
+(define-key ctl-x-map "q" 'kbd-macro-query)
+#@733 Given an RFC-822 address ADDRESS, extract full name and canonical address.
+Returns a list of the form (FULL-NAME CANONICAL-ADDRESS).
+If no name can be extracted, FULL-NAME will be nil.
+
+If the optional argument ALL is non-nil, then ADDRESS can contain zero
+or more recipients, separated by commas, and we return a list of
+the form ((FULL-NAME CANONICAL-ADDRESS) ...) with one element for
+each recipient.  If ALL is nil, then if ADDRESS contains more than
+one recipients, all but the first is ignored.
+
+ADDRESS may be a string or a buffer.  If it is a buffer, the visible
+ (narrowed) portion of the buffer will be interpreted as the address.
+ (This feature exists so that the clever caller might be able to avoid
+ consing a string.)
+(autoload 'mail-extract-address-components "mail-extr" '(#$ . 423438) nil nil)
+#@62 Convert mail domain DOMAIN to the country it corresponds to.
+(autoload 'what-domain "mail-extr" '(#$ . 424255) t nil)
+#@67 Define keys for accessing mail header history.  For use in hooks.
+(autoload 'mail-hist-define-keys "mail-hist" '(#$ . 424379) nil nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload mail-hist-enable "mail-hist" nil] 6)
+#@70 *Non-nil means keep a history for headers and text of outgoing mail.
+(defvar mail-hist-keep-history t (#$ . -424610))
+#@213 Put headers and contents of this message into mail header history. 
+Each header has its own independent history, as does the body of the
+message.
+
+This function normally would be called when the message is sent.
+(autoload 'mail-hist-put-headers-into-history "mail-hist" '(#$ . 424735) nil nil)
+#@148 *If non-nil, use a full, hairy RFC822 parser on mail addresses.
+Otherwise, (the default) use a smaller, somewhat faster, and
+often correct parser.
+(defvar mail-use-rfc822 nil (#$ . -425036))
+(byte-code "\300\301\302\303\211\211%\207" [autoload mail-file-babyl-p "mail-utils" nil] 6)
+#@154 Convert a string to the "quoted printable" Q encoding.
+If the optional argument WRAPPER is non-nil,
+we add the wrapper characters =?ISO-8859-1?Q?....?=.
+(autoload 'mail-quote-printable "mail-utils" '(#$ . 425326) nil nil)
+#@159 Undo the "quoted printable" encoding.
+If the optional argument WRAPPER is non-nil,
+we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=.
+(autoload 'mail-unquote-printable "mail-utils" '(#$ . 425555) nil nil)
+#@185 Undo the "quoted printable" encoding in buffer from BEG to END.
+If the optional argument WRAPPER is non-nil,
+we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=.
+(autoload 'mail-unquote-printable-region "mail-utils" '(#$ . 425791) t nil)
+#@347 Return the value of the header field whose type is FIELD-NAME.
+The buffer is expected to be narrowed to just the header of the message.
+If second arg LAST is non-nil, use the last field of type FIELD-NAME.
+If third arg ALL is non-nil, concatenate all such fields with commas between.
+If 4th arg LIST is non-nil, return a list of all such fields.
+(autoload 'mail-fetch-field "mail-utils" '(#$ . 426058) nil nil)
+#@45 Initialize use of the `mailabbrev' package.
+(autoload 'mail-abbrevs-setup "mailabbrev" '(#$ . 426475) nil nil)
+#@142 Read mail aliases from personal mail alias file and set `mail-abbrevs'.
+By default this is the file specified by `mail-personal-alias-file'.
+(autoload 'build-mail-abbrevs "mailabbrev" '(#$ . 426593) nil nil)
+#@137 Define NAME as a mail alias abbrev that translates to DEFINITION.
+If DEFINITION contains multiple addresses, separate them with commas.
+(autoload 'define-mail-abbrev "mailabbrev" '(#$ . 426808) t nil)
+#@277 *Specifies how \[mail-complete] formats the full name when it completes.
+If `nil', they contain just the return address like:
+	king@grassland.com
+If `parens', they look like:
+	king@grassland.com (Elvis Parsley)
+If `angles', they look like:
+	Elvis Parsley <king@grassland.com>
+(defvar mail-complete-style 'angles (#$ . -427016))
+#@326 Expand all mail aliases in suitable header fields found between BEG and END.
+If interactive, expand in header fields.
+Suitable header fields are `To', `From', `CC' and `BCC', `Reply-to', and
+their `Resent-' variants.
+
+Optional second arg EXCLUDE may be a regular expression defining text to be
+removed from alias expansions.
+(autoload 'expand-mail-aliases "mailalias" '(#$ . 427351) t nil)
+#@360 Define NAME as a mail alias that translates to DEFINITION.
+This means that sending a message to NAME will actually send to DEFINITION.
+
+Normally, the addresses in DEFINITION must be separated by commas.
+If FROM-MAILRC-FILE is non-nil, then addresses in DEFINITION 
+can be separated by spaces; an address can contain spaces
+if it is quoted with double-quotes.
+(autoload 'define-mail-alias "mailalias" '(#$ . 427748) t nil)
+#@215 Perform completion on header field or word preceding point.
+Completable headers are according to `mail-complete-alist'.  If none matches
+current header, calls `mail-complete-function' and passes prefix arg if any.
+(autoload 'mail-complete "mailalias" '(#$ . 428177) t nil)
+#@2692 Major mode for editing Makefiles.
+This function ends by invoking the function(s) `makefile-mode-hook'.
+
+\{makefile-mode-map}
+
+In the browser, use the following keys:
+
+\{makefile-browser-map}
+
+Makefile mode can be configured by modifying the following variables:
+
+makefile-browser-buffer-name:
+    Name of the macro- and target browser buffer.
+
+makefile-target-colon:
+    The string that gets appended to all target names
+    inserted by `makefile-insert-target'.
+    ":" or "::" are quite common values.
+
+makefile-macro-assign:
+   The string that gets appended to all macro names
+   inserted by `makefile-insert-macro'.
+   The normal value should be " = ", since this is what
+   standard make expects.  However, newer makes such as dmake
+   allow a larger variety of different macro assignments, so you
+   might prefer to use " += " or " := " .
+
+makefile-tab-after-target-colon:
+   If you want a TAB (instead of a space) to be appended after the
+   target colon, then set this to a non-nil value.
+
+makefile-browser-leftmost-column:
+   Number of blanks to the left of the browser selection mark.
+
+makefile-browser-cursor-column:
+   Column in which the cursor is positioned when it moves
+   up or down in the browser.
+
+makefile-browser-selected-mark:
+   String used to mark selected entries in the browser.
+
+makefile-browser-unselected-mark:
+   String used to mark unselected entries in the browser.
+
+makefile-browser-auto-advance-after-selection-p:
+   If this variable is set to a non-nil value the cursor
+   will automagically advance to the next line after an item
+   has been selected in the browser.
+
+makefile-pickup-everything-picks-up-filenames-p:
+   If this variable is set to a non-nil value then
+   `makefile-pickup-everything' also picks up filenames as targets
+   (i.e. it calls `makefile-pickup-filenames-as-targets'), otherwise
+   filenames are omitted.
+
+makefile-cleanup-continuations-p:
+   If this variable is set to a non-nil value then Makefile mode
+   will assure that no line in the file ends with a backslash
+   (the continuation character) followed by any whitespace.
+   This is done by silently removing the trailing whitespace, leaving
+   the backslash itself intact.
+   IMPORTANT: Please note that enabling this option causes Makefile mode
+   to MODIFY A FILE WITHOUT YOUR CONFIRMATION when "it seems necessary".
+
+makefile-browser-hook:
+   A function or list of functions to be called just before the
+   browser is entered. This is executed in the makefile buffer.
+
+makefile-special-targets-list:
+   List of special targets. You will be offered to complete
+   on one of those in the minibuffer whenever you enter a `.'.
+   at the beginning of a line in Makefile mode.
+(autoload 'makefile-mode "make-mode" '(#$ . 428458) t nil)
+#@116 Make a summary of current key bindings in the buffer *Summary*.
+Previous contents of that buffer are killed first.
+(autoload 'make-command-summary "makesum" '(#$ . 431215) t nil)
+(defalias 'manual-entry 'man)
+#@646 Get a Un*x manual page and put it in a buffer.
+This command is the top-level command in the man package.  It runs a Un*x
+command to retrieve and clean a manpage in the background and places the
+results in a Man mode (manpage browsing) buffer.  See variable
+`Man-notify-method' for what happens when the buffer is ready.
+If a buffer already exists for this man page, it will display immediately.
+
+To specify a man page from a certain section, type SUBJECT(SECTION) or
+SECTION SUBJECT when prompted for a manual entry.  To see manpages from
+all sections related to a subject, put something appropriate into the
+`Man-switches' variable, which see.
+(autoload 'man "man" '(#$ . 431431) t nil)
+#@72 Get a Un*x manual page of the item under point and put it in a buffer.
+(autoload 'man-follow "man" '(#$ . 432125) t nil)
+#@369 *Specifies how "From" headers look.
+
+If nil, they contain just the return address like:
+	king@grassland.com
+If `parens', they look like:
+	king@grassland.com (Elvis Parsley)
+If `angles', they look like:
+	Elvis Parsley <king@grassland.com>
+
+Otherwise, most addresses look like `angles', but they look like
+`parens' if `angles' would need quoting and `parens' would not.
+(defvar message-from-style 'default (#$ . -432253))
+#@42 Regexp matching the signature separator.
+(defvar message-signature-separator "^-- *$" (#$ . 432679))
+#@32 *Local news organization file.
+(defvar message-user-organization-file "/usr/lib/news/organization" (#$ . -432786))
+#@362 Function to call to send the current buffer as mail.
+The headers should be delimited by a line whose contents match the
+variable `mail-header-separator'.
+
+Valid values include `message-send-mail-with-sendmail' (the default),
+`message-send-mail-with-mh', `message-send-mail-with-qmail',
+`smtpmail-send-it' and `feedmail-send-it'.
+
+See also `send-mail-function'.
+(defvar message-send-mail-function 'message-send-mail-with-sendmail (#$ . 432908))
+#@57 *Function called to insert the "Whomever writes:" line.
+(defvar message-citation-line-function 'message-insert-citation-line (#$ . -433358))
+#@51 *Prefix inserted on the lines of yanked messages.
+(defvar message-yank-prefix "> " (#$ . -433505))
+#@223 *Function for citing an original message.
+Predefined functions include `message-cite-original' and
+`message-cite-original-without-signature'.
+Note that `message-cite-original' uses `mail-citation-hook' if that is non-nil.
+(defvar message-cite-function 'message-cite-original (#$ . -433611))
+#@260 *Function for modifying a citation just inserted in the mail buffer.
+This can also be a list of functions.  Each function can find the
+citation between (point) and (mark t).  And each function should leave
+point and mark around the citation text as modified.
+(defvar message-indent-citation-function 'message-indent-citation (#$ . -433909))
+#@248 *String to be inserted at the end of the message buffer.
+If t, the `message-signature-file' file will be inserted instead.
+If a function, the result from the function will be used instead.
+If a form, the result from the form will be used instead.
+(defvar message-signature t (#$ . -434257))
+#@145 *Name of file containing the text inserted at end of message buffer.
+Ignored if the named file doesn't exist.
+If nil, don't insert a signature.
+(defvar message-signature-file "~/.signature" (#$ . -434555))
+(define-mail-user-agent 'message-user-agent 'message-mail 'message-send-and-exit 'message-kill-buffer 'message-send-hook)
+#@1559 Major mode for editing mail and news to be sent.
+Like Text Mode but with these additional commands:\<message-mode-map>
+C-c C-s  `message-send' (send the message)  C-c C-c  `message-send-and-exit'
+C-c C-d  Postpone sending the message       C-c C-k  Kill the message
+C-c C-f  move to a header field (and create it if there isn't):
+	 C-c C-f C-t  move to To	C-c C-f C-s  move to Subject
+	 C-c C-f C-c  move to Cc	C-c C-f C-b  move to Bcc
+	 C-c C-f C-w  move to Fcc	C-c C-f C-r  move to Reply-To
+	 C-c C-f C-u  move to Summary	C-c C-f C-n  move to Newsgroups
+	 C-c C-f C-k  move to Keywords	C-c C-f C-d  move to Distribution
+	 C-c C-f C-f  move to Followup-To
+C-c C-t  `message-insert-to' (add a To header to a news followup)
+C-c C-n  `message-insert-newsgroups' (add a Newsgroup header to a news reply)
+C-c C-b  `message-goto-body' (move to beginning of message text).
+C-c C-i  `message-goto-signature' (move to the beginning of the signature).
+C-c C-w  `message-insert-signature' (insert `message-signature-file' file).
+C-c C-y  `message-yank-original' (insert current message, if any).
+C-c C-q  `message-fill-yanked-message' (fill what was yanked).
+C-c C-e  `message-elide-region' (elide the text between point and mark).
+C-c C-v  `message-delete-not-region' (remove the text outside the region).
+C-c C-z  `message-kill-to-signature' (kill the text up to the signature).
+C-c C-r  `message-caesar-buffer-body' (rot13 the message body).
+C-c C-a  `mml-attach-file' (attach a file as MIME).
+M-RET    `message-newline-and-reformat' (break the line and reformat).
+(autoload 'message-mode "message" '(#$ . 434891) t nil)
+#@91 Start editing a mail message to be sent.
+OTHER-HEADERS is an alist of header/value pairs.
+(autoload 'message-mail "message" '(#$ . 436511) t nil)
+#@42 Start editing a news article to be sent.
+(autoload 'message-news "message" '(#$ . 436663) t nil)
+#@61 Start editing a reply to the article in the current buffer.
+(autoload 'message-reply "message" '(#$ . 436766) t nil)
+#@59 Make a "wide" reply to the message in the current buffer.
+(autoload 'message-wide-reply "message" '(#$ . 436889) t nil)
+#@104 Follow up to the message in the current buffer.
+If TO-NEWSGROUPS, use that as the new Newsgroups line.
+(autoload 'message-followup "message" '(#$ . 437016) t nil)
+#@82 Cancel an article you posted.
+If ARG, allow editing of the cancellation message.
+(autoload 'message-cancel-news "message" '(#$ . 437185) t nil)
+#@168 Start composing a message to supersede the current message.
+This is done simply by taking the old article and adding a Supersedes
+header line with the old Message-ID.
+(autoload 'message-supersede "message" '(#$ . 437336) t nil)
+#@65 Reread contents of current buffer from its last auto-save file.
+(autoload 'message-recover "message" '(#$ . 437570) t nil)
+#@139 Forward the current message via mail.
+Optional NEWS will use news to forward instead of mail.
+Optional DIGEST will use digest to forward.
+(autoload 'message-forward "message" '(#$ . 437700) t nil)
+(byte-code "\300\301\302\303\211\211%\210\300\304\302\303\211\211%\207" [autoload message-forward-make-body "message" nil message-forward-rmail-make-body] 6)
+#@36 Let RMAIL uses message to forward.
+(autoload 'message-insinuate-rmail "message" '(#$ . 438061) t nil)
+#@40 Resend the current article to ADDRESS.
+(autoload 'message-resend "message" '(#$ . 438169) t nil)
+#@172 Re-mail the current message.
+This only makes sense if the current message is a bounce message that
+contains some mail you have written which has been bounced back to
+you.
+(autoload 'message-bounce "message" '(#$ . 438273) t nil)
+#@73 Like `message-mail' command, but display mail buffer in another window.
+(autoload 'message-mail-other-window "message" '(#$ . 438508) t nil)
+#@72 Like `message-mail' command, but display mail buffer in another frame.
+(autoload 'message-mail-other-frame "message" '(#$ . 438655) t nil)
+#@42 Start editing a news article to be sent.
+(autoload 'message-news-other-window "message" '(#$ . 438800) t nil)
+#@42 Start editing a news article to be sent.
+(autoload 'message-news-other-frame "message" '(#$ . 438916) t nil)
+#@173 Bold all nonblank characters in the region.
+Works by overstriking characters.
+Called from program, takes two arguments START and END
+which specify the range to operate on.
+(autoload 'bold-region "message" '(#$ . 439032) t nil)
+#@154 Remove all boldness (overstruck characters) in the region.
+Called from program, takes two arguments START and END
+which specify the range to operate on.
+(autoload 'unbold-region "message" '(#$ . 439266) t nil)
+#@186 Major mode for editing Metafont sources.
+Special commands:
+\{meta-mode-map}
+
+Turning on Metafont mode calls the value of the variables
+`meta-common-mode-hook' and `metafont-mode-hook'.
+(autoload 'metafont-mode "meta-mode" '(#$ . 439483) t nil)
+#@185 Major mode for editing MetaPost sources.
+Special commands:
+\{meta-mode-map}
+
+Turning on MetaPost mode calls the value of the variable
+`meta-common-mode-hook' and `metafont-mode-hook'.
+(autoload 'metapost-mode "meta-mode" '(#$ . 439734) t nil)
+#@103 Interpret a header part of a MIME message in current buffer.
+Its body part is not interpreted at all.
+(autoload 'metamail-interpret-header "metamail" '(#$ . 439984) t nil)
+#@303 Interpret a body part of a MIME message in current buffer.
+Optional argument VIEWMODE specifies the value of the
+EMACS_VIEW_MODE environment variable (defaulted to 1).
+Optional argument NODISPLAY non-nil means buffer is not
+redisplayed as output is inserted.
+Its header part is not interpreted at all.
+(autoload 'metamail-interpret-body "metamail" '(#$ . 440163) t nil)
+#@322 Process current buffer through `metamail'.
+Optional argument VIEWMODE specifies the value of the
+EMACS_VIEW_MODE environment variable (defaulted to 1).
+Optional argument BUFFER specifies a buffer to be filled (nil
+means current).
+Optional argument NODISPLAY non-nil means buffer is not
+redisplayed as output is inserted.
+(autoload 'metamail-buffer "metamail" '(#$ . 440540) t nil)
+#@322 Process current region through 'metamail'.
+Optional argument VIEWMODE specifies the value of the
+EMACS_VIEW_MODE environment variable (defaulted to 1).
+Optional argument BUFFER specifies a buffer to be filled (nil
+means current).
+Optional argument NODISPLAY non-nil means buffer is not
+redisplayed as output is inserted.
+(autoload 'metamail-region "metamail" '(#$ . 440928) t nil)
+#@203 Compose and send mail with the MH mail system.
+This function is an entry point to mh-e, the Emacs front end
+to the MH mail system.
+
+See documentation of `\[mh-send]' for more details on composing mail.
+(autoload 'mh-smail "mh-comp" '(#$ . 441316) t nil)
+#@329 Set up a mail composition draft with the MH mail system.
+This function is an entry point to mh-e, the Emacs front end
+to the MH mail system.  This function does not prompt the user
+for any header fields, and thus is suitable for use by programs
+that want to create a mail buffer.
+Users should use `\[mh-smail]' to compose mail.
+(autoload 'mh-smail-batch "mh-comp" '(#$ . 441577) nil nil)
+#@219 Compose and send mail in other window with the MH mail system.
+This function is an entry point to mh-e, the Emacs front end
+to the MH mail system.
+
+See documentation of `\[mh-send]' for more details on composing mail.
+(autoload 'mh-smail-other-window "mh-comp" '(#$ . 441972) t nil)
+#@1062 Mode for composing letters in mh-e.\<mh-letter-mode-map>
+When you have finished composing, type \[mh-send-letter] to send the message
+using the MH mail handling system.
+See the documentation for \[mh-edit-mhn] for information on composing MIME
+messages.
+
+\{mh-letter-mode-map}
+
+Variables controlling this mode (defaults in parentheses):
+
+ mh-delete-yanked-msg-window (nil)
+    If non-nil, \[mh-yank-cur-msg] will delete any windows displaying
+    the yanked message.
+
+ mh-yank-from-start-of-msg (t)
+    If non-nil, \[mh-yank-cur-msg] will include the entire message.
+    If `body', just yank the body (no header).
+    If nil, only the portion of the message following the point will be yanked.
+    If there is a region, this variable is ignored.
+
+ mh-ins-buf-prefix ("> ")
+    String to insert before each non-blank line of a message as it is
+    inserted in a draft letter.
+
+ mh-signature-file-name ("~/.signature")
+    File to be inserted into message by \[mh-insert-signature].
+
+This command runs the normal hooks `text-mode-hook' and `mh-letter-mode-hook'.
+(autoload 'mh-letter-mode "mh-comp" '(#$ . 442263) t nil)
+#@155 Inc(orporate) new mail with MH, or, with arg, scan an MH mail folder.
+This function is an entry point to mh-e, the Emacs front end
+to the MH mail system.
+(autoload 'mh-rmail "mh-e" '(#$ . 443389) t nil)
+#@73 Display version information about mh-e and the MH mail handling system.
+(autoload 'mh-version "mh-e" '(#$ . 443598) t nil)
+#@66 Legal MIME content types.  See documentation for \[mh-edit-mhn].
+(defvar mh-mime-content-types '(("text/plain") ("text/richtext") ("multipart/mixed") ("multipart/alternative") ("multipart/digest") ("multipart/parallel") ("message/rfc822") ("message/partial") ("message/external-body") ("application/octet-stream") ("application/postscript") ("image/jpeg") ("image/gif") ("audio/basic") ("video/mpeg")) (#$ . 443727))
+(byte-code "\300\301\302\303#\210\300\304\302\303#\210\300\305\302\303#\210\300\306\302\303#\207" [put mh-progs risky-local-variable t mh-lib mh-lib-progs mh-nmh-p] 4)
+#@564 Kill old buffers that have not been displayed recently.
+The relevant variables are `clean-buffer-list-delay-general',
+`clean-buffer-list-delay-special', `clean-buffer-list-kill-buffer-names',
+`clean-buffer-list-kill-never-buffer-names',
+`clean-buffer-list-kill-regexps' and
+`clean-buffer-list-kill-never-regexps'.
+While processing buffers, this procedure displays messages containing
+the current date/time, buffer name, how many seconds ago it was
+displayed (can be nil if the buffer was never displayed) and its
+lifetime, i.e., its "age" when it will be purged.
+(autoload 'clean-buffer-list "midnight" '(#$ . 444319) t nil)
+#@152 Modify `midnight-timer' according to `midnight-delay'.
+Sets the first argument SYMB (which must be symbol `midnight-delay')
+to its second argument TM.
+(autoload 'midnight-delay-set "midnight" '(#$ . 444951) nil nil)
+#@275 Non-nil if Minibuffer-Electric-Default mode is enabled.
+See the command `minibuffer-electric-default-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `minibuffer-electric-default-mode'.
+(defvar minibuffer-electric-default-mode nil (#$ . 445174))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group minibuffer minibuffer-electric-default-mode custom-variable custom-add-load minibuf-eldef] 4)
+#@454 Toggle Minibuffer Electric Default mode
+When active, minibuffer prompts that show a default value only show the
+default when it's applicable -- that is, when hitting RET would yield
+the default value.  If the user modifies the input such that hitting RET
+would enter a non-default value, the prompt is modified to remove the
+default indication.
+
+With prefix argument ARG, turn on if positive, otherwise off.
+Returns non-nil if the new state is enabled.
+(autoload 'minibuffer-electric-default-mode "minibuf-eldef" '(#$ . 445683) t nil)
+#@70 Convert buffer of Mocklisp code to real Lisp that GNU Emacs can run.
+(autoload 'convert-mocklisp-buffer "mlconvert" '(#$ . 446224) t nil)
+#@195 Show the partial part of HANDLE.
+This function replaces the buffer of HANDLE with a buffer contains 
+the entire message.
+If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing.
+(autoload 'mm-inline-partial "mm-partial" '(#$ . 446369) nil nil)
+#@61 Dissect the current buffer and return a list of uu handles.
+(autoload 'mm-uu-dissect "mm-uu" '(#$ . 446635) nil nil)
+#@53 Check whether the current buffer contains uu stuff.
+(autoload 'mm-uu-test "mm-uu" '(#$ . 446758) nil nil)
+#@1074 This is a mode intended to support program development in Modula-2.
+All control constructs of Modula-2 can be reached by typing C-c
+followed by the first character of the construct.
+\<m2-mode-map>
+  \[m2-begin] begin         \[m2-case] case
+  \[m2-definition] definition    \[m2-else] else
+  \[m2-for] for           \[m2-header] header
+  \[m2-if] if            \[m2-module] module
+  \[m2-loop] loop          \[m2-or] or
+  \[m2-procedure] procedure     Control-c Control-w with
+  \[m2-record] record        \[m2-stdio] stdio
+  \[m2-type] type          \[m2-until] until
+  \[m2-var] var           \[m2-while] while
+  \[m2-export] export        \[m2-import] import
+  \[m2-begin-comment] begin-comment \[m2-end-comment] end-comment
+  \[suspend-emacs] suspend Emacs     \[m2-toggle] toggle
+  \[m2-compile] compile           \[m2-next-error] next-error
+  \[m2-link] link
+
+   `m2-indent' controls the number of spaces for each indentation.
+   `m2-compile-command' holds the command to compile a Modula-2 program.
+   `m2-link-command' holds the command to link a Modula-2 program.
+(autoload 'modula-2-mode "modula2" '(#$ . 446872) t nil)
+#@51 Convert all text in a given region to morse code.
+(autoload 'morse-region "morse" '(#$ . 448008) t nil)
+#@60 Convert morse coded text in region to ordinary ASCII text.
+(autoload 'unmorse-region "morse" '(#$ . 448118) t nil)
+#@1426 Toggle Mouse Sel mode.
+With prefix ARG, turn Mouse Sel mode on if and only if ARG is positive.
+Returns the new status of Mouse Sel mode (non-nil means on).
+
+When Mouse Sel mode is enabled, mouse selection is enhanced in various ways:
+
+- Clicking mouse-1 starts (cancels) selection, dragging extends it.
+
+- Clicking or dragging mouse-3 extends the selection as well.
+
+- Double-clicking on word constituents selects words.
+Double-clicking on symbol constituents selects symbols.
+Double-clicking on quotes or parentheses selects sexps.
+Double-clicking on whitespace selects whitespace.
+Triple-clicking selects lines.
+Quad-clicking selects paragraphs.
+
+- Selecting sets the region & X primary selection, but does NOT affect
+the kill-ring, nor do the kill-ring function change the X selection.
+Because the mouse handlers set the primary selection directly,
+mouse-sel sets the variables interprogram-cut-function and
+interprogram-paste-function to nil.
+
+- Clicking mouse-2 inserts the contents of the primary selection at
+the mouse position (or point, if `mouse-yank-at-point' is non-nil).
+
+- Pressing mouse-2 while selecting or extending copies selection
+to the kill ring.  Pressing mouse-1 or mouse-3 kills it.
+
+- Double-clicking mouse-3 also kills selection.
+
+- M-mouse-1, M-mouse-2 & M-mouse-3 work similarly to mouse-1, mouse-2
+& mouse-3, but operate on the X secondary selection rather than the
+primary selection and region.
+(autoload 'mouse-sel-mode "mouse-sel" '(#$ . 448241) t nil)
+#@39 Multiplication puzzle with GNU Emacs.
+(autoload 'mpuz "mpuz" '(#$ . 449732) t nil)
+#@203 Non-nil if Msb mode is enabled.
+See the command `msb-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `msb-mode'.
+(defvar msb-mode nil (#$ . 449822))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group msb msb-mode custom-variable custom-add-load] 4)
+#@196 Toggle Msb mode.
+With arg, turn Msb mode on if and only if arg is positive.
+This mode overrides the binding(s) of `mouse-buffer-menu' to provide a
+different buffer menu using the function `msb'.
+(autoload 'msb-mode "msb" '(#$ . 450190) t nil)
+#@747 Display a list of all character sets.
+
+The ID-NUM column contains a charset identification number
+  for internal Emacs use.
+
+The MULTIBYTE-FORM column contains a format of multibyte sequence
+  of characters in the charset for buffer and string
+  by one to four hexadecimal digits.
+  `xx' stands for any byte in the range 0..127.
+  `XX' stands for any byte in the range 160..255.
+
+The D column contains a dimension of this character set.
+The CH column contains a number of characters in a block of this character set.
+The FINAL-CHAR column contains an ISO-2022's <final-char> to use for
+  designating this character set in ISO-2022-based coding systems.
+
+With prefix arg, the output format gets more cryptic,
+but still shows the full information.
+(autoload 'list-character-sets "mule-diag" '(#$ . 450440) t nil)
+#@504 Read a character set from the minibuffer, prompting with string PROMPT.
+It reads an Emacs' character set listed in the variable `charset-list'
+or a non-ISO character set listed in the variable
+`non-iso-charset-alist'.
+
+Optional arguments are DEFAULT-VALUE and INITIAL-INPUT.
+DEFAULT-VALUE, if non-nil, is the default value.
+INITIAL-INPUT, if non-nil, is a string inserted in the minibuffer initially.
+See the documentation of the function `completing-read' for the
+detailed meanings of these arguments.
+(autoload 'read-charset "mule-diag" '(#$ . 451258) nil nil)
+#@62 Display a list of characters in the specified character set.
+(autoload 'list-charset-chars "mule-diag" '(#$ . 451827) t nil)
+#@50 Display information about character set CHARSET.
+(autoload 'describe-character-set "mule-diag" '(#$ . 451958) t nil)
+#@279 Display information about the character at POS in the current buffer.
+POS defaults to point.
+The information includes character code, charset and code points in it,
+syntax, category, how the character is encoded in a file,
+which font is being used for displaying the character.
+(autoload 'describe-char-after "mule-diag" '(#$ . 452082) t nil)
+#@42 Display information about CODING-SYSTEM.
+(autoload 'describe-coding-system "mule-diag" '(#$ . 452431) t nil)
+#@1098 Display coding systems currently used in a brief format in echo area.
+
+The format is "F[..],K[..],T[..],P>[..],P<[..], default F[..],P<[..],P<[..]",
+where mnemonics of the following coding systems come in this order
+at the place of `..':
+  `buffer-file-coding-system' (of the current buffer)
+  eol-type of `buffer-file-coding-system' (of the current buffer)
+  Value returned by `keyboard-coding-system'
+  eol-type of `keyboard-coding-system'
+  Value returned by `terminal-coding-system'.
+  eol-type of `terminal-coding-system'
+  `process-coding-system' for read (of the current buffer, if any)
+  eol-type of `process-coding-system' for read (of the current buffer, if any)
+  `process-coding-system' for write (of the current buffer, if any)
+  eol-type of `process-coding-system' for write (of the current buffer, if any)
+  `default-buffer-file-coding-system'
+  eol-type of `default-buffer-file-coding-system'
+  `default-process-coding-system' for read
+  eol-type of `default-process-coding-system' for read
+  `default-process-coding-system' for write
+  eol-type of `default-process-coding-system'
+(autoload 'describe-current-coding-system-briefly "mule-diag" '(#$ . 452548) t nil)
+#@51 Display coding systems currently used, in detail.
+(autoload 'describe-current-coding-system "mule-diag" '(#$ . 453735) t nil)
+#@233 Display a list of all coding systems.
+This shows the mnemonic letter, name, and description of each coding system.
+
+With prefix arg, the output format gets more cryptic,
+but still contains full information about each coding system.
+(autoload 'list-coding-systems "mule-diag" '(#$ . 453868) t nil)
+#@42 Display a list of all coding categories.
+(autoload 'list-coding-categories "mule-diag" '(#$ . 454171) nil nil)
+#@65 Display information about fonts which partially match FONTNAME.
+(autoload 'describe-font "mule-diag" '(#$ . 454288) t nil)
+#@87 Display information of FONTSET.
+This shows which font is used for which character(s).
+(autoload 'describe-fontset "mule-diag" '(#$ . 454417) t nil)
+#@218 Display a list of all fontsets.
+This shows the name, size, and style of each fontset.
+With prefix arg, it also list the fonts contained in each fontset;
+see the function `describe-fontset' for the format of the list.
+(autoload 'list-fontsets "mule-diag" '(#$ . 454572) t nil)
+#@46 Display information about all input methods.
+(autoload 'list-input-methods "mule-diag" '(#$ . 454854) t nil)
+#@284 Display diagnosis of the multilingual environment (Mule).
+
+This shows various information related to the current multilingual
+environment, including lists of input methods, coding systems,
+character sets, and fontsets (if Emacs is running under a window
+system which uses fontsets).
+(autoload 'mule-diag "mule-diag" '(#$ . 454970) t nil)
+#@116 Dump information about all charsets into the file `CHARSETS'.
+The file is saved in the directory `data-directory'.
+(autoload 'dump-charsets "mule-diag" '(#$ . 455315) nil nil)
+#@121 Dump information about all coding systems into the file `CODINGS'.
+The file is saved in the directory `data-directory'.
+(autoload 'dump-codings "mule-diag" '(#$ . 455498) nil nil)
+#@110 Convert STRING to a sequence of TYPE which contains characters in STRING.
+TYPE should be `list' or `vector'.
+(autoload 'string-to-sequence "mule-util" '(#$ . 455685) nil nil)
+#@40 Return a list of characters in STRING.
+(defalias 'string-to-list #[(string) "\301\302\"\207" [string string-to-sequence list] 3 (#$ . 455866)])
+(put 'string-to-list 'byte-optimizer 'byte-compile-inline-expand)
+#@42 Return a vector of characters in STRING.
+(defalias 'string-to-vector #[(string) "\301\302\"\207" [string string-to-sequence vector] 3 (#$ . 456083)])
+(put 'string-to-vector 'byte-optimizer 'byte-compile-inline-expand)
+#@57 Embed OBJ (string or character) at index IDX of STRING.
+(autoload 'store-substring "mule-util" '(#$ . 456308) nil nil)
+#@657 Truncate string STR to end at column END-COLUMN.
+The optional 3rd arg START-COLUMN, if non-nil, specifies
+the starting column; that means to return the characters occupying
+columns START-COLUMN ... END-COLUMN of STR.
+
+The optional 4th arg PADDING, if non-nil, specifies a padding character
+to add at the end of the result if STR doesn't reach column END-COLUMN,
+or if END-COLUMN comes in the middle of a character in STR.
+PADDING is also added at the beginning of the result
+if column START-COLUMN appears in the middle of a character in STR.
+
+If PADDING is nil, no padding is added in these cases, so
+the resulting string may be narrower than END-COLUMN.
+(autoload 'truncate-string-to-width "mule-util" '(#$ . 456434) nil nil)
+(defalias 'truncate-string 'truncate-string-to-width)
+#@380 Return t if OBJ is a nested alist.
+
+Nested alist is a list of the form (ENTRY . BRANCHES), where ENTRY is
+any Lisp object, and BRANCHES is a list of cons cells of the form
+(KEY-ELEMENT . NESTED-ALIST).
+
+You can use a nested alist to store any Lisp object (ENTRY) for a key
+sequence KEYSEQ, where KEYSEQ is a sequence of KEY-ELEMENT.  KEYSEQ
+can be a string, a vector, or a list.
+(defalias 'nested-alist-p #[(obj) "\205\f<\205\fA<\207" [obj] 1 (#$ . 457223)])
+(put 'nested-alist-p 'byte-optimizer 'byte-compile-inline-expand)
+#@273 Set ENTRY for KEYSEQ in a nested alist ALIST.
+Optional 4th arg LEN non-nil means the first LEN elements in KEYSEQ
+ is considered.
+Optional argument BRANCHES if non-nil is branches for a keyseq
+longer than KEYSEQ.
+See the documentation of `nested-alist-p' for more detail.
+(autoload 'set-nested-alist "mule-util" '(#$ . 457760) nil nil)
+#@532 Look up key sequence KEYSEQ in nested alist ALIST.  Return the definition.
+Optional 1st argument LEN specifies the length of KEYSEQ.
+Optional 2nd argument START specifies index of the starting key.
+The returned value is normally a nested alist of which
+car part is the entry for KEYSEQ.
+If ALIST is not deep enough for KEYSEQ, return number which is
+ how many key elements at the front of KEYSEQ it takes
+ to reach a leaf in ALIST.
+Optional 3rd argument NIL-FOR-TOO-LONG non-nil means return nil
+ even if ALIST is not deep enough.
+(autoload 'lookup-nested-alist "mule-util" '(#$ . 458103) nil nil)
+#@67 Return the string indicating end-of-line format of CODING-SYSTEM.
+(autoload 'coding-system-eol-type-mnemonic "mule-util" '(#$ . 458707) nil nil)
+#@68 Return the value of CODING-SYSTEM's post-read-conversion property.
+(autoload 'coding-system-post-read-conversion "mule-util" '(#$ . 458858) nil nil)
+#@68 Return the value of CODING-SYSTEM's pre-write-conversion property.
+(autoload 'coding-system-pre-write-conversion "mule-util" '(#$ . 459013) nil nil)
+#@76 Return the value of CODING-SYSTEM's translation-table-for-decode property.
+(autoload 'coding-system-translation-table-for-decode "mule-util" '(#$ . 459168) nil nil)
+#@76 Return the value of CODING-SYSTEM's translation-table-for-encode property.
+(autoload 'coding-system-translation-table-for-encode "mule-util" '(#$ . 459339) nil nil)
+#@167 Return t if and only if CODING-SYSTEM-1 and CODING-SYSTEM-2 are identical.
+Two coding systems are identical if two symbols are equal
+or one is an alias of the other.
+(autoload 'coding-system-equal "mule-util" '(#$ . 459511) nil nil)
+#@180 Detect a coding system of the text between FROM and TO with PRIORITY-LIST.
+PRIORITY-LIST is an alist of coding categories vs the corresponding
+coding systems ordered by priority.
+(autoload 'detect-coding-with-priority "mule-util" '(#$ . 459751) nil 'macro)
+#@172 Detect a coding system of the text between FROM and TO with LANG-ENV.
+The detection takes into account the coding system priorities for the
+language environment LANG-ENV.
+(autoload 'detect-coding-with-language-environment "mule-util" '(#$ . 460015) nil nil)
+#@227 Non-nil if Mouse-Wheel mode is enabled.
+See the command `mouse-wheel-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `mouse-wheel-mode'.
+(defvar mouse-wheel-mode nil (#$ . 460280))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group mouse mouse-wheel-mode custom-variable custom-add-load mwheel] 4)
+#@136 Toggle mouse wheel support.
+With prefix argument ARG, turn on if positive, otherwise off.
+Returns non-nil if the new state is enabled.
+(autoload 'mouse-wheel-mode "mwheel" '(#$ . 460697) t nil)
+#@29 Enable mouse wheel support.
+(autoload 'mwheel-install "mwheel" '(#$ . 460897) nil nil)
+#@36 Run traceroute program for TARGET.
+(autoload 'traceroute "net-utils" '(#$ . 460990) t nil)
+#@107 Ping HOST.
+If your system's ping continues until interrupted, you can try setting
+`ping-program-options'.
+(autoload 'ping "net-utils" '(#$ . 461088) t nil)
+#@23 Run ipconfig program.
+(autoload 'ipconfig "net-utils" '(#$ . 461250) t nil)
+(defalias 'ifconfig 'ipconfig)
+#@22 Run netstat program.
+(autoload 'netstat "net-utils" '(#$ . 461363) t nil)
+#@22 Run the arp program.
+(autoload 'arp "net-utils" '(#$ . 461443) t nil)
+#@24 Run the route program.
+(autoload 'route "net-utils" '(#$ . 461519) t nil)
+#@38 Lookup the DNS information for HOST.
+(autoload 'nslookup-host "net-utils" '(#$ . 461599) t nil)
+#@23 Run nslookup program.
+(autoload 'nslookup "net-utils" '(#$ . 461701) t nil)
+#@18 Run dig program.
+(autoload 'dig "net-utils" '(#$ . 461783) t nil)
+#@18 Run ftp program.
+(autoload 'ftp "net-utils" '(#$ . 461855) t nil)
+#@22 Finger USER on HOST.
+(autoload 'finger "net-utils" '(#$ . 461927) t nil)
+#@210 Send SEARCH-STRING to server defined by the `whois-server-name' variable.
+If `whois-guess-server' is non-nil, then try to deduce the correct server
+from SEARCH-STRING.  With argument, prompt for whois server.
+(autoload 'whois "net-utils" '(#$ . 462007) t nil)
+(autoload 'whois-reverse-lookup "net-utils" nil t nil)
+#@47 Open a network connection to SERVICE on HOST.
+(autoload 'network-connection-to-service "net-utils" '(#$ . 462328) t nil)
+#@44 Open a network connection to HOST on PORT.
+(autoload 'network-connection "net-utils" '(#$ . 462455) t nil)
+(byte-code "\300\301\302\"\210\300\303\304\"\210\300\305\306\"\210\300\307\310\"\210\311\312\313\314\315\316\317\320\321\322&	\207" [defalias indent-for-comment comment-indent set-comment-column comment-set-column kill-comment comment-kill indent-new-comment-line comment-indent-new-line custom-declare-group comment nil "Indenting and filling of comments." :prefix "comment-" :version "21.1" :group fill] 10)
+#@254 *Column to indent right-margin comments to.
+Setting this variable automatically makes it local to the current buffer.
+Each mode establishes a different default value for this variable; you
+can set the value for a particular mode using that mode's hook.
+(defvar comment-column 32 (#$ . -462979))
+#@72 *String to insert to start a new comment, or nil if no comment syntax.
+(defvar comment-start nil (#$ . -463280))
+#@202 *Regexp to match the start of a comment plus everything up to its body.
+If there are any \(...\) pairs, the comment delimiter text is held to begin
+at the place matched by the close of the first pair.
+(defvar comment-start-skip nil (#$ . -463400))
+#@70 Regexp to match the end of a comment plus everything up to its body.
+(defvar comment-end-skip nil (#$ . 463654))
+#@110 *String to insert to end a new comment.
+Should be an empty string if comments are terminated by end-of-line.
+(defvar comment-end "" (#$ . -463774))
+#@297 Function to compute desired indentation for a comment.
+This function is called with no args with point at the beginning of
+the comment's starting delimiter and should return either the desired
+column indentation or nil.
+If nil is returned, indentation is delegated to `indent-according-to-mode'.
+(defvar comment-indent-function 'comment-indent-default (#$ . 463929))
+#@94 *Style to be used for `comment-region'.
+See `comment-styles' for a list of available styles.
+(defvar comment-style 'plain (#$ . -464302))
+#@318 Padding string that `comment-region' puts between comment chars and text.
+Can also be an integer which will be automatically turned into a string
+of the corresponding number of spaces.
+
+Extra spacing between the comment characters and the comment text
+makes the comment easier to read.  Default is " ".  nil means 0.
+(defvar comment-padding " " (#$ . 464447))
+#@168 *Non-nil means \[comment-indent-new-line] continues comments, with no new terminator or starter.
+This is obsolete because you might as well use \[newline-and-indent].
+(defvar comment-multi-line nil (#$ . -464814))
+#@40 Default for `comment-indent-function'.
+(autoload 'comment-indent-default "newcomment" '(#$ . 465034) nil nil)
+#@142 Indent this line's comment to comment column, or insert an empty comment.
+If CONTINUE is non-nil, use the `comment-continue' markers if any.
+(autoload 'comment-indent "newcomment" '(#$ . 465151) t nil)
+#@297 Set the comment column based on point.
+With no ARG, set the comment column to the current column.
+With just minus as arg, kill any comment on this line.
+With any other arg, set comment column to indentation of the previous comment
+ and then align or create a comment on this line at that column.
+(autoload 'comment-set-column "newcomment" '(#$ . 465360) t nil)
+#@114 Kill the comment on this line, if any.
+With prefix ARG, kill comments on that many lines starting with this one.
+(autoload 'comment-kill "newcomment" '(#$ . 465728) t nil)
+#@134 Uncomment each line in the BEG..END region.
+The numeric prefix ARG can specify a number of chars to remove from the
+comment markers.
+(autoload 'uncomment-region "newcomment" '(#$ . 465907) t nil)
+#@581 Comment or uncomment each line in the region.
+With just \[universal-argument] prefix arg, uncomment each line in region BEG..END.
+Numeric prefix arg ARG means use ARG comment characters.
+If ARG is negative, delete that many comment characters instead.
+By default, comments start at the left margin, are terminated on each line,
+even for syntax in which newline does not end the comment and blank lines
+do not get comments.  This can be changed with `comment-style'.
+
+The strings used as comment starts are built from
+`comment-start' without trailing spaces and `comment-padding'.
+(autoload 'comment-region "newcomment" '(#$ . 466110) t nil)
+#@371 Call the comment command you want (Do What I Mean).
+If the region is active and `transient-mark-mode' is on, call
+  `comment-region' (unless it only consists of comments, in which
+  case it calls `uncomment-region').
+Else, if the current line is empty, insert a comment and indent it.
+Else if a prefix ARG is specified, call `comment-kill'.
+Else, call `comment-indent'.
+(autoload 'comment-dwim "newcomment" '(#$ . 466758) t nil)
+#@595 Break line at point and indent, continuing comment if within one.
+This indents the body of the continued comment
+under the previous comment line.
+
+This command is intended for styles where you write a comment per line,
+starting a new comment (and terminating it if necessary) on each line.
+If you want to continue one comment across several lines, use \[newline-and-indent].
+
+If a fill column is specified, it overrides the use of the comment column
+or comment indentation.
+
+The inserted newline is marked hard if variable `use-hard-newlines' is true,
+unless optional argument SOFT is non-nil.
+(autoload 'comment-indent-new-line "newcomment" '(#$ . 467194) t nil)
+#@266 Add document DEFINITION to the list of nndoc document definitions.
+If POSITION is nil or `last', the definition will be added
+as the last checked definition, if t or `first', add as the
+first definition, and if any other symbol, add after that
+symbol in the alist.
+(autoload 'nndoc-add-type "nndoc" '(#$ . 467865) nil nil)
+#@133 Look for mbox folders in the nnfolder directory and make them into groups.
+This command does not work if you use short group names.
+(autoload 'nnfolder-generate-active-file "nnfolder" '(#$ . 468195) t nil)
+#@127 "Usage: emacs -batch -l nnkiboze -f nnkiboze-generate-groups".
+Finds out what articles are to be part of the nnkiboze groups.
+(autoload 'nnkiboze-generate-groups "nnkiboze" '(#$ . 468408) t nil)
+#@49 Generate NOV databases in all nnml directories.
+(autoload 'nnml-generate-nov-databases "nnml" '(#$ . 468609) t nil)
+#@43 Make an outbound package of SOUP replies.
+(autoload 'nnsoup-pack-replies "nnsoup" '(#$ . 468731) t nil)
+#@57 Use the SOUP methods for posting news and mailing mail.
+(autoload 'nnsoup-set-variables "nnsoup" '(#$ . 468841) t nil)
+#@67 Revert posting and mailing methods to the standard Emacs methods.
+(autoload 'nnsoup-revert-variables "nnsoup" '(#$ . 468966) t nil)
+#@114 Function to call to handle disabled commands.
+If nil, the feature is disabled, i.e., all commands work normally.
+(defvar disabled-command-hook 'disabled-command-hook (#$ . 469105))
+(byte-code "\300\301\302\303\211\211%\207" [autoload disabled-command-hook "novice" nil] 6)
+#@150 Allow COMMAND to be executed without special confirmation from now on.
+The user's .emacs file is altered so that this will apply
+to future sessions.
+(autoload 'enable-command "novice" '(#$ . 469385) t nil)
+#@140 Require special confirmation to execute COMMAND from now on.
+The user's .emacs file is altered so that this will apply
+to future sessions.
+(autoload 'disable-command "novice" '(#$ . 469598) t nil)
+#@269 Major mode for editing text intended for nroff to format.
+\{nroff-mode-map}
+Turning on Nroff mode runs `text-mode-hook', then `nroff-mode-hook'.
+Also, try `nroff-electric-mode', for automatically inserting
+closing requests for requests that are used in matched pairs.
+(autoload 'nroff-mode "nroff-mode" '(#$ . 469802) t nil)
+#@217 Get help on Octave symbols from the Octave info files.
+Look up KEY in the function, operator and variable indices of the files
+specified by `octave-help-files'.
+If KEY is not a string, prompt for it with completion.
+(autoload 'octave-help "octave-hlp" '(#$ . 470134) t nil)
+#@501 Run an inferior Octave process, I/O via `inferior-octave-buffer'.
+This buffer is put in Inferior Octave mode.  See `inferior-octave-mode'.
+
+Unless ARG is non-nil, switches to this buffer.
+
+The elements of the list `inferior-octave-startup-args' are sent as
+command line arguments to the inferior Octave process on startup.
+
+Additional commands to be executed on startup can be provided either in
+the file specified by `inferior-octave-startup-file' or by the default
+startup file, `~/.emacs-octave'.
+(autoload 'inferior-octave "octave-inf" '(#$ . 470415) t nil)
+(defalias 'run-octave 'inferior-octave)
+#@3033 Major mode for editing Octave code.
+
+This mode makes it easier to write Octave code by helping with
+indentation, doing some of the typing for you (with Abbrev mode) and by
+showing keywords, comments, strings, etc. in different faces (with
+Font Lock mode on terminals that support it).
+
+Octave itself is a high-level language, primarily intended for numerical
+computations.  It provides a convenient command line interface for
+solving linear and nonlinear problems numerically.  Function definitions
+can also be stored in files, and it can be used in a batch mode (which
+is why you need this mode!).
+
+The latest released version of Octave is always available via anonymous
+ftp from bevo.che.wisc.edu in the directory `/pub/octave'.  Complete
+source and binaries for several popular systems are available.
+
+Type \[list-abbrevs] to display the built-in abbrevs for Octave keywords.
+
+Keybindings
+===========
+
+\{octave-mode-map}
+
+Variables you can use to customize Octave mode
+==============================================
+
+octave-auto-indent
+  Non-nil means indent current line after a semicolon or space.
+  Default is nil.
+
+octave-auto-newline
+  Non-nil means auto-insert a newline and indent after a semicolon.
+  Default is nil.
+
+octave-blink-matching-block
+  Non-nil means show matching begin of block when inserting a space,
+  newline or semicolon after an else or end keyword.  Default is t.
+
+octave-block-offset
+  Extra indentation applied to statements in block structures.
+  Default is 2.
+
+octave-continuation-offset
+  Extra indentation applied to Octave continuation lines.
+  Default is 4.
+
+octave-continuation-string
+  String used for Octave continuation lines.
+  Default is a backslash.
+
+octave-mode-startup-message
+  Nil means do not display the Octave mode startup message.
+  Default is t.
+
+octave-send-echo-input
+  Non-nil means always display `inferior-octave-buffer' after sending a
+  command to the inferior Octave process.
+
+octave-send-line-auto-forward
+  Non-nil means always go to the next unsent line of Octave code after
+  sending a line to the inferior Octave process.
+
+octave-send-echo-input
+  Non-nil means echo input sent to the inferior Octave process.
+
+Turning on Octave mode runs the hook `octave-mode-hook'.
+
+To begin using this mode for all `.m' files that you edit, add the
+following lines to your `.emacs' file:
+
+  (autoload 'octave-mode "octave-mod" nil t)
+  (setq auto-mode-alist
+        (cons '("\\.m$" . octave-mode) auto-mode-alist))
+
+To automatically turn on the abbrev, auto-fill and font-lock features,
+add the following lines to your `.emacs' file as well:
+
+  (add-hook 'octave-mode-hook
+	    (lambda ()
+	      (abbrev-mode 1)
+	      (auto-fill-mode 1)
+	      (if (eq window-system 'x)
+		  (font-lock-mode 1))))
+
+To submit a problem report, enter \[octave-submit-bug-report] from an Octave mode buffer.
+This automatically sets up a mail buffer with version information
+already added.  You just need to add a description of the problem,
+including a reproducible test case and send the message.
+(autoload 'octave-mode "octave-mod" '(#$ . 471025) t nil)
+#@113 Display a list of Emacs user options, with values and documentation.
+It is now better to use Customize instead.
+(autoload 'list-options "options" '(#$ . 474122) t nil)
+#@253 Edit a list of Emacs user option values.
+Selects a buffer containing such a list,
+in which there are commands to set the option values.
+Type \[describe-mode] in that buffer for a list of commands.
+
+The Custom feature is intended to make this obsolete.
+(autoload 'edit-options "options" '(#$ . 474297) t nil)
+#@2061 Set major mode for editing outlines with selective display.
+Headings are lines which start with asterisks: one for major headings,
+two for subheadings, etc.  Lines not starting with asterisks are body lines.
+
+Body text or subheadings under a heading can be made temporarily
+invisible, or visible again.  Invisible lines are attached to the end
+of the heading, so they move with it, if the line is killed and yanked
+back.  A heading with text hidden under it is marked with an ellipsis (...).
+
+Commands:\<outline-mode-map>
+\[outline-next-visible-heading]   outline-next-visible-heading      move by visible headings
+\[outline-previous-visible-heading]   outline-previous-visible-heading
+\[outline-forward-same-level]   outline-forward-same-level        similar but skip subheadings
+\[outline-backward-same-level]   outline-backward-same-level
+\[outline-up-heading]   outline-up-heading		    move from subheading to heading
+
+\[hide-body]	make all text invisible (not headings).
+\[show-all]	make everything in buffer visible.
+
+The remaining commands are used when point is on a heading line.
+They apply to some of the body or subheadings of that heading.
+\[hide-subtree]   hide-subtree	make body and subheadings invisible.
+\[show-subtree]   show-subtree	make body and subheadings visible.
+\[show-children]   show-children	make direct subheadings visible.
+		 No effect on body, or subheadings 2 or more levels down.
+		 With arg N, affects subheadings N levels down.
+\[hide-entry]	   make immediately following body invisible.
+\[show-entry]	   make it visible.
+\[hide-leaves]	   make body under heading and under its subheadings invisible.
+		     The subheadings remain visible.
+\[show-branches]  make all subheadings at all levels visible.
+
+The variable `outline-regexp' can be changed to control what is a heading.
+A line is a heading if `outline-regexp' matches something at the
+beginning of the line.  The longer the match, the deeper the level.
+
+Turning on outline mode calls the value of `text-mode-hook' and then of
+`outline-mode-hook', if they are non-nil.
+(autoload 'outline-mode "outline" '(#$ . 474613) t nil)
+#@166 Toggle Outline minor mode.
+With arg, turn Outline minor mode on if arg is positive, off otherwise.
+See the command `outline-mode' for more information on this mode.
+(autoload 'outline-minor-mode "outline" '(#$ . 476736) t nil)
+#@224 Non-nil if Show-Paren mode is enabled.
+See the command `show-paren-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `show-paren-mode'.
+(defvar show-paren-mode nil (#$ . 476970))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group paren-showing show-paren-mode custom-variable custom-add-load paren] 4)
+#@309 Toggle Show Paren mode.
+With prefix ARG, turn Show Paren mode on if and only if ARG is positive.
+Returns the new status of Show Paren mode (non-nil means on).
+
+When Show Paren mode is enabled, any matching parenthesis is highlighted
+in `show-paren-style' after `show-paren-delay' seconds of Emacs idle time.
+(autoload 'show-paren-mode "paren" '(#$ . 477389) t nil)
+#@2044 Major mode for editing Pascal code. \<pascal-mode-map>
+TAB indents for Pascal code.  Delete converts tabs to spaces as it moves back.
+
+\[pascal-complete-word] completes the word around current point with respect to position in code
+\[pascal-show-completions] shows all possible completions at this point.
+
+Other useful functions are:
+
+\[pascal-mark-defun]	- Mark function.
+\[pascal-insert-block]	- insert begin ... end;
+\[pascal-star-comment]	- insert (* ... *)
+\[pascal-comment-area]	- Put marked area in a comment, fixing nested comments.
+\[pascal-uncomment-area]	- Uncomment an area commented with \[pascal-comment-area].
+\[pascal-beg-of-defun]	- Move to beginning of current function.
+\[pascal-end-of-defun]	- Move to end of current function.
+\[pascal-goto-defun]	- Goto function prompted for in the minibuffer.
+\[pascal-outline]	- Enter pascal-outline-mode (see also pascal-outline).
+
+Variables controlling indentation/edit style:
+
+ pascal-indent-level (default 3)
+    Indentation of Pascal statements with respect to containing block.
+ pascal-case-indent (default 2)
+    Indentation for case statements.
+ pascal-auto-newline (default nil)
+    Non-nil means automatically newline after semicolons and the punctuation
+    mark after an end.
+ pascal-indent-nested-functions (default t)
+    Non-nil means nested functions are indented.
+ pascal-tab-always-indent (default t)
+    Non-nil means TAB in Pascal mode should always reindent the current line,
+    regardless of where in the line point is when the TAB command is used.
+ pascal-auto-endcomments (default t)
+    Non-nil means a comment { ... } is set after the ends which ends cases and
+    functions. The name of the function or case will be set between the braces.
+ pascal-auto-lineup (default t)
+    List of contexts where auto lineup of :'s or ='s should be done.
+
+See also the user variables pascal-type-keywords, pascal-start-keywords and
+pascal-separator-keywords.
+
+Turning on Pascal mode calls the value of the variable pascal-mode-hook with
+no args, if that value is non-nil.
+(autoload 'pascal-mode "pascal" '(#$ . 477762) t nil)
+#@352 Set up certain key bindings for PC compatibility.
+The keys affected are:
+Delete (and its variants) delete forward instead of backward.
+C-Backspace kills backward a word (as C-Delete normally would).
+M-Backspace does undo.
+Home and End move to beginning and end of line
+C-Home and C-End move to beginning and end of buffer.
+C-Escape does list-buffers.
+(autoload 'pc-bindings-mode "pc-mode" '(#$ . 479866) t nil)
+#@1953 Change mark behaviour to emulate Motif, MAC or MS-Windows cut and paste style.
+
+This mode enables Delete Selection mode and Transient Mark mode.
+
+The arrow keys (and others) are bound to new functions
+which modify the status of the mark.
+
+The ordinary arrow keys disable the mark.
+The shift-arrow keys move, leaving the mark behind.
+
+C-LEFT and C-RIGHT move back or forward one word, disabling the mark.
+S-C-LEFT and S-C-RIGHT move back or forward one word, leaving the mark behind.
+
+M-LEFT and M-RIGHT move back or forward one word or sexp, disabling the mark.
+S-M-LEFT and S-M-RIGHT move back or forward one word or sexp, leaving the mark
+behind. To control wether these keys move word-wise or sexp-wise set the
+variable pc-select-meta-moves-sexps after loading pc-select.el but before
+turning pc-selection-mode on.
+
+C-DOWN and C-UP move back or forward a paragraph, disabling the mark.
+S-C-DOWN and S-C-UP move back or forward a paragraph, leaving the mark behind.
+
+HOME moves to beginning of line, disabling the mark.
+S-HOME moves to beginning of line, leaving the mark behind.
+With Ctrl or Meta, these keys move to beginning of buffer instead.
+
+END moves to end of line, disabling the mark.
+S-END moves to end of line, leaving the mark behind.
+With Ctrl or Meta, these keys move to end of buffer instead.
+
+PRIOR or PAGE-UP scrolls and disables the mark.
+S-PRIOR or S-PAGE-UP scrolls and leaves the mark behind.
+
+S-DELETE kills the region (`kill-region').
+S-INSERT yanks text from the kill ring (`yank').
+C-INSERT copies the region into the kill ring (`copy-region-as-kill').
+
+In addition, certain other PC bindings are imitated (to avoid this, set
+the variable pc-select-selection-keys-only to t after loading pc-select.el
+but before calling pc-selection-mode):
+
+  F6           other-window
+  DELETE       delete-char
+  C-DELETE     kill-line
+  M-DELETE     kill-word
+  C-M-DELETE   kill-sexp
+  C-BACKSPACE  backward-kill-word
+  M-BACKSPACE  undo
+(autoload 'pc-selection-mode "pc-select" '(#$ . 480285) t nil)
+#@271 Toggle PC Selection mode.
+Change mark behaviour to emulate Motif, MAC or MS-Windows cut and paste style,
+and cursor movement commands.
+This mode enables Delete Selection mode and Transient Mark mode.
+You must modify via \[customize] for this variable to have an effect.
+(defvar pc-selection-mode nil (#$ . 482307))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group pc-select pc-selection-mode custom-variable custom-add-load] 4)
+#@41 Completion rules for the `cvs' command.
+(autoload 'pcomplete/cvs "pcmpl-cvs" '(#$ . 482766) nil nil)
+#@24 Completion for `gzip'.
+(autoload 'pcomplete/gzip "pcmpl-gnu" '(#$ . 482873) nil nil)
+#@25 Completion for `bzip2'.
+(autoload 'pcomplete/bzip2 "pcmpl-gnu" '(#$ . 482964) nil nil)
+#@28 Completion for GNU `make'.
+(autoload 'pcomplete/make "pcmpl-gnu" '(#$ . 483057) nil nil)
+#@37 Completion for the GNU tar utility.
+(autoload 'pcomplete/tar "pcmpl-gnu" '(#$ . 483152) nil nil)
+(defalias 'pcomplete/gdb 'pcomplete/xargs)
+#@58 Completion for GNU/Linux `kill', using /proc filesystem.
+(autoload 'pcomplete/kill "pcmpl-linux" '(#$ . 483298) nil nil)
+#@36 Completion for GNU/Linux `umount'.
+(autoload 'pcomplete/umount "pcmpl-linux" '(#$ . 483425) nil nil)
+#@35 Completion for GNU/Linux `mount'.
+(autoload 'pcomplete/mount "pcmpl-linux" '(#$ . 483532) nil nil)
+#@296 Completion for RedHat's `rpm' command.
+These rules were taken from the output of `rpm --help' on a RedHat 6.1
+system.  They follow my interpretation of what followed, but since I'm
+not a major rpm user/builder, please send me any corrections you find.
+You can use \[eshell-report-bug] to do so.
+(autoload 'pcomplete/rpm "pcmpl-rpm" '(#$ . 483638) nil nil)
+#@22 Completion for `cd'.
+(autoload 'pcomplete/cd "pcmpl-unix" '(#$ . 484000) nil nil)
+(defalias 'pcomplete/pushd 'pcomplete/cd)
+#@25 Completion for `rmdir'.
+(autoload 'pcomplete/rmdir "pcmpl-unix" '(#$ . 484130) nil nil)
+#@22 Completion for `rm'.
+(autoload 'pcomplete/rm "pcmpl-unix" '(#$ . 484224) nil nil)
+#@25 Completion for `xargs'.
+(autoload 'pcomplete/xargs "pcmpl-unix" '(#$ . 484312) nil nil)
+(defalias 'pcomplete/time 'pcomplete/xargs)
+#@25 Completion for `which'.
+(autoload 'pcomplete/which "pcmpl-unix" '(#$ . 484450) nil nil)
+#@37 Completion for the `chown' command.
+(autoload 'pcomplete/chown "pcmpl-unix" '(#$ . 484544) nil nil)
+#@37 Completion for the `chgrp' command.
+(autoload 'pcomplete/chgrp "pcmpl-unix" '(#$ . 484650) nil nil)
+#@184 Support extensible programmable completion.
+To use this function, just bind the TAB key to it, or add it to your
+completion functions list (it should occur fairly early in the list).
+(autoload 'pcomplete "pcomplete" '(#$ . 484757) t nil)
+#@51 If cycling completion is in use, cycle backwards.
+(autoload 'pcomplete-reverse "pcomplete" '(#$ . 485001) t nil)
+#@88 Expand the textual value of the current argument.
+This will modify the current buffer.
+(autoload 'pcomplete-expand-and-complete "pcomplete" '(#$ . 485120) t nil)
+#@56 Complete without reference to any cycling completions.
+(autoload 'pcomplete-continue "pcomplete" '(#$ . 485288) t nil)
+#@88 Expand the textual value of the current argument.
+This will modify the current buffer.
+(autoload 'pcomplete-expand "pcomplete" '(#$ . 485413) t nil)
+#@64 Display any help information relative to the current argument.
+(autoload 'pcomplete-help "pcomplete" '(#$ . 485568) t nil)
+#@65 Show the list of possible completions for the current argument.
+(autoload 'pcomplete-list "pcomplete" '(#$ . 485697) t nil)
+#@193 Setup a comint buffer to use pcomplete.
+COMPLETEF-SYM should be the symbol where the
+dynamic-complete-functions are kept.  For comint mode itself, this is
+`comint-dynamic-complete-functions'.
+(autoload 'pcomplete-comint-setup "pcomplete" '(#$ . 485828) nil nil)
+#@36 Setup shell-mode to use pcomplete.
+(autoload 'pcomplete-shell-setup "pcomplete" '(#$ . 486096) nil nil)
+#@187 Run a 'cvs checkout MODULES' in DIR.
+Feed the output to a *cvs* buffer, display it in the current window,
+and run `cvs-mode' on it.
+
+With a prefix argument, prompt for cvs FLAGS to use.
+(autoload 'cvs-checkout "pcvs" '(#$ . 486207) t nil)
+#@304 Open a *cvs* buffer on DIR without running cvs.
+With a prefix argument, prompt for a directory to use.
+A prefix arg >8 (ex: \[universal-argument] \[universal-argument]),
+  prevents reuse of an existing *cvs* buffer.
+Optional argument NOSHOW if non-nil means not to display the buffer.
+FLAGS is ignored.
+(autoload 'cvs-quickdir "pcvs" '(#$ . 486453) t nil)
+#@427 Run a `cvs -n update' in the specified DIRECTORY.
+That is, check what needs to be done, but don't change the disc.
+Feed the output to a *cvs* buffer and run `cvs-mode' on it.
+With a prefix argument, prompt for a directory and cvs FLAGS to use.
+A prefix arg >8 (ex: \[universal-argument] \[universal-argument]),
+  prevents reuse of an existing *cvs* buffer.
+Optional argument NOSHOW if non-nil means not to display the buffer.
+(autoload 'cvs-examine "pcvs" '(#$ . 486816) t nil)
+#@296 Run a `cvs update' in the current working DIRECTORY.
+Feed the output to a *cvs* buffer and run `cvs-mode' on it.
+With a prefix argument, prompt for a directory and cvs FLAGS to use.
+A prefix arg >8 (ex: \[universal-argument] \[universal-argument]),
+  prevents reuse of an existing *cvs* buffer.
+(autoload 'cvs-update "pcvs" '(#$ . 487301) t nil)
+#@365 Run a `cvs status' in the current working DIRECTORY.
+Feed the output to a *cvs* buffer and run `cvs-mode' on it.
+With a prefix argument, prompt for a directory and cvs FLAGS to use.
+A prefix arg >8 (ex: \[universal-argument] \[universal-argument]),
+  prevents reuse of an existing *cvs* buffer.
+Optional argument NOSHOW if non-nil means not to display the buffer.
+(autoload 'cvs-status "pcvs" '(#$ . 487654) t nil)
+(add-to-list 'completion-ignored-extensions "CVS/")
+#@126 The action to be performed when opening a CVS directory.
+Sensible values are `cvs-examine', `cvs-status' and `cvs-quickdir'.
+(defvar cvs-dired-action 'cvs-quickdir (#$ . 488128))
+#@283 Whether or not opening a CVS directory should run PCL-CVS.
+NIL means never do it.
+ALWAYS means to always do it unless a prefix argument is given to the
+  command that prompted the opening of the directory.
+Anything else means to do it only if the prefix arg is equal to this value.
+(defvar cvs-dired-use-hook '(4) (#$ . 488314))
+#@124 Run `cvs-examine' if DIR is a CVS administrative directory.
+The exact behavior is determined also by `cvs-dired-use-hook'.
+(defalias 'cvs-dired-noselect #[(dir) ";\2058\304!\305!\306\230\2058\307\310\311\"!\2058	\2058	\312=\203)\n?\202,\n	\232\2058\212\313!\314\211#)\207" [dir cvs-dired-use-hook current-prefix-arg cvs-dired-action directory-file-name file-name-nondirectory "CVS" file-readable-p expand-file-name "Entries" always file-name-directory t] 4 (#$ . 488650)])
+(byte-code "\302B\303\302!\204)\304\305!\306	\307\310#\210\306	\311\312#\210\306	\313\314#\210\306	\315\316#\210	)\302\207" [current-load-list m cvs-global-menu boundp make-sparse-keymap "PCL-CVS" define-key [status] (menu-item "Directory Status" cvs-status :help "A more verbose status of a workarea") [checkout] (menu-item "Checkout Module" cvs-checkout :help "Check out a module from the repository") [update] (menu-item "Update Directory" cvs-update :help "Fetch updates from the repository") [examine] (menu-item "Examine Directory" cvs-examine :help "Examine the current state of a workarea")] 4)
+#@2043 Major mode for editing Perl code.
+Expression and list commands understand all Perl brackets.
+Tab indents for Perl code.
+Comments are delimited with # ... \n.
+Paragraphs are separated by blank lines only.
+Delete converts tabs to spaces as it moves back.
+\{perl-mode-map}
+Variables controlling indentation style:
+ perl-tab-always-indent
+    Non-nil means TAB in Perl mode should always indent the current line,
+    regardless of where in the line point is when the TAB command is used.
+ perl-tab-to-comment
+    Non-nil means that for lines which don't need indenting, TAB will
+    either delete an empty comment, indent an existing comment, move 
+    to end-of-line, or if at end-of-line already, create a new comment.
+ perl-nochange
+    Lines starting with this regular expression are not auto-indented.
+ perl-indent-level
+    Indentation of Perl statements within surrounding block.
+    The surrounding block's indentation is the indentation
+    of the line on which the open-brace appears.
+ perl-continued-statement-offset
+    Extra indentation given to a substatement, such as the
+    then-clause of an if or body of a while.
+ perl-continued-brace-offset
+    Extra indentation given to a brace that starts a substatement.
+    This is in addition to `perl-continued-statement-offset'.
+ perl-brace-offset
+    Extra indentation for line if it starts with an open brace.
+ perl-brace-imaginary-offset
+    An open brace following other text is treated as if it were
+    this far to the right of the start of its line.
+ perl-label-offset
+    Extra indentation for line that is a label.
+
+Various indentation styles:       K&R  BSD  BLK  GNU  LW
+  perl-indent-level                5    8    0    2    4
+  perl-continued-statement-offset  5    8    4    2    4
+  perl-continued-brace-offset      0    0    0    0   -4
+  perl-brace-offset               -5   -8    0    0    0
+  perl-brace-imaginary-offset      0    0    4    0    0
+  perl-label-offset               -5   -8   -2   -2   -2
+
+Turning on Perl mode runs the normal hook `perl-mode-hook'.
+(autoload 'perl-mode "perl-mode" '(#$ . 489753) t nil)
+#@3345 Switch to Picture mode, in which a quarter-plane screen model is used.
+Printing characters replace instead of inserting themselves with motion
+afterwards settable by these commands:
+  C-c <	  Move left after insertion.
+  C-c >	  Move right after insertion.
+  C-c ^	  Move up after insertion.
+  C-c .	  Move down after insertion.
+  C-c `	  Move northwest (nw) after insertion.
+  C-c '	  Move northeast (ne) after insertion.
+  C-c /	  Move southwest (sw) after insertion.
+  C-c \   Move southeast (se) after insertion.
+  C-u C-c `  Move westnorthwest (wnw) after insertion.
+  C-u C-c '  Move eastnortheast (ene) after insertion.
+  C-u C-c /  Move westsouthwest (wsw) after insertion.
+  C-u C-c \  Move eastsoutheast (ese) after insertion.
+The current direction is displayed in the mode line.  The initial
+direction is right.  Whitespace is inserted and tabs are changed to
+spaces when required by movement.  You can move around in the buffer
+with these commands:
+  \[picture-move-down]	  Move vertically to SAME column in previous line.
+  \[picture-move-up]	  Move vertically to SAME column in next line.
+  \[picture-end-of-line]	  Move to column following last non-whitespace character.
+  \[picture-forward-column]	  Move right inserting spaces if required.
+  \[picture-backward-column]	  Move left changing tabs to spaces if required.
+  C-c C-f Move in direction of current picture motion.
+  C-c C-b Move in opposite direction of current picture motion.
+  Return  Move to beginning of next line.
+You can edit tabular text with these commands:
+  M-Tab	  Move to column beneath (or at) next interesting character.
+	    `Indents' relative to a previous line.
+  Tab	  Move to next stop in tab stop list.
+  C-c Tab Set tab stops according to context of this line.
+	    With ARG resets tab stops to default (global) value.
+	    See also documentation of variable	picture-tab-chars
+	    which defines "interesting character".  You can manually
+	    change the tab stop list with command \[edit-tab-stops].
+You can manipulate text with these commands:
+  C-d	  Clear (replace) ARG columns after point without moving.
+  C-c C-d Delete char at point - the command normally assigned to C-d.
+  \[picture-backward-clear-column]  Clear (replace) ARG columns before point, moving back over them.
+  \[picture-clear-line]	  Clear ARG lines, advancing over them.	 The cleared
+	    text is saved in the kill ring.
+  \[picture-open-line]	  Open blank line(s) beneath current line.
+You can manipulate rectangles with these commands:
+  C-c C-k Clear (or kill) a rectangle and save it.
+  C-c C-w Like C-c C-k except rectangle is saved in named register.
+  C-c C-y Overlay (or insert) currently saved rectangle at point.
+  C-c C-x Like C-c C-y except rectangle is taken from named register.
+  C-c C-r Draw a rectangular box around mark and point.
+  \[copy-rectangle-to-register]   Copies a rectangle to a register.
+  \[advertised-undo]   Can undo effects of rectangle overlay commands
+	    commands if invoked soon enough.
+You can return to the previous mode with:
+  C-c C-c Which also strips trailing whitespace from every line.
+	    Stripping is suppressed by supplying an argument.
+
+Entry to this mode calls the value of  picture-mode-hook  if non-nil.
+
+Note that Picture mode commands will work outside of Picture mode, but
+they are not defaultly assigned to keys.
+(autoload 'picture-mode "picture" '(#$ . 491858) t nil)
+(defalias 'edit-picture 'picture-mode)
+#@209 Play pong and waste time.
+This is an implementation of the classical game pong.
+Move left and right bats and try to bounce the ball to your opponent.
+
+pong-mode keybindings:\<pong-mode-map>
+
+\{pong-mode-map}
+(autoload 'pong "pong" '(#$ . 495304) t nil)
+#@245 Output the pretty-printed representation of OBJECT, any Lisp object.
+Quoting characters are printed as needed to make output that `read'
+can handle, whenever this is possible.
+Output stream is STREAM, or value of `standard-output' (which see).
+(autoload 'pp "pp" '(#$ . 495564) nil nil)
+#@230 Evaluate EXPRESSION and pretty-print value into a new display buffer.
+If the pretty-printed value fits on one line, the message line is used
+instead.  The value is also consed onto the front of the list
+in the variable `values'.
+(autoload 'pp-eval-expression "pp" '(#$ . 495858) t nil)
+#@152 Run `pp-eval-expression' on sexp before point (which see).
+With argument, pretty-print output into current buffer.
+Ignores leading comment characters.
+(autoload 'pp-eval-last-sexp "pp" '(#$ . 496151) t nil)
+#@228 Major mode for editing Prolog code for Prologs.
+Blank lines and `%%...' separate paragraphs.  `%'s start comments.
+Commands:
+\{prolog-mode-map}
+Entry to this mode calls the value of `prolog-mode-hook'
+if that value is non-nil.
+(autoload 'prolog-mode "prolog" '(#$ . 496365) t nil)
+#@71 Run an inferior Prolog process, input and output via buffer *prolog*.
+(autoload 'run-prolog "prolog" '(#$ . 496652) t nil)
+#@114 *List of directories to search for `BDF' font files.
+The default value is '("/usr/local/share/emacs/fonts/bdf").
+(defvar bdf-directory-list (byte-code "\302>\203\303\301!\203\304\305	\"C\207\306\207" [system-type installation-directory (ms-dos windows-nt) boundp expand-file-name "fonts/bdf" ("/usr/local/share/emacs/fonts/bdf")] 3) (#$ . -496782))
+#@52 Major mode for editing PostScript with GNU Emacs.
+
+(autoload 'ps-mode "ps-mode" '(#$ . 497142) t)
+#@1782 *Specifies the multi-byte buffer handling.
+
+Valid values are:
+
+  nil                     This is the value to use the default settings which
+			  is by default for printing buffer with only ASCII
+			  and Latin characters.  The default setting can be
+			  changed by setting the variable
+			  `ps-mule-font-info-database-default' differently.
+			  The initial value of this variable is
+			  `ps-mule-font-info-database-latin' (see
+			  documentation).
+
+  `non-latin-printer'     This is the value to use when you have a Japanese
+			  or Korean PostScript printer and want to print
+			  buffer with ASCII, Latin-1, Japanese (JISX0208 and
+			  JISX0201-Kana) and Korean characters.  At present,
+			  it was not tested the Korean characters printing.
+			  If you have a korean PostScript printer, please,
+			  test it.
+
+  `bdf-font'              This is the value to use when you want to print
+			  buffer with BDF fonts.  BDF fonts include both latin
+			  and non-latin fonts.  BDF (Bitmap Distribution
+			  Format) is a format used for distributing X's font
+			  source file.  BDF fonts are included in
+			  `intlfonts-1.2' which is a collection of X11 fonts
+			  for all characters supported by Emacs.  In order to
+			  use this value, be sure to have installed
+			  `intlfonts-1.2' and set the variable
+			  `bdf-directory-list' appropriately (see ps-bdf.el for
+			  documentation of this variable).
+
+  `bdf-font-except-latin' This is like `bdf-font' except that it is used
+			  PostScript default fonts to print ASCII and Latin-1
+			  characters.  This is convenient when you want or
+			  need to use both latin and non-latin characters on
+			  the same buffer.  See `ps-font-family',
+			  `ps-header-font-family' and `ps-font-info-database'.
+
+Any other value is treated as nil.
+(defvar ps-multibyte-buffer nil (#$ . -497248))
+#@83 Setup special ASCII font for STRING.
+STRING should contain only ASCII characters.
+(autoload 'ps-mule-prepare-ascii-font "ps-mule" '(#$ . 499083) nil nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload ps-mule-set-ascii-font "ps-mule" nil] 6)
+#@348 Generate PostScript code for plotting characters in the region FROM and TO.
+
+It is assumed that all characters in this region belong to the same charset.
+
+Optional argument BG-COLOR specifies background color.
+
+Returns the value:
+
+	(ENDPOS . RUN-WIDTH)
+
+Where ENDPOS is the end position of the sequence and RUN-WIDTH is the width of
+the sequence.
+(autoload 'ps-mule-plot-string "ps-mule" '(#$ . 499338) nil nil)
+#@353 Generate PostScript code for plotting composition in the region FROM and TO.
+
+It is assumed that all characters in this region belong to the same
+composition.
+
+Optional argument BG-COLOR specifies background color.
+
+Returns the value:
+
+	(ENDPOS . RUN-WIDTH)
+
+Where ENDPOS is the end position of the sequence and RUN-WIDTH is the width of
+the sequence.
+(autoload 'ps-mule-plot-composition "ps-mule" '(#$ . 499757) nil nil)
+#@60 Initialize global data for printing multi-byte characters.
+(autoload 'ps-mule-initialize "ps-mule" '(#$ . 500185) nil nil)
+#@105 Generate PostScript code for ploting STRING by font FONTTAG.
+FONTTAG should be a string "/h0" or "/h1".
+(autoload 'ps-mule-encode-header-string "ps-mule" '(#$ . 500315) nil nil)
+#@65 Return a list of character sets that appears in header strings.
+(autoload 'ps-mule-header-string-charsets "ps-mule" '(#$ . 500499) nil nil)
+#@139 Start printing job for multi-byte chars between FROM and TO.
+This checks if all multi-byte characters in the region are printable or not.
+(autoload 'ps-mule-begin-job "ps-mule" '(#$ . 500646) nil nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload ps-mule-begin-page "ps-mule" nil] 6)
+#@157 *Specify the size of paper to format for.
+Should be one of the paper types defined in `ps-page-dimensions-database', for
+example `letter', `legal' or `a4'.
+(defvar ps-paper-type 'letter (#$ . -500944))
+#@34 Customization of ps-print group.
+(autoload 'ps-print-customize "ps-print" '(#$ . 501152) t nil)
+#@423 Generate and print a PostScript image of the buffer.
+
+Interactively, when you use a prefix argument (C-u), the command prompts the
+user for a file name, and saves the PostScript image in that file instead of
+sending it to the printer.
+
+Noninteractively, the argument FILENAME is treated as follows: if it is nil,
+send the image to the printer.  If FILENAME is a string, save the PostScript
+image in a file with that name.
+(autoload 'ps-print-buffer "ps-print" '(#$ . 501255) t nil)
+#@256 Generate and print a PostScript image of the buffer.
+Like `ps-print-buffer', but includes font, color, and underline information in
+the generated image.  This command works only if you are using a window system,
+so it has a way to determine color values.
+(autoload 'ps-print-buffer-with-faces "ps-print" '(#$ . 501744) t nil)
+#@114 Generate and print a PostScript image of the region.
+Like `ps-print-buffer', but prints just the current region.
+(autoload 'ps-print-region "ps-print" '(#$ . 502077) t nil)
+#@256 Generate and print a PostScript image of the region.
+Like `ps-print-region', but includes font, color, and underline information in
+the generated image.  This command works only if you are using a window system,
+so it has a way to determine color values.
+(autoload 'ps-print-region-with-faces "ps-print" '(#$ . 502257) t nil)
+#@243 Generate and spool a PostScript image of the buffer.
+Like `ps-print-buffer' except that the PostScript image is saved in a local
+buffer to be sent to the printer later.
+
+Use the command `ps-despool' to send the spooled images to the printer.
+(autoload 'ps-spool-buffer "ps-print" '(#$ . 502590) t nil)
+#@329 Generate and spool a PostScript image of the buffer.
+Like `ps-spool-buffer', but includes font, color, and underline information in
+the generated image.  This command works only if you are using a window system,
+so it has a way to determine color values.
+
+Use the command `ps-despool' to send the spooled images to the printer.
+(autoload 'ps-spool-buffer-with-faces "ps-print" '(#$ . 502899) t nil)
+#@195 Generate a PostScript image of the region and spool locally.
+Like `ps-spool-buffer', but spools just the current region.
+
+Use the command `ps-despool' to send the spooled images to the printer.
+(autoload 'ps-spool-region "ps-print" '(#$ . 503305) t nil)
+#@337 Generate a PostScript image of the region and spool locally.
+Like `ps-spool-region', but includes font, color, and underline information in
+the generated image.  This command works only if you are using a window system,
+so it has a way to determine color values.
+
+Use the command `ps-despool' to send the spooled images to the printer.
+(autoload 'ps-spool-region-with-faces "ps-print" '(#$ . 503566) t nil)
+#@422 Send the spooled PostScript to the printer.
+
+Interactively, when you use a prefix argument (C-u), the command prompts the
+user for a file name, and saves the spooled PostScript image in that file
+instead of sending it to the printer.
+
+Noninteractively, the argument FILENAME is treated as follows: if it is nil,
+send the image to the printer.  If FILENAME is a string, save the PostScript
+image in a file with that name.
+(autoload 'ps-despool "ps-print" '(#$ . 503980) t nil)
+#@177 Display the correspondence between a line length and a font size, using the
+current ps-print setup.
+Try: pr -t file | awk '{printf "%3d %s
+", length($0), $0}' | sort -r | head
+(autoload 'ps-line-lengths "ps-print" '(#$ . 504463) t nil)
+#@122 Display number of pages to print this buffer, for various font heights.
+The table depends on the current ps-print setup.
+(autoload 'ps-nb-pages-buffer "ps-print" '(#$ . 504706) t nil)
+#@121 Display number of pages to print the region, for various font heights.
+The table depends on the current ps-print setup.
+(autoload 'ps-nb-pages-region "ps-print" '(#$ . 504897) t nil)
+#@49 Return the current PostScript-generation setup.
+(autoload 'ps-setup "ps-print" '(#$ . 505086) nil nil)
+#@390 Extend face in ALIST-SYM.
+
+If optional MERGE-P is non-nil, extensions in FACE-EXTENSION-LIST are merged
+with face extension in ALIST-SYM; otherwise, overrides.
+
+If optional ALIST-SYM is nil, it's used `ps-print-face-extension-alist';
+otherwise, it should be an alist symbol.
+
+The elements in FACE-EXTENSION-LIST is like those for `ps-extend-face'.
+
+See `ps-extend-face' for documentation.
+(autoload 'ps-extend-face-list "ps-print" '(#$ . 505196) nil nil)
+#@991 Extend face in ALIST-SYM.
+
+If optional MERGE-P is non-nil, extensions in FACE-EXTENSION list are merged
+with face extensions in ALIST-SYM; otherwise, overrides.
+
+If optional ALIST-SYM is nil, it's used `ps-print-face-extension-alist';
+otherwise, it should be an alist symbol.
+
+The elements of FACE-EXTENSION list have the form:
+
+   (FACE-NAME FOREGROUND BACKGROUND EXTENSION...)
+
+FACE-NAME is a face name symbol.
+
+FOREGROUND and BACKGROUND may be nil or a string that denotes the
+foreground and background colors respectively.
+
+EXTENSION is one of the following symbols:
+   bold      - use bold font.
+   italic    - use italic font.
+   underline - put a line under text.
+   strikeout - like underline, but the line is in middle of text.
+   overline  - like underline, but the line is over the text.
+   shadow    - text will have a shadow.
+   box       - text will be surrounded by a box.
+   outline   - print characters as hollow outlines.
+
+If EXTENSION is any other symbol, it is ignored.
+(autoload 'ps-extend-face "ps-print" '(#$ . 505658) nil nil)
+#@48 Return the title of the current Quail package.
+(autoload 'quail-title "quail" '(#$ . 506715) nil nil)
+#@211 Start using Quail package PACKAGE-NAME.
+The remaining arguments are libraries to be loaded before using the package.
+
+This activates input method defined by PACKAGE-NAME by running
+`quail-activate', which see.
+(autoload 'quail-use-package "quail" '(#$ . 506824) nil nil)
+#@3821 Define NAME as a new Quail package for input LANGUAGE.
+TITLE is a string to be displayed at mode-line to indicate this package.
+Optional arguments are GUIDANCE, DOCSTRING, TRANSLATION-KEYS,
+ FORGET-LAST-SELECTION, DETERMINISTIC, KBD-TRANSLATE, SHOW-LAYOUT,
+ CREATE-DECODE-MAP, MAXIMUM-SHORTEST, OVERLAY-PLIST,
+ UPDATE-TRANSLATION-FUNCTION, CONVERSION-KEYS and SIMPLE.
+
+GUIDANCE specifies how a guidance string is shown in echo area.
+If it is t, list of all possible translations for the current key is shown
+ with the currently selected translation being highlighted.
+If it is an alist, the element has the form (CHAR . STRING).  Each character
+ in the current key is searched in the list and the corresponding string is
+ shown.
+If it is nil, the current key is shown.
+
+DOCSTRING is the documentation string of this package.  The command
+`describe-input-method' shows this string while replacing the form
+\=\<VAR> in the string by the value of VAR.  That value should be a
+string.  For instance, the form \=\<quail-translation-docstring> is
+replaced by a description about how to select a translation from a
+list of candidates.
+
+TRANSLATION-KEYS specifies additional key bindings used while translation
+region is active.  It is an alist of single key character vs. corresponding
+command to be called.
+
+FORGET-LAST-SELECTION non-nil means a selected translation is not kept
+for the future to translate the same key.  If this flag is nil, a
+translation selected for a key is remembered so that it can be the
+first candidate when the same key is entered later.
+
+DETERMINISTIC non-nil means the first candidate of translation is
+selected automatically without allowing users to select another
+translation for a key.  In this case, unselected translations are of
+no use for an interactive use of Quail but can be used by some other
+programs.  If this flag is non-nil, FORGET-LAST-SELECTION is also set
+to t.
+
+KBD-TRANSLATE non-nil means input characters are translated from a
+user's keyboard layout to the standard keyboard layout.  See the
+documentation of `quail-keyboard-layout' and
+`quail-keyboard-layout-standard' for more detail.
+
+SHOW-LAYOUT non-nil means the `quail-help' command should show
+the user's keyboard layout visually with translated characters.
+If KBD-TRANSLATE is set, it is desirable to set also this flag unless
+this package defines no translations for single character keys.
+
+CREATE-DECODE-MAP non-nil means decode map is also created.  A decode
+map is an alist of translations and corresponding original keys.
+Although this map is not used by Quail itself, it can be used by some
+other programs.  For instance, Vietnamese supporting needs this map to
+convert Vietnamese text to VIQR format which uses only ASCII
+characters to represent Vietnamese characters.
+
+MAXIMUM-SHORTEST non-nil means break key sequence to get maximum
+length of the shortest sequence.  When we don't have a translation of
+key "..ABCD" but have translations of "..AB" and "CD..", break
+the key at "..AB" and start translation of "CD..".  Hangul
+packages, for instance, use this facility.  If this flag is nil, we
+break the key just at "..ABC" and start translation of "D..".
+
+OVERLAY-PLIST if non-nil is a property list put on an overlay which
+covers Quail translation region.
+
+UPDATE-TRANSLATION-FUNCTION if non-nil is a function to call to update
+the current translation region according to a new translation data.  By
+default, a translated text or a user's key sequence (if no translation
+for it) is inserted.
+
+CONVERSION-KEYS specifies additional key bindings used while
+conversion region is active.  It is an alist of single key character
+vs. corresponding command to be called.
+
+If SIMPLE is non-nil, then we do not alter the meanings of
+commands such as C-f, C-b, C-n, C-p and TAB; they are treated as
+non-Quail commands.
+(autoload 'quail-define-package "quail" '(#$ . 507103) nil nil)
+#@368 Set the current keyboard layout to the same as keyboard KBD-TYPE.
+
+Since some Quail packages depends on a physical layout of keys (not
+characters generated by them), those are created by assuming the
+standard layout defined in `quail-keyboard-layout-standard'.  This
+function tells Quail system the layout of your keyboard so that what
+you type is correctly handled.
+(autoload 'quail-set-keyboard-layout "quail" '(#$ . 510994) t nil)
+#@149 Show the physical layout of the keyboard type KEYBOARD-TYPE.
+
+The variable `quail-keyboard-layout-type' holds the currently selected
+keyboard type.
+(autoload 'quail-show-keyboard-layout "quail" '(#$ . 511435) t nil)
+#@1405 Define translation rules of the current Quail package.
+Each argument is a list of KEY and TRANSLATION.
+KEY is a string meaning a sequence of keystrokes to be translated.
+TRANSLATION is a character, a string, a vector, a Quail map, or a function.
+If it is a character, it is the sole translation of KEY.
+If it is a string, each character is a candidate for the translation.
+If it is a vector, each element (string or character) is a candidate
+  for the translation.
+In these cases, a key specific Quail map is generated and assigned to KEY.
+
+If TRANSLATION is a Quail map or a function symbol which returns a Quail map,
+ it is used to handle KEY.
+
+The first argument may be an alist of annotations for the following
+rules.  Each element has the form (ANNOTATION . VALUE), where
+ANNOTATION is a symbol indicating the annotation type.  Currently
+the following annotation types are supported.
+
+  append -- the value non-nil means that the following rules should
+	be appended to the rules of the current Quail package.
+
+  face -- the value is a face to use for displaying TRANSLATIONs in
+	candidate list.
+
+  advice -- the value is a function to call after one of RULES is
+	selected.  The function is called with one argument, the
+	selected TRANSLATION string, after the TRANSLATION is
+	inserted.
+
+  no-decode-map --- the value non-nil means that decoding map is not
+	generated for the following translations.
+(autoload 'quail-define-rules "quail" '(#$ . 511659) nil 'macro)
+#@210 Install the Quail map MAP in the current Quail package.
+
+Optional 2nd arg NAME, if non-nil, is a name of Quail package for
+which to install MAP.
+
+The installed map can be referred by the function `quail-map'.
+(autoload 'quail-install-map "quail" '(#$ . 513135) nil nil)
+#@238 Install the Quail decode map DECODE-MAP in the current Quail package.
+
+Optional 2nd arg NAME, if non-nil, is a name of Quail package for
+which to install MAP.
+
+The installed decode map can be referred by the function `quail-decode-map'.
+(autoload 'quail-install-decode-map "quail" '(#$ . 513412) nil nil)
+#@1179 Add one translation rule, KEY to TRANSLATION, in the current Quail package.
+KEY is a string meaning a sequence of keystrokes to be translated.
+TRANSLATION is a character, a string, a vector, a Quail map,
+ a function, or a cons.
+It it is a character, it is the sole translation of KEY.
+If it is a string, each character is a candidate for the translation.
+If it is a vector, each element (string or character) is a candidate
+ for the translation.
+If it is a cons, the car is one of the above and the cdr is a function
+ to call when translating KEY (the return value is assigned to the
+ variable `quail-current-data').  If the cdr part is not a function,
+ the value itself is assigned to `quail-current-data'.
+In these cases, a key specific Quail map is generated and assigned to KEY.
+
+If TRANSLATION is a Quail map or a function symbol which returns a Quail map,
+ it is used to handle KEY.
+
+Optional 3rd argument NAME, if specified, says which Quail package
+to define this translation rule in.  The default is to define it in the
+current Quail package.
+
+Optional 4th argument APPEND, if non-nil, appends TRANSLATION
+to the current translations for KEY instead of replacing them.
+(autoload 'quail-defrule "quail" '(#$ . 513725) nil nil)
+#@330 Define KEY as TRANS in a Quail map MAP.
+
+If Optional 4th arg APPEND is non-nil, TRANS is appended to the
+current translations for KEY instead of replacing them.
+
+Optional 5th arg DECODE-MAP is a Quail decode map.
+
+Optional 6th arg PROPS is a property list annotating TRANS.  See the
+function `quail-define-rules' for the detail.
+(autoload 'quail-defrule-internal "quail" '(#$ . 514967) nil nil)
+#@487 Update entries for Quail packages in `LEIM' list file in directory DIRNAME.
+DIRNAME is a directory containing Emacs input methods;
+normally, it should specify the `leim' subdirectory
+of the Emacs source tree.
+
+It searches for Quail packages under `quail' subdirectory of DIRNAME,
+and update the file "leim-list.el" in DIRNAME.
+
+When called from a program, the remaining arguments are additional
+directory names to search for Quail packages under `quail' subdirectory
+of each directory.
+(autoload 'quail-update-leim-list-file "quail" '(#$ . 515369) t nil)
+#@338 Example `quickurl-postfix' text that adds a local variable to the
+`quickurl-url-file' so that if you edit it by hand it will ensure that
+`quickurl-urls' is updated with the new URL list.
+
+To make use of this do something like:
+
+  (setq quickurl-postfix quickurl-reread-hook-postfix)
+
+in your ~/.emacs (after loading/requiring quickurl).
+(defconst quickurl-reread-hook-postfix "\n;; Local Variables:\n;; eval: (progn (require 'quickurl) (add-hook 'local-write-file-hooks (lambda () (quickurl-read) nil)))\n;; End:\n" (#$ . 515931))
+#@184 Insert an URL based on LOOKUP.
+
+If not supplied LOOKUP is taken to be the word at point in the current
+buffer, this default action can be modifed via
+`quickurl-grab-lookup-function'.
+(autoload 'quickurl "quickurl" '(#$ . 516469) t nil)
+#@64 Insert an URL, with `completing-read' prompt, based on LOOKUP.
+(autoload 'quickurl-ask "quickurl" '(#$ . 516711) t nil)
+#@158 Allow the user to interactively add a new URL associated with WORD.
+
+See `quickurl-grab-url' for details on how the default word/url combination
+is decided.
+(autoload 'quickurl-add-url "quickurl" '(#$ . 516838) t nil)
+#@192 Browse the URL associated with LOOKUP.
+
+If not supplied LOOKUP is taken to be the word at point in the
+current buffer, this default action can be modifed via
+`quickurl-grab-lookup-function'.
+(autoload 'quickurl-browse-url "quickurl" '(#$ . 517063) t nil)
+#@72 Browse the URL, with `completing-read' prompt, associated with LOOKUP.
+(autoload 'quickurl-browse-url-ask "quickurl" '(#$ . 517324) t nil)
+#@58 Pull `quickurl-url-file' into a buffer for hand editing.
+(autoload 'quickurl-edit-urls "quickurl" '(#$ . 517469) t nil)
+#@119 A mode for browsing the quickurl URL list.
+
+The key bindings for `quickurl-list-mode' are:
+
+\{quickurl-list-mode-map}
+(autoload 'quickurl-list-mode "quickurl" '(#$ . 517596) t nil)
+#@73 Display `quickurl-list' as a formatted list using `quickurl-list-mode'.
+(autoload 'quickurl-list "quickurl" '(#$ . 517783) t nil)
+#@82 Compile the current buffer's directory on HOST.  Log in as USER.
+See \[compile].
+(autoload 'remote-compile "rcompile" '(#$ . 517919) t nil)
+#@48 Call up the RE Builder for the current window.
+(autoload 're-builder "re-builder" '(#$ . 518065) t nil)
+#@66 Save the current `recentf-list' to the file `recentf-save-file'.
+(autoload 'recentf-save-list "recentf" '(#$ . 518175) t nil)
+#@68 Allow the user to edit the files that are kept in the recent list.
+(autoload 'recentf-edit-list "recentf" '(#$ . 518307) t nil)
+#@65 Remove all non-readable and excluded files from `recentf-list'.
+(autoload 'recentf-cleanup "recentf" '(#$ . 518441) t nil)
+#@255 Display buffer allowing user to choose a file from recently-opened list.
+The optional argument FILES may be used to specify the list, otherwise
+`recentf-list' is used.  The optional argument BUFFER-NAME specifies
+which buffer to use for the interaction.
+(autoload 'recentf-open-files "recentf" '(#$ . 518571) t nil)
+#@56 Allow the user to open files that are not in the menu.
+(autoload 'recentf-open-more-files "recentf" '(#$ . 518893) t nil)
+#@215 Non-nil if Recentf mode is enabled.
+See the command `recentf-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `recentf-mode'.
+(defvar recentf-mode nil (#$ . 519022))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group recentf recentf-mode custom-variable custom-add-load] 4)
+#@231 Toggle recentf mode.
+With prefix argument ARG, turn on if positive, otherwise off.
+Returns non-nil if the new state is enabled.
+
+When recentf mode is enabled, it maintains a menu for visiting files that
+were operated on recently.
+(autoload 'recentf-mode "recentf" '(#$ . 519414) t nil)
+#@263 Move point to column COLUMN rigidly in the current line.
+If COLUMN is within a multi-column character, replace it by
+spaces and tab.
+
+As for `move-to-column', passing anything but nil or t in FLAG will move to
+the desired column only if the line is long enough.
+(autoload 'move-to-column-force "rect" '(#$ . 519707) nil nil)
+#@352 Delete (don't save) text in the region-rectangle.
+The same range of columns is deleted in each line starting with the
+line where the region begins and ending with the line where the region
+ends.
+
+When called from a program the rectangle's corners are START and END.
+With a prefix (or a FILL) argument, also fill lines where nothing has
+to be deleted.
+(autoload 'delete-rectangle "rect" '(#$ . 520039) t nil)
+#@289 Delete the contents of the rectangle with corners at START and END.
+Return it as a list of strings, one for each line of the rectangle.
+
+When called from a program the rectangle's corners are START and END.
+With an optional FILL argument, also fill lines where nothing has to be
+deleted.
+(autoload 'delete-extract-rectangle "rect" '(#$ . 520454) nil nil)
+#@137 Return the contents of the rectangle with corners at START and END.
+Return it as a list of strings, one for each line of the rectangle.
+(autoload 'extract-rectangle "rect" '(#$ . 520816) nil nil)
+#@289 Delete the region-rectangle and save it as the last killed one.
+
+When called from a program the rectangle's corners are START and END.
+You might prefer to use `delete-extract-rectangle' from a program.
+
+With a prefix (or a FILL) argument, also fill lines where nothing has to be
+deleted.
+(autoload 'kill-rectangle "rect" '(#$ . 521019) t nil)
+#@65 Yank the last killed rectangle with upper left corner at point.
+(autoload 'yank-rectangle "rect" '(#$ . 521368) t nil)
+#@308 Insert text of RECTANGLE with upper left corner at point.
+RECTANGLE's first line is inserted at point, its second
+line is inserted at a point vertically under point, etc.
+RECTANGLE should be a list of strings.
+After this command, the mark is at the upper left corner
+and point is at the lower right corner.
+(autoload 'insert-rectangle "rect" '(#$ . 521494) nil nil)
+#@360 Blank out the region-rectangle, shifting text right.
+
+The text previously in the region is not overwritten by the blanks,
+but instead winds up to the right of the rectangle.
+
+When called from a program the rectangle's corners are START and END.
+With a prefix (or a FILL) argument, fill with blanks even if there is no text
+on the right side of the rectangle.
+(autoload 'open-rectangle "rect" '(#$ . 521867) t nil)
+(defalias 'close-rectangle 'delete-whitespace-rectangle)
+#@404 Delete all whitespace following a specified column in each line.
+The left edge of the rectangle specifies the position in each line
+at which whitespace deletion should begin.  On each line in the
+rectangle, all continuous whitespace starting at that column is deleted.
+
+When called from a program the rectangle's corners are START and END.
+With a prefix (or a FILL) argument, also fill too short lines.
+(autoload 'delete-whitespace-rectangle "rect" '(#$ . 522345) t nil)
+#@185 Replace rectangle contents with STRING on each line.
+The length of STRING need not be the same as the rectangle width.
+
+Called from a program, takes three args; START, END and STRING.
+(autoload 'string-rectangle "rect" '(#$ . 522823) t nil)
+#@270 Insert STRING on each line of region-rectangle, shifting text right.
+
+When called from a program, the rectangle's corners are START and END.
+The left edge of the rectangle specifies the column for insertion.
+This command does not delete or overwrite any existing text.
+(autoload 'string-insert-rectangle "rect" '(#$ . 523071) t nil)
+#@269 Blank out the region-rectangle.
+The text previously in the region is overwritten with blanks.
+
+When called from a program the rectangle's corners are START and END.
+With a prefix (or a FILL) argument, also fill with blanks the parts of the
+rectangle which were empty.
+(autoload 'clear-rectangle "rect" '(#$ . 523411) t nil)
+#@265 Toggle Refill minor mode.
+With prefix arg, turn Refill mode on iff arg is positive.
+
+When Refill mode is on, the current paragraph will be formatted when
+changes are made within it.  Self-inserting characters only cause
+refilling if they would cause auto-filling.
+(autoload 'refill-mode "refill" '(#$ . 523742) t nil)
+#@22 Turn on RefTeX mode.
+(autoload 'turn-on-reftex "reftex" '(#$ . 524066) nil nil)
+#@1334 Minor mode with distinct support for \label, \ref and \cite in LaTeX.
+
+\<reftex-mode-map>A Table of Contents of the entire (multifile) document with browsing
+capabilities is available with `\[reftex-toc]'.
+
+Labels can be created with `\[reftex-label]' and referenced with `\[reftex-reference]'.
+When referencing, you get a menu with all labels of a given type and
+context of the label definition.  The selected label is inserted as a
+\ref macro.
+
+Citations can be made with `\[reftex-citation]' which will use a regular expression
+to pull out a *formatted* list of articles from your BibTeX
+database.  The selected citation is inserted as a \cite macro.
+
+Index entries can be made with `\[reftex-index-selection-or-word]' which indexes the word at point
+or the current selection.  More general index entries are created with
+`\[reftex-index]'.  `\[reftex-display-index]' displays the compiled index.
+
+Most command have help available on the fly.  This help is accessed by
+pressing `?' to any prompt mentioning this feature.
+
+Extensive documentation about RefTeX is available in Info format.
+You can view this information with `\[reftex-info]'.
+
+\{reftex-mode-map}
+Under X, these and other functions will also be available as `Ref' menu
+on the menu bar.
+
+------------------------------------------------------------------------------
+(autoload 'reftex-mode "reftex" '(#$ . 524154) t nil)
+#@1001 Make a citation using BibTeX database files.
+After prompting for a regular expression, scans the buffers with
+bibtex entries (taken from the \bibliography command) and offers the
+matching entries for selection.  The selected entry is formatted according
+to `reftex-cite-format' and inserted into the buffer.
+
+If NO-INSERT is non-nil, nothing is inserted, only the selected key returned.
+
+FORAT-KEY can be used to pre-select a citation format.
+
+When called with one or two `C-u' prefixes, first rescans the document.
+When called with a numeric prefix, make that many citations.  When
+called with point inside the braces of a `\cite' command, it will
+add another key, ignoring the value of `reftex-cite-format'.
+
+The regular expression uses an expanded syntax: && is interpreted as `and'.
+Thus, `aaaa&&bbb' matches entries which contain both `aaaa' and `bbb'.
+While entering the regexp, completion on knows citation keys is possible.
+`=' is a good regular expression to match all entries in all files.
+(autoload 'reftex-citation "reftex-cite" '(#$ . 525549) t nil)
+#@860 Major mode for managing the Index phrases of a LaTeX document.
+This buffer was created with RefTeX.
+
+To insert new phrases, use
+ - `C-c \' in the LaTeX document to copy selection or word
+ - `\[reftex-index-new-phrase]' in the phrases buffer.
+
+To index phrases use one of:
+
+\[reftex-index-this-phrase]     index current phrase
+\[reftex-index-next-phrase]     index next phrase (or N with prefix arg)
+\[reftex-index-all-phrases]     index all phrases
+\[reftex-index-remaining-phrases]     index current and following phrases
+\[reftex-index-region-phrases]     index the phrases in the region
+
+You can sort the phrases in this buffer with \[reftex-index-sort-phrases].
+To display information about the phrase at point, use \[reftex-index-phrases-info].
+
+For more information see the RefTeX User Manual.
+
+Here are all local bindings.
+
+\{reftex-index-phrases-map}
+(autoload 'reftex-index-phrases-mode "reftex-index" '(#$ . 526619) t nil)
+#@551 Return a regexp to match a string in STRINGS.
+Each string should be unique in STRINGS and should not contain any regexps,
+quoted or not.  If optional PAREN is non-nil, ensure that the returned regexp
+is enclosed by at least one regexp grouping construct.
+The returned regexp is typically more efficient than the equivalent regexp:
+
+ (let ((open (if PAREN "\\(" "")) (close (if PAREN "\\)" "")))
+   (concat open (mapconcat 'regexp-quote STRINGS "\\|") close))
+
+If PAREN is `words', then the resulting regexp is additionally surrounded
+by \=\< and \>.
+(autoload 'regexp-opt "regexp-opt" '(#$ . 527559) nil nil)
+#@120 Return the depth of REGEXP.
+This means the number of regexp grouping constructs (parenthesised expressions)
+in REGEXP.
+(autoload 'regexp-opt-depth "regexp-opt" '(#$ . 528175) nil nil)
+#@432 Repeat most recently executed command.
+With prefix arg, apply new prefix arg to that command; otherwise, use
+the prefix arg that was used before (if any).
+This command is like the `.' command in the vi editor.
+
+If this command is invoked by a multi-character key sequence, it can then
+be repeated by repeating the final character of that sequence.  This behavior
+can be modified by the global variable `repeat-on-final-keystroke'.
+(autoload 'repeat "repeat" '(#$ . 528366) t nil)
+#@1072 Begin submitting a bug report via email.
+
+ADDRESS is the email address for the package's maintainer.  PKGNAME is
+the name of the package (if you want to include version numbers,
+you must put them into PKGNAME before calling this function).
+Optional PRE-HOOKS and POST-HOOKS are passed to `reporter-dump-state'.
+Optional SALUTATION is inserted at the top of the mail buffer,
+and point is left after the salutation.
+
+VARLIST is the list of variables to dump (see `reporter-dump-state'
+for details).  The optional argument PRE-HOOKS and POST-HOOKS are
+passed to `reporter-dump-state'.  Optional argument SALUTATION is text
+to be inserted at the top of the mail buffer; in that case, point is
+left after that text.
+
+This function prompts for a summary if `reporter-prompt-for-summary-p'
+is non-nil.
+
+This function does not send a message; it uses the given information
+to initialize a message, which the user can then edit and finally send
+(or decline to send).  The variable `mail-user-agent' controls which
+mail-sending package is used for editing and sending the message.
+(autoload 'reporter-submit-bug-report "reporter" '(#$ . 528854) nil nil)
+#@1058 Make the current definition and/or comment visible.
+Further invocations move it to the top of the window or toggle the
+visibility of comments that precede it.
+  Point is left unchanged unless prefix ARG is supplied.
+  If the definition is fully onscreen, it is moved to the top of the
+window.  If it is partly offscreen, the window is scrolled to get the
+definition (or as much as will fit) onscreen, unless point is in a comment
+which is also partly offscreen, in which case the scrolling attempts to get
+as much of the comment onscreen as possible.
+  Initially `reposition-window' attempts to make both the definition and
+preceding comments visible.  Further invocations toggle the visibility of
+the comment lines.
+  If ARG is non-nil, point may move in order to make the whole defun
+visible (if only part could otherwise be made so), to make the defun line
+visible (if point is in code and it could not be made so, or if only
+comments, including the first comment line, are visible), or to make the
+first comment line visible (if point is in a comment).
+(autoload 'reposition-window "reposition" '(#$ . 530006) t nil)
+(define-key esc-map "\f" 'reposition-window)
+#@67 Clear out the file used for transmitting args when Emacs resumes.
+(autoload 'resume-suspend-hook "resume" '(#$ . 531178) nil nil)
+#@42 Returns t if X is a ring; nil otherwise.
+(autoload 'ring-p "ring" '(#$ . 531314) nil nil)
+#@45 Make a ring that can contain SIZE elements.
+(autoload 'make-ring "ring" '(#$ . 531410) nil nil)
+(add-hook 'same-window-regexps "^\\*rlogin-.*\\*\\(\\|<[0-9]+>\\)")
+#@1653 Open a network login connection via `rlogin' with args INPUT-ARGS.
+INPUT-ARGS should start with a host name; it may also contain
+other arguments for `rlogin'.
+
+Input is sent line-at-a-time to the remote connection.
+
+Communication with the remote host is recorded in a buffer `*rlogin-HOST*'
+(or `*rlogin-USER@HOST*' if the remote username differs).
+If a prefix argument is given and the buffer `*rlogin-HOST*' already exists,
+a new buffer with a different connection will be made.
+
+When called from a program, if the optional second argument BUFFER is
+a string or buffer, it specifies the buffer to use.
+
+The variable `rlogin-program' contains the name of the actual program to
+run.  It can be a relative or absolute path.
+
+The variable `rlogin-explicit-args' is a list of arguments to give to
+the rlogin when starting.  They are added after any arguments given in
+INPUT-ARGS.
+
+If the default value of `rlogin-directory-tracking-mode' is t, then the
+default directory in that buffer is set to a remote (FTP) file name to
+access your home directory on the remote machine.  Occasionally this causes
+an error, if you cannot access the home directory on that machine.  This
+error is harmless as long as you don't try to use that default directory.
+
+If `rlogin-directory-tracking-mode' is neither t nor nil, then the default
+directory is initially set up to your (local) home directory.
+This is useful if the remote machine and your local machine
+share the same files via NFS.  This is the default.
+
+If you wish to change directory tracking styles during a session, use the
+function `rlogin-directory-tracking-mode' rather than simply setting the
+variable.
+(autoload 'rlogin "rlogin" '(#$ . 531582) t nil)
+#@189 *A regexp specifying names to prune of reply to messages.
+A value of nil means exclude your own login name as an address
+plus whatever is specified by `rmail-default-dont-reply-to-names'.
+(defvar rmail-dont-reply-to-names nil (#$ . -533290))
+#@313 A regular expression specifying part of the value of the default value of
+the variable `rmail-dont-reply-to-names', for when the user does not set
+`rmail-dont-reply-to-names' explicitly.  (The other part of the default
+value is the user's name.)
+It is useful to set this variable in the site customization file.
+(defvar rmail-default-dont-reply-to-names "info-" (#$ . 533539))
+#@373 *Regexp to match header fields that Rmail should normally hide.
+This variable is used for reformatting the message header,
+which normally happens once for each message,
+when you view the message for the first time in Rmail.
+To make a change in this variable take effect
+for a message that you have already viewed,
+go to that message and type \[rmail-toggle-header] twice.
+(defvar rmail-ignored-headers "^via:\\|^mail-from:\\|^origin:\\|^references:\\|^status:\\|^received:\\|^x400-originator:\\|^x400-recipients:\\|^x400-received:\\|^x400-mts-identifier:\\|^x400-content-type:\\|^\\(resent-\\|\\)message-id:\\|^summary-line:\\|^resent-date:\\|^nntp-posting-host:\\|^path:\\|^x-char.*:\\|^x-face:\\|^x-mailer:\\|^delivered-to:\\|^lines:\\|^mime-version:\\|^content-transfer-encoding:\\|^x-coding-system:\\|^return-path:\\|^errors-to:\\|^return-receipt-to:\\|^x-sign:\\|^x-beenthere:\\|^x-mailman-version:\\|^precedence:\\|^list-help:\\|^list-post:\\|^list-subscribe:\\|^list-id:\\|^list-unsubscribe:\\|^list-archive:\\|^content-type:\\|^content-length:\\|^x-attribution:\\|^x-disclaimer:\\|^x-trace:\\|^x-complaints-to:\\|^nntp-posting-date:\\|^user-agent:" (#$ . -533923))
+#@142 *Regexp to match Header fields that Rmail should display.
+If nil, display all header fields except those matched by
+`rmail-ignored-headers'.
+(defvar rmail-displayed-headers nil (#$ . -535103))
+#@66 *Headers that should be stripped when retrying a failed message.
+(defvar rmail-retry-ignored-headers "^x-authentication-warning:" (#$ . -535302))
+#@141 *Regexp to match Header fields that Rmail should normally highlight.
+A value of nil means don't highlight.
+See also `rmail-highlight-face'.
+(defvar rmail-highlighted-headers "^From:\\|^Subject:" (#$ . -535455))
+#@47 *Face used by Rmail for highlighting headers.
+(defvar rmail-highlight-face nil (#$ . -535672))
+#@73 *Non-nil means automatically delete a message that is copied to a file.
+(defvar rmail-delete-after-output nil (#$ . -535773))
+#@248 *List of files which are inboxes for user's primary mail file `~/RMAIL'.
+`nil' means the default, which is ("/usr/spool/mail/$USER")
+(the name varies depending on the operating system,
+and the value of the environment variable MAIL overrides it).
+(defvar rmail-primary-inbox-list nil (#$ . -535906))
+#@69 *Non-nil means Rmail makes a new frame for composing outgoing mail.
+(defvar rmail-mail-new-frame nil (#$ . -536212))
+#@50 *Directory for additional secondary Rmail files.
+(defvar rmail-secondary-file-directory "~/" (#$ . -536335))
+#@52 *Regexp for which files are secondary Rmail files.
+(defvar rmail-secondary-file-regexp "\\.xmail$" (#$ . -536450))
+#@77 *Whether and how to ask for confirmation before expunging deleted messages.
+(defvar rmail-confirm-expunge 'y-or-n-p (#$ . -536571))
+#@50 List of functions to call when Rmail is invoked.
+(defvar rmail-mode-hook nil (#$ . 536709))
+#@62 List of functions to call when Rmail has retrieved new mail.
+(defvar rmail-get-new-mail-hook nil (#$ . 536807))
+#@58 List of functions to call when Rmail displays a message.
+(defvar rmail-show-message-hook nil (#$ . 536925))
+#@55 List of functions to call when quitting out of Rmail.
+(defvar rmail-quit-hook nil (#$ . 537039))
+#@174 List of functions to call when Rmail deletes a message.
+When the hooks are called, the message has been marked deleted but is
+still the current message in the Rmail buffer.
+(defvar rmail-delete-message-hook nil (#$ . 537143))
+#@67 Coding system used in RMAIL file.
+
+This is set to nil by default.
+(defvar rmail-file-coding-system nil (#$ . 537375))
+#@219 *If non-nil, RMAIL uses MIME feature.
+If the value is t, RMAIL automatically shows MIME decoded message.
+If the value is neither t nor nil, RMAIL does not show MIME decoded message
+until a user explicitly requires it.
+(defvar rmail-enable-mime nil (#$ . -537500))
+#@146 Function to show MIME decoded message of RMAIL file.
+This function is called when `rmail-enable-mime' is non-nil.
+It is called with no argument.
+(defvar rmail-show-mime-function nil (#$ . 537771))
+#@311 Function to insert a message in MIME format so it can be forwarded.
+This function is called if `rmail-enable-mime' or 
+`rmail-enable-mime-composing' is non-nil.
+It is called with one argument FORWARD-BUFFER, which is a
+buffer containing the message to forward.  The current buffer
+is the outgoing mail buffer.
+(defvar rmail-insert-mime-forwarded-message-function nil (#$ . 537975))
+#@274 Function to insert a message in MIME format so it can be resent.
+This function is called if `rmail-enable-mime' is non-nil.
+It is called with one argument FORWARD-BUFFER, which is a
+buffer containing the message to forward.  The current buffer
+is the outgoing mail buffer.
+(defvar rmail-insert-mime-resent-message-function nil (#$ . 538364))
+#@229 Function to check if a regexp matches a MIME message.
+This function is called if `rmail-enable-mime' is non-nil.
+It is called with two arguments MSG and REGEXP, where
+MSG is the message number, REGEXP is the regular expression.
+(defvar rmail-search-mime-message-function nil (#$ . 538713))
+#@300 Function to check if a regexp matches a header of MIME message.
+This function is called if `rmail-enable-mime' is non-nil.
+It is called with four arguments MSG, REGEXP, and LIMIT, where
+MSG is the message number,
+REGEXP is the regular expression,
+LIMIT is the position specifying the end of header.
+(defvar rmail-search-mime-header-function nil (#$ . 539010))
+#@148 Feature to require to load MIME support in Rmail.
+When starting Rmail, if `rmail-enable-mime' is non-nil,
+this feature is required with `require'.
+(defvar rmail-mime-feature 'rmail-mime (#$ . 539377))
+#@347 *Non-nil means a message is decoded by MIME's charset specification.
+If this variable is nil, or the message has not MIME specification,
+the message is decoded as normal way.
+
+If the variable `rmail-enable-mime' is non-nil, this variables is
+ignored, and all the decoding work is done by a feature specified by
+the variable `rmail-mime-feature'.
+(defvar rmail-decode-mime-charset t (#$ . -539585))
+#@139 Regexp to match MIME-charset specification in a header of message.
+The first parenthesized expression should match the MIME-charset name.
+(defvar rmail-mime-charset-pattern "^content-type:[ ]*text/plain;[ 	\n]*charset=\"?\\([^ 	\n\"]+\\)\"?" (#$ . 539990))
+#@538 Read and edit incoming mail.
+Moves messages into file named by `rmail-file-name' (a babyl format file)
+ and edits that file in RMAIL Mode.
+Type \[describe-mode] once editing that file, for a list of RMAIL commands.
+
+May be called with file name as argument; then performs rmail editing on
+that file, but does not copy any new mail into the file.
+Interactively, if you supply a prefix argument, then you
+have a chance to specify a file name with the minibuffer.
+
+If `rmail-display-summary' is non-nil, make a summary for this RMAIL file.
+(autoload 'rmail "rmail" '(#$ . 540254) t nil)
+#@3237 Rmail Mode is used by \<rmail-mode-map>\[rmail] for editing Rmail files.
+All normal editing commands are turned off.
+Instead, these commands are available:
+
+\[rmail-beginning-of-message]	Move point to front of this message (same as \[beginning-of-buffer]).
+\[scroll-up]	Scroll to next screen of this message.
+\[scroll-down]	Scroll to previous screen of this message.
+\[rmail-next-undeleted-message]	Move to Next non-deleted message.
+\[rmail-previous-undeleted-message]	Move to Previous non-deleted message.
+\[rmail-next-message]	Move to Next message whether deleted or not.
+\[rmail-previous-message]	Move to Previous message whether deleted or not.
+\[rmail-first-message]	Move to the first message in Rmail file.
+\[rmail-last-message]	Move to the last message in Rmail file.
+\[rmail-show-message]	Jump to message specified by numeric position in file.
+\[rmail-search]	Search for string and show message it is found in.
+\[rmail-delete-forward]	Delete this message, move to next nondeleted.
+\[rmail-delete-backward]	Delete this message, move to previous nondeleted.
+\[rmail-undelete-previous-message]	Undelete message.  Tries current message, then earlier messages
+	till a deleted message is found.
+\[rmail-edit-current-message]	Edit the current message.  \[rmail-cease-edit] to return to Rmail.
+\[rmail-expunge]	Expunge deleted messages.
+\[rmail-expunge-and-save]	Expunge and save the file.
+\[rmail-quit]       Quit Rmail: expunge, save, then switch to another buffer.
+\[save-buffer] Save without expunging.
+\[rmail-get-new-mail]	Move new mail from system spool directory into this file.
+\[rmail-mail]	Mail a message (same as \[mail-other-window]).
+\[rmail-continue]	Continue composing outgoing message started before.
+\[rmail-reply]	Reply to this message.  Like \[rmail-mail] but initializes some fields.
+\[rmail-retry-failure]	Send this message again.  Used on a mailer failure message.
+\[rmail-forward]	Forward this message to another user.
+\[rmail-output-to-rmail-file]       Output this message to an Rmail file (append it).
+\[rmail-output]	Output this message to a Unix-format mail file (append it).
+\[rmail-output-body-to-file]	Save message body to a file.  Default filename comes from Subject line.
+\[rmail-input]	Input Rmail file.  Run Rmail on that file.
+\[rmail-add-label]	Add label to message.  It will be displayed in the mode line.
+\[rmail-kill-label]	Kill label.  Remove a label from current message.
+\[rmail-next-labeled-message]   Move to Next message with specified label
+          (label defaults to last one specified).
+          Standard labels: filed, unseen, answered, forwarded, deleted.
+          Any other label is present only if you add it with \[rmail-add-label].
+\[rmail-previous-labeled-message]   Move to Previous message with specified label
+\[rmail-summary]	Show headers buffer, with a one line summary of each message.
+\[rmail-summary-by-labels]	Summarize only messages with particular label(s).
+\[rmail-summary-by-recipients]   Summarize only messages with particular recipient(s).
+\[rmail-summary-by-regexp]   Summarize only messages with particular regexp(s).
+\[rmail-summary-by-topic]   Summarize only messages with subject line regexp(s).
+\[rmail-toggle-header]	Toggle display of complete header.
+(autoload 'rmail-mode "rmail" '(#$ . 540846) t nil)
+#@29 Run Rmail on file FILENAME.
+(autoload 'rmail-input "rmail" '(#$ . 544140) t nil)
+#@64 Set PASSWORD to be used for retrieving mail from a POP server.
+(autoload 'rmail-set-pop-password "rmail" '(#$ . 544227) t nil)
+#@36 Edit the contents of this message.
+(autoload 'rmail-edit-current-message "rmailedit" '(#$ . 544360) t nil)
+#@116 Add LABEL to labels associated with current RMAIL message.
+Completion is performed over known labels when reading.
+(autoload 'rmail-add-label "rmailkwd" '(#$ . 544474) t nil)
+#@121 Remove LABEL from labels associated with current RMAIL message.
+Completion is performed over known labels when reading.
+(autoload 'rmail-kill-label "rmailkwd" '(#$ . 544656) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload rmail-read-label "rmailkwd" nil] 6)
+#@240 Show previous message with one of the labels LABELS.
+LABELS should be a comma-separated list of label names.
+If LABELS is empty, the last set of labels specified is used.
+With prefix argument N moves backward N messages with these labels.
+(autoload 'rmail-previous-labeled-message "rmailkwd" '(#$ . 544933) t nil)
+#@235 Show next message with one of the labels LABELS.
+LABELS should be a comma-separated list of label names.
+If LABELS is empty, the last set of labels specified is used.
+With prefix argument N moves forward N messages with these labels.
+(autoload 'rmail-next-labeled-message "rmailkwd" '(#$ . 545254) t nil)
+#@184 Set the inbox list of the current RMAIL file to FILE-NAME.
+You can specify one file name, or several names separated by commas.
+If FILE-NAME is empty, remove any existing inbox list.
+(autoload 'set-rmail-inbox-list "rmailmsc" '(#$ . 545566) t nil)
+#@344 *Alist matching regexps to suggested output Rmail files.
+This is a list of elements of the form (REGEXP . NAME-EXP).
+The suggestion is taken if REGEXP matches anywhere in the message buffer.
+NAME-EXP may be a string constant giving the file name to use,
+or more generally it may be any kind of expression that returns
+a file name as a string.
+(defvar rmail-output-file-alist nil (#$ . -545821))
+#@720 Append the current message to an Rmail file named FILE-NAME.
+If the file does not exist, ask if it should be created.
+If file is being visited, the message is appended to the Emacs
+buffer visiting that file.
+If the file exists and is not an Rmail file, the message is
+appended in inbox format, the same way `rmail-output' does it.
+
+The default file name comes from `rmail-default-rmail-file',
+which is updated to the name you use in this command.
+
+A prefix argument N says to output N consecutive messages
+starting with the current one.  Deleted messages are skipped and don't count.
+
+If optional argument STAY is non-nil, then leave the last filed
+mesasge up instead of moving forward to the next non-deleted message.
+(autoload 'rmail-output-to-rmail-file "rmailout" '(#$ . 546223) t nil)
+#@75 *Regexp describing fields to exclude when outputting a message to a file.
+(defvar rmail-fields-not-to-output nil (#$ . -547019))
+#@737 Append this message to system-inbox-format mail file named FILE-NAME.
+A prefix argument N says to output N consecutive messages
+starting with the current one.  Deleted messages are skipped and don't count.
+When called from lisp code, N may be omitted.
+
+If the pruned message header is shown on the current message, then
+messages will be appended with pruned headers; otherwise, messages
+will be appended with their original headers.
+
+The default file name comes from `rmail-default-file',
+which is updated to the name you use in this command.
+
+The optional third argument NOATTRIBUTE, if non-nil, says not
+to set the `filed' attribute, and not to display a message.
+
+The optional fourth argument FROM-GNUS is set when called from GNUS.
+(autoload 'rmail-output "rmailout" '(#$ . 547155) t nil)
+#@122 Write this message body to the file FILE-NAME.
+FILE-NAME defaults, interactively, from the Subject field of the message.
+(autoload 'rmail-output-body-to-file "rmailout" '(#$ . 547955) t nil)
+#@113 Sort messages of current Rmail file by date.
+If prefix argument REVERSE is non-nil, sort them in reverse order.
+(autoload 'rmail-sort-by-date "rmailsort" '(#$ . 548153) t nil)
+#@116 Sort messages of current Rmail file by subject.
+If prefix argument REVERSE is non-nil, sort them in reverse order.
+(autoload 'rmail-sort-by-subject "rmailsort" '(#$ . 548336) t nil)
+#@115 Sort messages of current Rmail file by author.
+If prefix argument REVERSE is non-nil, sort them in reverse order.
+(autoload 'rmail-sort-by-author "rmailsort" '(#$ . 548525) t nil)
+#@118 Sort messages of current Rmail file by recipient.
+If prefix argument REVERSE is non-nil, sort them in reverse order.
+(autoload 'rmail-sort-by-recipient "rmailsort" '(#$ . 548712) t nil)
+#@128 Sort messages of current Rmail file by other correspondent.
+If prefix argument REVERSE is non-nil, sort them in reverse order.
+(autoload 'rmail-sort-by-correspondent "rmailsort" '(#$ . 548905) t nil)
+#@124 Sort messages of current Rmail file by number of lines.
+If prefix argument REVERSE is non-nil, sort them in reverse order.
+(autoload 'rmail-sort-by-lines "rmailsort" '(#$ . 549112) t nil)
+#@161 Sort messages of current Rmail file by labels.
+If prefix argument REVERSE is non-nil, sort them in reverse order.
+KEYWORDS is a comma-separated list of labels.
+(autoload 'rmail-sort-by-labels "rmailsort" '(#$ . 549307) t nil)
+#@69 *Non-nil means Rmail summary scroll commands move between messages.
+(defvar rmail-summary-scroll-between-messages t (#$ . -549539))
+#@76 *Non-nil if Rmail summary should show the number of lines in each message.
+(defvar rmail-summary-line-count-flag t (#$ . -549677))
+#@58 Display a summary of all messages, one line per message.
+(autoload 'rmail-summary "rmailsum" '(#$ . 549814) t nil)
+#@138 Display a summary of all messages with one or more LABELS.
+LABELS should be a string containing the desired labels, separated by commas.
+(autoload 'rmail-summary-by-labels "rmailsum" '(#$ . 549936) t nil)
+#@261 Display a summary of all messages with the given RECIPIENTS.
+Normally checks the To, From and Cc fields of headers;
+but if PRIMARY-ONLY is non-nil (prefix arg given),
+ only look in the To and From fields.
+RECIPIENTS is a string of regexps separated by commas.
+(autoload 'rmail-summary-by-recipients "rmailsum" '(#$ . 550148) t nil)
+#@251 Display a summary of all messages according to regexp REGEXP.
+If the regular expression is found in the header of the message
+(including in the date and other lines, as well as the subject line),
+Emacs will list the header line in the RMAIL-summary.
+(autoload 'rmail-summary-by-regexp "rmailsum" '(#$ . 550487) t nil)
+#@238 Display a summary of all messages with the given SUBJECT.
+Normally checks the Subject field of headers;
+but if WHOLE-MESSAGE is non-nil (prefix arg given), 
+ look in the whole message.
+SUBJECT is a string of regexps separated by commas.
+(autoload 'rmail-summary-by-topic "rmailsum" '(#$ . 550812) t nil)
+#@109 Display a summary of all messages with the given SENDERS.
+SENDERS is a string of names separated by commas.
+(autoload 'rmail-summary-by-senders "rmailsum" '(#$ . 551123) t nil)
+#@67 *Function to decode summary-line.
+
+By default, `identity' is set.
+(defvar rmail-summary-line-decoder 'identity (#$ . -551306))
+#@575 *Regexp matching user mail addresses.
+If non-nil, this variable is used to identify the correspondent
+when receiving new mail.  If it matches the address of the sender,
+the recipient is taken as correspondent of a mail.
+If nil (default value), your `user-login-name' and `user-mail-address'
+are used to exclude yourself as correspondent.
+
+Usually you don't have to set this variable, except if you collect mails
+sent by you under different user names.
+Then it should be a regexp matching your mail addresses.
+
+Setting this variable has an effect only before reading a mail.
+(defvar rmail-user-mail-address-regexp nil (#$ . -551440))
+#@191 Begin editing a new USENET news article to be posted.
+Type \[describe-mode] once editing the article to get a list of commands.
+If NOQUERY is non-nil, we do not query before doing the work.
+(autoload 'news-post-news "rnewspost" '(#$ . 552080) t nil)
+#@320 Display current buffer in rot 13 in another window.
+The text itself is not modified, only the way it is displayed is affected.
+
+To terminate the rot13 display, delete that window.  As long as that window
+is not deleted, any buffer displayed in it will become instantly encoded
+in rot 13.
+
+See also `toggle-rot13-mode'.
+(autoload 'rot13-other-window "rot13" '(#$ . 552337) t nil)
+#@59 Toggle the use of rot 13 encoding for the current window.
+(autoload 'toggle-rot13-mode "rot13" '(#$ . 552722) t nil)
+#@29 *This variable is obsolete.
+(defvar resize-minibuffer-mode nil (#$ . -552845))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group resize-minibuffer resize-minibuffer-mode custom-variable custom-add-load rsz-mini] 4)
+#@29 *This variable is obsolete.
+(defvar resize-minibuffer-window-max-height nil (#$ . -553090))
+#@29 *This variable is obsolete.
+(defvar resize-minibuffer-window-exactly t (#$ . -553188))
+#@29 *This variable is obsolete.
+(defvar resize-minibuffer-frame nil (#$ . -553281))
+#@29 *This variable is obsolete.
+(defvar resize-minibuffer-frame-max-height nil (#$ . -553367))
+#@29 *This variable is obsolete.
+(defvar resize-minibuffer-frame-exactly t (#$ . -553464))
+#@28 This function is obsolete.
+(autoload 'resize-minibuffer-mode "rsz-mini" '(#$ . 553556) t nil)
+#@159 Parse and produce code for regular expression FORM.
+FORM is a regular expression in sexp form.
+NO-GROUP non-nil means don't put shy groups around the result.
+(autoload 'rx-to-string "rx" '(#$ . 553657) nil nil)
+#@6722 Translate a regular expression REGEXP in sexp form to a regexp string.
+See also `rx-to-string' for how to do such a translation at run-time.
+
+The following are valid subforms of regular expressions in sexp
+notation.
+
+STRING
+     matches string STRING literally.
+
+CHAR
+     matches character CHAR literally.
+
+`not-newline'
+     matches any character except a newline.
+			.
+`anything'
+     matches any character
+
+`(any SET)'
+     matches any character in SET.  SET may be a character or string.
+     Ranges of characters can be specified as `A-Z' in strings.
+
+'(in SET)'
+     like `any'.
+
+`(not (any SET))'
+     matches any character not in SET
+
+`line-start'
+     matches the empty string, but only at the beginning of a line
+     in the text being matched
+
+`line-end'
+     is similar to `line-start' but matches only at the end of a line
+
+`string-start'
+     matches the empty string, but only at the beginning of the
+     string being matched against.
+
+`string-end'
+     matches the empty string, but only at the end of the
+     string being matched against.
+
+`buffer-start'
+     matches the empty string, but only at the beginning of the
+     buffer being matched against.
+
+`buffer-end'
+     matches the empty string, but only at the end of the
+     buffer being matched against.
+
+`point'
+     matches the empty string, but only at point.
+
+`word-start'
+     matches the empty string, but only at the beginning or end of a
+     word.
+
+`word-end'
+     matches the empty string, but only at the end of a word.
+
+`word-boundary'
+     matches the empty string, but only at the beginning or end of a
+     word.
+
+`(not word-boundary)'
+     matches the empty string, but not at the beginning or end of a
+     word.
+
+`digit'
+     matches 0 through 9.
+
+`control'
+     matches ASCII control characters.
+
+`hex-digit'
+     matches 0 through 9, a through f and A through F.
+
+`blank'
+     matches space and tab only.
+
+`graphic'
+     matches graphic characters--everything except ASCII control chars,
+     space, and DEL.
+
+`printing'
+     matches printing characters--everything except ASCII control chars
+     and DEL.
+
+`alphanumeric'
+     matches letters and digits.  (But at present, for multibyte characters,
+     it matches anything that has word syntax.)
+
+`letter'
+     matches letters.  (But at present, for multibyte characters,
+     it matches anything that has word syntax.)
+
+`ascii'
+     matches ASCII (unibyte) characters.
+
+`nonascii'
+     matches non-ASCII (multibyte) characters.
+
+`lower'
+     matches anything lower-case.
+
+`upper'
+     matches anything upper-case.
+
+`punctuation'
+     matches punctuation.  (But at present, for multibyte characters,
+     it matches anything that has non-word syntax.)
+
+`space'
+     matches anything that has whitespace syntax.
+
+`word'
+     matches anything that has word syntax.
+
+`(syntax SYNTAX)'
+     matches a character with syntax SYNTAX.  SYNTAX must be one
+     of the following symbols.
+
+     `whitespace'		(\s- in string notation)
+     `punctuation'		(\s.)
+     `word'			(\sw)
+     `symbol'			(\s_)
+     `open-parenthesis'		(\s()
+     `close-parenthesis'	(\s))
+     `expression-prefix'	(\s')
+     `string-quote'		(\s")
+     `paired-delimiter'		(\s$)
+     `escape'			(\s\)
+     `character-quote'		(\s/)
+     `comment-start'		(\s<)
+     `comment-end'		(\s>)
+
+`(not (syntax SYNTAX))'
+     matches a character that has not syntax SYNTAX.
+
+`(category CATEGORY)'
+     matches a character with category CATEGORY.  CATEGORY must be
+     either a character to use for C, or one of the following symbols.
+
+     `consonant'			(\c0 in string notation)
+     `base-vowel'			(\c1)
+     `upper-diacritical-mark'		(\c2)
+     `lower-diacritical-mark'		(\c3)
+     `tone-mark'		        (\c4)
+     `symbol'			        (\c5)
+     `digit'			        (\c6)
+     `vowel-modifying-diacritical-mark'	(\c7)
+     `vowel-sign'			(\c8)
+     `semivowel-lower'			(\c9)
+     `not-at-end-of-line'		(\c<)
+     `not-at-beginning-of-line'		(\c>)
+     `alpha-numeric-two-byte'		(\cA)
+     `chinse-two-byte'			(\cC)
+     `greek-two-byte'			(\cG)
+     `japanese-hiragana-two-byte'	(\cH)
+     `indian-tow-byte'			(\cI)
+     `japanese-katakana-two-byte'	(\cK)
+     `korean-hangul-two-byte'		(\cN)
+     `cyrillic-two-byte'		(\cY)
+     `ascii'				(\ca)
+     `arabic'				(\cb)
+     `chinese'				(\cc)
+     `ethiopic'				(\ce)
+     `greek'				(\cg)
+     `korean'				(\ch)
+     `indian'				(\ci)
+     `japanese'				(\cj)
+     `japanese-katakana'		(\ck)
+     `latin'				(\cl)
+     `lao'				(\co)
+     `tibetan'				(\cq)
+     `japanese-roman'			(\cr)
+     `thai'				(\ct)
+     `vietnamese'			(\cv)
+     `hebrew'				(\cw)
+     `cyrillic'				(\cy)
+     `can-break'			(\c|)
+
+`(not (category CATEGORY))'
+     matches a character that has not category CATEGORY.
+
+`(and SEXP1 SEXP2 ...)'
+     matches what SEXP1 matches, followed by what SEXP2 matches, etc.
+
+`(submatch SEXP1 SEXP2 ...)'
+     like `and', but makes the match accessible with `match-end',
+     `match-beginning', and `match-string'.
+
+`(group SEXP1 SEXP2 ...)'
+     another name for `submatch'.
+
+`(or SEXP1 SEXP2 ...)'
+     matches anything that matches SEXP1 or SEXP2, etc.  If all
+     args are strings, use `regexp-opt' to optimize the resulting
+     regular expression.
+
+`(minimal-match SEXP)'
+     produce a non-greedy regexp for SEXP.  Normally, regexps matching
+     zero or more occurrances of something are "greedy" in that they
+     match as much as they can, as long as the overall regexp can
+     still match.  A non-greedy regexp matches as little as possible.
+
+`(maximal-match SEXP)'
+     produce a greedy regexp for SEXP.  This is the default.
+
+`(zero-or-more SEXP)'
+     matches zero or more occurrences of what SEXP matches.
+
+`(0+ SEXP)'
+     like `zero-or-more'.
+
+`(* SEXP)'
+     like `zero-or-more', but always produces a greedy regexp.
+
+`(*? SEXP)'
+     like `zero-or-more', but always produces a non-greedy regexp.
+
+`(one-or-more SEXP)'
+     matches one or more occurrences of A.
+
+`(1+ SEXP)'
+     like `one-or-more'.
+
+`(+ SEXP)'
+     like `one-or-more', but always produces a greedy regexp.
+
+`(+? SEXP)'
+     like `one-or-more', but always produces a non-greedy regexp.
+
+`(zero-or-one SEXP)'
+     matches zero or one occurrences of A.
+
+`(optional SEXP)'
+     like `zero-or-one'.
+
+`(? SEXP)'
+     like `zero-or-one', but always produces a greedy regexp.
+
+`(?? SEXP)'
+     like `zero-or-one', but always produces a non-greedy regexp.
+
+`(repeat N SEXP)'
+     matches N occurrences of what SEXP matches.
+
+`(repeat N M SEXP)'
+     matches N to M occurrences of what SEXP matches.
+
+`(eval FORM)'
+      evaluate FORM and insert result.  If result is a string,
+      `regexp-quote' it.
+
+`(regexp REGEXP)'
+      include REGEXP in string notation in the result.
+(autoload 'rx "rx" '(#$ . 553876) nil 'macro)
+#@861 Major mode for editing Scheme code.
+Editing commands are similar to those of `lisp-mode'.
+
+In addition, if an inferior Scheme process is running, some additional
+commands will be defined, for evaluating expressions and controlling
+the interpreter, and the state of the process will be displayed in the
+modeline of all Scheme buffers.  The names of commands that interact
+with the Scheme process start with "xscheme-" if you use the MIT
+Scheme-specific `xscheme' package; for more information see the
+documentation for `xscheme-interaction-mode'.  Use \[run-scheme] to
+start an inferior Scheme using the more general `cmuscheme' package.
+
+Commands:
+Delete converts tabs to spaces as it moves back.
+Blank lines separate paragraphs.  Semicolons start comments.
+\{scheme-mode-map}
+Entry to this mode calls the value of `scheme-mode-hook'
+if that value is non-nil.
+(autoload 'scheme-mode "scheme" '(#$ . 560650) t nil)
+#@398 Major mode for editing DSSSL code.
+Editing commands are similar to those of `lisp-mode'.
+
+Commands:
+Delete converts tabs to spaces as it moves back.
+Blank lines separate paragraphs.  Semicolons start comments.
+\{scheme-mode-map}
+Entering this mode runs the hooks `scheme-mode-hook' and then
+`dsssl-mode-hook' and inserts the value of `dsssl-sgml-declaration' if
+that variable's value is a string.
+(autoload 'dsssl-mode "scheme" '(#$ . 561571) t nil)
+#@102 Mode for editing Gnus score files.
+This mode is an extended emacs-lisp mode.
+
+\{gnus-score-mode-map}
+(autoload 'gnus-score-mode "score-mode" '(#$ . 562028) t nil)
+#@529 Major mode for editing files of Scribe (a text formatter) source.
+Scribe-mode is similar to text-mode, with a few extra commands added.
+\{scribe-mode-map}
+
+Interesting variables:
+
+scribe-fancy-paragraphs
+  Non-nil makes Scribe mode use a different style of paragraph separation.
+
+scribe-electric-quote
+  Non-nil makes insert of double quote use `` or '' depending on context.
+
+scribe-electric-parenthesis
+  Non-nil makes an open-parenthesis char (one of `([<{')
+  automatically insert its close if typed after an @Command form.
+(autoload 'scribe-mode "scribe" '(#$ . 562198) t nil)
+#@145 Control/track scroll locking.
+
+Setting this variable directly does not take effect;
+use either M-x customize or the function `scroll-all-mode'.
+(defvar scroll-all-mode nil (#$ . 562787))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group windows scroll-all-mode custom-variable custom-add-load scroll-all] 4)
+#@223 Toggle Scroll-All minor mode.
+With ARG, turn Scroll-All minor mode on if ARG is positive, off otherwise.
+When Scroll-All mode is on, scrolling commands entered in one window
+apply to all visible windows in the same frame.
+(autoload 'scroll-all-mode "scroll-all" '(#$ . 563126) t nil)
+#@619 *Specifies how "From:" fields look.
+
+If `nil', they contain just the return address like:
+	king@grassland.com
+If `parens', they look like:
+	king@grassland.com (Elvis Parsley)
+If `angles', they look like:
+	Elvis Parsley <king@grassland.com>
+If `system-default', allows the mailer to insert its default From field
+derived from the envelope-from address.
+
+In old versions of Emacs, the `system-default' setting also caused
+Emacs to pass the proper email address from `user-mail-address'
+to the mailer to specify the envelope-from address.  But that is now
+controlled by a separate variable, `mail-specify-envelope-from'.
+(defvar mail-from-style 'angles (#$ . -563417))
+#@262 *If non-nil, specify the envelope-from address when sending mail.
+The value used to specify it is whatever is found in
+`mail-envelope-from', with `user-mail-address' as fallback.
+
+On most systems, specifying the envelope-from address
+is a privileged operation.
+(defvar mail-specify-envelope-from nil (#$ . -564090))
+#@171 *Non-nil means insert BCC to self in messages to be sent.
+This is done when the message is initialized,
+so you can remove or alter the BCC field to override the default.
+(defvar mail-self-blind nil (#$ . -564413))
+#@127 *Non-nil means when sending a message wait for and display errors.
+nil means let mailer mail back a message to report errors.
+(defvar mail-interactive nil (#$ . -564634))
+#@71 *Delete these headers from old message when it's inserted in a reply.
+(defvar mail-yank-ignored-headers "^via:\\|^mail-from:\\|^origin:\\|^status:\\|^remailed\\|^received:\\|^message-id:\\|^summary-line:\\|^to:\\|^subject:\\|^in-reply-to:\\|^return-path:" (#$ . -564811))
+#@328 Function to call to send the current buffer as mail.
+The headers should be delimited by a line which is
+not a valid RFC822 header or continuation line,
+that matches the variable `mail-header-separator'.
+This is used by the default mail-sending commands.  See also
+`message-send-mail-function' for use with the Message package.
+(defvar send-mail-function 'sendmail-send-it (#$ . 565090))
+#@70 *Line used to separate headers from text in messages being composed.
+(defvar mail-header-separator "--text follows this line--" (#$ . -565483))
+#@111 *Name of file to write all outgoing messages in, or nil for none.
+This can be an inbox file or an Rmail file.
+(defvar mail-archive-file-name nil (#$ . -565634))
+#@163 *Address to insert as default Reply-to field of outgoing messages.
+If nil, it will be initialized from the REPLYTO environment variable
+when you first send mail.
+(defvar mail-default-reply-to nil (#$ . -565802))
+#@299 *If non-nil, the name of a file to use instead of `/usr/lib/aliases'.
+This file defines aliases to be expanded by the mailer; this is a different
+feature from that of defining aliases in `.mailrc' to be expanded in Emacs.
+This variable has no effect unless your system uses sendmail as its mailer.
+(defvar mail-alias-file nil (#$ . -566021))
+#@204 *If non-nil, the name of the user's personal mail alias file.
+This file typically should be in same format as the `.mailrc' file used by
+the `Mail' or `mailx' program.
+This file need not actually exist.
+(defvar mail-personal-alias-file "~/.mailrc" (#$ . -566370))
+#@418 *Text inserted at end of mail buffer when a message is initialized.
+If t, it means to insert the contents of the file `mail-signature-file'.
+If a string, that string is inserted.
+ (To make a proper signature, the string should begin with \n\n-- \n,
+  which is the standard way to delimit a signature in a message.)
+Otherwise, it should be an expression; it is evaluated
+and should insert whatever you want to insert.
+(defvar mail-signature nil (#$ . -566641))
+#@893 Major mode for editing mail to be sent.
+Like Text Mode but with these additional commands:
+\[mail-send]  mail-send (send the message)    \[mail-send-and-exit]  mail-send-and-exit
+Here are commands that move to a header field (and create it if there isn't):
+	 \[mail-to]  move to To:	\[mail-subject]  move to Subject:
+	 \[mail-cc]  move to CC:	\[mail-bcc]  move to BCC:
+	 \[mail-fcc]  move to FCC:	\[mail-reply-to] move to Reply-To:
+\[mail-text]  mail-text (move to beginning of message text).
+\[mail-signature]  mail-signature (insert `mail-signature-file' file).
+\[mail-yank-original]  mail-yank-original (insert current message, in Rmail).
+\[mail-fill-yanked-message]  mail-fill-yanked-message (fill what was yanked).
+\[mail-sent-via]  mail-sent-via (add a Sent-via field for each To or CC).
+Turning on Mail mode runs the normal hooks `text-mode-hook' and
+`mail-mode-hook' (in that order).
+(autoload 'mail-mode "sendmail" '(#$ . 567108) t nil)
+#@278 *Coding system for encoding the outgoing mail.
+This has higher priority than `default-buffer-file-coding-system'
+and `default-sendmail-coding-system',
+but lower priority than the local value of `buffer-file-coding-system'.
+See also the function `select-message-coding-system'.
+(defvar sendmail-coding-system nil (#$ . -568061))
+#@417 Default coding system for encoding the outgoing mail.
+This variable is used only when `sendmail-coding-system' is nil.
+
+This variable is set/changed by the command set-language-environment.
+User should not set this variable manually,
+instead use sendmail-coding-system to get a constant encoding
+of outgoing mails regardless of the current language environment.
+See also the function `select-message-coding-system'.
+(defvar default-sendmail-coding-system 'iso-latin-1 (#$ . 568396))
+(add-hook 'same-window-buffer-names "*mail*")
+#@1764 Edit a message to be sent.  Prefix arg means resume editing (don't erase).
+When this function returns, the buffer `*mail*' is selected.
+The value is t if the message was newly initialized; otherwise, nil.
+
+Optionally, the signature file `mail-signature-file' can be inserted at the
+end; see the variable `mail-signature'.
+
+\<mail-mode-map>
+While editing message, type \[mail-send-and-exit] to send the message and exit.
+
+Various special commands starting with C-c are available in sendmail mode
+to move to message header fields:
+\{mail-mode-map}
+
+If `mail-self-blind' is non-nil, a BCC to yourself is inserted
+when the message is initialized.
+
+If `mail-default-reply-to' is non-nil, it should be an address (a string);
+a Reply-to: field with that address is inserted.
+
+If `mail-archive-file-name' is non-nil, an FCC field with that file name
+is inserted.
+
+The normal hook `mail-setup-hook' is run after the message is
+initialized.  It can add more default fields to the message.
+
+When calling from a program, the first argument if non-nil says
+not to erase the existing contents of the `*mail*' buffer.
+
+The second through fifth arguments,
+ TO, SUBJECT, IN-REPLY-TO and CC, specify if non-nil
+ the initial contents of those header fields.
+ These arguments should not have final newlines.
+The sixth argument REPLYBUFFER is a buffer which contains an
+ original message being replied to, or else an action
+ of the form (FUNCTION . ARGS) which says how to insert the original.
+ Or it can be nil, if not replying to anything.
+The seventh argument ACTIONS is a list of actions to take
+ if/when the message is sent.  Each action looks like (FUNCTION . ARGS);
+ when the message is sent, we apply FUNCTION to ARGS.
+ This is how Rmail arranges to mark messages `answered'.
+(autoload 'mail "sendmail" '(#$ . 568933) t nil)
+#@65 Like `mail' command, but display mail buffer in another window.
+(autoload 'mail-other-window "sendmail" '(#$ . 570751) t nil)
+#@64 Like `mail' command, but display mail buffer in another frame.
+(autoload 'mail-other-frame "sendmail" '(#$ . 570883) t nil)
+#@371 Allow this Emacs process to be a server for client processes.
+This starts a server communications subprocess through which
+client "editors" can send your editing commands to this Emacs job.
+To use the server, set up the program `emacsclient' in the
+Emacs distribution as your standard "editor".
+
+Prefix arg means just kill any existing server communications subprocess.
+(autoload 'server-start "server" '(#$ . 571014) t nil)
+#@680 Major mode for editing SGML documents.
+Makes > match <.  Makes / blink matching /.
+Keys <, &, SPC within <>, " and ' can be electric depending on
+`sgml-quick-keys'.
+
+An argument of N to a tag-inserting command means to wrap it around
+the next N words.  In Transient Mark mode, when the mark is active,
+N defaults to -1, which means to wrap it around the current region.
+
+If you like upcased tags, put (setq sgml-transformation 'upcase) in
+your `.emacs' file.
+
+Use \[sgml-validate] to validate your document with an SGML parser.
+
+Do \[describe-variable] sgml- SPC to see available variables.
+Do \[describe-key] on the following bindings to discover what they do.
+\{sgml-mode-map}
+(autoload 'sgml-mode "sgml-mode" '(#$ . 571446) t nil)
+#@1742 Major mode based on SGML mode for editing HTML documents.
+This allows inserting skeleton constructs used in hypertext documents with
+completion.  See below for an introduction to HTML.  Use
+\[browse-url-of-buffer] to see how this comes out.  See also `sgml-mode' on
+which this is based.
+
+Do \[describe-variable] html- SPC and \[describe-variable] sgml- SPC to see available variables.
+
+To write fairly well formatted pages you only need to know few things.  Most
+browsers have a function to read the source code of the page being seen, so
+you can imitate various tricks.  Here's a very short HTML primer which you
+can also view with a browser to see what happens:
+
+<title>A Title Describing Contents</title> should be on every page.  Pages can
+have <h1>Very Major Headlines</h1> through <h6>Very Minor Headlines</h6>
+<hr> Parts can be separated with horizontal rules.
+
+<p>Paragraphs only need an opening tag.  Line breaks and multiple spaces are
+ignored unless the text is <pre>preformatted.</pre>  Text can be marked as
+<b>bold</b>, <i>italic</i> or <u>underlined</u> using the normal  M-g  or
+Edit/Text Properties/Face commands.
+
+Pages can have <a name="SOMENAME">named points</a> and can link other points
+to them with <a href="#SOMENAME">see also somename</a>.  In the same way <a
+href="URL">see also URL</a> where URL is a filename relative to current
+directory, or absolute as in `http://www.cs.indiana.edu/elisp/w3/docs.html'.
+
+Images in many formats can be inlined with <img src="URL">.
+
+If you mainly create your own documents, `sgml-specials' might be
+interesting.  But note that some HTML 2 browsers can't handle `&apos;'.
+To work around that, do:
+   (eval-after-load "sgml-mode" '(aset sgml-char-names ?' nil))
+
+\{html-mode-map}
+(autoload 'html-mode "sgml-mode" '(#$ . 572188) t nil)
+(put 'sh-mode 'mode-class 'special)
+#@2483 Major mode for editing shell scripts.
+This mode works for many shells, since they all have roughly the same syntax,
+as far as commands, arguments, variables, pipes, comments etc. are concerned.
+Unless the file's magic number indicates the shell, your usual shell is
+assumed.  Since filenames rarely give a clue, they are not further analyzed.
+
+This mode adapts to the variations between shells (see `sh-set-shell') by
+means of an inheritance based feature lookup (see `sh-feature').  This
+mechanism applies to all variables (including skeletons) that pertain to
+shell-specific features.
+
+The default style of this mode is that of Rosenblatt's Korn shell book.
+The syntax of the statements varies with the shell being used.  The
+following commands are available, based on the current shell's syntax:
+
+\[sh-case]	 case statement
+\[sh-for]	 for loop
+\[sh-function]	 function definition
+\[sh-if]	 if statement
+\[sh-indexed-loop]	 indexed loop from 1 to n
+\[sh-while-getopts]	 while getopts loop
+\[sh-repeat]	 repeat loop
+\[sh-select]	 select loop
+\[sh-until]	 until loop
+\[sh-while]	 while loop
+
+For sh and rc shells indentation commands are:
+\[sh-show-indent]	Show the variable controlling this line's indentation.
+\[sh-set-indent]	Set then variable controlling this line's indentation.
+\[sh-learn-line-indent]	Change the indentation variable so this line
+would indent to the way it currently is.
+\[sh-learn-buffer-indent]  Set the indentation variables so the
+buffer indents as it currently is indented.
+
+
+\[backward-delete-char-untabify]	 Delete backward one position, even if it was a tab.
+\[sh-newline-and-indent]	 Delete unquoted space and indent new line same as this one.
+\[sh-end-of-command]	 Go to end of successive commands.
+\[sh-beginning-of-command]	 Go to beginning of successive commands.
+\[sh-set-shell]	 Set this buffer's shell, and maybe its magic number.
+\[sh-execute-region]	 Have optional header and region be executed in a subshell.
+
+\[sh-maybe-here-document]	 Without prefix, following an unquoted < inserts here document.
+{, (, [, ', ", `
+	Unless quoted with \, insert the pairs {}, (), [], or '', "", ``.
+
+If you generally program a shell different from your login shell you can
+set `sh-shell-file' accordingly.  If your shell's file name doesn't correctly
+indicate what shell it is use `sh-alias-alist' to translate.
+
+If your shell gives error messages with line numbers, you can use \[executable-interpret]
+with your script for an edit-interpret-debug cycle.
+(autoload 'sh-mode "sh-script" '(#$ . 574028) t nil)
+(defalias 'shell-script-mode 'sh-mode)
+#@1777 Display a list of Emacs Lisp files that shadow other files.
+
+This function lists potential load-path problems.  Directories in the
+`load-path' variable are searched, in order, for Emacs Lisp
+files.  When a previously encountered file name is found again, a
+message is displayed indicating that the later file is "hidden" by
+the earlier.
+
+For example, suppose `load-path' is set to
+
+("/usr/gnu/emacs/site-lisp" "/usr/gnu/emacs/share/emacs/19.30/lisp")
+
+and that each of these directories contains a file called XXX.el.  Then
+XXX.el in the site-lisp directory is referred to by all of:
+(require 'XXX), (autoload .... "XXX"), (load-library "XXX") etc.
+
+The first XXX.el file prevents emacs from seeing the second (unless
+the second is loaded explicitly via load-file).
+
+When not intended, such shadowings can be the source of subtle
+problems.  For example, the above situation may have arisen because the
+XXX package was not distributed with versions of emacs prior to
+19.30.  An emacs maintainer downloaded XXX from elsewhere and installed
+it.  Later, XXX was updated and included in the emacs distribution.
+Unless the emacs maintainer checks for this, the new version of XXX
+will be hidden behind the old (which may no longer work with the new
+emacs version).
+
+This function performs these checks and flags all possible
+shadowings.  Because a .el file may exist without a corresponding .elc
+(or vice-versa), these suffixes are essentially ignored.  A file
+XXX.elc in an early directory (that does not contain XXX.el) is
+considered to shadow a later file XXX.el, and vice-versa.
+
+When run interactively, the shadowings (if any) are displayed in a
+buffer called `*Shadows*'.  Shadowings are located by calling the
+(non-interactive) companion function, `find-emacs-lisp-shadows'.
+(autoload 'list-load-path-shadows "shadow" '(#$ . 576610) t nil)
+#@373 Edit (or create) the definition of a cluster NAME.
+This is a group of hosts that share directories, so that copying to or from
+one of them is sufficient to update the file on all of them.  Clusters are
+defined by a name, the network address of a primary host (the one we copy
+files to), and a regular expression that matches the hostnames of all the sites
+in the cluster.
+(autoload 'shadow-define-cluster "shadowfile" '(#$ . 578458) t nil)
+#@273 Declare a single file to be shared between sites.
+It may have different filenames on each site.  When this file is edited, the
+new version will be copied to each of the other locations.  Sites can be
+specific hostnames, or names of clusters (see `shadow-define-cluster').
+(autoload 'shadow-define-literal-group "shadowfile" '(#$ . 578905) t nil)
+#@378 Make each of a group of files be shared between hosts.
+Prompts for regular expression; files matching this are shared between a list
+of sites, which are also prompted for.  The filenames must be identical on all
+hosts (if they aren't, use shadow-define-group instead of this function).
+Each site can be either a hostname or the name of a cluster (see
+`shadow-define-cluster').
+(autoload 'shadow-define-regexp-group "shadowfile" '(#$ . 579258) t nil)
+#@24 Set up file shadowing.
+(autoload 'shadow-initialize "shadowfile" '(#$ . 579714) t nil)
+#@281 Regexp to match shells that don't save their command history, and
+don't handle the backslash as a quote character.  For shells that
+match this regexp, Emacs will write out the command history when the
+shell finishes, and won't remove backslashes when it unquotes shell
+arguments.
+(defvar shell-dumb-shell-regexp "cmd\\(proxy\\)?\\.exe" (#$ . 579808))
+#@1458 Run an inferior shell, with I/O through BUFFER (which defaults to `*shell*').
+Interactively, a prefix arg means to prompt for BUFFER.
+If BUFFER exists but shell process is not running, make new shell.
+If BUFFER exists and shell process is running, just switch to BUFFER.
+Program used comes from variable `explicit-shell-file-name',
+ or (if that is nil) from the ESHELL environment variable,
+ or else from SHELL if there is no ESHELL.
+If a file `~/.emacs_SHELLNAME' exists, it is given as initial input
+ (Note that this may lose due to a timing error if the shell
+  discards input when it starts up.)
+The buffer is put in Shell mode, giving commands for sending input
+and controlling the subjobs of the shell.  See `shell-mode'.
+See also the variable `shell-prompt-pattern'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the shell, use \[universal-coding-system-argument]
+before \[shell].  You can also specify this with \[set-buffer-process-coding-system]
+in the shell buffer, after you start the shell.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+The shell file name (sans directories) is used to make a symbol name
+such as `explicit-csh-args'.  If that symbol is a variable,
+its value is used as a list of arguments when invoking the shell.
+Otherwise, one argument `-i' is passed to the shell.
+
+(Type \[describe-mode] in the shell buffer for a list of commands.)
+(autoload 'shell "shell" '(#$ . 580167) t nil)
+(add-hook 'same-window-buffer-names "*shell*")
+#@2232 Major mode for editing SIMULA code.
+\{simula-mode-map}
+Variables controlling indentation style:
+ simula-tab-always-indent
+    Non-nil means TAB in SIMULA mode should always reindent the current line,
+    regardless of where in the line point is when the TAB command is used.
+ simula-indent-level
+    Indentation of SIMULA statements with respect to containing block.
+ simula-substatement-offset
+    Extra indentation after DO, THEN, ELSE, WHEN and OTHERWISE.
+ simula-continued-statement-offset 3
+    Extra indentation for lines not starting a statement or substatement,
+    e.g. a nested FOR-loop.  If value is a list, each line in a multiple-
+    line continued statement will have the car of the list extra indentation
+    with respect to the previous line of the statement.
+ simula-label-offset -4711
+    Offset of SIMULA label lines relative to usual indentation.
+ simula-if-indent '(0 . 0)
+    Extra indentation of THEN and ELSE with respect to the starting IF.
+    Value is a cons cell, the car is extra THEN indentation and the cdr
+    extra ELSE indentation.  IF after ELSE is indented as the starting IF.
+ simula-inspect-indent '(0 . 0)
+    Extra indentation of WHEN and OTHERWISE with respect to the
+    corresponding INSPECT.  Value is a cons cell, the car is
+    extra WHEN indentation and the cdr extra OTHERWISE indentation.
+ simula-electric-indent nil
+    If this variable is non-nil, `simula-indent-line'
+    will check the previous line to see if it has to be reindented.
+ simula-abbrev-keyword 'upcase
+    Determine how SIMULA keywords will be expanded.  Value is one of
+    the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table',
+    or nil if they should not be changed.
+ simula-abbrev-stdproc 'abbrev-table
+    Determine how standard SIMULA procedure and class names will be
+    expanded.  Value is one of the symbols `upcase', `downcase', `capitalize',
+    (as in) `abbrev-table', or nil if they should not be changed.
+
+Turning on SIMULA mode calls the value of the variable simula-mode-hook
+with no arguments, if that value is non-nil
+
+Warning: simula-mode-hook should not read in an abbrev file without calling
+the function simula-install-standard-abbrevs afterwards, preferably not
+at all.
+(autoload 'simula-mode "simula" '(#$ . 581726) t nil)
+#@71 Function for transforming a skeleton proxy's aliases' variable value.
+(defvar skeleton-filter 'identity (#$ . 584017))
+#@277 Define a user-configurable COMMAND that enters a statement skeleton.
+DOCUMENTATION is that of the command, while the variable of the same name,
+which contains the skeleton, has a documentation to that effect.
+INTERACTOR and ELEMENT ... are as defined under `skeleton-insert'.
+(autoload 'define-skeleton "skeleton" '(#$ . 584143) nil 'macro)
+#@576 Insert skeleton defined by variable of same name (see `skeleton-insert').
+Prefix ARG allows wrapping around words or regions (see `skeleton-insert').
+If no ARG was given, but the region is visible, ARG defaults to -1 depending
+on `skeleton-autowrap'.  An ARG of  M-0  will prevent this just for once.
+This command can also be an abbrev expansion (3rd and 4th columns in
+\[edit-abbrevs]  buffer: ""  command-name).
+
+When called as a function, optional first argument STR may also be a string
+which will be the value of `str' whereas the skeleton's interactor is then
+ignored.
+(autoload 'skeleton-proxy-new "skeleton" '(#$ . 584491) t nil)
+#@576 Insert skeleton defined by variable of same name (see `skeleton-insert').
+Prefix ARG allows wrapping around words or regions (see `skeleton-insert').
+If no ARG was given, but the region is visible, ARG defaults to -1 depending
+on `skeleton-autowrap'.  An ARG of  M-0  will prevent this just for once.
+This command can also be an abbrev expansion (3rd and 4th columns in
+\[edit-abbrevs]  buffer: ""  command-name).
+
+When called as a function, optional first argument STR may also be a string
+which will be the value of `str' whereas the skeleton's interactor is then
+ignored.
+(autoload 'skeleton-proxy "skeleton" '(#$ . 585136) t nil)
+#@2939 Insert the complex statement skeleton SKELETON describes very concisely.
+
+With optional second argument REGIONS, wrap first interesting point
+(`_') in skeleton around next REGIONS words, if REGIONS is positive.
+If REGIONS is negative, wrap REGIONS preceding interregions into first
+REGIONS interesting positions (successive `_'s) in skeleton.
+
+An interregion is the stretch of text between two contiguous marked
+points.  If you marked A B C [] (where [] is the cursor) in
+alphabetical order, the 3 interregions are simply the last 3 regions.
+But if you marked B A [] C, the interregions are B-A, A-[], []-C.
+
+The optional third argument STR, if specified, is the value for the
+variable `str' within the skeleton.  When this is non-nil, the
+interactor gets ignored, and this should be a valid skeleton element.
+
+SKELETON is made up as (INTERACTOR ELEMENT ...).  INTERACTOR may be nil if
+not needed, a prompt-string or an expression for complex read functions.
+
+If ELEMENT is a string or a character it gets inserted (see also
+`skeleton-transformation').  Other possibilities are:
+
+	\n	go to next line and indent according to mode
+	_	interesting point, interregion here
+	>	indent line (or interregion if > _) according to major mode
+	@	add position to `skeleton-positions'
+	&	do next ELEMENT iff previous moved point
+	|	do next ELEMENT iff previous didn't move point
+	-num	delete num preceding characters (see `skeleton-untabify')
+	resume:	skipped, continue here if quit is signaled
+	nil	skipped
+
+After termination, point will be positioned at the first occurrence
+of _ or @ or at the end of the inserted text.
+
+Further elements can be defined via `skeleton-further-elements'.  ELEMENT may
+itself be a SKELETON with an INTERACTOR.  The user is prompted repeatedly for
+different inputs.  The SKELETON is processed as often as the user enters a
+non-empty string.  \[keyboard-quit] terminates skeleton insertion, but
+continues after `resume:' and positions at `_' if any.  If INTERACTOR in such
+a subskeleton is a prompt-string which contains a ".. %s .." it is
+formatted with `skeleton-subprompt'.  Such an INTERACTOR may also be a list of
+strings with the subskeleton being repeated once for each string.
+
+Quoted Lisp expressions are evaluated for their side-effects.
+Other Lisp expressions are evaluated and the value treated as above.
+Note that expressions may not return `t' since this implies an
+endless loop.  Modes can define other symbols by locally setting them
+to any valid skeleton element.  The following local variables are
+available:
+
+	str	first time: read a string according to INTERACTOR
+		then: insert previously read string once more
+	help	help-form during interaction with the user or `nil'
+	input	initial input (string or cons with index) while reading str
+	v1, v2	local variables for memorizing anything you want
+
+When done with skeleton, but before going back to `_'-point call
+`skeleton-end-hook' if that is non-`nil'.
+(autoload 'skeleton-insert "skeleton" '(#$ . 585778) nil nil)
+#@629 Insert the character you type ARG times.
+
+With no ARG, if `skeleton-pair' is non-nil, pairing can occur.  If the region
+is visible the pair is wrapped around it depending on `skeleton-autowrap'.
+Else, if `skeleton-pair-on-word' is non-nil or we are not before or inside a
+word, and if `skeleton-pair-filter' returns nil, pairing is performed.
+Pairing is also prohibited if we are right after a quoting character
+such as backslash.
+
+If a match is found in `skeleton-pair-alist', that is inserted, else
+the defaults are used.  These are (), [], {}, <> and `' for the
+symmetrical ones, and the same character twice for the others.
+(autoload 'skeleton-pair-insert-maybe "skeleton" '(#$ . 588785) t nil)
+#@82 Minor mode to simplify editing output from the diff3 program.
+\{smerge-mode-map}
+(autoload 'smerge-mode "smerge-mode" '(#$ . 589490) t nil)
+#@228 Display textual smileys as images.
+START and END specify the region; interactively, use the values
+of point and mark.  The value of `smiley-regexp-alist' determines
+which smileys to operate on and which images to use for them.
+(autoload 'smiley-region "smiley-ems" '(#$ . 589637) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload smtpmail-send-it "smtpmail" nil] 6)
+#@73 Send mail that was queued as a result of setting `smtpmail-queue-mail'.
+(autoload 'smtpmail-send-queued-mail "smtpmail" '(#$ . 590019) t nil)
+#@517 Play the Snake game.
+Move the snake around without colliding with its tail or with the border.
+
+Eating dots causes the snake to get longer.
+
+snake-mode keybindings:
+   \<snake-mode-map>
+\[snake-start-game]	Starts a new game of Snake
+\[snake-end-game]	Terminates the current game
+\[snake-pause-game]	Pauses (or resumes) the current game
+\[snake-move-left]	Makes the snake move left
+\[snake-move-right]	Makes the snake move right
+\[snake-move-up]	Makes the snake move up
+\[snake-move-down]	Makes the snake move down
+
+
+(autoload 'snake "snake" '(#$ . 590168) t nil)
+#@327 Major mode for editing SNMP MIBs.
+Expression and list commands understand all C brackets.
+Tab indents for C code.
+Comments start with -- and end with newline or another --.
+Delete converts tabs to spaces as it moves back.
+\{snmp-mode-map}
+Turning on snmp-mode runs the hooks in `snmp-common-mode-hook', then
+`snmp-mode-hook'.
+(autoload 'snmp-mode "snmp-mode" '(#$ . 590738) t nil)
+#@331 Major mode for editing SNMPv2 MIBs.
+Expression and list commands understand all C brackets.
+Tab indents for C code.
+Comments start with -- and end with newline or another --.
+Delete converts tabs to spaces as it moves back.
+\{snmp-mode-map}
+Turning on snmp-mode runs the hooks in `snmp-common-mode-hook',
+then `snmpv2-mode-hook'.
+(autoload 'snmpv2-mode "snmp-mode" '(#$ . 591126) t nil)
+#@420 *The pseudo-pattern that governs the way a time of day is formatted.
+
+A pseudo-pattern is a list of expressions that can involve the keywords
+`12-hours', `24-hours', and `minutes', all numbers in string form,
+and `am-pm' and `time-zone', both alphabetic strings.
+
+For example, the form
+
+  '(24-hours ":" minutes
+    (if time-zone " (") time-zone (if time-zone ")"))
+
+would give military-style times like `21:07 (UTC)'.
+(defvar calendar-time-display-form '(12-hours ":" minutes am-pm (if time-zone " (") time-zone (if time-zone ")")) (#$ . -591520))
+#@333 *Latitude of `calendar-location-name' in degrees.
+
+The value can be either a decimal fraction (one place of accuracy is
+sufficient), + north, - south, such as 40.7 for New York City, or the value
+can be a vector [degrees minutes north/south] such as [40 50 north] for New
+York City.
+
+This variable should be set in `site-start'.el.
+(defvar calendar-latitude nil (#$ . -592076))
+#@330 *Longitude of `calendar-location-name' in degrees.
+
+The value can be either a decimal fraction (one place of accuracy is
+sufficient), + east, - west, such as -73.9 for New York City, or the value
+can be a vector [degrees minutes east/west] such as [73 55 west] for New
+York City.
+
+This variable should be set in `site-start'.el.
+(defvar calendar-longitude nil (#$ . -592461))
+#@210 *Expression evaluating to name of `calendar-longitude', `calendar-latitude'.
+For example, "New York City".  Default value is just the latitude, longitude
+pair.
+
+This variable should be set in `site-start'.el.
+(defvar calendar-location-name '(let ((float-output-format "%.1f")) (format "%s%s, %s%s" (if (numberp calendar-latitude) (abs calendar-latitude) (+ (aref calendar-latitude 0) (/ (aref calendar-latitude 1) 60.0))) (if (numberp calendar-latitude) (if (> calendar-latitude 0) "N" "S") (if (equal (aref calendar-latitude 2) 'north) "N" "S")) (if (numberp calendar-longitude) (abs calendar-longitude) (+ (aref calendar-longitude 0) (/ (aref calendar-longitude 1) 60.0))) (if (numberp calendar-longitude) (if (> calendar-longitude 0) "E" "W") (if (equal (aref calendar-longitude 2) 'east) "E" "W")))) (#$ . -592844))
+#@328 Local time of sunrise and sunset for today.  Accurate to a few seconds.
+If called with an optional prefix argument, prompt for date.
+
+If called with an optional double prefix argument, prompt for longitude,
+latitude, time zone, and date, and always use standard time.
+
+This function is suitable for execution in a .emacs file.
+(autoload 'sunrise-sunset "solar" '(#$ . 593671) t nil)
+#@111 *local* date and time of equinoxes and solstices, if visible in the calendar window.
+Requires floating point.
+(autoload 'solar-equinoxes-solstices "solar" '(#$ . -594061) nil nil)
+#@1699 Play Solitaire.
+
+To play Solitaire, type \[solitaire].
+\<solitaire-mode-map>
+Move around the board using the cursor keys.
+Move stones using \[solitaire-move] followed by a direction key.
+Undo moves using \[solitaire-undo].
+Check for possible moves using \[solitaire-do-check].
+(The variable `solitaire-auto-eval' controls whether to automatically
+check after each move or undo)
+
+What is Solitaire?
+
+I don't know who invented this game, but it seems to be rather old and
+its origin seems to be northern Africa.  Here's how to play:
+Initially, the board will look similar to this:
+
+	Le Solitaire             
+	============             
+	
+		o   o   o        
+	
+		o   o   o        
+	
+	o   o   o   o   o   o   o
+	
+	o   o   o   .   o   o   o
+	
+	o   o   o   o   o   o   o
+	
+		o   o   o        
+	
+		o   o   o        
+
+Let's call the o's stones and the .'s holes.  One stone fits into one
+hole.  As you can see, all holes but one are occupied by stones.  The
+aim of the game is to get rid of all but one stone, leaving that last
+one in the middle of the board if you're cool.
+
+A stone can be moved if there is another stone next to it, and a hole
+after that one.  Thus there must be three fields in a row, either
+horizontally or vertically, up, down, left or right, which look like
+this:  o  o  .
+
+Then the first stone is moved to the hole, jumping over the second,
+which therefore is taken away.  The above thus `evaluates' to:  .  .  o
+
+That's all.  Here's the board after two moves:
+
+		o   o   o        
+	
+		.   o   o        
+	
+	o   o   .   o   o   o   o
+	
+	o   .   o   o   o   o   o
+	
+	o   o   o   o   o   o   o
+	
+		o   o   o        
+	
+		o   o   o
+
+Pick your favourite shortcuts:
+
+\{solitaire-mode-map}
+(autoload 'solitaire "solitaire" '(#$ . 594249) t nil)
+#@1669 General text sorting routine to divide buffer into records and sort them.
+Arguments are REVERSE NEXTRECFUN ENDRECFUN &optional STARTKEYFUN ENDKEYFUN.
+
+We divide the accessible portion of the buffer into disjoint pieces
+called sort records.  A portion of each sort record (perhaps all of
+it) is designated as the sort key.  The records are rearranged in the
+buffer in order by their sort keys.  The records may or may not be
+contiguous.
+
+Usually the records are rearranged in order of ascending sort key.
+If REVERSE is non-nil, they are rearranged in order of descending sort key.
+The variable `sort-fold-case' determines whether alphabetic case affects
+the sort order.
+
+The next four arguments are functions to be called to move point
+across a sort record.  They will be called many times from within sort-subr.
+
+NEXTRECFUN is called with point at the end of the previous record.
+It moves point to the start of the next record.
+It should move point to the end of the buffer if there are no more records.
+The first record is assumed to start at the position of point when sort-subr
+is called.
+
+ENDRECFUN is called with point within the record.
+It should move point to the end of the record.
+
+STARTKEYFUN moves from the start of the record to the start of the key.
+It may return either a non-nil value to be used as the key, or
+else the key is the substring between the values of point after
+STARTKEYFUN and ENDKEYFUN are called.  If STARTKEYFUN is nil, the key
+starts at the beginning of the record.
+
+ENDKEYFUN moves from the start of the sort key to the end of the sort key.
+ENDKEYFUN may be nil if STARTKEYFUN returns a value or if it would be the
+same as ENDRECFUN.
+(autoload 'sort-subr "sort" '(#$ . 596010) nil nil)
+#@279 Sort lines in region alphabetically; argument means descending order.
+Called from a program, there are three arguments:
+REVERSE (non-nil means reverse order), BEG and END (region to sort).
+The variable `sort-fold-case' determines whether alphabetic case affects
+the sort order.
+(autoload 'sort-lines "sort" '(#$ . 597737) t nil)
+#@284 Sort paragraphs in region alphabetically; argument means descending order.
+Called from a program, there are three arguments:
+REVERSE (non-nil means reverse order), BEG and END (region to sort).
+The variable `sort-fold-case' determines whether alphabetic case affects
+the sort order.
+(autoload 'sort-paragraphs "sort" '(#$ . 598073) t nil)
+#@279 Sort pages in region alphabetically; argument means descending order.
+Called from a program, there are three arguments:
+REVERSE (non-nil means reverse order), BEG and END (region to sort).
+The variable `sort-fold-case' determines whether alphabetic case affects
+the sort order.
+(autoload 'sort-pages "sort" '(#$ . 598419) t nil)
+#@505 Sort lines in region numerically by the ARGth field of each line.
+Fields are separated by whitespace and numbered from 1 up.
+Specified field must contain a number in each line of the region,
+which may begin with "0x" or "0" for hexadecimal and octal values.
+Otherwise, the number is interpreted according to sort-numeric-base.
+With a negative arg, sorts by the ARGth field counted from the right.
+Called from a program, there are three arguments:
+FIELD, BEG and END.  BEG and END specify region to sort.
+(autoload 'sort-numeric-fields "sort" '(#$ . 598755) t nil)
+#@398 Sort lines in region lexicographically by the ARGth field of each line.
+Fields are separated by whitespace and numbered from 1 up.
+With a negative arg, sorts by the ARGth field counted from the right.
+Called from a program, there are three arguments:
+FIELD, BEG and END.  BEG and END specify region to sort.
+The variable `sort-fold-case' determines whether alphabetic case affects
+the sort order.
+(autoload 'sort-fields "sort" '(#$ . 599326) t nil)
+#@907 Sort the region lexicographically as specified by RECORD-REGEXP and KEY.
+RECORD-REGEXP specifies the textual units which should be sorted.
+  For example, to sort lines RECORD-REGEXP would be "^.*$"
+KEY specifies the part of each record (ie each match for RECORD-REGEXP)
+  is to be used for sorting.
+  If it is "\\digit" then the digit'th "\\(...\\)" match field from
+  RECORD-REGEXP is used.
+  If it is "\\&" then the whole record is used.
+  Otherwise, it is a regular-expression for which to search within the record.
+If a match for KEY is not found within a record then that record is ignored.
+
+With a negative prefix arg sorts in reverse order.
+
+The variable `sort-fold-case' determines whether alphabetic case affects
+the sort order.
+
+For example: to sort lines in the region by the first word on each line
+ starting with the letter "f",
+ RECORD-REGEXP would be "^.*$" and KEY would be "\\=\<f\\w*\\>"
+(autoload 'sort-regexp-fields "sort" '(#$ . 599782) t nil)
+#@719 Sort lines in region alphabetically by a certain range of columns.
+For the purpose of this command, the region BEG...END includes
+the entire line that point is in and the entire line the mark is in.
+The column positions of point and mark bound the range of columns to sort on.
+A prefix argument means sort into REVERSE order.
+The variable `sort-fold-case' determines whether alphabetic case affects
+the sort order.
+
+Note that `sort-columns' rejects text that contains tabs,
+because tabs could be split across the specified columns
+and it doesn't know how to handle that.  Also, when possible,
+it uses the `sort' utility program, which doesn't understand tabs.
+Use \[untabify] to convert tabs to spaces before sorting.
+(autoload 'sort-columns "sort" '(#$ . 600754) t nil)
+#@106 Reverse the order of lines in a region.
+From a program takes two point or marker arguments, BEG and END.
+(autoload 'reverse-region "sort" '(#$ . 601532) t nil)
+(defalias 'speedbar 'speedbar-frame-mode)
+#@381 Enable or disable speedbar.  Positive ARG means turn on, negative turn off.
+nil means toggle.  Once the speedbar frame is activated, a buffer in
+`speedbar-mode' will be displayed.  Currently, only one speedbar is
+supported at a time.
+`speedbar-before-popup-hook' is called before popping up the speedbar frame.
+`speedbar-before-delete-hook' is called before the frame is deleted.
+(autoload 'speedbar-frame-mode "speedbar" '(#$ . 601741) t nil)
+#@189 Change frame focus to or from the speedbar frame.
+If the selected frame is not speedbar, then speedbar frame is
+selected.  If the speedbar frame is active, then select the attached frame.
+(autoload 'speedbar-get-focus "speedbar" '(#$ . 602192) t nil)
+(put 'spell-filter 'risky-local-variable t)
+#@298 Check spelling of every word in the buffer.
+For each incorrect word, you are asked for the correct spelling
+and then put into a query-replace to fix some or all occurrences.
+If you do not want to change a word, just give the same word
+as its "correct" spelling; then the query replace is skipped.
+(autoload 'spell-buffer "spell" '(#$ . 602494) t nil)
+#@156 Check spelling of word at or before point.
+If it is not correct, ask user for the correct spelling
+and `query-replace' the entire buffer to substitute it.
+(autoload 'spell-word "spell" '(#$ . 602852) t nil)
+#@181 Like `spell-buffer' but applies only to region.
+Used in a program, applies from START to END.
+DESCRIPTION is an optional string naming the unit being checked:
+for example, "word".
+(autoload 'spell-region "spell" '(#$ . 603066) t nil)
+#@48 Check spelling of string supplied as argument.
+(autoload 'spell-string "spell" '(#$ . 603306) t nil)
+#@57 Adds that special touch of class to your outgoing mail.
+(autoload 'spook "spook" '(#$ . 603413) t nil)
+#@65 Return a vector containing the lines from `spook-phrases-file'.
+(autoload 'snarf-spooks "spook" '(#$ . 603522) nil nil)
+#@1338 Show short help for the SQL modes.
+
+Use an entry function to open an interactive SQL buffer.  This buffer is
+usually named `*SQL*'.  The name of the major mode is SQLi.
+
+Use the following commands to start a specific SQL interpreter:
+
+    PostGres: \[sql-postgres]
+    MySQL: \[sql-mysql]
+
+Other non-free SQL implementations are also supported:
+
+    Solid: \[sql-solid]
+    Oracle: \[sql-oracle]
+    Informix: \[sql-informix]
+    Sybase: \[sql-sybase]
+    Ingres: \[sql-ingres]
+    Microsoft: \[sql-ms]
+    Interbase: \[sql-interbase]
+
+But we urge you to choose a free implementation instead of these.
+
+Once you have the SQLi buffer, you can enter SQL statements in the
+buffer.  The output generated is appended to the buffer and a new prompt
+is generated.  See the In/Out menu in the SQLi buffer for some functions
+that help you navigate through the buffer, the input history, etc.
+
+If you have a really complex SQL statement or if you are writing a
+procedure, you can do this in a separate buffer.  Put the new buffer in
+`sql-mode' by calling \[sql-mode].  The name of this buffer can be
+anything.  The name of the major mode is SQL.
+
+In this SQL buffer (SQL mode), you can send the region or the entire
+buffer to the interactive SQL buffer (SQLi mode).  The results are
+appended to the SQLi buffer without disturbing your SQL buffer.
+(autoload 'sql-help "sql" '(#$ . 603650) t nil)
+#@742 Major mode to edit SQL.
+
+You can send SQL statements to the SQLi buffer using
+\[sql-send-region].  Such a buffer must exist before you can do this.
+See `sql-help' on how to create SQLi buffers.
+
+\{sql-mode-map}
+Customization: Entry to this mode runs the `sql-mode-hook'.
+
+When you put a buffer in SQL mode, the buffer stores the last SQLi
+buffer created as its destination in the variable `sql-buffer'.  This
+will be the buffer \[sql-send-region] sends the region to.  If this
+SQLi buffer is killed, \[sql-send-region] is no longer able to
+determine where the strings should be sent to.  You can set the
+value of `sql-buffer' using \[sql-set-sqli-buffer].
+
+For information on how to create multiple SQLi buffers, see
+`sql-interactive-mode'.
+(autoload 'sql-mode "sql" '(#$ . 605042) t nil)
+#@979 Run sqlplus by Oracle as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-oracle-program'.  Login uses
+the variables `sql-user', `sql-password', and `sql-database' as
+defaults, if set.  Additional command line parameters can be stored in
+the list `sql-oracle-options'.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-oracle].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-oracle "sql" '(#$ . 605838) t nil)
+#@990 Run isql by SyBase as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-sybase-program'.  Login uses
+the variables `sql-server', `sql-user', `sql-password', and
+`sql-database' as defaults, if set.  Additional command line parameters
+can be stored in the list `sql-sybase-options'.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-sybase].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-sybase "sql" '(#$ . 606873) t nil)
+#@868 Run dbaccess by Informix as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-informix-program'.  Login uses
+the variable `sql-database' as default, if set.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-informix].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-informix "sql" '(#$ . 607919) t nil)
+#@1032 Run mysql by TcX as an inferior process.
+
+Mysql versions 3.23 and up are free software.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-mysql-program'.  Login uses
+the variables `sql-user', `sql-password', `sql-database', and
+`sql-server' as defaults, if set.  Additional command line parameters
+can be stored in the list `sql-mysql-options'.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-mysql].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-mysql "sql" '(#$ . 608846) t nil)
+#@889 Run solsql by Solid as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-solid-program'.  Login uses
+the variables `sql-user', `sql-password', and `sql-server' as
+defaults, if set.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-solid].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-solid "sql" '(#$ . 609933) t nil)
+#@857 Run sql by Ingres as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-ingres-program'.  Login uses
+the variable `sql-database' as default, if set.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-ingres].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-ingres "sql" '(#$ . 610877) t nil)
+#@901 Run isql by Microsoft as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-ms-program'.  Login uses the
+variables `sql-user', `sql-password', `sql-database', and `sql-server'
+as defaults, if set.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-ms].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-ms "sql" '(#$ . 611790) t nil)
+#@1241 Run psql by Postgres as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-postgres-program'.  Login uses
+the variables `sql-database' and `sql-server' as default, if set.
+Additional command line parameters can be stored in the list
+`sql-postgres-options'.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-postgres].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.  If your output lines end with ^M,
+your might try undecided-dos as a coding system.  If this doesn't help,
+Try to set `comint-output-filter-functions' like this:
+
+(setq comint-output-filter-functions (append comint-output-filter-functions
+					     '(comint-strip-ctrl-m)))
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-postgres "sql" '(#$ . 612744) t nil)
+#@901 Run isql by Interbase as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-interbase-program'.  Login
+uses the variables `sql-user', `sql-password', and `sql-database' as
+defaults, if set.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-interbase].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-interbase "sql" '(#$ . 614043) t nil)
+#@1086 Run db2 by IBM as an inferior process.
+
+If buffer `*SQL*' exists but no process is running, make a new process.
+If buffer exists and a process is running, just switch to buffer
+`*SQL*'.
+
+Interpreter used comes from variable `sql-db2-program'.  There is not
+automatic login.
+
+The buffer is put in sql-interactive-mode, giving commands for sending
+input.  See `sql-interactive-mode'.
+
+If you use \[sql-accumulate-and-indent] to send multiline commands to
+db2, newlines will be escaped if necessary.  If you don't want that, set
+`comint-input-sender' back to `comint-simple-send' by writing an after
+advice.  See the elisp manual for more information.
+
+To specify a coding system for converting non-ASCII characters
+in the input and output to the process, use \[universal-coding-system-argument]
+before \[sql-db2].  You can also specify this with \[set-buffer-process-coding-system]
+in the SQL buffer, after you start the process.
+The default comes from `process-coding-system-alist' and
+`default-process-coding-system'.
+
+(Type \[describe-mode] in the SQL buffer for a list of commands.)
+(autoload 'sql-db2 "sql" '(#$ . 615004) t nil)
+#@141 Non-nil when `strokes' is globally enabled.
+Setting this variable directly does not take effect.  Use either Customize
+or M-x strokes-mode.
+(defvar strokes-mode nil (#$ . 616143))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group strokes strokes-mode custom-variable custom-add-load] 4)
+#@312 Interactively give STROKE the global binding as COMMAND.
+Operated just like `global-set-key', except for strokes.
+COMMAND is a symbol naming an interactively-callable function.  STROKE
+is a list of sampled positions on the stroke grid as described in the
+documentation for the `strokes-define-stroke' function.
+(autoload 'strokes-global-set-stroke "strokes" '(#$ . 616461) t nil)
+(defalias 'global-set-stroke 'strokes-global-set-stroke)
+#@353 Read a simple stroke (interactively) and return the stroke.
+Optional PROMPT in minibuffer displays before and during stroke reading.
+This function will display the stroke interactively as it is being
+entered in the strokes buffer if the variable
+`strokes-use-strokes-buffer' is non-nil.
+Optional EVENT is acceptable as the starting event of the stroke
+(autoload 'strokes-read-stroke "strokes" '(#$ . 616905) nil nil)
+#@385 Read a complex stroke (interactively) and return the stroke.
+Optional PROMPT in minibuffer displays before and during stroke reading.
+Note that a complex stroke allows the user to pen-up and pen-down.  This
+is implemented by allowing the user to paint with button1 or button2 and
+then complete the stroke with button3.
+Optional EVENT is acceptable as the starting event of the stroke
+(autoload 'strokes-read-complex-stroke "strokes" '(#$ . 617329) nil nil)
+#@104 Read a simple stroke from the user and then exectute its command.
+This must be bound to a mouse event.
+(autoload 'strokes-do-stroke "strokes" '(#$ . 617793) t nil)
+#@105 Read a complex stroke from the user and then exectute its command.
+This must be bound to a mouse event.
+(autoload 'strokes-do-complex-stroke "strokes" '(#$ . 617964) t nil)
+#@74 Displays the command which STROKE maps to, reading STROKE interactively.
+(autoload 'strokes-describe-stroke "strokes" '(#$ . 618143) t nil)
+(defalias 'describe-stroke 'strokes-describe-stroke)
+#@56 Get instructional help on using the `strokes' package.
+(autoload 'strokes-help "strokes" '(#$ . 618342) t nil)
+#@62 Load user-defined strokes from file named by `strokes-file'.
+(autoload 'strokes-load-user-strokes "strokes" '(#$ . 618459) t nil)
+(defalias 'load-user-strokes 'strokes-load-user-strokes)
+#@251 Pop up a buffer containing an alphabetical listing of strokes in STROKES-MAP.
+With CHRONOLOGICAL prefix arg (\[universal-argument]) list strokes
+chronologically by command name.
+If STROKES-MAP is not given, `strokes-global-map' will be used instead.
+(autoload 'strokes-list-strokes "strokes" '(#$ . 618653) t nil)
+#@522 Toggle strokes being enabled.
+With ARG, turn strokes on if and only if ARG is positive or true.
+Note that `strokes-mode' is a global mode.  Think of it as a minor
+mode in all buffers when activated.
+By default, strokes are invoked with mouse button-2.  You can define
+new strokes with
+
+> M-x global-set-stroke
+
+To use strokes for pictographic editing, such as Chinese/Japanese, use
+S-mouse-2, which draws strokes and inserts them.  Encode/decode your
+strokes with
+
+> M-x strokes-encode-buffer
+> M-x strokes-decode-buffer
+(autoload 'strokes-mode "strokes" '(#$ . 618974) t nil)
+#@187 Decode stroke strings in BUFFER and display their corresponding glyphs.
+Optional BUFFER defaults to the current buffer.
+Optional FORCE non-nil will ignore the buffer's read-only status.
+(autoload 'strokes-decode-buffer "strokes" '(#$ . 619558) t nil)
+#@69 Read a complex stroke and insert its glyph into the current buffer.
+(autoload 'strokes-compose-complex-stroke "strokes" '(#$ . 619815) t nil)
+#@26 Studlify-case the region
+(autoload 'studlify-region "studly" '(#$ . 619963) t nil)
+#@69 Studlify-case the current word, or COUNT words if given an argument
+(autoload 'studlify-word "studly" '(#$ . 620052) t nil)
+#@941 Workhorse citing function which performs the initial citation.
+This is callable from the various mail and news readers' reply
+function according to the agreed upon standard.  See `\[sc-describe]'
+for more details.  `sc-cite-original' does not do any yanking of the
+original message but it does require a few things:
+
+     1) The reply buffer is the current buffer.
+
+     2) The original message has been yanked and inserted into the
+        reply buffer.
+
+     3) Verbose mail headers from the original message have been
+        inserted into the reply buffer directly before the text of the
+        original message.
+
+     4) Point is at the beginning of the verbose headers.
+
+     5) Mark is at the end of the body of text to be cited.
+
+For Emacs 19's, the region need not be active (and typically isn't
+when this function is called.  Also, the hook `sc-pre-hook' is run
+before, and `sc-post-hook' is run after the guts of this function.
+(autoload 'sc-cite-original "supercite" '(#$ . 620183) nil nil)
+#@253 Convert all tabs in region to multiple spaces, preserving columns.
+Called non-interactively, the region is specified by arguments
+START and END, rather than by the position of point and mark.
+The variable `tab-width' controls the spacing of tab stops.
+(autoload 'untabify "tabify" '(#$ . 621194) t nil)
+#@354 Convert multiple spaces in region to tabs when possible.
+A group of spaces is partially replaced by tabs
+when this can be done without changing the column they end at.
+Called non-interactively, the region is specified by arguments
+START and END, rather than by the position of point and mark.
+The variable `tab-width' controls the spacing of tab stops.
+(autoload 'tabify "tabify" '(#$ . 621504) t nil)
+#@54 Connect to display DISPLAY for the Emacs talk group.
+(autoload 'talk-connect "talk" '(#$ . 621912) t nil)
+#@739 Major mode for viewing a tar file as a dired-like listing of its contents.
+You can move around using the usual cursor motion commands. 
+Letters no longer insert themselves.
+Type `e' to pull a file out of the tar file and into its own buffer;
+or click mouse-2 on the file's line in the Tar mode buffer.
+Type `c' to copy an entry from the tar file into another file on disk.
+
+If you edit a sub-file of this archive (as with the `e' command) and 
+save it with Control-x Control-s, the contents of that buffer will be 
+saved back into the tar-file buffer; in this way you can edit a file 
+inside of a tar archive without extracting it and re-archiving it.
+
+See also: variables `tar-update-datestamp' and `tar-anal-blocksize'.
+\{tar-mode-map}
+(autoload 'tar-mode "tar-mode" '(#$ . 622025) nil nil)
+#@1302 Major mode for editing Tcl code.
+Expression and list commands understand all Tcl brackets.
+Tab indents for Tcl code.
+Paragraphs are separated by blank lines only.
+Delete converts tabs to spaces as it moves back.
+
+Variables controlling indentation style:
+  tcl-indent-level
+    Indentation of Tcl statements within surrounding block.
+  tcl-continued-indent-level
+    Indentation of continuation line relative to first line of command.
+
+Variables controlling user interaction with mode (see variable
+documentation for details):
+  tcl-tab-always-indent
+    Controls action of TAB key.
+  tcl-auto-newline
+    Non-nil means automatically newline before and after braces, brackets,
+    and semicolons inserted in Tcl code.
+  tcl-electric-hash-style
+    Controls action of `#' key.
+  tcl-use-hairy-comment-detector
+    If t, use more complicated, but slower, comment detector.
+    This variable is only used in Emacs 19.
+  tcl-use-smart-word-finder
+    If not nil, use a smarter, Tcl-specific way to find the current
+    word when looking up help on a Tcl command.
+
+Turning on Tcl mode calls the value of the variable `tcl-mode-hook'
+with no args, if that value is non-nil.  Read the documentation for
+`tcl-mode-hook' to see what kinds of interesting hook functions
+already exist.
+
+Commands:
+\{tcl-mode-map}
+(autoload 'tcl-mode "tcl" '(#$ . 622826) t nil)
+#@151 Run inferior Tcl process.
+Prefix arg means enter program name interactively.
+See documentation for function `inferior-tcl-mode' for more information.
+(autoload 'inferior-tcl "tcl" '(#$ . 624182) t nil)
+#@120 Get help on Tcl command.  Default is word at point.
+Prefix argument means invert sense of `tcl-use-smart-word-finder'.
+(autoload 'tcl-help-on-word "tcl" '(#$ . 624391) t nil)
+(add-hook 'same-window-regexps "\\*telnet-.*\\*\\(\\|<[0-9]+>\\)")
+#@398 Open a network login connection to host named HOST (a string).
+Communication with HOST is recorded in a buffer `*PROGRAM-HOST*'
+where PROGRAM is the telnet program being used.  This program
+is controlled by the contents of the global variable `telnet-host-properties',
+falling back on the value of the global variable `telnet-program'.
+Normally input is edited in Emacs and sent a line at a time.
+(autoload 'telnet "telnet" '(#$ . 624640) t nil)
+(add-hook 'same-window-regexps "\\*rsh-[^-]*\\*\\(\\|<[0-9]*>\\)")
+#@187 Open a network login connection to host named HOST (a string).
+Communication with HOST is recorded in a buffer `*rsh-HOST*'.
+Normally input is edited in Emacs and sent a line at a time.
+(autoload 'rsh "telnet" '(#$ . 625160) t nil)
+#@325 Make a term process NAME in a buffer, running PROGRAM.
+The name of the buffer is made by surrounding NAME with `*'s.
+If there is already a running process in that buffer, it is not restarted.
+Optional third arg STARTFILE is the name of a file to send the contents of to
+the process.  Any more args are arguments to PROGRAM.
+(autoload 'make-term "term" '(#$ . 625399) nil nil)
+#@44 Start a terminal-emulator in a new buffer.
+(autoload 'term "term" '(#$ . 625781) t nil)
+#@44 Start a terminal-emulator in a new buffer.
+(autoload 'ansi-term "term" '(#$ . 625875) t nil)
+#@1396 Under a display-terminal emulator in BUFFER, run PROGRAM on arguments ARGS.
+ARGS is a list of argument-strings.  Remaining arguments are WIDTH and HEIGHT.
+BUFFER's contents are made an image of the display generated by that program,
+and any input typed when BUFFER is the current Emacs buffer is sent to that
+program as keyboard input.
+
+Interactively, BUFFER defaults to "*terminal*" and PROGRAM and ARGS
+are parsed from an input-string using your usual shell.
+WIDTH and HEIGHT are determined from the size of the current window
+-- WIDTH will be one less than the window's width, HEIGHT will be its height.
+
+To switch buffers and leave the emulator, or to give commands
+to the emulator itself (as opposed to the program running under it),
+type Control-^.  The following character is an emulator command.
+Type Control-^ twice to send it to the subprogram.
+This escape character may be changed using the variable `terminal-escape-char'.
+
+`Meta' characters may not currently be sent through the terminal emulator.
+
+Here is a list of some of the variables which control the behaviour
+of the emulator -- see their documentation for more information:
+terminal-escape-char, terminal-scrolling, terminal-more-processing,
+terminal-redisplay-interval.
+
+This function calls the value of terminal-mode-hook if that exists
+and is non-nil after the terminal buffer has been set up and the
+subprocess started.
+(autoload 'terminal-emulator "terminal" '(#$ . 625976) t nil)
+#@687 Play the Tetris game.
+Shapes drop from the top of the screen, and the user has to move and
+rotate the shape to fit in with those at the bottom of the screen so
+as to form complete rows.
+
+tetris-mode keybindings:
+   \<tetris-mode-map>
+\[tetris-start-game]	Starts a new game of Tetris
+\[tetris-end-game]	Terminates the current game
+\[tetris-pause-game]	Pauses (or resumes) the current game
+\[tetris-move-left]	Moves the shape one square to the left
+\[tetris-move-right]	Moves the shape one square to the right
+\[tetris-rotate-prev]	Rotates the shape clockwise
+\[tetris-rotate-next]	Rotates the shape anticlockwise
+\[tetris-move-bottom]	Drops the shape to the bottom of the playing area
+
+
+(autoload 'tetris "tetris" '(#$ . 627440) t nil)
+#@74 *If non-nil, the shell file name to run in the subshell used to run TeX.
+(defvar tex-shell-file-name nil (#$ . -628181))
+#@245 *Directory in which temporary files are written.
+You can make this `/tmp' if your TEXINPUTS has no relative directories in it
+and you don't try to apply \[tex-region] or \[tex-buffer] when there are
+`\input' commands with relative directories.
+(defvar tex-directory "." (#$ . -628309))
+#@233 Regexp for matching a first line which `tex-region' should include.
+If this is non-nil, it should be a regular expression string;
+if it matches the first line of the file,
+`tex-region' always includes the first line in the TeX run.
+(defvar tex-first-line-header-regexp nil (#$ . 628602))
+#@163 *The main TeX source file which includes this buffer's file.
+The command `tex-file' runs TeX on the file specified by `tex-main-file'
+if the variable is non-nil.
+(defvar tex-main-file nil (#$ . -628897))
+#@75 *If non-nil, ask about saving modified buffers before \[tex-file] is run.
+(defvar tex-offer-save t (#$ . -629107))
+#@118 *Command used to run TeX subjob.
+TeX Mode sets `tex-command' to this string.
+See the documentation of that variable.
+(defvar tex-run-command "tex" (#$ . -629229))
+#@122 *Command used to run LaTeX subjob.
+LaTeX Mode sets `tex-command' to this string.
+See the documentation of that variable.
+(defvar latex-run-command "latex" (#$ . -629399))
+#@124 *Command used to run SliTeX subjob.
+SliTeX Mode sets `tex-command' to this string.
+See the documentation of that variable.
+(defvar slitex-run-command "slitex" (#$ . -629577))
+#@147 *TeX options to use when running TeX.
+These precede the input file name. If nil, TeX runs without option.
+See the documentation of `tex-command'.
+(defvar tex-start-options-string "\\nonstopmode\\input" (#$ . -629759))
+#@104 *User defined LaTeX block names.
+Combined with `standard-latex-block-names' for minibuffer completion.
+(defvar latex-block-names nil (#$ . -629984))
+#@210 *Command used by `tex-bibtex-file' to gather bibliographic data.
+If this string contains an asterisk (`*'), that is replaced by the file name;
+otherwise, the file name, preceded by blank, is added at the end.
+(defvar tex-bibtex-command "bibtex" (#$ . -630140))
+#@197 *Command used by \[tex-print] to print a .dvi file.
+If this string contains an asterisk (`*'), that is replaced by the file name;
+otherwise, the file name, preceded by blank, is added at the end.
+(defvar tex-dvi-print-command "lpr -d" (#$ . -630408))
+#@547 *Command used by \[tex-print] with a prefix arg to print a .dvi file.
+If this string contains an asterisk (`*'), that is replaced by the file name;
+otherwise, the file name, preceded by blank, is added at the end.
+
+If two printers are not enough of a choice, you can set the variable
+`tex-alt-dvi-print-command' to an expression that asks what you want;
+for example,
+
+    (setq tex-alt-dvi-print-command
+         '(format "lpr -P%s" (read-string "Use printer: ")))
+
+would tell \[tex-print] with a prefix argument to ask you which printer to
+use.
+(defvar tex-alt-dvi-print-command "lpr -d" (#$ . -630666))
+#@498 *Command used by \[tex-view] to display a `.dvi' file.
+If this string contains an asterisk (`*'), that is replaced by the file name;
+otherwise, the file name, preceded by blank, is added at the end.
+
+This can be set conditionally so that the previewer used is suitable for the
+window system being used.  For example,
+
+    (setq tex-dvi-view-command
+          (if (eq window-system 'x) "xdvi" "dvi2tty * | cat -s"))
+
+would tell \[tex-view] to use xdvi under X windows and to use dvi2tty
+otherwise.
+(defvar tex-dvi-view-command nil (#$ . -631278))
+#@124 *Command used by \[tex-show-print-queue] to show the print queue.
+Should show the queue(s) that \[tex-print] puts jobs on.
+(defvar tex-show-queue-command "lpq" (#$ . -631831))
+#@259 *Mode to enter for a new file that might be either TeX or LaTeX.
+This variable is used when it can't be determined whether the file
+is plain TeX or LaTeX or what because the file contains no commands.
+Normally set to either `plain-tex-mode' or `latex-mode'.
+(defvar tex-default-mode 'latex-mode (#$ . -632014))
+#@69 *String inserted by typing \[tex-insert-quote] to open a quotation.
+(defvar tex-open-quote "``" (#$ . -632331))
+#@70 *String inserted by typing \[tex-insert-quote] to close a quotation.
+(defvar tex-close-quote "''" (#$ . -632449))
+#@385 Major mode for editing files of input for TeX, LaTeX, or SliTeX.
+Tries to determine (by looking at the beginning of the file) whether
+this file is for plain TeX, LaTeX, or SliTeX and calls `plain-tex-mode',
+`latex-mode', or `slitex-mode', respectively.  If it cannot be determined,
+such as if there are no commands in the file, the value of `tex-default-mode'
+says which mode to use.
+(autoload 'tex-mode "tex-mode" '(#$ . 632570) t nil)
+(byte-code "\300\301\302\"\210\300\303\304\"\210\300\305\306\"\207" [defalias TeX-mode tex-mode plain-TeX-mode plain-tex-mode LaTeX-mode latex-mode] 3)
+#@1658 Major mode for editing files of input for plain TeX.
+Makes $ and } display the characters they match.
+Makes " insert `` when it seems to be the beginning of a quotation,
+and '' when it appears to be the end; it inserts " only after a \.
+
+Use \[tex-region] to run TeX on the current region, plus a "header"
+copied from the top of the file (containing macro definitions, etc.),
+running TeX under a special subshell.  \[tex-buffer] does the whole buffer.
+\[tex-file] saves the buffer and then processes the file.
+\[tex-print] prints the .dvi file made by any of these.
+\[tex-view] previews the .dvi file made by any of these.
+\[tex-bibtex-file] runs bibtex on the file of the current buffer.
+
+Use \[tex-validate-buffer] to check buffer for paragraphs containing
+mismatched $'s or braces.
+
+Special commands:
+\{plain-tex-mode-map}
+
+Mode variables:
+tex-run-command
+	Command string used by \[tex-region] or \[tex-buffer].
+tex-directory
+	Directory in which to create temporary files for TeX jobs
+	run by \[tex-region] or \[tex-buffer].
+tex-dvi-print-command
+	Command string used by \[tex-print] to print a .dvi file.
+tex-alt-dvi-print-command
+	Alternative command string used by \[tex-print] (when given a prefix
+	argument) to print a .dvi file.
+tex-dvi-view-command
+	Command string used by \[tex-view] to preview a .dvi file.
+tex-show-queue-command
+	Command string used by \[tex-show-print-queue] to show the print
+	queue that \[tex-print] put your job on.
+
+Entering Plain-tex mode runs the hook `text-mode-hook', then the hook
+`tex-mode-hook', and finally the hook `plain-tex-mode-hook'.  When the
+special subshell is initiated, the hook `tex-shell-hook' is run.
+(autoload 'plain-tex-mode "tex-mode" '(#$ . 633167) t nil)
+#@1622 Major mode for editing files of input for LaTeX.
+Makes $ and } display the characters they match.
+Makes " insert `` when it seems to be the beginning of a quotation,
+and '' when it appears to be the end; it inserts " only after a \.
+
+Use \[tex-region] to run LaTeX on the current region, plus the preamble
+copied from the top of the file (containing \documentstyle, etc.),
+running LaTeX under a special subshell.  \[tex-buffer] does the whole buffer.
+\[tex-file] saves the buffer and then processes the file.
+\[tex-print] prints the .dvi file made by any of these.
+\[tex-view] previews the .dvi file made by any of these.
+\[tex-bibtex-file] runs bibtex on the file of the current buffer.
+
+Use \[tex-validate-buffer] to check buffer for paragraphs containing
+mismatched $'s or braces.
+
+Special commands:
+\{latex-mode-map}
+
+Mode variables:
+latex-run-command
+	Command string used by \[tex-region] or \[tex-buffer].
+tex-directory
+	Directory in which to create temporary files for LaTeX jobs
+	run by \[tex-region] or \[tex-buffer].
+tex-dvi-print-command
+	Command string used by \[tex-print] to print a .dvi file.
+tex-alt-dvi-print-command
+	Alternative command string used by \[tex-print] (when given a prefix
+	argument) to print a .dvi file.
+tex-dvi-view-command
+	Command string used by \[tex-view] to preview a .dvi file.
+tex-show-queue-command
+	Command string used by \[tex-show-print-queue] to show the print
+	queue that \[tex-print] put your job on.
+
+Entering Latex mode runs the hook `text-mode-hook', then
+`tex-mode-hook', and finally `latex-mode-hook'.  When the special
+subshell is initiated, `tex-shell-hook' is run.
+(autoload 'latex-mode "tex-mode" '(#$ . 634891) t nil)
+#@1690 Major mode for editing files of input for SliTeX.
+Makes $ and } display the characters they match.
+Makes " insert `` when it seems to be the beginning of a quotation,
+and '' when it appears to be the end; it inserts " only after a \.
+
+Use \[tex-region] to run SliTeX on the current region, plus the preamble
+copied from the top of the file (containing \documentstyle, etc.),
+running SliTeX under a special subshell.  \[tex-buffer] does the whole buffer.
+\[tex-file] saves the buffer and then processes the file.
+\[tex-print] prints the .dvi file made by any of these.
+\[tex-view] previews the .dvi file made by any of these.
+\[tex-bibtex-file] runs bibtex on the file of the current buffer.
+
+Use \[tex-validate-buffer] to check buffer for paragraphs containing
+mismatched $'s or braces.
+
+Special commands:
+\{slitex-mode-map}
+
+Mode variables:
+slitex-run-command
+	Command string used by \[tex-region] or \[tex-buffer].
+tex-directory
+	Directory in which to create temporary files for SliTeX jobs
+	run by \[tex-region] or \[tex-buffer].
+tex-dvi-print-command
+	Command string used by \[tex-print] to print a .dvi file.
+tex-alt-dvi-print-command
+	Alternative command string used by \[tex-print] (when given a prefix
+	argument) to print a .dvi file.
+tex-dvi-view-command
+	Command string used by \[tex-view] to preview a .dvi file.
+tex-show-queue-command
+	Command string used by \[tex-show-print-queue] to show the print
+	queue that \[tex-print] put your job on.
+
+Entering SliTeX mode runs the hook `text-mode-hook', then the hook
+`tex-mode-hook', then the hook `latex-mode-hook', and finally the hook
+`slitex-mode-hook'.  When the special subshell is initiated, the hook
+`tex-shell-hook' is run.
+(autoload 'slitex-mode "tex-mode" '(#$ . 636575) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload tex-start-shell "tex-mode" nil] 6)
+#@344 Process the current buffer as texinfo code, into an Info file.
+The Info file output is generated in a buffer visiting the Info file
+name specified in the @setfilename command.
+
+Non-nil argument (prefix, if interactive) means don't make tag table
+and don't split the file if large.  You can use Info-tagify and
+Info-split to do these manually.
+(autoload 'texinfo-format-buffer "texinfmt" '(#$ . 638415) t nil)
+#@252 Convert the current region of the Texinfo file to Info format.
+This lets you see what that part of the file will look like in Info.
+The command is bound to \[texinfo-format-region].  The text that is
+converted to Info is stored in a temporary buffer.
+(autoload 'texinfo-format-region "texinfmt" '(#$ . 638831) t nil)
+#@559 Convert the current buffer (written in Texinfo code) into an Info file.
+The Info file output is generated in a buffer visiting the Info file
+names specified in the @setfilename command.
+
+This function automatically updates all node pointers and menus, and
+creates a master menu.  This work is done on a temporary buffer that
+is automatically removed when the Info file is created.  The original
+Texinfo source buffer is not changed.
+
+Non-nil argument (prefix, if interactive) means don't split the file
+if large.  You can use Info-split to do this manually.
+(autoload 'texi2info "texinfmt" '(#$ . 639155) t nil)
+#@73 *String inserted by typing \[texinfo-insert-quote] to open a quotation.
+(defvar texinfo-open-quote "``" (#$ . -639773))
+#@74 *String inserted by typing \[texinfo-insert-quote] to close a quotation.
+(defvar texinfo-close-quote "''" (#$ . -639899))
+#@2763 Major mode for editing Texinfo files.
+
+  It has these extra commands:
+\{texinfo-mode-map}
+
+  These are files that are used as input for TeX to make printed manuals
+and also to be turned into Info files with \[makeinfo-buffer] or
+the `makeinfo' program.  These files must be written in a very restricted and
+modified version of TeX input format.
+
+  Editing commands are like text-mode except that the syntax table is
+set up so expression commands skip Texinfo bracket groups.  To see
+what the Info version of a region of the Texinfo file will look like,
+use \[makeinfo-region], which runs `makeinfo' on the current region.
+
+  You can show the structure of a Texinfo file with \[texinfo-show-structure].
+This command shows the structure of a Texinfo file by listing the
+lines with the @-sign commands for @chapter, @section, and the like.
+These lines are displayed in another window called the *Occur* window.
+In that window, you can position the cursor over one of the lines and
+use \[occur-mode-goto-occurrence], to jump to the corresponding spot
+in the Texinfo file.
+
+  In addition, Texinfo mode provides commands that insert various
+frequently used @-sign commands into the buffer.  You can use these
+commands to save keystrokes.  And you can insert balanced braces with
+\[texinfo-insert-braces] and later use the command \[up-list] to
+move forward past the closing brace.
+
+Also, Texinfo mode provides functions for automatically creating or
+updating menus and node pointers.  These functions
+
+  * insert the `Next', `Previous' and `Up' pointers of a node,
+  * insert or update the menu for a section, and
+  * create a master menu for a Texinfo source file.
+
+Here are the functions:
+
+    texinfo-update-node                \[texinfo-update-node]
+    texinfo-every-node-update          \[texinfo-every-node-update]
+    texinfo-sequential-node-update
+
+    texinfo-make-menu                  \[texinfo-make-menu]
+    texinfo-all-menus-update           \[texinfo-all-menus-update]
+    texinfo-master-menu
+
+    texinfo-indent-menu-description (column &optional region-p)
+
+The `texinfo-column-for-description' variable specifies the column to
+which menu descriptions are indented.
+
+Passed an argument (a prefix argument, if interactive), the
+`texinfo-update-node' and `texinfo-make-menu' functions do their jobs
+in the region.
+
+To use the updating commands, you must structure your Texinfo file
+hierarchically, such that each `@node' line, with the exception of the
+Top node, is accompanied by some kind of section line, such as an
+`@chapter' or `@section' line.
+
+If the file has a `top' node, it must be called `top' or `Top' and
+be the first node in the file.
+
+
+Entering Texinfo mode calls the value of `text-mode-hook', and then the
+value of `texinfo-mode-hook'.
+(autoload 'texinfo-mode "texinfo" '(#$ . 640029) t nil)
+#@146 Compose Thai characters in the region.
+When called from a program, expects two arguments,
+positions (integers or markers) specifying the region.
+(autoload 'thai-compose-region "thai-util" '(#$ . 642854) t nil)
+#@68 Compose Thai characters in STRING and return the resulting string.
+(autoload 'thai-compose-string "thai-util" '(#$ . 643070) nil nil)
+#@48 Compose Thai characters in the current buffer.
+(autoload 'thai-compose-buffer "thai-util" '(#$ . 643210) t nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload thai-post-read-conversion "thai-util" nil] 6)
+#@229 Compose Thai text in the region FROM and TO.
+The text matches the regular expression PATTERN.
+Optional 4th argument STRING, if non-nil, is a string containing text
+to compose.
+
+The return value is number of composed characters.
+(autoload 'thai-composition-function "thai-util" '(#$ . 643428) nil nil)
+#@44 Move forward to the end of the next THING.
+(autoload 'forward-thing "thingatpt" '(#$ . 643735) nil nil)
+#@484 Determine the start and end buffer locations for the THING at point.
+THING is a symbol which specifies the kind of syntactic entity you want.
+Possibilities include `symbol', `list', `sexp', `defun', `filename', `url',
+`word', `sentence', `whitespace', `line', `page' and others.
+
+See the file `thingatpt.el' for documentation on how to define
+a symbol as a valid THING.
+
+The value is a cons cell (START . END) giving the start and end positions
+of the textual entity that was found.
+(autoload 'bounds-of-thing-at-point "thingatpt" '(#$ . 643846) nil nil)
+#@329 Return the THING at point.
+THING is a symbol which specifies the kind of syntactic entity you want.
+Possibilities include `symbol', `list', `sexp', `defun', `filename', `url',
+`word', `sentence', `whitespace', `line', `page' and others.
+
+See the file `thingatpt.el' for documentation on how to define
+a symbol as a valid THING.
+(autoload 'thing-at-point "thingatpt" '(#$ . 644408) nil nil)
+(byte-code "\300\301\302\303\211\211%\210\300\304\302\303\211\211%\210\300\305\302\303\211\211%\210\300\306\302\303\211\211%\207" [autoload sexp-at-point "thingatpt" nil symbol-at-point number-at-point list-at-point] 6)
+#@98 Check if char CH is Tibetan character.
+Returns non-nil if CH is Tibetan. Otherwise, returns nil.
+(autoload 'tibetan-char-p "tibet-util" '(#$ . 645024) nil nil)
+#@74 Transcribe Tibetan string STR and return the corresponding Roman string.
+(autoload 'tibetan-tibetan-to-transcription "tibet-util" '(#$ . 645190) nil nil)
+#@115 Convert Tibetan Roman string STR to Tibetan character string.
+The returned string has no composition information.
+(autoload 'tibetan-transcription-to-tibetan "tibet-util" '(#$ . 645351) nil nil)
+#@29 Compose Tibetan string STR.
+(autoload 'tibetan-compose-string "tibet-util" '(#$ . 645552) nil nil)
+#@46 Compose Tibetan text the region BEG and END.
+(autoload 'tibetan-compose-region "tibet-util" '(#$ . 645657) t nil)
+#@186 Decompose Tibetan text in the region FROM and TO.
+This is different from decompose-region because precomposed Tibetan characters
+are decomposed into normal Tiebtan character sequences.
+(autoload 'tibetan-decompose-region "tibet-util" '(#$ . 645778) t nil)
+#@166 Decompose Tibetan string STR.
+This is different from decompose-string because precomposed Tibetan characters
+are decomposed into normal Tiebtan character sequences.
+(autoload 'tibetan-decompose-string "tibet-util" '(#$ . 646041) nil nil)
+(byte-code "\300\301\302\303\211\211%\207" [autoload tibetan-composition-function "tibet-util" nil] 6)
+#@139 Decomposes Tibetan characters in the buffer into their components.
+See also the documentation of the function `tibetan-decompose-region'.
+(autoload 'tibetan-decompose-buffer "tibet-util" '(#$ . 646389) t nil)
+#@113 Composes Tibetan character components in the buffer.
+See also docstring of the function tibetan-compose-region.
+(autoload 'tibetan-compose-buffer "tibet-util" '(#$ . 646605) t nil)
+(byte-code "\300\301\302\303\211\211%\210\300\304\302\303\211\211%\207" [autoload tibetan-post-read-conversion "tibet-util" nil tibetan-pre-write-conversion] 6)
+#@261 Add hard spaces in the region between BEG and END.
+See variables `tildify-pattern-alist', `tildify-string-alist', and
+`tildify-ignored-environments-alist' for information about configuration
+parameters.
+This function performs no refilling of the changed text.
+(autoload 'tildify-region "tildify" '(#$ . 646954) t nil)
+#@249 Add hard spaces in the current buffer.
+See variables `tildify-pattern-alist', `tildify-string-alist', and
+`tildify-ignored-environments-alist' for information about configuration
+parameters.
+This function performs no refilling of the changed text.
+(autoload 'tildify-buffer "tildify" '(#$ . 647279) t nil)
+#@77 *Non-nil means \[display-time] should display day and date as well as time.
+(defvar display-time-day-and-date nil (#$ . -647591))
+#@271 Enable display of time, load level, and mail flag in mode lines.
+This display updates automatically every minute.
+If `display-time-day-and-date' is non-nil, the current day and date
+are displayed as well.
+This runs the normal hook `display-time-hook' after each update.
+(autoload 'display-time "time" '(#$ . 647728) t nil)
+#@230 Non-nil if Display-Time mode is enabled.
+See the command `display-time-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `display-time-mode'.
+(defvar display-time-mode nil (#$ . 648058))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group display-time display-time-mode custom-variable custom-add-load time] 4)
+#@352 Toggle display of time, load level, and mail flag in mode lines.
+With a numeric arg, enable this display if arg is positive.
+
+When this display is enabled, it updates automatically every minute.
+If `display-time-day-and-date' is non-nil, the current day and date
+are displayed as well.
+This runs the normal hook `display-time-hook' after each update.
+(autoload 'display-time-mode "time" '(#$ . 648485) t nil)
+#@25 Convert DATE into time.
+(autoload 'date-to-time "time-date" '(#$ . 648900) nil nil)
+#@93 Parse DATE and return a time structure.
+If DATE is malformed, a zero time will be returned.
+(autoload 'safe-date-to-time "time-date" '(#$ . 648990) nil nil)
+#@790 Update the time stamp string(s) in the buffer.
+A template in a file can be automatically updated with a new time stamp
+every time you save the file.  Add this line to your .emacs file:
+    (add-hook 'write-file-hooks 'time-stamp)
+Normally the template must appear in the first 8 lines of a file and
+look like one of the following:
+      Time-stamp: <>
+      Time-stamp: " "
+The time stamp is written between the brackets or quotes:
+      Time-stamp: <1998-02-18 10:20:51 gildea>
+The time stamp is updated only if the variable `time-stamp-active' is non-nil.
+The format of the time stamp is set by the variable `time-stamp-format'.
+The variables `time-stamp-line-limit', `time-stamp-start', `time-stamp-end',
+`time-stamp-count', and `time-stamp-inserts-lines' control finding the
+template.
+(autoload 'time-stamp "time-stamp" '(#$ . 649154) t nil)
+#@141 Toggle `time-stamp-active', setting whether \[time-stamp] updates a buffer.
+With arg, turn time stamping on if and only if arg is positive.
+(autoload 'time-stamp-toggle-active "time-stamp" '(#$ . 650007) t nil)
+#@407 Toggle display of the amount of time left today in the modeline.
+If `timeclock-use-display-time' is non-nil, the modeline will be
+updated whenever the time display is updated.  Otherwise, the
+timeclock will use its own sixty second timer to do its updating.
+With prefix ARG, turn modeline display on if and only if ARG is
+positive.  Returns the new status of timeclock modeline display
+(non-nil means on).
+(autoload 'timeclock-modeline-display "timeclock" '(#$ . 650225) t nil)
+#@673 Clock in, recording the current time moment in the timelog.
+With a numeric prefix ARG, record the fact that today has only that
+many hours in it to be worked.  If arg is a non-numeric prefix arg
+(non-nil, but not a number), 0 is assumed (working on a holiday or
+weekend).  *If not called interactively, ARG should be the number of
+_seconds_ worked today*.  This feature only has effect the first time
+this function is called within a day.
+
+PROJECT as the project being clocked into.  If PROJECT is nil, and
+FIND-PROJECT is non-nil -- or the user calls `timeclock-in'
+interactively -- call the function `timeclock-get-project-function' to
+discover the name of the project.
+(autoload 'timeclock-in "timeclock" '(#$ . 650710) t nil)
+#@389 Clock out, recording the current time moment in the timelog.
+If a prefix ARG is given, the user has completed the project that was
+begun during the last time segment.
+
+REASON is the user's reason for clocking out.  If REASON is nil, and
+FIND-REASON is non-nil -- or the user calls `timeclock-out'
+interactively -- call the function `timeclock-get-reason-function' to
+discover the reason.
+(autoload 'timeclock-out "timeclock" '(#$ . 651447) t nil)
+#@60 Report the overall timeclock status at the present moment.
+(autoload 'timeclock-status-string "timeclock" '(#$ . 651900) t nil)
+#@230 Change to working on a different project, by clocking in then out.
+With a prefix ARG, consider the previous project as having been
+finished at the time of changeover.  PROJECT is the name of the last
+project you were working on.
+(autoload 'timeclock-change "timeclock" '(#$ . 652035) t nil)
+#@94 Ask the user before clocking out.
+This is a useful function for adding to `kill-emacs-hook'.
+(autoload 'timeclock-query-out "timeclock" '(#$ . 652332) nil nil)
+#@107 Re-read the timeclock, to account for external changes.
+Returns the new value of `timeclock-discrepancy'.
+(autoload 'timeclock-reread-log "timeclock" '(#$ . 652499) t nil)
+#@286 Return a string representing the amount of time left today.
+Display second resolution if SHOW-SECONDS is non-nil.  If TODAY-ONLY
+is non-nil, the display will be relative only to time worked today.
+See `timeclock-relative' for more information about the meaning of
+"relative to today".
+(autoload 'timeclock-workday-remaining-string "timeclock" '(#$ . 652678) t nil)
+#@201 Return a string representing the amount of time worked today.
+Display seconds resolution if SHOW-SECONDS is non-nil.  If RELATIVE is
+non-nil, the amount returned will be relative to past time worked.
+(autoload 'timeclock-workday-elapsed-string "timeclock" '(#$ . 653050) t nil)
+#@472 Return a string representing at what time the workday ends today.
+This string is relative to the value of `timeclock-workday'.  If
+NO-MESSAGE is non-nil, no messages will be displayed in the
+minibuffer.  If SHOW-SECONDS is non-nil, the value printed/returned
+will include seconds.  If TODAY-ONLY is non-nil, the value returned
+will be relative only to the time worked today, and not to past time.
+This argument only makes a difference if `timeclock-relative' is
+non-nil.
+(autoload 'timeclock-when-to-leave-string "timeclock" '(#$ . 653335) t nil)
+(defalias 'disable-timeout 'cancel-timer)
+#@46 Remove TIMER from the list of active timers.
+(autoload 'cancel-timer "timer" '(#$ . 653930) nil nil)
+#@72 Cancel all timers scheduled by `run-at-time' which would run FUNCTION.
+(autoload 'cancel-function-timers "timer" '(#$ . 654037) t nil)
+#@462 Perform an action at time TIME.
+Repeat the action every REPEAT seconds, if REPEAT is non-nil.
+TIME should be a string like "11:23pm", nil meaning now, a number of seconds
+from now, a value from `current-time', or t (with non-nil REPEAT)
+meaning the next integral multiple of REPEAT.
+REPEAT may be an integer or floating point number.
+The action is to call FUNCTION with arguments ARGS.
+
+This function returns a timer object which you can use in `cancel-timer'.
+(autoload 'run-at-time "timer" '(#$ . 654179) t nil)
+#@298 Perform an action after a delay of SECS seconds.
+Repeat the action every REPEAT seconds, if REPEAT is non-nil.
+SECS and REPEAT may be integers or floating point numbers.
+The action is to call FUNCTION with arguments ARGS.
+
+This function returns a timer object which you can use in `cancel-timer'.
+(autoload 'run-with-timer "timer" '(#$ . 654700) t nil)
+#@195 Add a timer to run SECS seconds from now, to call FUNCTION on OBJECT.
+If REPEAT is non-nil, repeat the timer every REPEAT seconds.
+This function is for compatibility; see also `run-with-timer'.
+(autoload 'add-timeout "timer" '(#$ . 655060) nil nil)
+#@390 Perform an action the next time Emacs is idle for SECS seconds.
+The action is to call FUNCTION with arguments ARGS.
+SECS may be an integer or a floating point number.
+
+If REPEAT is non-nil, do the action each time Emacs has been idle for
+exactly SECS seconds (that is, only once for each time Emacs becomes idle).
+
+This function returns a timer object which you can use in `cancel-timer'.
+(autoload 'run-with-idle-timer "timer" '(#$ . 655316) t nil)
+(put 'with-timeout 'lisp-indent-function 1)
+#@450 Run BODY, but if it doesn't finish in SECONDS seconds, give up.
+If we give up, we run the TIMEOUT-FORMS and return the value of the last one.
+The call should look like:
+ (with-timeout (SECONDS TIMEOUT-FORMS...) BODY...)
+The timeout is checked whenever Emacs waits for some kind of external
+event (such as keyboard input, input from subprocesses, or a certain time);
+if the program loops without waiting in any way, the timeout will not
+be detected.
+(autoload 'with-timeout "timer" '(#$ . 655817) nil 'macro)
+#@171 Convert a TIT dictionary of FILENAME into a Quail package.
+Optional argument DIRNAME if specified is the directory name under which
+the generated Quail package is saved.
+(autoload 'titdic-convert "titdic-cnv" '(#$ . 656332) t nil)
+#@369 Run `titdic-convert' on the files remaining on the command line.
+Use this from the command line, with `-batch';
+it won't work in an interactive Emacs.
+For example, invoke "emacs -batch -f batch-titdic-convert XXX.tit" to
+ generate Quail package file "xxx.el" from TIT dictionary file "XXX.tit".
+To get complete usage, invoke "emacs -batch -f batch-titdic-convert -h".
+(autoload 'batch-titdic-convert "titdic-cnv" '(#$ . 656570) nil nil)
+(byte-code "\301\302\303#\210\301\304\303#\210\301\305\306#\207" [global-map define-key "\340" tmm-menubar [f10] [menu-bar mouse-1] tmm-menubar-mouse] 4)
+#@252 Text-mode emulation of looking and choosing from a menubar.
+See the documentation for `tmm-prompt'.
+X-POSITION, if non-nil, specifies a horizontal position within the menu bar;
+we make that menu bar item (the one at that position) the default choice.
+(autoload 'tmm-menubar "tmm" '(#$ . 657171) t nil)
+#@225 Text-mode emulation of looking and choosing from a menubar.
+This command is used when you click the mouse in the menubar
+on a console which has no window system but does have a mouse.
+See the documentation for `tmm-prompt'.
+(autoload 'tmm-menubar-mouse "tmm" '(#$ . 657480) t nil)
+#@546 Text-mode emulation of calling the bindings in keymap.
+Creates a text-mode menu of possible choices.  You can access the elements
+in the menu in two ways:
+   *)  via history mechanism from minibuffer;
+   *)  Or via completion-buffer that is automatically shown.
+The last alternative is currently a hack, you cannot use mouse reliably.
+
+MENU is like the MENU argument to `x-popup-menu': either a
+keymap or an alist of alists.
+DEFAULT-ITEM, if non-nil, specifies an initial default choice.
+Its value should be an event that has a binding in MENU.
+(autoload 'tmm-prompt "tmm" '(#$ . 657768) nil nil)
+#@40 Add new category CAT to the TODO list.
+(autoload 'todo-add-category "todo-mode" '(#$ . 658371) t nil)
+#@58 Insert NEW-ITEM in TODO list as a new entry in CATEGORY.
+(autoload 'todo-add-item-non-interactively "todo-mode" '(#$ . 658479) nil nil)
+#@110 Insert new TODO list entry.
+With a prefix argument solicit the category, otherwise use the current
+category.
+(autoload 'todo-insert-item "todo-mode" '(#$ . 658622) t nil)
+#@236 List top priorities for each category.
+
+Number of entries for each category is given by NOF-PRIORITIES which
+defaults to 'todo-show-priorities'.
+
+If CATEGORY-PR-PAGE is non-nil, a page separator '^L' is inserted
+between each category.
+(autoload 'todo-top-priorities "todo-mode" '(#$ . 658800) t nil)
+#@212 Print todo summary using `todo-print-function'.
+If CATEGORY-PR-PAGE is non-nil, a page separator `^L' is inserted
+between each category.
+
+Number of entries for each category is given by `todo-print-priorities'.
+(autoload 'todo-print "todo-mode" '(#$ . 659107) t nil)
+#@54 Major mode for editing TODO lists.
+
+\{todo-mode-map}
+(autoload 'todo-mode "todo-mode" '(#$ . 659380) t nil)
+#@61 Make a diary entry appear only in the current date's diary.
+(autoload 'todo-cp "todo-mode" '(#$ . 659494) nil nil)
+#@17 Show TODO list.
+(autoload 'todo-show "todo-mode" '(#$ . 659615) t nil)
+#@218 Non-nil if Tool-Bar mode is enabled.
+See the command `tool-bar-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `tool-bar-mode'.
+(defvar tool-bar-mode nil (#$ . 659693))
+(byte-code "\300\301\302\303#\210\304\302\305\"\207" [custom-add-to-group mouse tool-bar-mode custom-variable custom-add-load tool-bar] 4)
+#@199 Toggle use of the tool bar.
+With numeric ARG, display the tool bar if and only if ARG is positive.
+
+See `tool-bar-add-item' and `tool-bar-add-item-from-menu' for
+conveniently adding tool bar items.
+(autoload 'tool-bar-mode "tool-bar" '(#$ . 660097) t nil)
+#@614 Add an item to the tool bar.
+ICON names the image, DEF is the key definition and KEY is a symbol
+for the fake function key in the menu keymap.  Remaining arguments
+PROPS are additional items to add to the menu item specification.  See
+Info node `(elisp)Tool Bar'.  Items are added from left to right.
+
+ICON is the base name of a file containing the image to use.  The
+function will first try to use ICON.xpm, then ICON.pbm, and finally
+ICON.xbm, using `find-image'.
+
+Keybindings are made in the map `tool-bar-map'.  To define items in
+some local map, bind `tool-bar-map' with `let' around calls of this
+function.
+(autoload 'tool-bar-add-item "tool-bar" '(#$ . 660360) nil nil)
+#@528 Define tool bar binding for COMMAND using the given ICON in keymap MAP.
+The binding of COMMAND is looked up in the menu bar in MAP (default
+`global-map') and modified to add an image specification for ICON, which
+is looked for as by `tool-bar-add-item'.
+MAP must contain an appropriate keymap bound to `[menu-bar]'.
+PROPS is a list of additional properties to add to the binding.
+
+Keybindings are made in the map `tool-bar-map'.  To define items in
+some local map, bind `tool-bar-map' with `let' around calls of this
+function.
+(autoload 'tool-bar-add-item-from-menu "tool-bar" '(#$ . 661044) nil nil)
+#@90 Mode for tooltip display.
+With ARG, turn tooltip mode on if and only if ARG is positive.
+(autoload 'tooltip-mode "tooltip" '(#$ . 661651) t nil)
+#@131 Toggle tooltip-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `tooltip-mode'.
+(defvar tooltip-mode nil (#$ . 661803))
+(byte-code "\300\301\302\303#\210\304\302\301\"\210\305\306M\210\307\306M\207" [custom-add-to-group tooltip tooltip-mode custom-variable custom-add-load tpu-edt-mode tpu-edt-on tpu-edt] 4)
+#@28 Turn on TPU/edt emulation.
+(autoload 'tpu-edt-on "tpu-edt" '(#$ . 662168) t nil)
+#@21 Set scroll margins.
+(autoload 'tpu-set-scroll-margins "tpu-extras" '(#$ . 662255) t nil)
+#@51 Allow the cursor to move freely about the screen.
+(autoload 'tpu-set-cursor-free "tpu-extras" '(#$ . 662350) t nil)
+#@47 Constrain the cursor to the flow of the text.
+(autoload 'tpu-set-cursor-bound "tpu-extras" '(#$ . 662472) t nil)
+#@236 Create and return a transaction queue communicating with PROCESS.
+PROCESS should be a subprocess capable of sending and receiving
+streams of bytes.  It may be a local process, or it may be connected
+to a tcp server on another machine.
+(autoload 'tq-create "tq" '(#$ . 662592) nil nil)
+#@50 *Trace output will by default go to that buffer.
+(defvar trace-buffer "*trace-output*" (#$ . -662883))
+#@487 Traces FUNCTION with trace output going to BUFFER.
+For every call of FUNCTION Lisp-style trace messages that display argument
+and return values will be inserted into BUFFER. This function generates the
+trace advice for FUNCTION and activates it together with any other advice
+there might be!! The trace BUFFER will popup whenever FUNCTION is called.
+Do not use this to trace functions that switch buffers or do any other
+display oriented stuff, use `trace-function-background' instead.
+(autoload 'trace-function "trace" '(#$ . 662993) t nil)
+#@401 Traces FUNCTION with trace output going quietly to BUFFER.
+For every call of FUNCTION Lisp-style trace messages that display argument
+and return values will be inserted into BUFFER. This function generates the
+trace advice for FUNCTION and activates it together with any other advice
+there might be!! Trace output will quietly go to BUFFER without changing
+the window or buffer configuration at all.
+(autoload 'trace-function-background "trace" '(#$ . 663542) t nil)
+(byte-code "\300\301\302\303\304\305%\210\306\307\301\"\210\306\310\301\"\207" [autoload 2C-command "two-column" nil t keymap global-set-key "6" [f2]] 6)
+#@343 Split current window vertically for two-column editing.
+When called the first time, associates a buffer with the current
+buffer in two-column minor mode (see  \[describe-mode] ).
+Runs `2C-other-buffer-hook' in the new buffer.
+When called again, restores the screen layout with the current buffer
+first and the associated buffer to its right.
+(autoload '2C-two-columns "two-column" '(#$ . 664171) t nil)
+#@197 Associate another buffer with this one in two-column minor mode.
+Can also be used to associate a just previously visited file, by
+accepting the proposed default buffer.
+
+(See  \[describe-mode] .)
+(autoload '2C-associate-buffer "two-column" '(#$ . 664581) t nil)
+#@727 Split a two-column text at point, into two buffers in two-column minor mode.
+Point becomes the local value of `2C-window-width'.  Only lines that
+have the ARG same preceding characters at that column get split.  The
+ARG preceding characters without any leading whitespace become the local
+value for `2C-separator'.  This way lines that continue across both
+columns remain untouched in the first buffer.
+
+This function can be used with a prototype line, to set up things.  You
+write the first line of each column and then split that line.  E.g.:
+
+First column's text    sSs  Second column's text
+		       \___/\
+			/    \
+   5 character Separator      You type  M-5 \[2C-split]  with the point here.
+
+(See  \[describe-mode] .)
+(autoload '2C-split "two-column" '(#$ . 664850) t nil)
+#@213 Toggle typing break mode.
+See the docstring for the `type-break-mode' command for more information.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `type-break-mode'.
+(defvar type-break-mode nil (#$ . 665638))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group type-break type-break-mode custom-variable custom-add-load] 4)
+#@53 *Number of seconds between scheduled typing breaks.
+(defvar type-break-interval (+ 3600 0) (#$ . -666036))
+#@421 *Number of seconds of idle time considered to be an adequate typing rest.
+
+When this variable is non-`nil', emacs checks the idle time between
+keystrokes.  If this idle time is long enough to be considered a "good"
+rest from typing, then the next typing break is simply rescheduled for later.
+
+If a break is interrupted before this much time elapses, the user will be
+asked whether or not really to interrupt the break.
+(defvar type-break-good-rest-interval (/ type-break-interval 6) (#$ . -666150))
+#@1081 *Upper and lower bound on number of keystrokes for considering typing break.
+This structure is a pair of numbers (MIN . MAX).
+
+The first number is the minimum number of keystrokes that must have been
+entered since the last typing break before considering another one, even if
+the scheduled time has elapsed; the break is simply rescheduled until later
+if the minimum threshold hasn't been reached.  If this first value is nil,
+then there is no minimum threshold; as soon as the scheduled time has
+elapsed, the user will always be queried.
+
+The second number is the maximum number of keystrokes that can be entered
+before a typing break is requested immediately, pre-empting the originally
+scheduled break.  If this second value is nil, then no pre-emptive breaks
+will occur; only scheduled ones will.
+
+Keys with bucky bits (shift, control, meta, etc) are counted as only one
+keystroke even though they really require multiple keys to generate them.
+
+The command `type-break-guesstimate-keystroke-threshold' can be used to
+guess a reasonably good pair of values for this variable.
+(defvar type-break-keystroke-threshold (byte-code "\305\306	_\n\307\245_\211\306\245\211,B\207" [wpm avg-word-length type-break-interval upper lower 35 5 60] 4) (#$ . -666658))
+#@2727 Enable or disable typing-break mode.
+This is a minor mode, but it is global to all buffers by default.
+
+When this mode is enabled, the user is encouraged to take typing breaks at
+appropriate intervals; either after a specified amount of time or when the
+user has exceeded a keystroke threshold.  When the time arrives, the user
+is asked to take a break.  If the user refuses at that time, emacs will ask
+again in a short period of time.  The idea is to give the user enough time
+to find a good breaking point in his or her work, but be sufficiently
+annoying to discourage putting typing breaks off indefinitely.
+
+A negative prefix argument disables this mode.
+No argument or any non-negative argument enables it.
+
+The user may enable or disable this mode by setting the variable of the
+same name, though setting it in that way doesn't reschedule a break or
+reset the keystroke counter.
+
+If the mode was previously disabled and is enabled as a consequence of
+calling this function, it schedules a break with `type-break-schedule' to
+make sure one occurs (the user can call that command to reschedule the
+break at any time).  It also initializes the keystroke counter.
+
+The variable `type-break-interval' specifies the number of seconds to
+schedule between regular typing breaks.  This variable doesn't directly
+affect the time schedule; it simply provides a default for the
+`type-break-schedule' command.
+
+If set, the variable `type-break-good-rest-interval' specifies the minimum
+amount of time which is considered a reasonable typing break.  Whenever
+that time has elapsed, typing breaks are automatically rescheduled for
+later even if emacs didn't prompt you to take one first.  Also, if a break
+is ended before this much time has elapsed, the user will be asked whether
+or not to continue.
+
+The variable `type-break-keystroke-threshold' is used to determine the
+thresholds at which typing breaks should be considered.  You can use
+the command `type-break-guesstimate-keystroke-threshold' to try to
+approximate good values for this.
+
+There are several variables that affect how or when warning messages about
+imminent typing breaks are displayed.  They include:
+
+        `type-break-mode-line-message-mode'
+        `type-break-time-warning-intervals'
+        `type-break-keystroke-warning-intervals'
+        `type-break-warning-repeat'
+        `type-break-warning-countdown-string'
+        `type-break-warning-countdown-string-type'
+
+There are several variables that affect if, how, and when queries to begin
+a typing break occur.  They include:
+
+        `type-break-query-mode'
+        `type-break-query-function'
+        `type-break-query-interval'
+
+Finally, the command `type-break-statistics' prints interesting things.
+(autoload 'type-break-mode "type-break" '(#$ . 667929) t nil)
+#@230 Take a typing break.
+
+During the break, a demo selected from the functions listed in
+`type-break-demo-functions' is run.
+
+After the typing break is finished, the next break is scheduled
+as per the function `type-break-schedule'.
+(autoload 'type-break "type-break" '(#$ . 670724) t nil)
+#@210 Print statistics about typing breaks in a temporary buffer.
+This includes the last time a typing break was taken, when the next one is
+scheduled, the keystroke thresholds and the current keystroke count, etc.
+(autoload 'type-break-statistics "type-break" '(#$ . 671017) t nil)
+#@1169 Guess values for the minimum/maximum keystroke threshold for typing breaks.
+
+If called interactively, the user is prompted for their guess as to how
+many words per minute they usually type.  This value should not be your
+maximum WPM, but your average.  Of course, this is harder to gauge since it
+can vary considerably depending on what you are doing.  For example, one
+tends to type less when debugging a program as opposed to writing
+documentation.  (Perhaps a separate program should be written to estimate
+average typing speed.)
+
+From that, this command sets the values in `type-break-keystroke-threshold'
+based on a fairly simple algorithm involving assumptions about the average
+length of words (5).  For the minimum threshold, it uses about a fifth of
+the computed maximum threshold.
+
+When called from lisp programs, the optional args WORDLEN and FRAC can be
+used to override the default assumption about average word length and the
+fraction of the maximum threshold to which to set the minimum threshold.
+FRAC should be the inverse of the fractional value; for example, a value of
+2 would mean to use one half, a value of 4 would mean to use one quarter, etc.
+(autoload 'type-break-guesstimate-keystroke-threshold "type-break" '(#$ . 671302) t nil)
+#@179 Underline all nonblank characters in the region.
+Works by overstriking underscores.
+Called from program, takes two arguments START and END
+which specify the range to operate on.
+(autoload 'underline-region "underline" '(#$ . 672566) t nil)
+#@158 Remove all underlining (overstruck underscores) in the region.
+Called from program, takes two arguments START and END
+which specify the range to operate on.
+(autoload 'ununderline-region "underline" '(#$ . 672813) t nil)
+#@127 Break up a digest message into its constituent messages.
+Leaves original message, deleted, before the undigestified messages.
+(autoload 'undigestify-rmail-message "undigest" '(#$ . 673041) t nil)
+#@154 Extract a forwarded message from the containing message.
+This puts the forwarded message into a separate rmail message
+following the containing message.
+(autoload 'unforward-rmail-message "undigest" '(#$ . 673244) t nil)
+#@260 Convert Rmail files to system inbox format.
+Specify the input Rmail file names as command line arguments.
+For each Rmail file, the corresponding output file name
+is made by adding `.mail' at the end.
+For example, invoke `emacs -batch -f batch-unrmail RMAIL'.
+(autoload 'batch-unrmail "unrmail" '(#$ . 673472) nil nil)
+#@62 Convert Rmail file FILE to system inbox format file TO-FILE.
+(autoload 'unrmail "unrmail" '(#$ . 673796) t nil)
+#@400 Ask user what to do when he wants to edit FILE but it is locked by OPPONENT.
+This function has a choice of three things to do:
+  do (signal 'file-locked (list FILE OPPONENT))
+    to refrain from editing the file
+  return t (grab the lock on the file)
+  return nil (edit the file even though it is locked).
+You can redefine this function to choose among those three alternatives
+in any way you like.
+(autoload 'ask-user-about-lock "userlock" '(#$ . 673915) nil nil)
+#@425 Ask a user who is about to modify an obsolete buffer what to do.
+This function has two choices: it can return, in which case the modification
+of the buffer will proceed, or it can (signal 'file-supersession (file)),
+in which case the proposed buffer modification will not be made.
+
+You can rewrite this to use any criterion you like to choose which one to do.
+The buffer in question is current when this function is called.
+(autoload 'ask-user-about-supersession-threat "userlock" '(#$ . 674387) nil nil)
+#@180 Uudecode region between START and END using external program.
+If FILE-NAME is non-nil, save the result to FILE-NAME.  The program
+used is specified by `uudecode-decoder-program'.
+(autoload 'uudecode-decode-region-external "uudecode" '(#$ . 674899) t nil)
+#@129 Uudecode region between START and END without using an external program.
+If FILE-NAME is non-nil, save the result to FILE-NAME.
+(autoload 'uudecode-decode-region "uudecode" '(#$ . 675161) t nil)
+#@82 *Normal hook (list of functions) run after checking out a file.
+See `run-hooks'.
+(defvar vc-checkout-hook nil (#$ . -675362))
+#@80 *Normal hook (list of functions) run after a checkin is done.
+See `run-hooks'.
+(defvar vc-checkin-hook nil (#$ . -675494))
+#@84 *Normal hook (list of functions) run before a file is checked in.
+See `run-hooks'.
+(defvar vc-before-checkin-hook nil (#$ . -675623))
+#@299 Check out a writable copy of FILE if necessary, then execute BODY.
+Check in FILE with COMMENT (a string) after BODY has been executed.
+FILE is passed through `expand-file-name'; BODY executed within
+`save-excursion'.  If FILE is not under version control, or locked by
+somebody else, signal error.
+(autoload 'with-vc-file "vc" '(#$ . 675764) nil 'macro)
+#@217 Edit FILE under version control, executing body.
+Checkin with COMMENT after executing BODY.
+This macro uses `with-vc-file', passing args to it.
+However, before executing BODY, find FILE, and after BODY, save buffer.
+(autoload 'edit-vc-file "vc" '(#$ . 676125) nil 'macro)
+#@664 Execute a VC command, notifying user and checking for errors.
+Output from COMMAND goes to BUFFER, or *vc* if BUFFER is nil or the
+current buffer if BUFFER is t.  If the destination buffer is not
+already current, set it up properly and erase it.  The command is
+considered successful if its exit status does not exceed OKSTATUS (if
+OKSTATUS is nil, that means to ignore errors, if it is 'async, that
+means not to wait for termination of the subprocess).  FILE is the
+name of the working file (may also be nil, to execute commands that
+don't expect a file name).  If an optional list of FLAGS is present,
+that is inserted into the command line before the filename.
+(autoload 'vc-do-command "vc" '(#$ . 676404) nil nil)
+#@1961 Do the next logical version control operation on the current file.
+
+If you call this from within a VC dired buffer with no files marked,
+it will operate on the file in the current line.
+
+If you call this from within a VC dired buffer, and one or more
+files are marked, it will accept a log message and then operate on
+each one.  The log message will be used as a comment for any register
+or checkin operations, but ignored when doing checkouts.  Attempted
+lock steals will raise an error.
+
+A prefix argument lets you specify the version number to use.
+
+For RCS and SCCS files:
+   If the file is not already registered, this registers it for version
+control.
+   If the file is registered and not locked by anyone, this checks out
+a writable and locked file ready for editing.
+   If the file is checked out and locked by the calling user, this
+first checks to see if the file has changed since checkout.  If not,
+it performs a revert.
+   If the file has been changed, this pops up a buffer for entry
+of a log message; when the message has been entered, it checks in the
+resulting changes along with the log message as change commentary.  If
+the variable `vc-keep-workfiles' is non-nil (which is its default), a
+read-only copy of the changed file is left in place afterwards.
+   If the file is registered and locked by someone else, you are given
+the option to steal the lock.
+
+For CVS files:
+   If the file is not already registered, this registers it for version
+control.  This does a "cvs add", but no "cvs commit".
+   If the file is added but not committed, it is committed.
+   If your working file is changed, but the repository file is
+unchanged, this pops up a buffer for entry of a log message; when the
+message has been entered, it checks in the resulting changes along
+with the logmessage as change commentary.  A writable file is retained.
+   If the repository file is changed, you are asked if you want to
+merge in the changes into your working copy.
+(autoload 'vc-next-action "vc" '(#$ . 677129) t nil)
+#@592 Register the current file into a version control system.
+With prefix argument SET-VERSION, allow user to specify initial version
+level.  If COMMENT is present, use that as an initial comment.
+
+The version control system to use is found by cycling through the list
+`vc-handled-backends'.  The first backend in that list which declares
+itself responsible for the file (usually because other files in that
+directory are already registered under that backend) will be used to
+register the file.  If no backend declares itself responsible, the
+first backend that could register the file is used.
+(autoload 'vc-register "vc" '(#$ . 679149) t nil)
+#@387 Display diffs between file versions.
+Normally this compares the current file and buffer with the most
+recent checked in version of that file.  This uses no arguments.  With
+a prefix argument HISTORIC, it reads the file name to use and two
+version designators specifying which versions to compare.  The
+optional argument NOT-URGENT non-nil means it is ok to say no to
+saving the buffer.
+(autoload 'vc-diff "vc" '(#$ . 679797) t nil)
+#@194 Visit version REV of the current file in another window.
+If the current file is named `F', the version is named `F.~REV~'.
+If `F.~REV~' already exists, use it instead of checking it out again.
+(autoload 'vc-version-other-window "vc" '(#$ . 680236) t nil)
+#@160 Insert headers into a file for use with a version control system.
+Headers desired are inserted at point, and are pulled from
+the variable `vc-BACKEND-header'.
+(autoload 'vc-insert-headers "vc" '(#$ . 680498) t nil)
+#@326 Merge changes between two versions into the current buffer's file.
+This asks for two versions to merge from in the minibuffer.  If the
+first version is a branch number, then merge all changes from that
+branch.  If the first version is empty, merge news, i.e. recent changes
+from the current branch.
+
+See Info node `Merging'.
+(autoload 'vc-merge "vc" '(#$ . 680720) t nil)
+#@119 Invoke ediff to resolve conflicts in the current buffer.
+The conflicts must be marked with rcsmerge conflict markers.
+(autoload 'vc-resolve-conflicts "vc" '(#$ . 681099) t nil)
+#@199 Create a buffer in VC Dired Mode for directory DIR.
+
+See Info node `VC Dired Mode'.
+
+With prefix arg READ-SWITCHES, specify a value to override
+`dired-listing-switches' when generating the listing.
+(autoload 'vc-directory "vc" '(#$ . 681283) t nil)
+#@299 Descending recursively from DIR, make a snapshot called NAME.
+For each registered file, the version level of its latest version
+becomes part of the named configuration.  If the prefix argument
+BRANCHP is given, the snapshot is made as a new branch and the files
+are checked out in that new branch.
+(autoload 'vc-create-snapshot "vc" '(#$ . 681539) t nil)
+#@287 Descending recursively from DIR, retrieve the snapshot called NAME.
+If NAME is empty, it refers to the latest versions.
+If locking is used for the files in DIR, then there must not be any
+locked files at or below DIR (but if NAME is empty, locked files are
+allowed and simply skipped).
+(autoload 'vc-retrieve-snapshot "vc" '(#$ . 681901) t nil)
+#@56 List the change log of the current buffer in a window.
+(autoload 'vc-print-log "vc" '(#$ . 682252) t nil)
+#@291 Revert the current buffer's file to the version it was based on.
+This asks for confirmation if the buffer contents are not identical
+to that version.  This function does not automatically pick up newer
+changes found in the master file; use \[universal-argument] \[vc-next-action] to do so.
+(autoload 'vc-revert-buffer "vc" '(#$ . 682365) t nil)
+#@129 Get rid of most recently checked in version of this file.
+A prefix argument NOREVERT means do not revert the buffer afterwards.
+(autoload 'vc-cancel-version "vc" '(#$ . 682717) t nil)
+#@361 Make BACKEND the current version control system for FILE.
+FILE must already be registered in BACKEND.  The change is not
+permanent, only for the current session.  This function only changes
+VC's perspective on FILE, it does not register or unregister it.
+By default, this command cycles through the registered backends.
+To get a prompt, use a prefix argument.
+(autoload 'vc-switch-backend "vc" '(#$ . 682908) t nil)
+#@540 Transfer FILE to another version control system NEW-BACKEND.
+If NEW-BACKEND has a higher precedence than FILE's current backend
+(i.e.  it comes earlier in `vc-handled-backends'), then register FILE in
+NEW-BACKEND, using the version number from the current backend as the
+base level.  If NEW-BACKEND has a lower precedence than the current
+backend, then commit all changes that were made under the current
+backend to NEW-BACKEND, and unregister FILE from the current backend.
+(If FILE is not yet registered under NEW-BACKEND, register it.)
+(autoload 'vc-transfer-file "vc" '(#$ . 683331) nil nil)
+#@62 Rename file OLD to NEW, and rename its master file likewise.
+(autoload 'vc-rename-file "vc" '(#$ . 683933) t nil)
+#@548 Find change log file and add entries from recent version control logs.
+Normally, find log entries for all registered files in the default
+directory.
+
+With prefix arg of \[universal-argument], only find log entries for the current buffer's file.
+
+With any numeric prefix arg, find log entries for all currently visited
+files that are under version control.  This puts all the entries in the
+log for the default directory, which may not be appropriate.
+
+From a program, any ARGS are assumed to be filenames for which
+log entries should be gathered.
+(autoload 'vc-update-change-log "vc" '(#$ . 684054) t nil)
+#@1293 Display the edit history of the current file using colours.
+
+This command creates a buffer that shows, for each line of the current
+file, when it was last edited and by whom.  Additionally, colours are
+used to show the age of each line--blue means oldest, red means
+youngest, and intermediate colours indicate intermediate ages.  By
+default, the time scale stretches back one year into the past;
+everything that is older than that is shown in blue.
+
+With a prefix argument, this command asks two questions in the
+minibuffer.  First, you may enter a version number; then the buffer
+displays and annotates that version instead of the current version
+(type RET in the minibuffer to leave that default unchanged).  Then,
+you are prompted for a stretch factor for the time scale.  This makes
+the color range cover a time span longer or shorter than the default
+of one year.  For example, a factor of 0.1 means that the range from
+red to blue stands for the past 36 days only, and everything that is
+older than that is shown in blue.
+
+Customization variables:
+
+`vc-annotate-menu-elements' customizes the menu elements of the
+mode-specific menu. `vc-annotate-color-map' and
+`vc-annotate-very-old-color' defines the mapping of time to
+colors. `vc-annotate-background' specifies the background color.
+(autoload 'vc-annotate "vc" '(#$ . 684668) t nil)
+(defalias 'vc-cvs-registered #[(f) "\301\302\303\304!\"!\205\305\306!\210\307!\207" [f file-readable-p expand-file-name "CVS/Entries" file-name-directory require vc-cvs vc-cvs-registered] 5])
+#@109 *Where to look for RCS master files.
+For a description of possible values, see `vc-check-master-templates'.
+(defvar vc-rcs-master-templates '("%sRCS/%s,v" "%s%s,v" "%sRCS/%s") (#$ . -686213))
+(defalias 'vc-rcs-registered #[(f) "\301\302\"\207" [f vc-default-registered RCS] 3])
+#@110 *Where to look for SCCS master files.
+For a description of possible values, see `vc-check-master-templates'.
+(defvar vc-sccs-master-templates '("%sSCCS/s.%s" "%ss.%s" vc-sccs-search-project-dir) (#$ . -686499))
+(defalias 'vc-sccs-registered #[(f) "\301\302\"\207" [f vc-default-registered SCCS] 3])
+#@163 Return the name of a master file in the SCCS project directory.
+Does not check whether the file exists but returns nil if it does not
+find any project directory.
+(defalias 'vc-sccs-search-project-dir #[(dirname basename) "\304\305!\306\211\211\205E\307\n!\203\310\202\311\312\313\nP!\204;	\203;\312	@\n\"\314!\204\306	A\202\205E\312\315P\"+\207" [dir dirs project-dir basename getenv "PROJECTDIR" nil file-name-absolute-p ("SCCS" "") ("src/SCCS" "src" "source/SCCS" "source") expand-file-name "~" file-directory-p "s."] 4 (#$ . 686806)])
+#@15003 Major mode for editing VHDL code.
+
+Usage:
+------
+
+- TEMPLATE INSERTION (electrification):  After typing a VHDL keyword and
+  entering `\[vhdl-electric-space]', you are prompted for arguments while a template is generated
+  for that VHDL construct.  Typing `\[vhdl-electric-return]' or `\[keyboard-quit]' at the first (mandatory)
+  prompt aborts the current template generation.  Optional arguments are
+  indicated by square brackets and removed if the queried string is left empty.
+  Prompts for mandatory arguments remain in the code if the queried string is
+  left empty.  They can be queried again by `\[vhdl-template-search-prompt]'.
+  Typing `\[just-one-space]' after a keyword inserts a space without calling the template
+  generator.  Automatic template generation (i.e. electrification) can be
+  disabled (enabled) by typing `\[vhdl-electric-mode]' or by setting custom variable
+  `vhdl-electric-mode' (see CUSTOMIZATION).
+  Enabled electrification is indicated by `/e' in the modeline.
+  Template generators can be invoked from the VHDL menu, by key bindings, by
+  typing `C-c C-i C-c' and choosing a construct, or by typing the keyword (i.e.
+  first word of menu entry not in parenthesis) and `\[vhdl-electric-space]'.
+  The following abbreviations can also be used:
+  arch, attr, cond, conf, comp, cons, func, inst, pack, sig, var.
+  Template styles can be customized in customization group `vhdl-electric'
+  (see CUSTOMIZATION).
+
+- HEADER INSERTION:  A file header can be inserted by `\[vhdl-template-header]'.  A
+  file footer (template at the end of the file) can be inserted by
+  `\[vhdl-template-footer]'.  See customization group `vhdl-header'.
+
+- STUTTERING:  Double striking of some keys inserts cumbersome VHDL syntax
+  elements.  Stuttering can be disabled (enabled) by typing `\[vhdl-stutter-mode]' or by
+  variable `vhdl-stutter-mode'.  Enabled stuttering is indicated by `/s' in
+  the modeline.  The stuttering keys and their effects are:
+      ;;   -->  " : "         [   -->  (        --    -->  comment
+      ;;;  -->  " := "        [[  -->  [        --CR  -->  comment-out code
+      ..   -->  " => "        ]   -->  )        ---   -->  horizontal line
+      ,,   -->  " <= "        ]]  -->  ]        ----  -->  display comment
+      ==   -->  " == "        ''  -->  \"
+
+- WORD COMPLETION:  Typing `\[vhdl-electric-tab]' after a (not completed) word looks for a VHDL
+  keyword or a word in the buffer that starts alike, inserts it and adjusts
+  case.  Re-typing `\[vhdl-electric-tab]' toggles through alternative word completions.
+  This also works in the minibuffer (i.e. in template generator prompts).
+  Typing `\[vhdl-electric-tab]' after `(' looks for and inserts complete parenthesized
+  expressions (e.g. for array index ranges).  All keywords as well as standard
+  types and subprograms of VHDL have predefined abbreviations (e.g. type "std"
+  and `\[vhdl-electric-tab]' will toggle through all standard types beginning with "std").
+
+  Typing `\[vhdl-electric-tab]' after a non-word character indents the line if at the beginning
+  of a line (i.e. no preceding non-blank characters),and inserts a tabulator
+  stop otherwise.  `\[tab-to-tab-stop]' always inserts a tabulator stop.
+
+- COMMENTS:
+      `--'       puts a single comment.
+      `---'      draws a horizontal line for separating code segments.
+      `----'     inserts a display comment, i.e. two horizontal lines with a
+                 comment in between.
+      `--CR'     comments out code on that line.  Re-hitting CR comments out
+                 following lines.
+      `\[vhdl-comment-uncomment-region]'  comments out a region if not commented out,
+                 uncomments a region if already commented out.
+
+  You are prompted for comments after object definitions (i.e. signals,
+  variables, constants, ports) and after subprogram and process specifications
+  if variable `vhdl-prompt-for-comments' is non-nil.  Comments are
+  automatically inserted as additional labels (e.g. after begin statements) and
+  as help comments if `vhdl-self-insert-comments' is non-nil.
+  Inline comments (i.e. comments after a piece of code on the same line) are
+  indented at least to `vhdl-inline-comment-column'.  Comments go at maximum to
+  `vhdl-end-comment-column'.  `\[vhdl-electric-return]' after a space in a comment will open a
+  new comment line.  Typing beyond `vhdl-end-comment-column' in a comment
+  automatically opens a new comment line.  `\[fill-paragraph]' re-fills
+  multi-line comments.
+
+- INDENTATION:  `\[vhdl-electric-tab]' indents a line if at the beginning of the line.
+  The amount of indentation is specified by variable `vhdl-basic-offset'.
+  `\[vhdl-indent-line]' always indents the current line (is bound to `TAB' if variable
+  `vhdl-intelligent-tab' is nil).  Indentation can be done for an entire region
+  (`\[vhdl-indent-region]') or buffer (menu).  Argument and port lists are indented normally
+  (nil) or relative to the opening parenthesis (non-nil) according to variable
+  `vhdl-argument-list-indent'.  If variable `vhdl-indent-tabs-mode' is nil,
+  spaces are used instead of tabs.  `\[tabify]' and `\[untabify]' allow
+  to convert spaces to tabs and vice versa.
+
+- ALIGNMENT:  The alignment functions align operators, keywords, and inline
+  comment to beautify argument lists, port maps, etc.  `\[vhdl-align-group]' aligns a group
+  of consecutive lines separated by blank lines.  `\[vhdl-align-noindent-region]' aligns an
+  entire region.  If variable `vhdl-align-groups' is non-nil, groups of code
+  lines separated by empty lines are aligned individually.  `\[vhdl-align-inline-comment-group]' aligns
+  inline comments for a group of lines, and `\[vhdl-align-inline-comment-region]' for a region.
+  Some templates are automatically aligned after generation if custom variable
+  `vhdl-auto-align' is non-nil.
+  `\[vhdl-fixup-whitespace-region]' fixes up whitespace in a region.  That is, operator symbols
+  are surrounded by one space, and multiple spaces are eliminated.
+
+- PORT TRANSLATION:  Generic and port clauses from entity or component
+  declarations can be copied (`\[vhdl-port-copy]') and pasted as entity and
+  component declarations, as component instantiations and corresponding
+  internal constants and signals, as a generic map with constants as actual
+  parameters, and as a test bench (menu).
+  A clause with several generic/port names on the same line can be flattened
+  (`\[vhdl-port-flatten]') so that only one name per line exists.  Names for actual
+  ports, instances, test benches, and design-under-test instances can be
+  derived from existing names according to variables `vhdl-...-name'.
+  Variables `vhdl-testbench-...' allow the insertion of additional templates
+  into a test bench.  New files are created for the test bench entity and
+  architecture according to variable `vhdl-testbench-create-files'.
+  See customization group `vhdl-port'.
+
+- TEST BENCH GENERATION:  See PORT TRANSLATION.
+
+- KEY BINDINGS:  Key bindings (`C-c ...') exist for most commands (see in
+  menu).
+
+- VHDL MENU:  All commands can be invoked from the VHDL menu.
+
+- FILE BROWSER:  The speedbar allows browsing of directories and file contents.
+  It can be accessed from the VHDL menu and is automatically opened if
+  variable `vhdl-speedbar' is non-nil.
+  In speedbar, open files and directories with `mouse-2' on the name and
+  browse/rescan their contents with `mouse-2'/`S-mouse-2' on the `+'.
+
+- DESIGN HIERARCHY BROWSER:  The speedbar can also be used for browsing the
+  hierarchy of design units contained in the source files of the current
+  directory or in the source files/directories specified for a project (see
+  variable `vhdl-project-alist').
+  The speedbar can be switched between file and hierarchy browsing mode in the
+  VHDL menu or by typing `f' and `h' in speedbar.
+  In speedbar, open design units with `mouse-2' on the name and browse their
+  hierarchy with `mouse-2' on the `+'.  The hierarchy can be rescanned and
+  ports directly be copied from entities by using the speedbar menu.
+
+- PROJECTS:  Projects can be defined in variable `vhdl-project-alist' and a
+  current project be selected using variable `vhdl-project' (permanently) or
+  from the menu (temporarily).  For each project, a title string (for the file
+  headers) and source files/directories (for the hierarchy browser) can be
+  specified.
+
+- SPECIAL MENUES:  As an alternative to the speedbar, an index menu can
+  be added (set variable `vhdl-index-menu' to non-nil) or made accessible
+  as a mouse menu (e.g. add "(global-set-key '[S-down-mouse-3] 'imenu)" to
+  your start-up file) for browsing the file contents.  Also, a source file menu
+  can be added (set variable `vhdl-source-file-menu' to non-nil) for browsing
+  the current directory for VHDL source files.
+
+- SOURCE FILE COMPILATION:  The syntax of the current buffer can be analyzed
+  by calling a VHDL compiler (menu, `\[vhdl-compile]').  The compiler to be used is
+  specified by variable `vhdl-compiler'.  The available compilers are listed
+  in variable `vhdl-compiler-alist' including all required compilation command,
+  destination directory, and error message syntax information.  New compilers
+  can be added.  Additional compile command options can be set in variable
+  `vhdl-compiler-options'.
+  An entire hierarchy of source files can be compiled by the `make' command
+  (menu, `\[vhdl-make]').  This only works if an appropriate Makefile exists.
+  The make command itself as well as a command to generate a Makefile can also
+  be specified in variable `vhdl-compiler-alist'.
+
+- VHDL STANDARDS:  The VHDL standards to be used are specified in variable
+  `vhdl-standard'.  Available standards are: VHDL'87/'93, VHDL-AMS,
+  Math Packages.
+
+- KEYWORD CASE:  Lower and upper case for keywords and standardized types,
+  attributes, and enumeration values is supported.  If the variable
+  `vhdl-upper-case-keywords' is set to non-nil, keywords can be typed in lower
+  case and are converted into upper case automatically (not for types,
+  attributes, and enumeration values).  The case of keywords, types,
+  attributes,and enumeration values can be fixed for an entire region (menu)
+  or buffer (`\[vhdl-fix-case-buffer]') according to the variables
+  `vhdl-upper-case-{keywords,types,attributes,enum-values}'.
+
+- HIGHLIGHTING (fontification):  Keywords and standardized types, attributes,
+  enumeration values, and function names (controlled by variable
+  `vhdl-highlight-keywords'), as well as comments, strings, and template
+  prompts are highlighted using different colors.  Unit, subprogram, signal,
+  variable, constant, parameter and generic/port names in declarations as well
+  as labels are highlighted if variable `vhdl-highlight-names' is non-nil.
+
+  Additional reserved words or words with a forbidden syntax (e.g. words that
+  should be avoided) can be specified in variable `vhdl-forbidden-words' or
+  `vhdl-forbidden-syntax' and be highlighted in a warning color (variable
+  `vhdl-highlight-forbidden-words').  Verilog keywords are highlighted as
+  forbidden words if variable `vhdl-highlight-verilog-keywords' is non-nil.
+
+  Words with special syntax can be highlighted by specifying their syntax and
+  color in variable `vhdl-special-syntax-alist' and by setting variable
+  `vhdl-highlight-special-words' to non-nil.  This allows to establish some
+  naming conventions (e.g. to distinguish different kinds of signals or other
+  objects by using name suffices) and to support them visually.
+
+  Variable `vhdl-highlight-case-sensitive' can be set to non-nil in order to
+  support case-sensitive highlighting.  However, keywords are then only
+  highlighted if written in lower case.
+
+  Code between "translate_off" and "translate_on" pragmas is highlighted
+  using a different background color if variable `vhdl-highlight-translate-off'
+  is non-nil.
+
+  All colors can be customized by command `\[customize-face]'.
+  For highlighting of matching parenthesis, see customization group
+  `paren-showing' (`\[customize-group]').
+
+- USER MODELS:  VHDL models (templates) can be specified by the user and made
+  accessible in the menu, through key bindings (`C-c C-m ...'), or by keyword
+  electrification.  See custom variable `vhdl-model-alist'.
+
+- HIDE/SHOW:  The code of entire VHDL design units can be hidden using the
+  `Hide/Show' menu or by pressing `S-mouse-2' within the code (variable
+  `vhdl-hideshow-menu').
+
+- PRINTING:  Postscript printing with different faces (an optimized set of
+  faces is used if `vhdl-print-customize-faces' is non-nil) or colors
+  (if `ps-print-color-p' is non-nil) is possible using the standard Emacs
+  postscript printing commands.  Variable `vhdl-print-two-column' defines
+  appropriate default settings for nice landscape two-column printing.  The
+  paper format can be set by variable `ps-paper-type'.  Do not forget to
+  switch `ps-print-color-p' to nil for printing on black-and-white printers.
+
+- CUSTOMIZATION:  All variables can easily be customized using the `Customize'
+  menu entry or `\[customize-option]' (`\[customize-group]' for groups).
+  Some customizations only take effect after some action (read the NOTE in
+  the variable documentation).  Customization can also be done globally (i.e.
+  site-wide, read the INSTALL file).
+
+- FILE EXTENSIONS:  As default, files with extensions ".vhd" and ".vhdl" are
+  automatically recognized as VHDL source files.  To add an extension ".xxx",
+  add the following line to your Emacs start-up file (`.emacs'):
+    (setq auto-mode-alist (cons '("\\.xxx\\'" . vhdl-mode) auto-mode-alist))
+
+- HINTS:
+  - Type `\[keyboard-quit] \[keyboard-quit]' to interrupt long operations or if Emacs hangs.
+
+
+Maintenance:
+------------
+
+To submit a bug report, enter `\[vhdl-submit-bug-report]' within VHDL Mode.
+Add a description of the problem and include a reproducible test case.
+
+Questions and enhancement requests can be sent to <vhdl-mode@geocities.com>.
+
+The `vhdl-mode-announce' mailing list informs about new VHDL Mode releases.
+The `vhdl-mode-victims' mailing list informs about new VHDL Mode beta releases.
+You are kindly invited to participate in beta testing.  Subscribe to above
+mailing lists by sending an email to <vhdl-mode@geocities.com>.
+
+VHDL Mode is officially distributed on the Emacs VHDL Mode Home Page
+<http://www.geocities.com/SiliconValley/Peaks/8287>, where the latest
+version and release notes can be found.
+
+
+Bugs and Limitations:
+---------------------
+
+- Re-indenting large regions or expressions can be slow.
+- Indentation bug in simultaneous if- and case-statements (VHDL-AMS).
+- Hideshow does not work under XEmacs.
+- Index menu and file tagging in speedbar do not work under XEmacs.
+- Parsing compilation error messages for Ikos and Viewlogic VHDL compilers
+  does not work under XEmacs.
+
+
+                                                  The VHDL Mode Maintainers
+                                                Reto Zimmermann and Rod Whitby
+
+Key bindings:
+-------------
+
+\{vhdl-mode-map}
+(autoload 'vhdl-mode "vhdl-mode" '(#$ . 687379) t nil)
+#@2275 Major mode that acts like the `vi' editor.
+The purpose of this mode is to provide you the combined power of vi (namely,
+the "cross product" effect of commands and repeat last changes) and Emacs.
+
+This command redefines nearly all keys to look like vi commands.
+It records the previous major mode, and any vi command for input
+(`i', `a', `s', etc.) switches back to that mode.
+Thus, ordinary Emacs (in whatever major mode you had been using)
+is "input" mode as far as vi is concerned.
+
+To get back into vi from "input" mode, you must issue this command again.
+Therefore, it is recommended that you assign it to a key.
+
+Major differences between this mode and real vi :
+
+* Limitations and unsupported features
+  - Search patterns with line offset (e.g. /pat/+3 or /pat/z.) are
+    not supported.
+  - Ex commands are not implemented; try ':' to get some hints.
+  - No line undo (i.e. the 'U' command), but multi-undo is a standard feature.
+
+* Modifications
+  - The stopping positions for some point motion commands (word boundary,
+    pattern search) are slightly different from standard 'vi'.
+    Also, no automatic wrap around at end of buffer for pattern searching.
+  - Since changes are done in two steps (deletion then insertion), you need
+    to undo twice to completely undo a change command.  But this is not needed
+    for undoing a repeated change command.
+  - No need to set/unset 'magic', to search for a string with regular expr
+    in it just put a prefix arg for the search commands.  Replace cmds too.
+  - ^R is bound to incremental backward search, so use ^L to redraw screen.
+
+* Extensions
+  - Some standard (or modified) Emacs commands were integrated, such as
+    incremental search, query replace, transpose objects, and keyboard macros.
+  - In command state, ^X links to the 'ctl-x-map', and ESC can be linked to
+    esc-map or set undefined.  These can give you the full power of Emacs.
+  - See vi-com-map for those keys that are extensions to standard vi, e.g.
+    `vi-name-last-change-or-macro', `vi-verify-spelling', `vi-locate-def',
+    `vi-mark-region', and 'vi-quote-words'.  Some of them are quite handy.
+  - Use \[vi-switch-mode] to switch among different modes quickly.
+  
+Syntax table and abbrevs while in vi mode remain as they were in Emacs.
+(autoload 'vi-mode "vi" '(#$ . 702444) t nil)
+#@54 Return VISCII character code of CHAR if appropriate.
+(autoload 'viet-encode-viscii-char "viet-util" '(#$ . 704770) nil nil)
+#@196 Convert `VIQR' mnemonics of the current region to Vietnamese characaters.
+When called from a program, expects two arguments,
+positions (integers or markers) specifying the stretch of the region.
+(autoload 'viet-decode-viqr-region "viet-util" '(#$ . 704901) t nil)
+#@75 Convert `VIQR' mnemonics of the current buffer to Vietnamese characaters.
+(autoload 'viet-decode-viqr-buffer "viet-util" '(#$ . 705171) t nil)
+#@196 Convert Vietnamese characaters of the current region to `VIQR' mnemonics.
+When called from a program, expects two arguments,
+positions (integers or markers) specifying the stretch of the region.
+(autoload 'viet-encode-viqr-region "viet-util" '(#$ . 705321) t nil)
+#@75 Convert Vietnamese characaters of the current buffer to `VIQR' mnemonics.
+(autoload 'viet-encode-viqr-buffer "viet-util" '(#$ . 705591) t nil)
+(byte-code "\300\301\302\303\211\211%\210\300\304\302\303\211\211%\207" [autoload viqr-post-read-conversion "viet-util" nil viqr-pre-write-conversion] 6)
+#@148 Non-nil if View mode is enabled.
+Don't change this variable directly, you must change it by one of the
+functions that enable or disable view mode.
+(defvar view-mode nil (#$ . 705895))
+(make-variable-buffer-local 'view-mode)
+#@399 View FILE in View mode, returning to previous buffer when done.
+Emacs commands editing the buffer contents are not available; instead,
+a special set of commands (mostly letters and punctuation)
+are defined for moving around in the buffer.
+Space scrolls forward, Delete scrolls backward.
+For list of all View commands, type H or h while viewing.
+
+This command runs the normal hook `view-mode-hook'.
+(autoload 'view-file "view" '(#$ . 706126) t nil)
+#@430 View FILE in View mode in another window.
+Return that window to its previous buffer when done.
+Emacs commands editing the buffer contents are not available; instead,
+a special set of commands (mostly letters and punctuation)
+are defined for moving around in the buffer.
+Space scrolls forward, Delete scrolls backward.
+For list of all View commands, type H or h while viewing.
+
+This command runs the normal hook `view-mode-hook'.
+(autoload 'view-file-other-window "view" '(#$ . 706581) t nil)
+#@445 View FILE in View mode in another frame.
+Maybe delete other frame and/or return to previous buffer when done.
+Emacs commands editing the buffer contents are not available; instead,
+a special set of commands (mostly letters and punctuation)
+are defined for moving around in the buffer.
+Space scrolls forward, Delete scrolls backward.
+For list of all View commands, type H or h while viewing.
+
+This command runs the normal hook `view-mode-hook'.
+(autoload 'view-file-other-frame "view" '(#$ . 707080) t nil)
+#@608 View BUFFER in View mode, returning to previous buffer when done.
+Emacs commands editing the buffer contents are not available; instead,
+a special set of commands (mostly letters and punctuation)
+are defined for moving around in the buffer.
+Space scrolls forward, Delete scrolls backward.
+For list of all View commands, type H or h while viewing.
+
+This command runs the normal hook `view-mode-hook'.
+
+Optional argument EXIT-ACTION is either nil or a function with buffer as
+argument.  This function is called when finished viewing buffer.
+Use this argument instead of explicitly setting `view-exit-action'.
+(autoload 'view-buffer "view" '(#$ . 707593) t nil)
+#@662 View BUFFER in View mode in another window.
+Return to previous buffer when done, unless optional NOT-RETURN is non-nil.
+Emacs commands editing the buffer contents are not available; instead,
+a special set of commands (mostly letters and punctuation)
+are defined for moving around in the buffer.
+Space scrolls forward, Delete scrolls backward.
+For list of all View commands, type H or h while viewing.
+
+This command runs the normal hook `view-mode-hook'.
+
+Optional argument EXIT-ACTION is either nil or a function with buffer as
+argument.  This function is called when finished viewing buffer.
+Use this argument instead of explicitly setting `view-exit-action'.
+(autoload 'view-buffer-other-window "view" '(#$ . 708259) t nil)
+#@661 View BUFFER in View mode in another frame.
+Return to previous buffer when done, unless optional NOT-RETURN is non-nil.
+Emacs commands editing the buffer contents are not available; instead,
+a special set of commands (mostly letters and punctuation)
+are defined for moving around in the buffer.
+Space scrolls forward, Delete scrolls backward.
+For list of all View commands, type H or h while viewing.
+
+This command runs the normal hook `view-mode-hook'.
+
+Optional argument EXIT-ACTION is either nil or a function with buffer as
+argument.  This function is called when finished viewing buffer.
+Use this argument instead of explicitly setting `view-exit-action'.
+(autoload 'view-buffer-other-frame "view" '(#$ . 708992) t nil)
+#@4496 Toggle View mode, a minor mode for viewing text but not editing it.
+With ARG, turn View mode on iff ARG is positive.
+
+Emacs commands that do not change the buffer contents are available as usual.
+Kill commands insert text in kill buffers but do not delete.  Other commands
+(among them most letters and punctuation) beep and tell that the buffer is
+read-only.
+\<view-mode-map>
+The following additional commands are provided.  Most commands take prefix
+arguments.  Page commands default to "page size" lines which is almost a whole
+window full, or number of lines set by \[View-scroll-page-forward-set-page-size] or \[View-scroll-page-backward-set-page-size].  Half page commands default to
+and set "half page size" lines which initially is half a window full.  Search
+commands default to a repeat count of one.
+
+H, h, ?	 This message.
+Digits	provide prefix arguments.
+\[negative-argument]	negative prefix argument.
+\[beginning-of-buffer]	move to the beginning of buffer.
+>	move to the end of buffer.
+\[View-scroll-to-buffer-end]	scroll so that buffer end is at last line of window.
+SPC	scroll forward "page size" lines.
+	  With prefix scroll forward prefix lines.
+DEL	scroll backward "page size" lines.
+	  With prefix scroll backward prefix lines.
+\[View-scroll-page-forward-set-page-size]	like  \[View-scroll-page-forward]  but with prefix sets "page size" to prefix.
+\[View-scroll-page-backward-set-page-size]	like  \[View-scroll-page-backward]  but with prefix sets "page size" to prefix.
+\[View-scroll-half-page-forward]	scroll forward "half page size" lines.  With prefix, sets
+	  "half page size" to prefix lines and scrolls forward that much.
+\[View-scroll-half-page-backward]	scroll backward "half page size" lines.  With prefix, sets
+	  "half page size" to prefix lines and scrolls backward that much.
+RET, LFD  scroll forward one line.  With prefix scroll forward prefix line(s).
+y	scroll backward one line.  With prefix scroll backward prefix line(s).
+\[View-revert-buffer-scroll-page-forward]	revert-buffer if necessary and scroll forward.
+	  Use this to view a changing file.
+\[what-line]	prints the current line number.
+\[View-goto-percent]	goes prefix argument (default 100) percent into buffer.
+\[View-goto-line]	goes to line given by prefix argument (default first line).
+.	set the mark.
+x	exchanges point and mark.
+\[View-back-to-mark]	return to mark and pops mark ring.
+	  Mark ring is pushed at start of every successful search and when
+	  jump to line occurs.  The mark is set on jump to buffer start or end.
+\[point-to-register]	save current position in character register.
+'	go to position saved in character register.
+s	do forward incremental search.
+r	do reverse incremental search.
+\[View-search-regexp-forward]	searches forward for regular expression, starting after current page.
+	  ! and @ have a special meaning at the beginning of the regexp.
+	  ! means search for a line with no match for regexp.  @ means start
+	  search at beginning (end for backward search) of buffer.
+\	searches backward for regular expression, starting before current page.
+\[View-search-last-regexp-forward]	searches forward for last regular expression.
+p	searches backward for last regular expression.
+\[View-quit]	quit View mode, trying to restore window and buffer to previous state.
+	  \[View-quit] is the normal way to leave view mode.
+\[View-exit]	exit View mode but stay in current buffer.  Use this if you started
+	  viewing a buffer (file) and find out you want to edit it.
+\[View-exit-and-edit]	exit View mode and make the current buffer editable.
+\[View-quit-all]	quit View mode, trying to restore windows and buffer to previous state.
+\[View-leave]	quit View mode and maybe switch buffers, but don't kill this buffer.
+\[View-kill-and-leave]	quit View mode, kill current buffer and go back to other buffer.
+
+The effect of \[View-leave] , \[View-quit] and \[View-kill-and-leave] depends on how view-mode was entered.  If it was
+entered by view-file, view-file-other-window or view-file-other-frame
+(\[view-file], \[view-file-other-window], \[view-file-other-frame] or the dired mode v command), then \[View-quit] will
+try to kill the current buffer.  If view-mode was entered from another buffer
+as is done by View-buffer, View-buffer-other-window, View-buffer-other frame,
+View-file, View-file-other-window or View-file-other-frame then \[View-leave] , \[View-quit] and \[View-kill-and-leave]
+will return to that buffer.
+
+Entry to view-mode runs the normal hook `view-mode-hook'.
+(autoload 'view-mode "view" '(#$ . 709724) t nil)
+#@1052 Enter View mode and set up exit from view mode depending on optional arguments.
+If RETURN-TO is non-nil it is added as an element to the buffer local alist
+`view-return-to-alist'.
+Save EXIT-ACTION in buffer local variable `view-exit-action'.
+It should be either nil or a function that takes a buffer as argument.
+This function will be called by `view-mode-exit'.
+
+RETURN-TO is either nil, meaning do nothing when exiting view mode, or
+it has the format (WINDOW OLD-WINDOW . OLD-BUF-INFO).
+WINDOW is a window used for viewing.
+OLD-WINDOW is nil or the window to select after viewing.
+OLD-BUF-INFO tells what to do with WINDOW when exiting.  It is one of:
+1) nil       Do nothing.
+2) t         Delete WINDOW or, if it is the only window, its frame.
+3) (OLD-BUFF START POINT)  Display buffer OLD-BUFF with displayed text
+                           starting at START and point at POINT in WINDOW.
+4) quit-window   Do `quit-window' in WINDOW.
+
+For list of all View commands, type H or h while viewing.
+
+This function runs the normal hook `view-mode-hook'.
+(autoload 'view-mode-enter "view" '(#$ . 714277) nil nil)
+#@54 Exit View mode and make the current buffer editable.
+(autoload 'View-exit-and-edit "view" '(#$ . 715392) t nil)
+#@30 Turn on VIP emulation of VI.
+(autoload 'vip-mode "vip" '(#$ . 715510) t nil)
+#@80 Toggle Viper on/off.
+If Viper is enabled, turn it off.  Otherwise, turn it on.
+(autoload 'toggle-viper-mode "viper" '(#$ . 715593) t nil)
+#@32 Turn on Viper emulation of Vi.
+(autoload 'viper-mode "viper" '(#$ . 715737) t nil)
+#@233 Jumps to a Web site from a programmable hotlist.
+
+See the documentation for the `webjump-sites' variable for how to customize the
+hotlist.
+
+Please submit bug reports and other feedback to the author, Neil W. Van Dyke
+<nwv@acm.org>.
+(autoload 'webjump "webjump" '(#$ . 715827) t nil)
+(defalias 'which-func-mode 'which-function-mode)
+#@236 Non-nil if Which-Function mode is enabled.
+See the command `which-function-mode' for a description of this minor-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `which-function-mode'.
+(defvar which-function-mode nil (#$ . 716166))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group which-func which-function-mode custom-variable custom-add-load] 4)
+#@256 Toggle Which Function mode, globally.
+When Which Function mode is enabled, the current function name is
+continuously displayed in the mode line, in certain major modes.
+
+With prefix ARG, turn Which Function mode on iff arg is positive,
+and off otherwise.
+(autoload 'which-function-mode "which-func" '(#$ . 716596) t nil)
+#@57 Toggle the check for leading space in the local buffer.
+(autoload 'whitespace-toggle-leading-check "whitespace" '(#$ . 716923) t nil)
+#@58 Toggle the check for trailing space in the local buffer.
+(autoload 'whitespace-toggle-trailing-check "whitespace" '(#$ . 717063) t nil)
+#@61 Toggle the check for indentation space in the local buffer.
+(autoload 'whitespace-toggle-indent-check "whitespace" '(#$ . 717205) t nil)
+#@66 Toggle the check for space-followed-by-TABs in the local buffer.
+(autoload 'whitespace-toggle-spacetab-check "whitespace" '(#$ . 717348) t nil)
+#@61 Toggle the check for end-of-line space in the local buffer.
+(autoload 'whitespace-toggle-ateol-check "whitespace" '(#$ . 717498) t nil)
+#@556 Find five different types of white spaces in buffer.
+These are:
+1. Leading space (empty lines at the top of a file).
+2. Trailing space (empty lines at the end of a file).
+3. Indentation space (8 or more spaces, that should be replaced with TABS).
+4. Spaces followed by a TAB. (Almost always, we never want that).
+5. Spaces or TABS at the end of a line.
+
+Check for whitespace only if this buffer really contains a non-empty file
+and:
+1. the major mode is one of the whitespace-modes, or
+2. `whitespace-buffer' was explicitly called with a prefix argument.
+(autoload 'whitespace-buffer "whitespace" '(#$ . 717641) t nil)
+#@41 Check the region for whitespace errors.
+(autoload 'whitespace-region "whitespace" '(#$ . 718266) t nil)
+#@150 Cleanup the five different kinds of whitespace problems.
+
+Use \[describe-function] whitespace-describe to read a summary of the
+whitespace problems.
+(autoload 'whitespace-cleanup "whitespace" '(#$ . 718377) t nil)
+#@35 Whitespace cleanup on the region.
+(autoload 'whitespace-cleanup-region "whitespace" '(#$ . 718597) t nil)
+#@164 Toggle global Whitespace mode.
+
+Setting this variable directly does not take effect;
+use either \[customize] or the function `whitespace-global-mode'
+(which see).
+(defvar whitespace-global-mode nil (#$ . 718710))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group whitespace whitespace-global-mode custom-variable custom-add-load] 4)
+#@207 Toggle using Whitespace mode in new buffers.
+With ARG, turn the mode on if and only iff ARG is positive.
+
+When this mode is active, `whitespace-buffer' is added to
+`find-file-hooks' and `kill-buffer-hook'.
+(autoload 'whitespace-global-mode "whitespace" '(#$ . 719074) t nil)
+#@88 The local-write-file-hook to be called on the buffer when
+whitespace check is enabled.
+(autoload 'whitespace-write-file-hook "whitespace" '(#$ . 719355) t nil)
+#@2177 A summary of whitespaces and what this library can do about them.
+
+The whitespace library is intended to find and help fix five different types
+of whitespace problems that commonly exist in source code.
+
+1. Leading space (empty lines at the top of a file).
+2. Trailing space (empty lines at the end of a file).
+3. Indentation space (8 or more spaces at beginning of line, that should be
+		      replaced with TABS).
+4. Spaces followed by a TAB.  (Almost always, we never want that).
+5. Spaces or TABS at the end of a line.
+
+Whitespace errors are reported in a buffer, and on the modeline.
+
+Modeline will show a W:<x>!<y> to denote a particular type of whitespace,
+where `x' and `y' can be one (or more) of:
+
+e - End-of-Line whitespace.
+i - Indentation whitespace.
+l - Leading whitespace.
+s - Space followed by Tab.
+t - Trailing whitespace.
+
+If any of the whitespace checks is turned off, the modeline will display a
+!<y>.
+
+    (since (3) is the most controversial one, here is the rationale: Most
+    terminal drivers and printer drivers have TAB configured or even
+    hardcoded to be 8 spaces.  (Some of them allow configuration, but almost
+    always they default to 8.)
+
+    Changing `tab-width' to other than 8 and editing will cause your code to
+    look different from within Emacs, and say, if you cat it or more it, or
+    even print it.
+
+    Almost all the popular programming modes let you define an offset (like
+    c-basic-offset or perl-indent-level) to configure the offset, so you
+    should never have to set your `tab-width' to be other than 8 in all these
+    modes.  In fact, with an indent level of say, 4, 2 TABS will cause Emacs
+    to replace your 8 spaces with one 	 (try it).  If vi users in your
+    office complain, tell them to use vim, which distinguishes between
+    tabstop and shiftwidth (vi equivalent of our offsets), and also ask them
+    to set smarttab.)
+
+All the above have caused (and will cause) unwanted codeline integration and
+merge problems.
+
+whitespace.el will complain if it detects whitespaces on opening a file, and
+warn you on closing a file also (in case you had inserted any
+whitespaces during the process of your editing).
+(autoload 'whitespace-describe "whitespace" '(#$ . 719523) t nil)
+#@32 Browse the widget under point.
+(autoload 'widget-browse-at "wid-browse" '(#$ . 721771) t nil)
+#@37 Create a widget browser for WIDGET.
+(autoload 'widget-browse "wid-browse" '(#$ . 721871) t nil)
+#@49 Show widget browser for WIDGET in other window.
+(autoload 'widget-browse-other-window "wid-browse" '(#$ . 721973) t nil)
+#@104 Togle minor mode for traversing widgets.
+With arg, turn widget mode on if and only if arg is positive.
+(autoload 'widget-minor-mode "wid-browse" '(#$ . 722101) t nil)
+#@120 Prompt for a value matching WIDGET, using PROMPT.
+The current value is assumed to be VALUE, unless UNBOUND is non-nil.
+(autoload 'widget-prompt-value "wid-edit" '(#$ . 722275) nil nil)
+#@76 Create widget of TYPE.
+The optional ARGS are additional keyword arguments.
+(autoload 'widget-create "wid-edit" '(#$ . 722466) nil nil)
+#@16 Delete WIDGET.
+(autoload 'widget-delete "wid-edit" '(#$ . 722607) nil nil)
+#@358 Select the window to the left of the current one.
+With no prefix argument, or with prefix argument equal to zero,
+"left" is relative to the position of point in the window; otherwise
+it is relative to the top edge (for positive ARG) or the bottom edge
+(for negative ARG) of the current window.
+If no window is at the desired location, an error is signaled.
+(autoload 'windmove-left "windmove" '(#$ . 722689) t nil)
+#@347 Select the window above the current one.
+With no prefix argument, or with prefix argument equal to zero, "up"
+is relative to the position of point in the window; otherwise it is
+relative to the left edge (for positive ARG) or the right edge (for
+negative ARG) of the current window.
+If no window is at the desired location, an error is signaled.
+(autoload 'windmove-up "windmove" '(#$ . 723111) t nil)
+#@360 Select the window to the right of the current one.
+With no prefix argument, or with prefix argument equal to zero,
+"right" is relative to the position of point in the window;
+otherwise it is relative to the top edge (for positive ARG) or the
+bottom edge (for negative ARG) of the current window.
+If no window is at the desired location, an error is signaled.
+(autoload 'windmove-right "windmove" '(#$ . 723520) t nil)
+#@349 Select the window below the current one.
+With no prefix argument, or with prefix argument equal to zero,
+"down" is relative to the position of point in the window; otherwise
+it is relative to the left edge (for positive ARG) or the right edge
+(for negative ARG) of the current window.
+If no window is at the desired location, an error is signaled.
+(autoload 'windmove-down "windmove" '(#$ . 723945) t nil)
+#@44 Set up default keybindings for `windmove'.
+(autoload 'windmove-default-keybindings "windmove" '(#$ . 724357) t nil)
+#@129 Toggle winner-mode.
+Setting this variable directly does not take effect;
+use either \[customize] or the function `winner-mode'.
+(defvar winner-mode nil (#$ . 724480))
+(byte-code "\300\301\302\303#\210\304\302\301\"\207" [custom-add-to-group winner winner-mode custom-variable custom-add-load] 4)
+#@83 Toggle Winner mode.
+With arg, turn Winner mode on if and only if arg is positive.
+(autoload 'winner-mode "winner" '(#$ . 724782) t nil)
+#@594 Browse UN*X man page for TOPIC (Without using external Man program).
+The major browsing mode used is essentially the standard Man mode.
+Choose the filename for the man page using completion, based on the
+topic selected from the directories specified in `woman-manpath' and
+`woman-path'.  The directory expansions and topics are cached for
+speed, but a non-nil interactive argument forces the caches to be
+updated (e.g. to re-interpret the current directory).
+
+Used non-interactively, arguments are optional: if given then TOPIC
+should be a topic string and non-nil RE-CACHE forces re-caching.
+(autoload 'woman "woman" '(#$ . 724925) t nil)
+#@56 In dired, run the WoMan man-page browser on this file.
+(autoload 'woman-dired-find-file "woman" '(#$ . 725571) t nil)
+#@434 Find, decode and browse a specific UN*X man-page source file FILE-NAME.
+Use existing buffer if possible; reformat only if prefix arg given.
+When called interactively, optional argument REFORMAT forces reformatting
+of an existing WoMan buffer formatted earlier.
+No external programs are used, except that `gunzip' will be used to
+decompress the file if appropriate.  See the documentation for the
+`woman' command for further details.
+(autoload 'woman-find-file "woman" '(#$ . 725696) t nil)
+#@2442 Major mode with WordStar-like key bindings.
+
+BUGS:
+ - Help menus with WordStar commands (C-j just calls help-for-help)
+   are not implemented
+ - Options for search and replace
+ - Show markers (C-k h) is somewhat strange
+ - Search and replace (C-q a) is only available in forward direction
+
+No key bindings beginning with ESC are installed, they will work
+Emacs-like.
+
+The key bindings are:
+
+  C-a		backward-word
+  C-b		fill-paragraph
+  C-c		scroll-up-line
+  C-d		forward-char
+  C-e		previous-line
+  C-f		forward-word
+  C-g		delete-char
+  C-h		backward-char
+  C-i		indent-for-tab-command
+  C-j		help-for-help
+  C-k		ordstar-C-k-map
+  C-l		ws-repeat-search
+  C-n		open-line
+  C-p		quoted-insert
+  C-r		scroll-down-line
+  C-s		backward-char
+  C-t		kill-word
+  C-u		keyboard-quit
+  C-v		overwrite-mode
+  C-w		scroll-down
+  C-x		next-line
+  C-y		kill-complete-line
+  C-z		scroll-up
+
+  C-k 0		ws-set-marker-0
+  C-k 1		ws-set-marker-1
+  C-k 2		ws-set-marker-2
+  C-k 3		ws-set-marker-3
+  C-k 4		ws-set-marker-4
+  C-k 5		ws-set-marker-5
+  C-k 6		ws-set-marker-6
+  C-k 7		ws-set-marker-7
+  C-k 8		ws-set-marker-8
+  C-k 9		ws-set-marker-9
+  C-k b		ws-begin-block
+  C-k c		ws-copy-block
+  C-k d		save-buffers-kill-emacs
+  C-k f		find-file
+  C-k h		ws-show-markers
+  C-k i		ws-indent-block
+  C-k k		ws-end-block
+  C-k p		ws-print-block
+  C-k q		kill-emacs
+  C-k r		insert-file
+  C-k s		save-some-buffers
+  C-k t		ws-mark-word
+  C-k u		ws-exdent-block
+  C-k C-u	keyboard-quit
+  C-k v		ws-move-block
+  C-k w		ws-write-block
+  C-k x		kill-emacs
+  C-k y		ws-delete-block
+
+  C-o c		wordstar-center-line
+  C-o b		switch-to-buffer
+  C-o j		justify-current-line
+  C-o k		kill-buffer
+  C-o l		list-buffers
+  C-o m		auto-fill-mode
+  C-o r		set-fill-column
+  C-o C-u	keyboard-quit
+  C-o wd	delete-other-windows
+  C-o wh	split-window-horizontally
+  C-o wo	other-window
+  C-o wv	split-window-vertically
+
+  C-q 0		ws-find-marker-0
+  C-q 1		ws-find-marker-1
+  C-q 2		ws-find-marker-2
+  C-q 3		ws-find-marker-3
+  C-q 4		ws-find-marker-4
+  C-q 5		ws-find-marker-5
+  C-q 6		ws-find-marker-6
+  C-q 7		ws-find-marker-7
+  C-q 8		ws-find-marker-8
+  C-q 9		ws-find-marker-9
+  C-q a		ws-query-replace
+  C-q b		ws-to-block-begin
+  C-q c		end-of-buffer
+  C-q d		end-of-line
+  C-q f		ws-search
+  C-q k		ws-to-block-end
+  C-q l		ws-undo
+  C-q p		ws-last-cursorp
+  C-q r		beginning-of-buffer
+  C-q C-u	keyboard-quit
+  C-q w		ws-last-error
+  C-q y		ws-kill-eol
+  C-q DEL	ws-kill-bol
+
+(autoload 'wordstar-mode "ws-mode" '(#$ . 726194) t nil)
+#@167 Toggle XTerm mouse mode.
+With prefix arg, turn XTerm mouse mode on iff arg is positive.
+
+Turn it on to use emacs mouse commands, and off to use xterm mouse commands.
+(autoload 'xterm-mouse-mode "xt-mouse" '(#$ . 728699) t nil)
+#@74 Return or display a random Zippy quotation.  With prefix arg, insert it.
+(autoload 'yow "yow" '(#$ . 728932) t nil)
+#@77 Prompt with completion for a known Zippy quotation, and insert it at point.
+(autoload 'insert-zippyism "yow" '(#$ . 729054) t nil)
+#@104 Return a list of all Zippy quotes matching REGEXP.
+If called interactively, display a list of matches.
+(autoload 'apropos-zippy "yow" '(#$ . 729192) t nil)
+#@28 Zippy goes to the analyst.
+(autoload 'psychoanalyze-pinhead "yow" '(#$ . 729354) t nil)
+#@23 Zone out, completely.
+(autoload 'zone "zone" '(#$ . 729448) t nil)
+#@61 Update the serial number in a zone if the file was modified
+(autoload 'zone-mode-update-serial-hook "zone-mode" '(#$ . 729521) t nil)
+#@159 A mode for editing DNS zone files.
+
+Zone-mode does two things:
+
+	- automatically update the serial number for a zone
+		when saving the file
+
+	- fontification
+(autoload 'zone-mode "zone-mode" '(#$ . 729662) t nil)
diff -u -Naur emacs-21.3/lisp/startup.el emacs-21.3.fink/lisp/startup.el
--- emacs-21.3/lisp/startup.el	Sun Mar 16 17:05:59 2003
+++ emacs-21.3.fink/lisp/startup.el	Wed Apr  2 16:51:59 2003
@@ -339,6 +339,10 @@
 
 (defvar normal-top-level-add-subdirs-inode-list nil)
 
+(defconst fink-emacs-flavor 'emacs21
+  "A symbol representing the particular fink flavor of emacs running.
+Something like 'emacs20, 'xemacs20, etc.")
+
 (defun normal-top-level-add-subdirs-to-load-path ()
   "Add all subdirectories of current directory to `load-path'.
 More precisely, this uses only the subdirectories whose names
@@ -848,8 +852,20 @@
     ;; Run the site-start library if it exists.  The point of this file is
     ;; that it is run before .emacs.  There is no point in doing this after
     ;; .emacs; that is useless.
-    (if site-run-file 
-	(load site-run-file t t))
+
+    ;; (if site-run-file                                                       
+    ;;     (load site-run-file t t))                                           
+                                                                               
+    ;; Fink version of site-start.                                           
+    (if site-run-file                                                          
+        (progn                                                                 
+          ;; Load all the fink package snippets.                             
+          ;; It's in here because we want -q to kill it too.                   
+          (if (load "fink-startup" t t nil)                                  
+              (fink-startup fink-emacs-flavor))                            
+          ;; Now the normal site file...                                       
+          (load site-run-file t t nil)))                                       
+
 
     ;; Sites should not disable this.  Only individuals should disable
     ;; the startup message.
diff -u -Naur emacs-21.3/lisp/startup.elc emacs-21.3.fink/lisp/startup.elc
--- emacs-21.3/lisp/startup.elc	Tue Mar 18 09:52:08 2003
+++ emacs-21.3.fink/lisp/startup.elc	Wed Apr  2 17:51:06 2003
@@ -1,7 +1,7 @@
 ;ELC
-;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:52:07 2003
-;;; from file /home/pot/gnu/emacs-pretest.new/lisp/startup.el
-;;; in Emacs version 21.3
+;;; Compiled by cds@moth.ccs.brandeis.edu on Wed Apr  2 17:51:06 2003
+;;; from file /Users/cds/Desktop/Emacs/emacs-21.3.fink/lisp/startup.el
+;;; in Emacs version 21.3.1
 ;;; with bytecomp version 2.85.4.1
 ;;; with all optimizations.
 
@@ -17,12 +17,12 @@
 
 (byte-code "\301\302\207" [top-level (normal-top-level) nil] 1)
 #@46 Non-nil once command line has been processed
-(defvar command-line-processed nil (#$ . 681))
+(defvar command-line-processed nil (#$ . 697))
 (custom-declare-group 'initialization nil "Emacs start-up procedure" :group 'internal)
 #@156 *Non-nil inhibits the initial startup message.
 This is for use in your personal init file, once you are familiar
 with the contents of the startup message.
-(custom-declare-variable 'inhibit-startup-message 'nil '(#$ . -867) :type 'boolean :group 'initialization)
+(custom-declare-variable 'inhibit-startup-message 'nil '(#$ . -883) :type 'boolean :group 'initialization)
 #@518 *Non-nil inhibits the initial startup echo area message.
 Setting this variable takes effect
 only if you do it with the customization buffer
@@ -32,26 +32,26 @@
  (eval '(setq inhibit-startup-echo-area-message "YOUR-USER-NAME"))
 Thus, someone else using a copy of your `.emacs' file will see
 the startup message unless he personally acts to inhibit it.
-(custom-declare-variable 'inhibit-startup-echo-area-message 'nil '(#$ . -1136) :type '(choice (const :tag "Don't inhibit") (string :tag "Enter your user name, to inhibit")) :group 'initialization)
+(custom-declare-variable 'inhibit-startup-echo-area-message 'nil '(#$ . -1152) :type '(choice (const :tag "Don't inhibit") (string :tag "Enter your user name, to inhibit")) :group 'initialization)
 #@50 *Non-nil inhibits loading the `default' library.
-(custom-declare-variable 'inhibit-default-init 'nil '(#$ . -1856) :type 'boolean :group 'initialization)
+(custom-declare-variable 'inhibit-default-init 'nil '(#$ . -1872) :type 'boolean :group 'initialization)
 #@213 Alist of command-line switches.
 Elements look like (SWITCH-STRING . HANDLER-FUNCTION).
 HANDLER-FUNCTION receives switch name as sole arg;
 remaining command-line args are in the variable `command-line-args-left'.
-(defvar command-switch-alist nil (#$ . 2017))
+(defvar command-switch-alist nil (#$ . 2033))
 #@46 List of command-line args not yet processed.
-(defvar command-line-args-left nil (#$ . 2281))
+(defvar command-line-args-left nil (#$ . 2297))
 #@398 List of functions to process unrecognized command-line arguments.
 Each function should access the dynamically bound variables
 `argi' (the current argument) and `command-line-args-left' (the remaining
 arguments).  The function should return non-nil only if it recognizes and
 processes `argi'.  If it does so, it may consume successive arguments by
 altering `command-line-args-left' to remove them.
-(defvar command-line-functions nil (#$ . 2381))
+(defvar command-line-functions nil (#$ . 2397))
 #@122 Default directory to use for command line arguments.
 This is normally copied from `default-directory' when Emacs starts.
-(defvar command-line-default-directory nil (#$ . 2833))
+(defvar command-line-default-directory nil (#$ . 2849))
 #@446 Alist of X Windows options.
 Each element has the form
   (NAME NUMARGS HANDLER FRAME-PARAM VALUE)
@@ -60,32 +60,32 @@
 FRAME-PARAM (optional) is the frame parameter this option specifies,
 and VALUE is the value which is given to that frame parameter
 (most options use the argument for this, so VALUE is not present).
-(defconst command-line-x-option-alist '(("-bw" 1 x-handle-numeric-switch border-width) ("-d" 1 x-handle-display) ("-display" 1 x-handle-display) ("-name" 1 x-handle-name-switch) ("-title" 1 x-handle-switch title) ("-T" 1 x-handle-switch title) ("-r" 0 x-handle-switch reverse t) ("-rv" 0 x-handle-switch reverse t) ("-reverse" 0 x-handle-switch reverse t) ("-reverse-video" 0 x-handle-switch reverse t) ("-fn" 1 x-handle-switch font) ("-font" 1 x-handle-switch font) ("-ib" 1 x-handle-numeric-switch internal-border-width) ("-g" 1 x-handle-geometry) ("-lsp" 1 x-handle-numeric-switch line-spacing) ("-geometry" 1 x-handle-geometry) ("-fg" 1 x-handle-switch foreground-color) ("-foreground" 1 x-handle-switch foreground-color) ("-bg" 1 x-handle-switch background-color) ("-background" 1 x-handle-switch background-color) ("-ms" 1 x-handle-switch mouse-color) ("-itype" 0 x-handle-switch icon-type t) ("-i" 0 x-handle-switch icon-type t) ("-iconic" 0 x-handle-iconic) ("-xrm" 1 x-handle-xrm-switch) ("-cr" 1 x-handle-switch cursor-color) ("-vb" 0 x-handle-switch vertical-scroll-bars t) ("-hb" 0 x-handle-switch horizontal-scroll-bars t) ("-bd" 1 x-handle-switch) ("--border-width" 1 x-handle-numeric-switch border-width) ("--display" 1 x-handle-display) ("--name" 1 x-handle-name-switch) ("--title" 1 x-handle-switch title) ("--reverse-video" 0 x-handle-switch reverse t) ("--font" 1 x-handle-switch font) ("--internal-border" 1 x-handle-numeric-switch internal-border-width) ("--geometry" 1 x-handle-geometry) ("--foreground-color" 1 x-handle-switch foreground-color) ("--background-color" 1 x-handle-switch background-color) ("--mouse-color" 1 x-handle-switch mouse-color) ("--icon-type" 0 x-handle-switch icon-type t) ("--iconic" 0 x-handle-iconic) ("--xrm" 1 x-handle-xrm-switch) ("--cursor-color" 1 x-handle-switch cursor-color) ("--vertical-scroll-bars" 0 x-handle-switch vertical-scroll-bars t) ("--line-spacing" 1 x-handle-numeric-switch line-spacing) ("--border-color" 1 x-handle-switch border-color)) (#$ . 3017))
+(defconst command-line-x-option-alist '(("-bw" 1 x-handle-numeric-switch border-width) ("-d" 1 x-handle-display) ("-display" 1 x-handle-display) ("-name" 1 x-handle-name-switch) ("-title" 1 x-handle-switch title) ("-T" 1 x-handle-switch title) ("-r" 0 x-handle-switch reverse t) ("-rv" 0 x-handle-switch reverse t) ("-reverse" 0 x-handle-switch reverse t) ("-reverse-video" 0 x-handle-switch reverse t) ("-fn" 1 x-handle-switch font) ("-font" 1 x-handle-switch font) ("-ib" 1 x-handle-numeric-switch internal-border-width) ("-g" 1 x-handle-geometry) ("-lsp" 1 x-handle-numeric-switch line-spacing) ("-geometry" 1 x-handle-geometry) ("-fg" 1 x-handle-switch foreground-color) ("-foreground" 1 x-handle-switch foreground-color) ("-bg" 1 x-handle-switch background-color) ("-background" 1 x-handle-switch background-color) ("-ms" 1 x-handle-switch mouse-color) ("-itype" 0 x-handle-switch icon-type t) ("-i" 0 x-handle-switch icon-type t) ("-iconic" 0 x-handle-iconic) ("-xrm" 1 x-handle-xrm-switch) ("-cr" 1 x-handle-switch cursor-color) ("-vb" 0 x-handle-switch vertical-scroll-bars t) ("-hb" 0 x-handle-switch horizontal-scroll-bars t) ("-bd" 1 x-handle-switch) ("--border-width" 1 x-handle-numeric-switch border-width) ("--display" 1 x-handle-display) ("--name" 1 x-handle-name-switch) ("--title" 1 x-handle-switch title) ("--reverse-video" 0 x-handle-switch reverse t) ("--font" 1 x-handle-switch font) ("--internal-border" 1 x-handle-numeric-switch internal-border-width) ("--geometry" 1 x-handle-geometry) ("--foreground-color" 1 x-handle-switch foreground-color) ("--background-color" 1 x-handle-switch background-color) ("--mouse-color" 1 x-handle-switch mouse-color) ("--icon-type" 0 x-handle-switch icon-type t) ("--iconic" 0 x-handle-iconic) ("--xrm" 1 x-handle-xrm-switch) ("--cursor-color" 1 x-handle-switch cursor-color) ("--vertical-scroll-bars" 0 x-handle-switch vertical-scroll-bars t) ("--line-spacing" 1 x-handle-numeric-switch line-spacing) ("--border-color" 1 x-handle-switch border-color)) (#$ . 3033))
 #@78 Normal hook run after handling urgent options but before loading init files.
-(defvar before-init-hook nil (#$ . 5491))
+(defvar before-init-hook nil (#$ . 5507))
 #@265 Normal hook run after loading the init files, `~/.emacs' and `default.el'.
 There is no `condition-case' around the running of these functions;
 therefore, if you set `debug-on-error' non-nil in `.emacs',
 an error in one of these functions will invoke the debugger.
-(defvar after-init-hook nil (#$ . 5617))
+(defvar after-init-hook nil (#$ . 5633))
 #@73 Normal hook run after loading init files and handling the command line.
-(defvar emacs-startup-hook nil (#$ . 5928))
+(defvar emacs-startup-hook nil (#$ . 5944))
 #@243 Normal hook run after loading terminal-specific Lisp code.
 It also follows `emacs-startup-hook'.  This hook exists for users to set,
 so as to override the definitions made by the terminal-specific file.
 Emacs never sets this variable itself.
-(defvar term-setup-hook nil (#$ . 6051))
+(defvar term-setup-hook nil (#$ . 6067))
 #@192 The brand of keyboard you are using.
 This variable is used to define
 the proper function and keypad keys for use under X.  It is used in a
 fashion analogous to the environment variable TERM.
-(defvar keyboard-type nil (#$ . 6341))
+(defvar keyboard-type nil (#$ . 6357))
 #@153 Normal hook run to initialize window system display.
 Emacs runs this hook after processing the command line arguments and loading
 the user's init file.
-(defvar window-setup-hook nil (#$ . 6578))
+(defvar window-setup-hook nil (#$ . 6594))
 #@68 Major mode command symbol to use for the initial *scratch* buffer.
-(custom-declare-variable 'initial-major-mode ''lisp-interaction-mode '(#$ . 6779) :type 'function :group 'initialization)
+(custom-declare-variable 'initial-major-mode ''lisp-interaction-mode '(#$ . 6795) :type 'function :group 'initialization)
 #@622 Identity of user whose `.emacs' file is or was read.
 The value is nil if `-q' or `--no-init-file' was specified,
 meaning do not load any init file.
@@ -100,7 +100,7 @@
 
 Setting `init-file-user' does not prevent Emacs from loading
 `site-start.el'.  The only way to do that is to use `--no-site-file'.
-(custom-declare-variable 'init-file-user 'nil '(#$ . 6975) :type '(choice (const :tag "none" nil) string) :group 'initialization)
+(custom-declare-variable 'init-file-user 'nil '(#$ . 6991) :type '(choice (const :tag "none" nil) string) :group 'initialization)
 #@745 File containing site-wide run-time initializations.
 This file is loaded at run-time before `~/.emacs'.  It contains inits
 that need to be in place for the entire site, but which, due to their
@@ -114,13 +114,13 @@
 option or by setting `inhibit-default-init' in their own init files,
 but inhibiting `site-start.el' requires `--no-site-file', which
 is less convenient.
-(custom-declare-variable 'site-run-file '"site-start" '(#$ . 7733) :type '(choice (const :tag "none" nil) string) :group 'initialization)
+(custom-declare-variable 'site-run-file '"site-start" '(#$ . 7749) :type '(choice (const :tag "none" nil) string) :group 'initialization)
 #@54 *Name of this machine, for purposes of naming users.
-(custom-declare-variable 'mail-host-address 'nil '(#$ . -8621) :type '(choice (const nil) string) :group 'mail)
+(custom-declare-variable 'mail-host-address 'nil '(#$ . -8637) :type '(choice (const nil) string) :group 'mail)
 #@154 *Full mailing address of this user.
 This is initialized based on `mail-host-address',
 after your init file is read, in case it sets `mail-host-address'.
-(custom-declare-variable 'user-mail-address 'nil '(#$ . -8793) :type 'string :group 'mail)
+(custom-declare-variable 'user-mail-address 'nil '(#$ . -8809) :type 'string :group 'mail)
 #@396 Prefix for generating `auto-save-list-file-name'.
 This is used after reading your `.emacs' file to initialize
 `auto-save-list-file-name', by appending Emacs's pid and the system name,
@@ -128,58 +128,61 @@
 Directories in the prefix will be created if necessary.
 Set this to nil if you want to prevent `auto-save-list-file-name'
 from being initialized.
-(custom-declare-variable 'auto-save-list-file-prefix '(cond ((eq system-type 'ms-dos) "~/_emacs.d/auto-save.list/_s") (t "~/.emacs.d/auto-save-list/.saves-")) '(#$ . 9044) :type '(choice (const :tag "Don't record a session's auto save list" nil) string) :group 'auto-save)
+(custom-declare-variable 'auto-save-list-file-prefix '(cond ((eq system-type 'ms-dos) "~/_emacs.d/auto-save.list/_s") (t "~/.emacs.d/auto-save-list/.saves-")) '(#$ . 9060) :type '(choice (const :tag "Don't record a session's auto save list" nil) string) :group 'auto-save)
 (byte-code "\301B\304\301!\204\f\305\302B\304\302!\204\305\303B\304\303!\204$\305\305\207" [current-load-list init-file-debug init-file-had-error normal-top-level-add-subdirs-inode-list boundp nil] 2)
+#@109 A symbol representing the particular fink flavor of emacs running.
+Something like 'emacs20, 'xemacs20, etc.
+(defconst fink-emacs-flavor 'emacs21 (#$ . 9949))
 #@265 Add all subdirectories of current directory to `load-path'.
 More precisely, this uses only the subdirectories whose names
 start with letters or digits; it excludes any subdirectory named `RCS'
 or `CVS', and any subdirectory that contains a file named `.nosearch'.
-(defalias 'normal-top-level-add-subdirs-to-load-path #[nil "\306\211C	\203\203	@B	A@\307\f!\f\310=\205&\311\f!\211\2061\312\313\f!\233\211\235\204\nB
\203
@\314\235\204x\315\316
@\"\203x\315\317
@\"\204x\320
@!\203x\321
@!\322\321\323\"!\204w	C\244)
A\211\204C,\202\324\237A!+\207" [default-directory pending attrs dirs this-dir contents nil directory-files windows-nt untranslated-canonical-name 10 file-attributes ("." ".." "RCS" "CVS" "rcs" "cvs") string-match "\\`[[:alnum:]]" "\\.elc?\\'" file-directory-p expand-file-name file-exists-p ".nosearch" normal-top-level-add-to-load-path system-type canonicalized normal-top-level-add-subdirs-inode-list expanded] 5 (#$ . 9933)])
+(defalias 'normal-top-level-add-subdirs-to-load-path #[nil "\306\211C	\203\203	@B	A@\307\f!\f\310=\205&\311\f!\211\2061\312\313\f!\233\211\235\204\nB
\203
@\314\235\204x\315\316
@\"\203x\315\317
@\"\204x\320
@!\203x\321
@!\322\321\323\"!\204w	C\244)
A\211\204C,\202\324\237A!+\207" [default-directory pending attrs dirs this-dir contents nil directory-files windows-nt untranslated-canonical-name 10 file-attributes ("." ".." "RCS" "CVS" "rcs" "cvs") string-match "\\`[[:alnum:]]" "\\.elc?\\'" file-directory-p expand-file-name file-exists-p ".nosearch" normal-top-level-add-to-load-path system-type canonicalized normal-top-level-add-subdirs-inode-list expanded] 5 (#$ . 10114)])
 (defalias 'normal-top-level-add-to-load-path #[(dirs) "\306	!\211\203,A\203,\n@\232\204,\f\307>\203%\n\227@\227\232\204,A\211\204\n\205:\310\311\312
\"A\"\241*\207" [load-path default-directory thisdir tail system-type dirs directory-file-name (ms-dos windows-nt) append mapcar expand-file-name] 6])
 (defalias 'normal-top-level #[nil "\203\306\307!\207\310	\212\311\312!q\210\n*\313 \314\232\203\310\f\315\211\203@@
B\315\316\315\217\210\315\317\315\217\210A\211\204'*\320=\204p\321\322!\211;\203o\323\324!\325P!\323\324	!\325P!\232\204o\326\327P\")\330	!\315\331\216\332 *\207" [command-line-processed default-directory dir backup-by-copying-when-mismatch load-path new message "Back to top level." t get-buffer "*Messages*" user-uid 0 nil (byte-code "@\302\303\304@\"\305\211\211$\210)\302\207" [tail default-directory load expand-file-name "subdirs.el" t] 5) (byte-code "@\302\303\304@\"\305\211\211$\210)\302\207" [tail default-directory load expand-file-name "leim-list.el" t] 5) vax-vms getenv "PWD" file-attributes file-name-as-directory "." delete "PWD=" abbreviate-file-name ((byte-code "\306!	\204.\n\203.\307=\203#\310\311\n!\312\"\210\313\314\n!!\315P\202-\314\316\317\n\320 \321 $!\322\323!\210\f\203:\322\304!\210
\204O'\203O(\204O'\324=\203\245\325\326!\203X\326 \210\325\327!\203\245)\330 \331*+)'\204\237)\204\237\332+\333\"\204\237\332+\334\"\211,?\206\213,\335\235)\203\237\336\337!*\340\341*\"\203\237\342)\327\330 !\210+\325\343!\203\256\343 \210$\203\267\322\344!\210-\204\304\345 \203\304\346 \210\331\207" [default-directory auto-save-list-file-name auto-save-list-file-prefix system-type term-setup-hook frame-initial-frame abbreviate-file-name ms-dos make-directory file-name-directory t make-temp-name expand-file-name "~" format "%s%d-%s~" emacs-pid system-name run-hooks emacs-startup-hook pc fboundp frame-notice-user-settings frame-set-background-mode selected-frame nil frame-parameter reverse background-color (unspecified "unspecified-bg") getenv "TERM" string-match "^\\(xterm\\|rxvt\\|dtterm\\|eterm\\)" light font-menu-add-default window-setup-hook display-popup-menus-p precompute-menubar-bindings window-system noninteractive frame-background-mode term frame bg menubar-bindings-done] 7)) command-line tail system-type pwd process-environment menubar-bindings-done] 5])
 (defalias 'precompute-menubar-bindings #[nil "\304\305\"\211\203=	@:\2036	@@9\2036	@A\242;\2036\306	@AA!\2036\307\310	@AA\"\210\n\2036\311 \210	A\211\204	)\312\211\207" [global-map submap purify-flag define-key-rebound-commands lookup-key [menu-bar] keymapp x-popup-menu nil garbage-collect t] 4])
 (byte-code "\301B\302\301\207" [current-load-list tty-long-option-alist (("--name" . "-name") ("--title" . "-T") ("--reverse-video" . "-reverse") ("--foreground-color" . "-fg") ("--background-color" . "-bg"))] 2)
 #@45 Height in pixels of images in the tool bar.
-(defconst tool-bar-images-pixel-height 24 (#$ . 13869))
+(defconst tool-bar-images-pixel-height 24 (#$ . 14051))
 #@76 Non-nil if tool-bars are present before user and site init files are read.
-(defvar tool-bar-originally-present nil (#$ . 13975))
+(defvar tool-bar-originally-present nil (#$ . 14157))
 (defalias 'tty-handle-args #[(args) "\306\307\310	\"\210	\203	@\311\232\204	@\211\306\306	A\312\313\n\"\2032\n\314\225\306O\n\314\211\225SO\312\315\n\"\203p\316\n#\"\211\317=\203O\320\n#\"A\202p\f;\203l\320\f#\"\211$\204d\321\322\n\"\210$A)\202p\306\n\323\230\204|\n\324\230\203\221
\204\206	@	A\325
B%B%\202\n\326\230\204\235\n\327\230\203\262
\204\247	@	A\330
B%B%\202\n\331\230\204\276\n\332\230\203\371
\204\310	@	A\333
;\203\322
\202\360\317\306&'\334 \312\335
\"\211&\203\356
&\336I\210\202\333
*B%B%\202\n\337\230\204\n\340\230\204\n\341\230\203\342%B%\202\nB,\202\237)\207" [rest args this orig-this completion argval nil message "%s" "--" string-match "^--[^=]*=" 0 "^--" try-completion t assoc error "Option `%s' is ambiguous" "-fg" "-foreground" foreground-color "-bg" "-background" background-color "-T" "-name" title invocation-name "[.*]" 45 "-r" "-rv" "-reverse" (reverse . t) tty-long-option-alist elt default-frame-alist i case-fold-search] 5])
-(defalias 'command-line #[nil "\306\n\307>\203\310\311!\206N\310\312!\206N\310\313!\206N\314\202N\n\315>\203;\310\312!\206N\310\313!\206N\310\311!\206N\316\202N\310\312!\206N\310\313!\206N\310\311!\206N\317!\n\320=\205Y\310\312!\310\321!\211\322=\204\227
\323\230\204p
\324\230\203v\325@\202\227
\326\230\204\202
\327\230\203\210\322@\202\227
\330\230\204\224
\331\230\203\227\332@)\n\333>\203\247\334A\335B\202\255\336C\335B\337\340\341\217\210\342 \204\302D\204\302\343E!E\344\322!\210\322EAFGD?\205\326\345 \211H\203\347H\346 \230\203\347\347HG\204F\203\350F@\322IJK\351\352J\"\203\351\353J\"\203J\354\225\322OIJ\354\211\224OJJ\355\232\204c\356JK\"\211L\325=\203;J\357\322OJ\202bL;\203_\360LK\"\211M\204S\337\361J\"\210M@\357\322OJ)\202b\322I)J\362\230\204qJ\363\230\203|\322HFAF\202J\364\230\204\212J\365\230\203\247I\204\230FA\211F@IIH\322IFAF\202J\366\230\203\271\322NFAF\202J\367\230\203\313\325OFAF\202J\370\230\203\340\371PBPFAF\202J\372\230\204\365J\373\230\204\365J\374\230\203\375QBQFAF\202\325GI\203\337\376J\"\210+\202\347E\203 EF\241\210*\377\201r!\203.\201r \210D\204PR\201s>\203J\201t\201u \236A\354V\203P\201v\325!\210D\204m\342 \203m\201w\322\201Z\"\354V\203m\201x\357!\210D\204\220\n\320=\204\220R\201y>\203\220\201z\201{\325\"\210\201|\357!\210D\204\322\n\201}>\204\303R\201~>\203\265\377\201!\203\265\201 \204\303R\204\322S\201\200=\203\322\201z\201\201\325\"\210\201\202\357!\210D\204\363\342 \203\363\377\201\203!\203\363\201z\201\204\325\"\210\201\204\357!\210R\201\205>\204U\201\206 \203UR\201\207=\203T\202 \n\201\210=\203U\202 V\211W@XW\203O\201\211X@X\211YA@)X\211YAA)#\210WA\211W@X\202&\201\212 \210*\377\201\213!\203\203\201ZP\236\206l\201ZQ\236\211Z?\206ZA?\206ZA\354=?[)\\]^_`a\201\214\201\215!\210N\203\245\201\216N\325\211#\210\322b\322\211O\325=\203\267\201\217\202\271Ocdefge\201\220hiO\203\330h \210\202\341\337\201\221\201\222\217\210ie=\204\360\325fig*f\203\372gic\204dc=\204\201\223\201\224\201\225 \"\210\201\226j!\210,k\2041\345 \201\227l\206.\201\230 Qk\\a=\203I]`=\203I^_=\204N\201\212 \210+\201\214\201\231!\210\201\232\201\233!\203u\212\201\233q\210m\201\234=\203tn \210)o\203\301D\204\301R\204\301\310\201\235!\322p\211q\203\300\201\216oqP\325\211#\204\300\351\201\236q\"\211p\203\271q\354pO\211q\202\217\322\211q\204\222*\201\237EA!\210D\205\323\201\240\325!\207" [default-directory command-line-default-directory system-type temporary-file-directory small-temporary-file-directory vc file-name-as-directory (ms-dos windows-nt) getenv "TEMP" "TMPDIR" "TMP" "c:/temp" (vax-vms axp-vms) "SYS$SCRATCH:" "/tmp" ms-dos "VERSION_CONTROL" nil "t" "numbered" t "nil" "existing" "never" "simple" never (ms-dos windows-nt emx) "(Unix)" "(Mac)" "(DOS)" error (byte-code "\203	\204\303\n\304!\305Q\306\307#\210\306\207" [window-system noninteractive term-file-prefix load symbol-name "-win" nil t] 4) ((error (byte-code "\302@\300=\203\303\304A\"\2026\305@\306N>\203)\307\310A@\311\312AA\313##\2026\307\310@\314N\311\315A\313##\316\"\210\317\316!\210\320\321 \207" [error window-system princ apply concat file-error error-conditions format "%s: %s" mapconcat #[(obj) "\301\302\"\207" [obj prin1-to-string t] 3] ", " error-message #[(obj) "\301\302\"\207" [obj prin1-to-string t] 3] external-debugging-output terpri nil kill-emacs] 8))) display-graphic-p tty-handle-args set-locale-environment user-login-name user-real-login-name "" (("--no-init-file") ("--no-site-file") ("--user") ("--debug-init") ("--iconic") ("--icon-type")) string-match "\\`--" "=" 0 "--" try-completion 1 assoc "Option `%s' is ambiguous" "-q" "-no-init-file" "-u" "-user" "-no-site-file" "-debug-init" "-iconic" (visibility . icon) "-icon-type" "-i" "-itype" (icon-type . t) "Option `%s' doesn't allow an argument" fboundp version-control eol-mnemonic-unix eol-mnemonic-mac eol-mnemonic-dos noninteractive command-line-args args done init-file-user argval argi longopts completion elt site-run-file init-file-debug initial-frame-alist default-frame-alist window-system tty-erase-char msdos-color-values w32-tty-standard-colors tty-standard-colors colors color x tool-bar-lines tool-bar-originally-present scalable-fonts-allowed font-list-limit face-ignored-fonts old-face-ignored-fonts old-font-list-limit old-scalable-fonts-allowed inhibit-startup-message default-enable-multibyte-characters orig-enable-multibyte debug-on-error-initial debug-on-error-should-be-set debug-on-error-from-init-file inner debug-on-error current-language-environment user-mail-address mail-host-address major-mode initial-major-mode term-file-prefix hyphend term frame-initialize (x w32) menu-bar-lines frame-parameters menu-bar-mode frame-parameter tool-bar-mode (x w32) set-default blink-cursor blink-cursor-mode (ms-dos windows-nt) (x) x-backspace-delete-keys-p 8 normal-erase-is-backspace normal-erase-is-backspace-mode x-show-tip tooltip-mode (x w32) tty-display-color-p pc windows-nt tty-color-define clear-face-cache frame-notice-user-settings run-hooks before-init-hook load startup #[nil "\205\227	\306=\203\307\310Q\2025	\311=\203'\312\307\313\314#\203#\315\2025\316\2025	\317=\2031\320\2025\307\321Q\322\323\n\322\211#\210\322=\203F\313\203\210\324!\325\232\203\210\326!\211\327P\330
!\203d
\202o\330\f!\203n\f\202o\313\211\203\207\331\f\"\203\205\332\333\f#\210\334\335!\210\f*\206\226\313 \323\336\322\211#))\207" [init-file-user system-type user-init-file-1 user-init-file source alt ms-dos "~" "/_emacs" windows-nt directory-files nil "^\\.emacs\\(\\.elc?\\)?$" "~/.emacs" "~/_emacs" vax-vms "sys$login:.emacs" "/.emacs" t load file-name-extension "elc" file-name-sans-extension ".el" file-exists-p file-newer-than-file-p message "Warning: %s is newer than %s" sit-for 1 "default" inhibit-default-init inhibit-startup-message] 5] (byte-code " \210\302\302\207" [inner init-file-had-error nil] 1) ((error (byte-code "\304\212\305\306!q\210\307\310\311	\"\310\312\n@\313N\nA\203\314\202\315\316\317\nA\320#$\307\321\322\323\324\261\210)\325\326\n@\313N\nA\203<\314\202=\315\316\317\nA\320#$\210\327\306!\210\330)\304\207" [message-log-max user-init-file error init-file-had-error nil get-buffer-create "*Messages*" "\n\n" format "An error has occurred while loading `%s':\n\n" "%s%s%s" error-message ": " "" mapconcat prin1-to-string ", " "To ensure normal operation, you should investigate the cause\n" "of the error in your initialization file and remove it.  Start\n" "Emacs with the `--debug-init' option to view a complete error\n" "backtrace\n" message "Error in init file: %s%s%s" pop-to-buffer t] 10))) mapcar #[(buffer) "rq\210	\205\302\303!)\207" [buffer enable-multibyte-characters set-buffer-multibyte nil] 2] buffer-list set-language-environment "@" system-name after-init-hook get-buffer "*scratch*" fundamental-mode "TERM" "[-_][^-_]+$" command-line-1 kill-emacs] 5])
+(defalias 'command-line #[nil "\306\n\307>\203\310\311!\206N\310\312!\206N\310\313!\206N\314\202N\n\315>\203;\310\312!\206N\310\313!\206N\310\311!\206N\316\202N\310\312!\206N\310\313!\206N\310\311!\206N\317!\n\320=\205Y\310\312!\310\321!\211\322=\204\227
\323\230\204p
\324\230\203v\325@\202\227
\326\230\204\202
\327\230\203\210\322@\202\227
\330\230\204\224
\331\230\203\227\332@)\n\333>\203\247\334A\335B\202\255\336C\335B\337\340\341\217\210\342 \204\302D\204\302\343E!E\344\322!\210\322EAFGD?\205\326\345 \211H\203\347H\346 \230\203\347\347HG\204F\203\350F@\322IJK\351\352J\"\203\351\353J\"\203J\354\225\322OIJ\354\211\224OJJ\355\232\204c\356JK\"\211L\325=\203;J\357\322OJ\202bL;\203_\360LK\"\211M\204S\337\361J\"\210M@\357\322OJ)\202b\322I)J\362\230\204qJ\363\230\203|\322HFAF\202J\364\230\204\212J\365\230\203\247I\204\230FA\211F@IIH\322IFAF\202J\366\230\203\271\322NFAF\202J\367\230\203\313\325OFAF\202J\370\230\203\340\371PBPFAF\202J\372\230\204\365J\373\230\204\365J\374\230\203\375QBQFAF\202\325GI\203\337\376J\"\210+\202\347E\203 EF\241\210*\377\201s!\203.\201s \210D\204PR\201t>\203J\201u\201v \236A\354V\203P\201w\325!\210D\204m\342 \203m\201x\322\201Z\"\354V\203m\201y\357!\210D\204\220\n\320=\204\220R\201z>\203\220\201{\201|\325\"\210\201}\357!\210D\204\322\n\201~>\204\303R\201>\203\265\377\201\200!\203\265\201\200 \204\303R\204\322S\201\201=\203\322\201{\201\202\325\"\210\201\203\357!\210D\204\363\342 \203\363\377\201\204!\203\363\201{\201\205\325\"\210\201\205\357!\210R\201\206>\204U\201\207 \203UR\201\210=\203T\202 \n\201\211=\203U\202 V\211W@XW\203O\201\212X@X\211YA@)X\211YAA)#\210WA\211W@X\202&\201\213 \210*\377\201\214!\203\203\201ZP\236\206l\201ZQ\236\211Z?\206ZA?\206ZA\354=?[)\\]^_`a\201\215\201\216!\210N\203\272\201\217\201\220\325\211\322$\203\260\201\221b!\210\201\217N\325\211\322$\210\322c\322\211O\325=\203\314\201\222\202\316Odefghf\201\223ijO\203\355i \210\202\366\337\201\224\201\225\217\210jf=\204\325gjh*g\203hjd\204/ed=\204/\201\226\201\227\201\230 \"\210\201\231k!\210,l\204F\345 \201\232m\206C\201\233 Ql\\a=\203^]`=\203^^_=\204c\201\213 \210+\201\215\201\234!\210\201\235\201\236!\203\212\212\201\236q\210n\201\237=\203\211o \210)p\203\326D\204\326R\204\326\310\201\240!\322q\211r\203\325\201\217prP\325\211#\204\325\351\201\241r\"\211q\203\316r\354qO\211r\202\244\322\211r\204\247*\201\242EA!\210D\205\350\201\243\325!\207" [default-directory command-line-default-directory system-type temporary-file-directory small-temporary-file-directory vc file-name-as-directory (ms-dos windows-nt) getenv "TEMP" "TMPDIR" "TMP" "c:/temp" (vax-vms axp-vms) "SYS$SCRATCH:" "/tmp" ms-dos "VERSION_CONTROL" nil "t" "numbered" t "nil" "existing" "never" "simple" never (ms-dos windows-nt emx) "(Unix)" "(Mac)" "(DOS)" error (byte-code "\203	\204\303\n\304!\305Q\306\307#\210\306\207" [window-system noninteractive term-file-prefix load symbol-name "-win" nil t] 4) ((error (byte-code "\302@\300=\203\303\304A\"\2026\305@\306N>\203)\307\310A@\311\312AA\313##\2026\307\310@\314N\311\315A\313##\316\"\210\317\316!\210\320\321 \207" [error window-system princ apply concat file-error error-conditions format "%s: %s" mapconcat #[(obj) "\301\302\"\207" [obj prin1-to-string t] 3] ", " error-message #[(obj) "\301\302\"\207" [obj prin1-to-string t] 3] external-debugging-output terpri nil kill-emacs] 8))) display-graphic-p tty-handle-args set-locale-environment user-login-name user-real-login-name "" (("--no-init-file") ("--no-site-file") ("--user") ("--debug-init") ("--iconic") ("--icon-type")) string-match "\\`--" "=" 0 "--" try-completion 1 assoc "Option `%s' is ambiguous" "-q" "-no-init-file" "-u" "-user" "-no-site-file" "-debug-init" "-iconic" (visibility . icon) "-icon-type" "-i" "-itype" (icon-type . t) "Option `%s' doesn't allow an argument" fboundp version-control eol-mnemonic-unix eol-mnemonic-mac eol-mnemonic-dos noninteractive command-line-args args done init-file-user argval argi longopts completion elt site-run-file init-file-debug initial-frame-alist default-frame-alist window-system tty-erase-char msdos-color-values w32-tty-standard-colors tty-standard-colors colors color x tool-bar-lines tool-bar-originally-present scalable-fonts-allowed font-list-limit face-ignored-fonts old-face-ignored-fonts old-font-list-limit old-scalable-fonts-allowed fink-emacs-flavor inhibit-startup-message default-enable-multibyte-characters orig-enable-multibyte debug-on-error-initial debug-on-error-should-be-set debug-on-error-from-init-file inner debug-on-error current-language-environment user-mail-address mail-host-address major-mode initial-major-mode term-file-prefix hyphend term frame-initialize (x w32) menu-bar-lines frame-parameters menu-bar-mode frame-parameter tool-bar-mode (x w32) set-default blink-cursor blink-cursor-mode (ms-dos windows-nt) (x) x-backspace-delete-keys-p 8 normal-erase-is-backspace normal-erase-is-backspace-mode x-show-tip tooltip-mode (x w32) tty-display-color-p pc windows-nt tty-color-define clear-face-cache frame-notice-user-settings run-hooks before-init-hook load "fink-startup" fink-startup startup #[nil "\205\227	\306=\203\307\310Q\2025	\311=\203'\312\307\313\314#\203#\315\2025\316\2025	\317=\2031\320\2025\307\321Q\322\323\n\322\211#\210\322=\203F\313\203\210\324!\325\232\203\210\326!\211\327P\330
!\203d
\202o\330\f!\203n\f\202o\313\211\203\207\331\f\"\203\205\332\333\f#\210\334\335!\210\f*\206\226\313 \323\336\322\211#))\207" [init-file-user system-type user-init-file-1 user-init-file source alt ms-dos "~" "/_emacs" windows-nt directory-files nil "^\\.emacs\\(\\.elc?\\)?$" "~/.emacs" "~/_emacs" vax-vms "sys$login:.emacs" "/.emacs" t load file-name-extension "elc" file-name-sans-extension ".el" file-exists-p file-newer-than-file-p message "Warning: %s is newer than %s" sit-for 1 "default" inhibit-default-init inhibit-startup-message] 5] (byte-code " \210\302\302\207" [inner init-file-had-error nil] 1) ((error (byte-code "\304\212\305\306!q\210\307\310\311	\"\310\312\n@\313N\nA\203\314\202\315\316\317\nA\320#$\307\321\322\323\324\261\210)\325\326\n@\313N\nA\203<\314\202=\315\316\317\nA\320#$\210\327\306!\210\330)\304\207" [message-log-max user-init-file error init-file-had-error nil get-buffer-create "*Messages*" "\n\n" format "An error has occurred while loading `%s':\n\n" "%s%s%s" error-message ": " "" mapconcat prin1-to-string ", " "To ensure normal operation, you should investigate the cause\n" "of the error in your initialization file and remove it.  Start\n" "Emacs with the `--debug-init' option to view a complete error\n" "backtrace\n" message "Error in init file: %s%s%s" pop-to-buffer t] 10))) mapcar #[(buffer) "rq\210	\205\302\303!)\207" [buffer enable-multibyte-characters set-buffer-multibyte nil] 2] buffer-list set-language-environment "@" system-name after-init-hook get-buffer "*scratch*" fundamental-mode "TERM" "[-_][^-_]+$" command-line-1 kill-emacs] 6])
 #@105 Initial message displayed in *scratch* buffer at startup.
 If this is nil, no message will be displayed.
-(custom-declare-variable 'initial-scratch-message '(purecopy ";; This buffer is for notes you don't want to save, and for Lisp evaluation.\n;; If you want to create a file, visit that file with C-x C-f,\n;; then enter the text in that file's own buffer.\n\n") '(#$ . 22393) :type 'string)
+(custom-declare-variable 'initial-scratch-message '(purecopy ";; This buffer is for notes you don't want to save, and for Lisp evaluation.\n;; If you want to create a file, visit that file with C-x C-f,\n;; then enter the text in that file's own buffer.\n\n") '(#$ . 22687) :type 'string)
 #@180 A list of texts to show in the middle part of splash screens.
 Each element in the list should be a list of strings or pairs
 `:face FACE', like `fancy-splash-insert' accepts them.
-(defvar fancy-splash-text '((:face variable-pitch "You can do basic editing with the menu bar and scroll bar using the mouse.\n\n" :face (variable-pitch :weight bold) "Important Help menu items:\n" :face variable-pitch "Emacs Tutorial	Learn-by-doing tutorial for using Emacs efficiently\nEmacs FAQ	Frequently asked questions and answers\n(Non)Warranty	GNU Emacs comes with " :face (variable-pitch :slant oblique) "ABSOLUTELY NO WARRANTY\n" :face variable-pitch "Copying Conditions	Conditions for redistributing and changing Emacs\nOrdering Manuals	How to order Emacs manuals from the Free Software Foundation\n") (:face variable-pitch "You can do basic editing with the menu bar and scroll bar using the mouse.\n\n" :face (variable-pitch :weight bold) "Useful File menu items:\n" :face variable-pitch "Exit Emacs	(Or type Control-x followed by Control-c)\nRecover Session	Recover files you were editing before a crash\n\n\n\n")) (#$ . 22793))
+(defvar fancy-splash-text '((:face variable-pitch "You can do basic editing with the menu bar and scroll bar using the mouse.\n\n" :face (variable-pitch :weight bold) "Important Help menu items:\n" :face variable-pitch "Emacs Tutorial	Learn-by-doing tutorial for using Emacs efficiently\nEmacs FAQ	Frequently asked questions and answers\n(Non)Warranty	GNU Emacs comes with " :face (variable-pitch :slant oblique) "ABSOLUTELY NO WARRANTY\n" :face variable-pitch "Copying Conditions	Conditions for redistributing and changing Emacs\nOrdering Manuals	How to order Emacs manuals from the Free Software Foundation\n") (:face variable-pitch "You can do basic editing with the menu bar and scroll bar using the mouse.\n\n" :face (variable-pitch :weight bold) "Useful File menu items:\n" :face variable-pitch "Exit Emacs	(Or type Control-x followed by Control-c)\nRecover Session	Recover files you were editing before a crash\n\n\n\n")) (#$ . 23087))
 (custom-declare-group 'fancy-splash-screen nil "Fancy splash screen when Emacs starts." :version "21.1" :group 'initialization)
 #@43 *Delay in seconds between splash screens.
-(custom-declare-variable 'fancy-splash-delay '10 '(#$ . -24049) :group 'fancy-splash-screen :type 'integer)
+(custom-declare-variable 'fancy-splash-delay '10 '(#$ . -24343) :group 'fancy-splash-screen :type 'integer)
 #@99 *Show splash screens for at most this number of seconds.
 Values less than 60 seconds are ignored.
-(custom-declare-variable 'fancy-splash-max-time '60 '(#$ . -24205) :group 'fancy-splash-screen :type 'integer)
+(custom-declare-variable 'fancy-splash-max-time '60 '(#$ . -24499) :group 'fancy-splash-screen :type 'integer)
 #@64 *The image to show in the splash screens, or nil for defaults.
-(custom-declare-variable 'fancy-splash-image 'nil '(#$ . -24420) :group 'fancy-splash-screen :type '(choice (const :tag "Default" nil) (file :tag "File")))
+(custom-declare-variable 'fancy-splash-image 'nil '(#$ . -24714) :group 'fancy-splash-screen :type '(choice (const :tag "Default" nil) (file :tag "File")))
 (byte-code "\301B\304\301!\204\f\305\302B\304\302!\204\305\303B\304\303!\204$\305\305\207" [current-load-list fancy-current-text fancy-splash-help-echo fancy-splash-stop-time boundp nil] 2)
 #@206 Insert text into the current buffer, with faces.
 Arguments from ARGS should be either strings or pairs `:face FACE',
 where FACE is a valid face specification, as it can be used with
 `put-text-properties'.
-(defalias 'fancy-splash-insert #[(&rest args) "\303	\205(	@\304=\203	A\211@\202 \305	@\306\307\n%c\210	A\211\204\303)\207" [current-face args fancy-splash-help-echo nil :face propertize face help-echo] 7 (#$ . 24849)])
+(defalias 'fancy-splash-insert #[(&rest args) "\303	\205(	@\304=\203	A\211@\202 \305	@\306\307\n%c\210	A\211\204\303)\207" [current-face args fancy-splash-help-echo nil :face propertize face help-echo] 7 (#$ . 25143)])
 #@68 Insert the head part of the splash screen into the current buffer.
-(defalias 'fancy-splash-head #[nil ";\203	\202*\306 \203)\307\310!\203)\311\312!\203%\312 \313U\203%\314\202*\315\202*\316\317	!\211\2057\320\n!@\304\321 !\n\203\205\fV\203\205\fZ\322\245\323\324\325\326\327
E#c\210)\330 \331\",\332,\333\334#\210\332,\335\336#\210\332,\337\336#\210\340\n\323\341\342\"\343,%\"\210*\344c\210,-\345=\203\226\346\347\350\351#\210\202\234\346\347\352\353#\210\344c\207" [fancy-splash-image image-file img image-width window-width pos display-color-p image-type-available-p xpm fboundp x-display-planes 8 "splash8.xpm" "splash.xpm" "splash.pbm" create-image image-size selected-window 2 propertize " " display space :align-to make-sparse-keymap "mouse-2: browse http://www.gnu.org/" define-key [mouse-2] #[nil "\300\301!\210\302\303\304\"\207" [browse-url "http://www.gnu.org/" throw exit nil] 3 nil nil] [down-mouse-2] ignore [up-mouse-2] insert-image "xxx" help-echo keymap "\n" gnu/linux fancy-splash-insert :face (variable-pitch :foreground "red") "GNU Emacs is one component of a Linux-based GNU system." (variable-pitch :foreground "red") "GNU Emacs is one component of the GNU operating system." map system-type] 9 (#$ . 25290)])
+(defalias 'fancy-splash-head #[nil ";\203	\202*\306 \203)\307\310!\203)\311\312!\203%\312 \313U\203%\314\202*\315\202*\316\317	!\211\2057\320\n!@\304\321 !\n\203\205\fV\203\205\fZ\322\245\323\324\325\326\327
E#c\210)\330 \331\",\332,\333\334#\210\332,\335\336#\210\332,\337\336#\210\340\n\323\341\342\"\343,%\"\210*\344c\210,-\345=\203\226\346\347\350\351#\210\202\234\346\347\352\353#\210\344c\207" [fancy-splash-image image-file img image-width window-width pos display-color-p image-type-available-p xpm fboundp x-display-planes 8 "splash8.xpm" "splash.xpm" "splash.pbm" create-image image-size selected-window 2 propertize " " display space :align-to make-sparse-keymap "mouse-2: browse http://www.gnu.org/" define-key [mouse-2] #[nil "\300\301!\210\302\303\304\"\207" [browse-url "http://www.gnu.org/" throw exit nil] 3 nil nil] [down-mouse-2] ignore [up-mouse-2] insert-image "xxx" help-echo keymap "\n" gnu/linux fancy-splash-insert :face (variable-pitch :foreground "red") "GNU Emacs is one component of a Linux-based GNU system." (variable-pitch :foreground "red") "GNU Emacs is one component of the GNU operating system." map system-type] 9 (#$ . 25584)])
 #@68 Insert the tail part of the splash screen into the current buffer.
-(defalias 'fancy-splash-tail #[nil "\301\302\303\"\304=\203
\305\202\306\307\310\311\312E\313\314 \315\310\316\317&)\207" [fg frame-parameter nil background-mode dark "cyan" "darkblue" fancy-splash-insert :face variable-pitch :foreground "\nThis is " emacs-version "\n" (variable-pitch :height 0.5) "Copyright (C) 2001 Free Software Foundation, Inc."] 9 (#$ . 26559)])
+(defalias 'fancy-splash-tail #[nil "\301\302\303\"\304=\203
\305\202\306\307\310\311\312E\313\314 \315\310\316\317&)\207" [fg frame-parameter nil background-mode dark "cyan" "darkblue" fancy-splash-insert :face variable-pitch :foreground "\nThis is " emacs-version "\n" (variable-pitch :height 0.5) "Copyright (C) 2001 Free Software Foundation, Inc."] 9 (#$ . 26853)])
 #@44 Timer function displaying a splash screen.
-(defalias 'fancy-splash-screens-1 #[(buffer) "\306 V\203\f\307\310\311\"\210	\204\n	@\fq\210\312 \210\313 \210\314\315\"\210\316 \210\317 \204/\320
!\210\321\311!\210eb\210\322 \210	A\211)\207" [fancy-splash-stop-time fancy-current-text fancy-splash-text text buffer fancy-splash-help-echo float-time throw stop-splashing nil erase-buffer fancy-splash-head apply fancy-splash-insert fancy-splash-tail current-message message set-buffer-modified-p force-mode-line-update] 3 (#$ . 27007)])
+(defalias 'fancy-splash-screens-1 #[(buffer) "\306 V\203\f\307\310\311\"\210	\204\n	@\fq\210\312 \210\313 \210\314\315\"\210\316 \210\317 \204/\320
!\210\321\311!\210eb\210\322 \210	A\211)\207" [fancy-splash-stop-time fancy-current-text fancy-splash-text text buffer fancy-splash-help-echo float-time throw stop-splashing nil erase-buffer fancy-splash-head apply fancy-splash-insert fancy-splash-tail current-message message set-buffer-modified-p force-mode-line-update] 3 (#$ . 27301)])
 #@56 Default action for events in the splash screen buffer.
-(defalias 'fancy-splash-default-action #[nil "	B\302\303\304\"\207" [last-command-event unread-command-events throw exit nil] 3 (#$ . 27553) nil])
+(defalias 'fancy-splash-default-action #[nil "	B\302\303\304\"\207" [last-command-event unread-command-events throw exit nil] 3 (#$ . 27847) nil])
 #@49 Display fancy splash screens when Emacs starts.
-(defalias 'fancy-splash-screens #[nil "\306 \307\310!\210\311\np\312
\313\314\215,\207" [fancy-splash-help-echo tab-width display-hourglass minor-mode-map-alist timer old-minor-mode-map-alist startup-echo-area-message switch-to-buffer "GNU Emacs" 20 nil stop-splashing (byte-code "\306\216\307 \310!\210\311\312\313#\210\311\314\315#\210\311\316\315#\210\317\317\317\320\321\322\323\324#\325 \326]\\\327\330\331$\332 *\207" [map cursor-type display-hourglass minor-mode-map-alist buffer-undo-list mode-line-format ((byte-code "\306!\210	\307
!\207" [timer old-hourglass display-hourglass old-minor-mode-map-alist minor-mode-map-alist splash-buffer cancel-timer kill-buffer] 2)) make-sparse-keymap use-local-map define-key [t] fancy-splash-default-action [mouse-movement] ignore [mode-line t] nil t propertize "---- %b %-" face (:weight bold) float-time 60 run-with-timer 0 fancy-splash-screens-1 recursive-edit fancy-splash-max-time fancy-splash-stop-time fancy-splash-delay splash-buffer timer] 5) splash-buffer old-hourglass] 4 (#$ . 27763)])
+(defalias 'fancy-splash-screens #[nil "\306 \307\310!\210\311\np\312
\313\314\215,\207" [fancy-splash-help-echo tab-width display-hourglass minor-mode-map-alist timer old-minor-mode-map-alist startup-echo-area-message switch-to-buffer "GNU Emacs" 20 nil stop-splashing (byte-code "\306\216\307 \310!\210\311\312\313#\210\311\314\315#\210\311\316\315#\210\317\317\317\320\321\322\323\324#\325 \326]\\\327\330\331$\332 *\207" [map cursor-type display-hourglass minor-mode-map-alist buffer-undo-list mode-line-format ((byte-code "\306!\210	\307
!\207" [timer old-hourglass display-hourglass old-minor-mode-map-alist minor-mode-map-alist splash-buffer cancel-timer kill-buffer] 2)) make-sparse-keymap use-local-map define-key [t] fancy-splash-default-action [mouse-movement] ignore [mode-line t] nil t propertize "---- %b %-" face (:weight bold) float-time 60 run-with-timer 0 fancy-splash-screens-1 recursive-edit fancy-splash-max-time fancy-splash-stop-time fancy-splash-delay splash-buffer timer] 5) splash-buffer old-hourglass] 4 (#$ . 28057)])
 #@50 Return t if fancy splash screens should be used.
-(defalias 'use-fancy-splash-screens-p #[nil "\304 \203\305\306!\204\305\307!\205=\310\206&\304 \203%\305\306!\203%\311\202&\312!\211\2050\313	!A\303\314 !S\211\n\315\\V+\207" [fancy-splash-image img image-height window-height display-color-p image-type-available-p xpm pbm create-image "splash.xpm" "splash.pbm" image-size selected-window 15] 4 (#$ . 28894)])
+(defalias 'use-fancy-splash-screens-p #[nil "\304 \203\305\306!\204\305\307!\205=\310\206&\304 \203%\305\306!\203%\311\202&\312!\211\2050\313	!A\303\314 !S\211\n\315\\V+\207" [fancy-splash-image img image-height window-height display-color-p image-type-available-p xpm pbm create-image "splash.xpm" "splash.pbm" image-size selected-window 15] 4 (#$ . 29188)])
 (defalias 'startup-echo-area-message #[nil "\300\301!\302=\203\n\303\207\304\305!\207" [key-binding "" describe-project "For information about the GNU Project and its goals, type C-h C-p." substitute-command-keys "For information about the GNU Project and its goals, type \\[describe-project]."] 2])
 (defalias 'display-startup-echo-area-message #[nil "\301\302\303 !)\207" [resize-mini-windows t message startup-echo-area-message] 2])
 (defalias 'command-line-1 #[(command-line-args-left) "\204?\306 \204?	\204?\n\203<\203<\302\307N\203,\n\f\310\230\203'\311 \202(\f\232\204?\312\313!\314\315\316\217\317
!\210)\204?\320 \210@\204\342A?\205\341?\205\341\321 \322\230\205?\203_\323\324!\210\314\325\326!\203k\326 \210\203w\323\327!\210\314\330 \203\331 \210\332B\333 \334U\205\341\332\335\332CDE\336\216\306 ?\205\340db\210\337c\210F\340=\203\252\341c\210\342c\210\343\344 \236\203\317\345 \203\302\314C\346 \210\202\313\347c\210\350\351 \352\261\210\202\313\353\354!\355=\203\353\356!\357=\203\353\360!\361=\203\353\362!\363=\203\353\364!\365=\203\353\366!\367=\203\370c\210\202 \371\372\373\374\355\314\332#\211G\203\375G!\202\376)\"!c\210\353\377!\201`=\203>\353\201a!\201`=\203>\201bc\210\202E\371\201c!c\210\201d \203Q\201ec\210\201fc\210H\203\221\201g\201hH!!\203\221\201i\201hH!\314\201j\201k\201lH!!P\332$\203\221\201m\201n\201o\261\210\350\351 \352\261\210\353\201p!\201q=\203\304\353\201r!\201s=\203\304\353\201t!\201u=\203\304\201vc\210\202\313\371\201w!c\210eb\210\201x\314!\210C\205\340\201y\201z!,\207	\203\356\201y\201{!\210I\334\314\211\211\201|\201}\201~\201J\"\"\334\211KLMNOPQRS\211O\203?\201\200\201\201O@@\"\2036O@@CMBMOA\211O\204@\203\"@@\211TU\314V\314W\314XYZ@A@N\203i\310T\202\345\201\200\201\202T\"\203\206T\334\225\314OVT\334\211\225SOTT\201\203\232\203\225\314W\202\237\201\204TM\"WW\332=\203\262T\201\205\314OT\202\345W;\203\336\201\206WM\"\211[\204\320\201\207\201\210T\"\210[@\201\205\314OT)\202\345\314VUT\201\206TJ\"\211O\203V\203\nV@B@OAT!\210)\202OAT!\210\202T\201\211\230\204/T\201\212\230\204/T\201\213\230\203hV\203?\201\214V!O\202M\201\214@@!O@A@\201\215OK!\203a\201\216O!\210\202O \210\202T\201\217\230\204zT\201\220\230\203\236V\203\206VO\202\220@@O@A@\201\221\201\222O!!\210\202T\201\223\230\204\260T\201\224\230\203\347V\203\274VO\202\306@@O@A@\201\225O!O\201\226O!XBX\201|X\237Z\"Y\202T\201\227\230\204\371T\201\230\230\2039V\203VO\202@@O@A@\201\225O!\\\201\231\201\226\\!!\203,\201\226\\!\\\201\232\\\314\332#\210)\202T\201\233\230\203tV\203NVO\202X@@O@A@O;\204f\201\207\201\234!\210\201\235\201\225O!!\210\202T\201\236\230\203\206\201\237\332!\210\202\201\200\201\240T\"\203\235\201\241T!L\202\201\200\201\242T\"\203\312\201\241\201\243\201\205T\"!L\201\241\201\243\201{T\"!K\202\201\206TS\"\211O\203\344OA@@\233@\202T\201\244\230\204\377T\201\245\230\204\377T\201\246\230\203~V\203VO\202@@O@A@O;\204%\201\207\201\247T\"\210QTQ\201\226\201\225O!R\"\\Q\201\205U\203L\201\250\\!P\202S\201\251\\!\210)\201\252L!\204d\201\253L!\210\334LK\201\205W\204x\201\254KS!\210\334K\202T\201\203\232\203\215\332N\202]\314^\211_\203\253_@ \211^\204\253_A\211_\204\230^\204\201\200\201\255T\"\203\306\201\207\201\256T\"\210QTQ\201\226\201\225U!R\"\\Q\201\205U\203\355\201\250\\!P\202\364\201\251\\!\210)\201\252L!\204\201\253L!\210\334LK\201\205W\204\201\254KS!\210\334K*.\202?Q\201{V\205=?\205=\201\257P!\206=\201\260 .\207" [noninteractive init-file-had-error inhibit-startup-echo-area-message user-init-file init-file-user buffer input-pending-p saved-value "" user-login-name get-buffer-create " *temp*" nil (byte-code "\212q\210\303	!\210\304\305\306\307\310\n\311\230\203\312 \202\n!!\313R\314\315#)\207" [buffer user-init-file init-file-user insert-file-contents re-search-forward "([ 	\n]*setq[ 	\n]+" "inhibit-startup-echo-area-message[ 	\n]+" regexp-quote prin1-to-string "" user-login-name "[ 	\n]*)" nil t] 7) ((error)) kill-buffer display-startup-echo-area-message buffer-name "*scratch*" run-hooks term-setup-hook fboundp frame-notice-user-settings window-setup-hook display-popup-menus-p precompute-menubar-bindings t buffer-size 0 8 ((byte-code "r\301\302!q\210\303 \210\203c\210\304\305!\210)\305\207" [initial-scratch-message get-buffer "*scratch*" erase-buffer set-buffer-modified-p nil] 2)) "Welcome to GNU Emacs" gnu/linux ", one component of a Linux-based GNU system." "\n" display frame-parameters use-fancy-splash-screens-p fancy-splash-screens "You can do basic editing with the menu bar and scroll bar using the mouse.\n\nUseful File menu items:\nExit Emacs		(or type Control-x followed by Control-c)\nRecover Session		recover files you were editing before a crash\n\nImportant Help menu items:\nEmacs Tutorial		Learn-by-doing tutorial for using Emacs efficiently.\nEmacs FAQ		Frequently asked questions and answers\n(Non)Warranty		GNU Emacs comes with ABSOLUTELY NO WARRANTY\nCopying Conditions	Conditions for redistributing and changing Emacs.\nGetting New Versions	How to obtain the latest version of Emacs.\nOrdering Manuals	How to order manuals from the FSF.\n" "\n\n" emacs-version "\nCopyright (C) 2001 Free Software Foundation, Inc." key-binding "" help-command "u" advertised-undo "" save-buffers-kill-emacs "t" help-with-tutorial "i" info "" view-emacs-news "\nGet help	   C-h  (Hold down CTRL and press h)\nUndo changes	   C-x u       Exit Emacs		C-x C-c\nGet a tutorial	   C-h t       Use Info to read docs	C-h i\nOrdering manuals   C-h RET" substitute-command-keys format "\n\nGet help	   %s\nUndo changes	   \\[advertised-undo]\nExit Emacs	   \\[save-buffers-kill-emacs]\nGet a tutorial	   \\[help-with-tutorial]\nUse Info to read docs	\\[info]\nOrdering manuals   \\[view-order-manuals]" where-is-internal key-description "M-x help" "\340" command-line-args-left inhibit-startup-message menubar-bindings-done wait-for-input tab-width buffer-undo-list system-type where auto-save-list-file-prefix command-line-default-directory command-switch-alist column line longopts just-files tem first-file-buffer file-count dir command-line-x-option-alist argi orig-argi argval completion extra-load-path load-path initial-load-path elt file command-line-functions did-hook hooks tmm-menubar [f10] "\nActivate menubar   F10  or  ESC `  or   M-`" "\nActivate menubar     \\[tmm-menubar]" display-mouse-p "\nMode-specific menu   C-mouse-3 (third button, with CTRL)" "\n(`C-' means use the CTRL key.  `M-' means use the Meta (or Alt) key.\nIf you have no Meta key, you may instead type ESC followed by the character.)" file-directory-p file-name-directory directory-files "\\`" regexp-quote file-name-nondirectory "\n\nIf an Emacs session crashed recently, " "type M-x recover-session RET\nto recover" " the files you were editing." "" describe-copying "" describe-distribution "" describe-no-warranty "\n\nGNU Emacs comes with ABSOLUTELY NO WARRANTY; type C-h C-w for full details.\nEmacs is Free Software--Free as in Freedom--so you can redistribute copies\nof Emacs and modify it; type C-h C-c to see the conditions.\nType C-h C-d for information on getting the latest version." "\n\nGNU Emacs comes with ABSOLUTELY NO WARRANTY; type \\[describe-no-warranty] for full details.\nEmacs is Free Software--Free as in Freedom--so you can redistribute copies\nof Emacs and modify it; type \\[describe-copying] to see the conditions.\nType \\[describe-distribution] for information on getting the latest version." set-buffer-modified-p sit-for 120 2 append (("--funcall") ("--load") ("--insert") ("--kill") ("--directory") ("--eval") ("--execute") ("--find-file") ("--visit") ("--file")) mapcar #[(elt) "\301@PC\207" [elt "-"] 2] string-match "^--" "^--[^=]*=" "--" try-completion 1 assoc error "Option `%s' is ambiguous" "-f" "-funcall" "-e" intern arrayp command-execute "-eval" "-execute" eval read "-L" "-directory" command-line-normalize-file-name expand-file-name "-l" "-load" file-exists-p load "-insert" "File name omitted from `-insert' option" insert-file-contents "-kill" kill-emacs "^\\+[0-9]+\\'" string-to-int "^\\+\\([0-9]+\\):\\([0-9]+\\)\\'" match-string "-find-file" "-file" "-visit" "File name omitted from `%s' option" find-file find-file-other-window zerop goto-line move-to-column "\\`-" "Unknown option `%s'" get-buffer-window list-buffers] 11])
 #@67 Collapse multiple slashes to one, to handle non-Emacs file names.
-(defalias 'command-line-normalize-file-name #[(file) "\302 \303\216\304\305	\"\203\306\307\310\211	$\304\311	\312#\203%\306\307\310\211	$\202	*\207" [save-match-data-internal file match-data ((set-match-data save-match-data-internal)) string-match "^///+" replace-match "/" t "//+" 1] 5 (#$ . 38085)])
+(defalias 'command-line-normalize-file-name #[(file) "\302 \303\216\304\305	\"\203\306\307\310\211	$\304\311	\312#\203%\306\307\310\211	$\202	*\207" [save-match-data-internal file match-data ((set-match-data save-match-data-internal)) string-match "^///+" replace-match "/" t "//+" 1] 5 (#$ . 38379)])
diff -u -Naur emacs-21.3/man/Makefile.in emacs-21.3.fink/man/Makefile.in
--- emacs-21.3/man/Makefile.in	Fri Dec 21 03:15:45 2001
+++ emacs-21.3.fink/man/Makefile.in	Wed Apr  2 16:51:59 2003
@@ -31,7 +31,7 @@
 
 
 # The makeinfo program is part of the Texinfo distribution.
-MAKEINFO = makeinfo
+MAKEINFO = echo makeinfo
 INFO_TARGETS = ../info/emacs ../info/ccmode ../info/cl \
 	        ../info/dired-x ../info/ediff ../info/forms ../info/gnus \
 		../info/info ../info/message ../info/mh-e ../info/reftex \
diff -u -Naur emacs-21.3/mangle-info emacs-21.3.fink/mangle-info
--- emacs-21.3/mangle-info	Wed Dec 31 19:00:00 1969
+++ emacs-21.3.fink/mangle-info	Wed Apr  2 16:51:59 2003
@@ -0,0 +1,17 @@
+#!/usr/bin/perl -w -i
+
+use English;
+use strict;
+
+$RS = undef;
+
+my $prefix = "emacs-21";
+
+my $x = <>;
+if(!($x =~ m/^(\s*START-INFO-DIR-ENTRY\s+\*\s*[^:]+:\s*)\(([^\)]+)\)/mo)) {
+  die "Couldn't find START-INFO-DIR-ENTRY.";
+}
+   
+print ${PREMATCH};
+print "$1($prefix/$2)";
+print ${POSTMATCH};
diff -u -Naur emacs-21.3/src/Makefile.in emacs-21.3.fink/src/Makefile.in
--- emacs-21.3/src/Makefile.in	Thu Jan 23 05:34:06 2003
+++ emacs-21.3.fink/src/Makefile.in	Wed Apr  2 16:51:59 2003
@@ -324,7 +324,7 @@
 #if HAVE_XAW3D
 LIBW= -lXaw3d
 #else
-LIBW= -lXaw
+LIBW= -lXaw -lXpm
 #endif
 #endif
 #ifdef MOTIF
diff -u -Naur emacs-21.3/src/callproc.c emacs-21.3.fink/src/callproc.c
--- emacs-21.3/src/callproc.c	Mon Jul  8 20:02:36 2002
+++ emacs-21.3.fink/src/callproc.c	Wed Apr  2 16:51:59 2003
@@ -611,7 +611,11 @@
     pid = child_setup (filefd, fd1, fd_error, (char **) new_argv,
 		       0, current_dir);
 #else  /* not WINDOWSNT */
+#ifndef PUMA_VFORK_ISSUES_CLEARED_UP
+    pid = fork ();
+#else
     pid = vfork ();
+#endif
 
     if (pid == 0)
       {
diff -u -Naur emacs-21.3/src/emacs.c emacs-21.3.fink/src/emacs.c
--- emacs-21.3/src/emacs.c	Thu Aug 29 15:27:07 2002
+++ emacs-21.3.fink/src/emacs.c	Wed Apr  2 16:51:59 2003
@@ -779,15 +779,20 @@
     }
 #endif
 
-#ifdef NeXT
+#if defined(NeXT) || defined(RHAPSODY) || defined(DARWIN)
   {
     extern int malloc_cookie;
-    /* This helps out unexnext.c.  */
+    /* This helps out unexnext.c/unexdyld.c. */
     if (initialized)
-      if (malloc_jumpstart (malloc_cookie) != 0)
-	printf ("malloc jumpstart failed!\n");
+      {
+	if (malloc_jumpstart (malloc_cookie) != 0)
+	  {
+	    fprintf (stderr, "Fatal malloc_jumpstart() error\n");
+	    exit (1);
+	  }
+      }
   }
-#endif /* NeXT */
+#endif /* NeXT || RHAPSODY || DARWIN */
 
 #ifdef VMS
   /* If -map specified, map the data file in */
@@ -1466,7 +1471,7 @@
 #ifdef VMS
   init_vmsfns ();
 #endif /* VMS */
-  init_process ();
+  init_emacs_process ();
 #ifdef HAVE_SOUND
   init_sound ();
 #endif
diff -u -Naur emacs-21.3/src/floatfns.c emacs-21.3.fink/src/floatfns.c
--- emacs-21.3/src/floatfns.c	Fri Feb  8 08:04:36 2002
+++ emacs-21.3.fink/src/floatfns.c	Wed Apr  2 16:51:59 2003
@@ -978,6 +978,9 @@
 #endif /* FLOAT_CATCH_SIGILL */
 
 #ifdef HAVE_MATHERR
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 int 
 matherr (x)
      struct exception *x;
diff -u -Naur emacs-21.3/src/getloadavg.c emacs-21.3.fink/src/getloadavg.c
--- emacs-21.3/src/getloadavg.c	Tue Jun 20 09:17:40 2000
+++ emacs-21.3.fink/src/getloadavg.c	Wed Apr  2 16:51:59 2003
@@ -54,6 +54,8 @@
    hpux
    __MSDOS__			No-op for MSDOS.
    NeXT
+   RHAPSODY			Mac OS X Server
+   DARWIN			Darwin (Mac OS)
    sgi
    sequent			Sequent Dynix 3.x.x (BSD)
    _SEQUENT_			Sequent DYNIX/ptx 1.x.x (SYSV)
@@ -401,7 +403,7 @@
 #  define host_self mach_host_self
 # endif
 
-# ifdef NeXT
+# if defined(NeXT) || defined(RHAPSODY) || defined(DARWIN)
 #  ifdef HAVE_MACH_MACH_H
 #   include <mach/mach.h>
 #  else
@@ -449,7 +451,7 @@
 
 /* Avoid static vars inside a function since in HPUX they dump as pure.  */
 
-# ifdef NeXT
+# if defined(NeXT) || defined(RHAPSODY) || defined(DARWIN)
 static processor_set_t default_set;
 static int getloadavg_initialized;
 # endif /* NeXT */
@@ -486,6 +488,9 @@
    Return the number written (never more than 3, but may be less than NELEM),
    or -1 if an error occurred.  */
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 int
 getloadavg (loadavg, nelem)
      double loadavg[];
@@ -626,14 +631,10 @@
 
 # endif /* __NetBSD__ */
 
-# if !defined (LDAV_DONE) && defined (NeXT)
+# if !defined (LDAV_DONE) && (defined(NeXT) || defined(RHAPSODY) || defined(DARWIN))
 #  define LDAV_DONE
   /* The NeXT code was adapted from iscreen 3.2.  */
 
-  host_t host;
-  struct processor_set_basic_info info;
-  unsigned info_count;
-
   /* We only know how to get the 1-minute average for this system,
      so even if the caller asks for more than 1, we only return 1.  */
 
@@ -643,10 +644,19 @@
 	getloadavg_initialized = 1;
     }
 
+#ifndef DARWIN
+#define processor_set_load_info processor_set_basic_info
+#define PROCESSOR_SET_LOAD_INFO PROCESSOR_SET_BASIC_INFO
+#define PROCESSOR_SET_LOAD_INFO_COUNT PROCESSOR_SET_BASIC_INFO_COUNT
+#endif
+
   if (getloadavg_initialized)
     {
-      info_count = PROCESSOR_SET_BASIC_INFO_COUNT;
-      if (processor_set_info (default_set, PROCESSOR_SET_BASIC_INFO, &host,
+      struct processor_set_load_info info;
+      host_t host;
+      unsigned info_count = PROCESSOR_SET_LOAD_INFO_COUNT;
+
+      if (processor_set_info (default_set, PROCESSOR_SET_LOAD_INFO, &host,
 			      (processor_set_info_t) &info, &info_count)
 	  != KERN_SUCCESS)
 	getloadavg_initialized = 0;
diff -u -Naur emacs-21.3/src/lisp.h emacs-21.3.fink/src/lisp.h
--- emacs-21.3/src/lisp.h	Thu Feb  7 15:20:12 2002
+++ emacs-21.3.fink/src/lisp.h	Wed Apr  2 16:51:59 2003
@@ -2770,7 +2770,7 @@
 extern void close_process_descs P_ ((void));
 extern void status_notify P_ ((void));
 extern int read_process_output P_ ((Lisp_Object, int));
-extern void init_process P_ ((void));
+extern void init_emacs_process P_ ((void));
 extern void syms_of_process P_ ((void));
 
 /* defined in callproc.c */
diff -u -Naur emacs-21.3/src/m/powermacintosh.h emacs-21.3.fink/src/m/powermacintosh.h
--- emacs-21.3/src/m/powermacintosh.h	Wed Dec 31 19:00:00 1969
+++ emacs-21.3.fink/src/m/powermacintosh.h	Wed Apr  2 16:51:59 2003
@@ -0,0 +1,45 @@
+/* Apple Power Macintosh machine/system dependent defines
+   Copyright (C) 1997 Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
+
+/* The following line tells the configuration script what sort of 
+   operating system this machine is likely to run.
+   USUAL-OPSYS="darwin"  */
+
+/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
+   is the most significant byte.  */
+
+#define WORDS_BIG_ENDIAN
+
+/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
+ * group of arguments and treat it as an array of the arguments.  */
+
+#define NO_ARG_ARRAY
+
+/* Use type int rather than a union, to represent Lisp_Object */
+/* This is desirable for most machines.	 */
+
+#define NO_UNION_TYPE
+
+/* Define addresses, macros, change some setup for dump */
+
+#define NO_REMAP
+
+#define DATA_SEG_BITS 0
diff -u -Naur emacs-21.3/src/process.c emacs-21.3.fink/src/process.c
--- emacs-21.3/src/process.c	Sun Mar 16 17:06:56 2003
+++ emacs-21.3.fink/src/process.c	Wed Apr  2 16:51:59 2003
@@ -1482,7 +1482,11 @@
     current_dir = ENCODE_FILE (current_dir);
 
 #ifndef WINDOWSNT
+#ifndef PUMA_VFORK_ISSUES_CLEARED_UP
+    pid = fork ();
+#else
     pid = vfork ();
+#endif
     if (pid == 0)
 #endif /* not WINDOWSNT */
       {
@@ -4625,7 +4629,7 @@
 }
 
 void
-init_process ()
+init_emacs_process ()
 {
   register int i;
 
@@ -5025,7 +5029,7 @@
 }
 
 void
-init_process ()
+init_emacs_process ()
 {
 }
 
diff -u -Naur emacs-21.3/src/puresize.h emacs-21.3.fink/src/puresize.h
--- emacs-21.3/src/puresize.h	Sun Aug 18 17:11:29 2002
+++ emacs-21.3.fink/src/puresize.h	Wed Apr  2 16:51:59 2003
@@ -38,7 +38,7 @@
 #endif
 
 #ifndef SITELOAD_PURESIZE_EXTRA
-#define SITELOAD_PURESIZE_EXTRA 0
+#define SITELOAD_PURESIZE_EXTRA 100000
 #endif
 
 #ifndef BASE_PURESIZE
diff -u -Naur emacs-21.3/src/regex.c emacs-21.3.fink/src/regex.c
--- emacs-21.3/src/regex.c	Fri Jan 17 08:45:13 2003
+++ emacs-21.3.fink/src/regex.c	Wed Apr  2 16:51:59 2003
@@ -5833,6 +5833,9 @@
    It returns 0 if it succeeds, nonzero if it doesn't.  (See regex.h for
    the return codes and their meanings.)  */
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 int
 regcomp (preg, pattern, cflags)
     regex_t *__restrict preg;
@@ -5918,6 +5921,9 @@
 
    We return 0 if we find a match and REG_NOMATCH if not.  */
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 int
 regexec (preg, string, nmatch, pmatch, eflags)
     const regex_t *__restrict preg;
@@ -6032,6 +6038,9 @@
 
 /* Free dynamically allocated space used by PREG.  */
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 void
 regfree (preg)
     regex_t *preg;
diff -u -Naur emacs-21.3/src/s/darwin.h emacs-21.3.fink/src/s/darwin.h
--- emacs-21.3/src/s/darwin.h	Wed Dec 31 19:00:00 1969
+++ emacs-21.3.fink/src/s/darwin.h	Wed Apr  2 16:51:59 2003
@@ -0,0 +1,104 @@
+/* Configuration file for Darwin OS.
+   Copyright (C) 1997 Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
+/* We give these symbols the numeric values found in <sys/param.h> to
+   avoid warnings about redefined macros.  */
+#define BSD 199506
+#define BSD4_3 1
+#define BSD4_4 1
+
+#include "bsd4-3.h"
+
+/* SYSTEM_TYPE should indicate the kind of system you are using.
+   It sets the Lisp variable system-type.  We'll need to undo the bsd one. */
+
+#undef SYSTEM_TYPE
+#define SYSTEM_TYPE "darwin"
+
+#ifndef DARWIN
+#define DARWIN
+#endif
+
+#undef KERNEL_FILE
+#define KERNEL_FILE "/mach_kernel"
+
+#define HAVE_ALLOCA
+
+#define HAVE_MACH_MACH_H
+
+#define SYSTEM_MALLOC
+
+#define WAIT_USE_INT
+
+#define SOCKLEN_TYPE int
+
+#define GETPGRP_NO_ARG
+
+#ifdef HAVE_LIBNCURSES
+#define TERMINFO
+#define LIBS_TERMCAP -lncurses
+#else
+#define TERMCAP_FILE "/usr/share/misc/termcap" 
+#endif
+
+#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
+
+#define A_OUT_H_FILE <sys/exec.h>
+
+/* Data type of load average, as read out of kmem.  */
+#define LOAD_AVE_TYPE long
+
+#define ABORT_RETURN_TYPE __private_extern__ void
+
+/* Convert that into an integer that is 100 for a load average of 1.0  */
+#define LOAD_AVE_CVT(x) (int) (((double)(x)) * 100.0 / FSCALE)
+
+#define UNEXEC unexdyld.o
+
+/* Definitions for how to compile & link.  */
+
+/* Link this program just by running cc.  */
+#define ORDINARY_LINK
+
+/* #define C_SWITCH_SYSTEM */
+
+/* We don't have a g library, so override the -lg LIBS_DEBUG switch */
+#define LIBS_DEBUG
+
+/* Adding -lm confuses the dynamic linker, so omit it. */
+#define LIB_MATH
+
+/* Definitions for how to dump.  */
+
+#define START_FILES pre-crt0.o
+
+/* start_of_text isn't actually used, so make it compile without error.  */
+#define TEXT_START (0)
+
+/* This seems to be right for end_of_text, but it may not be used anyway.  */
+#define TEXT_END get_etext()
+
+/* This seems to be right for end_of_data, but it may not be used anyway.  */
+#define DATA_END get_edata()
+
+/* Don't close pty in process.c to make it a controlling terminal.  It is
+ * already the controlling terminal of the subprocess, because we did ioctl
+ * TIOCSCTTY.  */
+#define DONT_REOPEN_PTY
diff -u -Naur emacs-21.3/src/s/rhapsody.h emacs-21.3.fink/src/s/rhapsody.h
--- emacs-21.3/src/s/rhapsody.h	Wed Dec 31 19:00:00 1969
+++ emacs-21.3.fink/src/s/rhapsody.h	Wed Apr  2 16:51:59 2003
@@ -0,0 +1,89 @@
+/* Configuration file for Mac OS X Server.
+   Copyright (C) 1997 Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
+/* We give these symbols the numeric values found in <sys/param.h> to
+   avoid warnings about redefined macros.  */
+#define BSD 199506
+#define BSD4_3 1
+#define BSD4_4 1
+
+#include "bsd4-3.h"
+
+/* SYSTEM_TYPE should indicate the kind of system you are using.
+   It sets the Lisp variable system-type.  We'll need to undo the bsd one. */
+
+#undef SYSTEM_TYPE
+#define SYSTEM_TYPE "apple-rhapsody"
+
+#ifndef RHAPSODY
+#define RHAPSODY
+#endif
+
+#define HAVE_ALLOCA
+
+#define HAVE_MACH_MACH_H
+
+#define SYSTEM_MALLOC
+
+#define WAIT_USE_INT
+
+#define SOCKLEN_TYPE int
+
+#define GETPGRP_NO_ARG
+
+#define TERMCAP_FILE "/usr/share/misc/termcap"
+
+#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
+
+#define A_OUT_H_FILE <sys/exec.h>
+
+/* Data type of load average, as read out of kmem.  */
+#define LOAD_AVE_TYPE long
+
+/* Convert that into an integer that is 100 for a load average of 1.0  */
+#define LOAD_AVE_CVT(x) (int) (((double)(x)) * 100.0 / FSCALE)
+
+#define UNEXEC unexdyld.o
+
+/* Definitions for how to compile & link.  */
+
+/* Link this program just by running cc.  */
+#define ORDINARY_LINK
+
+/* #define C_SWITCH_SYSTEM */
+
+/* We don't have a g library, so override the -lg LIBS_DEBUG switch */
+#define LIBS_DEBUG
+
+/* Adding -lm confuses the dynamic linker, so omit it. */
+#define LIB_MATH
+
+/* Definitions for how to dump.  */
+
+#define START_FILES pre-crt0.o
+
+/* start_of_text isn't actually used, so make it compile without error.  */
+#define TEXT_START (0)
+
+/* This seems to be right for end_of_text, but it may not be used anyway.  */
+#define TEXT_END get_etext()
+
+/* This seems to be right for end_of_data, but it may not be used anyway.  */
+#define DATA_END get_edata()
diff -u -Naur emacs-21.3/src/sysdep.c emacs-21.3.fink/src/sysdep.c
--- emacs-21.3/src/sysdep.c	Fri Oct 18 21:21:14 2002
+++ emacs-21.3.fink/src/sysdep.c	Wed Apr  2 16:51:59 2003
@@ -817,7 +817,11 @@
   synch_process_alive = 1;
 #endif /* __DJGPP__ > 1 */
 #else  
+#ifndef PUMA_VFORK_ISSUES_CLEARED_UP
+  pid = fork ();
+#else
   pid = vfork ();
+#endif
   if (pid == -1)
     error ("Can't spawn subshell");
 #endif
diff -u -Naur emacs-21.3/src/termcap.c emacs-21.3.fink/src/termcap.c
--- emacs-21.3/src/termcap.c	Mon May 28 07:58:27 2001
+++ emacs-21.3.fink/src/termcap.c	Wed Apr  2 16:51:59 2003
@@ -144,6 +144,9 @@
   return NULL;
 }
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 int
 tgetnum (cap)
      char *cap;
@@ -154,6 +157,9 @@
   return atoi (ptr);
 }
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 int
 tgetflag (cap)
      char *cap;
@@ -167,6 +173,9 @@
    to store the string.  That pointer is advanced over the space used.
    If AREA is null, space is allocated with `malloc'.  */
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 char *
 tgetstr (cap, area)
      char *cap;
@@ -291,6 +300,9 @@
 
 /* If OSPEED is 0, we use this as the actual baud rate.  */
 int tputs_baud_rate;
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 char PC;
 
 #if 0 /* Doesn't seem to be used anymore.  */
@@ -311,6 +323,9 @@
 
 #endif /* 0  */
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 void
 tputs (str, nlines, outfun)
      register char *str;
@@ -436,6 +451,9 @@
    0 if the data base is accessible but the type NAME is not defined
    in it, and some other value otherwise.  */
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 int
 tgetent (bp, name)
      char *bp, *name;
diff -u -Naur emacs-21.3/src/tparam.c emacs-21.3.fink/src/tparam.c
--- emacs-21.3/src/tparam.c	Fri Dec  8 04:58:48 2000
+++ emacs-21.3.fink/src/tparam.c	Wed Apr  2 16:51:59 2003
@@ -110,6 +110,9 @@
 
 static char tgoto_buf[50];
 
+#ifdef __APPLE_CC__
+__private_extern__
+#endif
 char *
 tgoto (cm, hpos, vpos)
      char *cm;
diff -u -Naur emacs-21.3/src/unexdyld.c emacs-21.3.fink/src/unexdyld.c
--- emacs-21.3/src/unexdyld.c	Wed Dec 31 19:00:00 1969
+++ emacs-21.3.fink/src/unexdyld.c	Wed Apr  2 16:51:59 2003
@@ -0,0 +1,996 @@
+/* Dump Emacs in macho format.
+   Copyright (C) 1990, 1993 Free Software Foundation, Inc.
+   Derived from unexnext.c by Bradley Taylor (btaylor@next.com).
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
+#include "config.h"
+#include <stdio.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#include <libc.h>
+#include <mach-o/nlist.h>
+#include <mach/mach.h>
+#ifndef NeXT
+#include <mach/machine/vm_param.h>
+#endif
+#include <mach-o/ldsyms.h>
+#include <mach-o/loader.h>
+#include <mach-o/reloc.h>
+
+extern int malloc_freezedry (void);
+
+int malloc_cookie;
+
+#define VERBOSE
+
+#ifdef VERBOSE
+#define SHOW_MCOPY_WRITES
+#define SHOW_MCOPY_READS
+#endif
+
+typedef struct region_t
+{
+  struct region_t *next;
+  vm_address_t address;
+  vm_size_t size;
+  vm_prot_t protection;
+  vm_prot_t max_protection;
+
+  /* And some info about where it was written to disk. */
+  unsigned long file_offset;
+  unsigned long file_size;
+} region_t;
+
+typedef struct section_list_t
+{
+  struct section_list_t *next;
+  struct section section;
+} section_list_t;
+
+static void fatal_unexec (char *format, ...)
+{
+  va_list ap;
+   
+  va_start (ap, format);
+  fprintf (stderr, "unexec: ");
+  vfprintf (stderr, format, ap);
+  fprintf (stderr, "\n");
+  va_end (ap);
+  exit (1);
+}
+
+static void print_region (struct region_t *region)
+{
+  printf ("0x%8lx - 0x%8lx, length: 0x%8lx, protection: %c%c%c, max_protection: %c%c%c\n",
+	  region->address, region->address + region->size, region->size,
+	  (region->protection & VM_PROT_READ) ? 'r' : '-',
+	  (region->protection & VM_PROT_WRITE) ? 'w' : '-',
+	  (region->protection & VM_PROT_EXECUTE) ? 'x' : '-',
+	  (region->max_protection & VM_PROT_READ) ? 'r' : '-',
+	  (region->max_protection & VM_PROT_WRITE) ? 'w' : '-',
+	  (region->max_protection & VM_PROT_EXECUTE) ? 'x' : '-');
+}
+
+static void print_regions (struct region_t *regions)
+{
+  while (regions != NULL)
+    {
+      print_region (regions);
+      regions = regions->next;
+    }
+}
+
+static void print_section (struct section *section)
+{
+  printf ("0x%8lx - 0x%8lx, length: 0x%8lx, offset: 0x%8lx\n",
+	  section->addr, section->addr + section->size, section->size, section->offset);
+}
+
+static void print_sections (section_list_t *sections)
+{
+  while (sections != NULL)
+    {
+      print_section (&(sections->section));
+      sections = sections->next;
+    }
+}
+
+static section_list_t *create_new_section_list(struct section *section_pointer)
+{
+    section_list_t *section_list;
+
+    section_list = malloc (sizeof (section_list_t));
+    section_list->next = NULL;
+    section_list->section = *section_pointer;
+
+    return section_list;
+}
+
+static void append_section_list(section_list_t **first_list, section_list_t *last_list)
+{
+    section_list_t *current;
+
+    if (*first_list == NULL) {
+        *first_list = last_list;
+        return;
+    }
+
+    current = *first_list;
+    while (current->next != NULL)
+        current = current->next;
+
+    current->next = last_list;
+}
+
+static void free_section_list(section_list_t *section_list)
+{
+    section_list_t *next;
+
+    while (section_list != NULL)
+    {
+        next = section_list->next;
+        free(section_list);
+        section_list = next;
+    }
+}
+
+static void add_sections_from_segment(section_list_t **all_sections, struct segment_command *segment)
+{
+    struct section *section_pointer;
+    int index;
+
+    section_pointer = (struct section *)(segment + 1);
+    for (index = 0; index < segment->nsects; index++) {
+        append_section_list (all_sections, create_new_section_list (section_pointer));
+        section_pointer++;
+    }
+}
+
+static int section_with_address (section_list_t *sections, unsigned long address)
+{
+    int current_section, found_section;
+
+    found_section = 0;
+    current_section = 1;
+    while (sections != NULL)
+    {
+        if (address >= sections->section.addr && address < sections->section.addr + sections->section.size) {
+            found_section = current_section;
+            break;
+        }
+        sections = sections->next;
+        current_section++;
+    }
+
+    return found_section;
+}
+
+/*
+ * Copy len bytes from ffd@fpos to tfd@tpos.
+ * If both file descriptors are -1, copy in memory (handles overlapping copies).
+ * If either ffd or tfd are -1, either read or write len bytes.
+ */
+
+static void mcopy (int ffd, int tfd,
+                   unsigned long fpos, unsigned long tpos, unsigned long len, char *reason)
+{
+  if ((ffd == -1) && (tfd == -1))
+    {
+      char *f, *t, *e;
+      if (fpos > tpos)
+        {
+	  f = (char *)fpos;
+	  t = (char *)tpos;
+	  e = (char *)(fpos + len);
+	  while (f < e) *t++ = *f++;
+        }
+      else if (tpos > fpos)
+        {
+	  f = (char *)(fpos + len);
+	  t = (char *)(tpos + len);
+	  e = (char *)fpos;
+	  while (f > e) *--t = *--f;         
+        }   
+#ifdef SHOW_MCOPY_READS
+      printf ("read: %10lu - %10lu, length: %10lu [from MEM]  (%s)\n", tpos, tpos+len, len, reason);
+#endif
+    }
+  else if (ffd == -1)
+    {
+      if (lseek (tfd, tpos, L_SET) < 0)
+	fatal_unexec ("cannot seek target");
+      if (write (tfd, (void *)fpos, len) != len)
+	fatal_unexec ("cannot write target");
+#ifdef SHOW_MCOPY_WRITES
+      printf ("write: %10lu - %10lu, length: %10lu [from MEM]  (%s)\n", tpos, tpos+len, len, reason);
+#endif
+    }
+  else if (tfd == -1)
+    {
+      if (lseek (ffd, fpos, L_SET) < 0)
+	fatal_unexec ("cannot seek source");
+      if (read (ffd, (void *)tpos, len) != len)
+	fatal_unexec ("cannot read source");
+#ifdef SHOW_MCOPY_READS
+      printf ("read: %10lu - %10lu, length: %10lu [from DISK] (%s)\n", tpos, tpos+len, len, reason);
+#endif
+    }
+  else
+    {
+      int bread;
+      char *buf = alloca (1 << 16);
+
+#ifdef SHOW_MCOPY_WRITES
+      printf ("write: %10lu - %10lu, length: %10lu [from DISK] (%s)\n", tpos, tpos+len, len, reason);
+#endif
+
+      if (lseek (ffd, fpos, L_SET) < 0)
+	fatal_unexec ("cannot seek source");
+      
+      if (lseek (tfd, tpos, L_SET) < 0)
+	fatal_unexec ("cannot seek target");
+      
+      while((len > 0) && (bread = read (ffd, buf, MIN(1 << 16, len))) > 0)
+        {
+	  if (bread < 0)
+	    fatal_unexec ("cannot read source");
+	  if (write (tfd, buf, bread) != bread)
+	    fatal_unexec ("cannot write target");
+	  len -= bread;
+        }
+    }
+}
+
+/*
+ * The process of dumping (or unexecing) is the opposite of exec().
+ * It takes the original executable and parts of memory that have been
+ * loaded with data, and creates a new executable.  This allows
+ * standard lisp files to be loaded "instantly", because they are part
+ * of the executable.
+ *
+ * This involves using vm_region() to build a list of allocated memory
+ * regions, combining adjacent "similar" regions to reduce their
+ * number, skipping read-only regions and parts of regions covered by
+ * non-data segment load commands, and finally replacing the (usually
+ * one) data segment with a new segment for each region.
+ *
+ * File offsets in load commands that follow the data segment must be
+ * adjusted by the change in size of the data segment.  The size of
+ * the load commands can increase without affecting file offsets --
+ * see the note below.
+ *
+ * Data associated with the LC_SYMTAB and LC_DYSYMTAB is found in the
+ * __LINKEDIT segment -- there is no extra data to be written for
+ * these load commands.
+ *
+ * Relocatable symbols from the data segment, which we took from
+ * memory, need to be unrelocated.  The relocatable address is found
+ * in the new mach-o file and then zeroed out.  Failure to do this
+ * typically results in a segmentation fault, with the offending
+ * address being double what it is at the same point in temacs, since
+ * it has been relocated twice.
+ *
+ * Be sure to study the loader.h file if you want to understand this.
+ * otool -lv shows the load commands of the file, and is very useful
+ * when debugging this code.  Also, 'size -m -x -l' gives a short
+ * list of the sections, and 'nm -maxp' and 'nm -map' are useful
+ * for the symbol table stuff.
+ *
+ * Note: This is not obvious, but the __TEXT section usually has a
+ *       file offset of 0, and so when it is written it will overwrite
+ *       any mach headers or load commands that have already been
+ *       written...  How much room is there before critial parts are
+ *       overwritten when we add load commands?
+ *
+ *    -- Steve Nygard
+ */
+
+static void unexec_doit(int infd,int outfd)
+{
+  int i, j, l, header_position, output_position;
+  region_t *regions = NULL, *cregion, **pregions;
+  struct mach_header mach_header;
+  struct load_command *load_command, *original_load_commands;
+  struct segment_command *segment_pointer;
+  struct symtab_command *symtab_pointer;
+  struct section *section_pointer;
+  section_list_t *all_sections = NULL;
+
+  unsigned long delta = 0;
+#if defined(NS_TARGET) || !defined(NeXT)
+  struct dysymtab_command *dysymtab;
+  struct twolevel_hints_command *hinttab;
+  unsigned long extreloff = 0;
+  unsigned long nextrel = 0;
+  unsigned long locreloff = 0;
+  unsigned long nlocrel = 0;
+  struct relocation_info reloc_info;
+  unsigned long fixed_reloc_count = 0;
+#endif
+
+  struct segment_command new_data_segment;
+  section_list_t *original_sections, *new_sections, **sect_ptr, *section_item;
+
+  malloc_cookie = malloc_freezedry();
+#ifdef VERBOSE
+  printf ("malloc_cookie: %lx\n", malloc_cookie);
+#endif
+  if (malloc_cookie == 0)
+    {
+      fprintf(stderr, "Error in malloc_freezedry()\n");
+      abort();
+    }
+
+  {
+    vm_address_t address;
+    vm_size_t size;
+    mach_port_t object_name;
+#ifdef DARWIN
+    task_t task = mach_task_self();
+    struct vm_region_basic_info info;
+    mach_msg_type_number_t info_count = VM_REGION_BASIC_INFO_COUNT;
+#else
+    task_t task = task_self();
+    vm_prot_t protection, max_protection;
+    vm_inherit_t inheritance;
+    boolean_t shared;
+    vm_offset_t offset;
+#endif
+
+    for (address = VM_MIN_ADDRESS, pregions = &regions;
+#ifdef DARWIN
+	 vm_region(task, &address, &size, VM_REGION_BASIC_INFO, 
+		   (vm_region_info_t)&info, &info_count, &object_name) == KERN_SUCCESS;
+#else
+	 vm_region(task, &address, &size, &protection, &max_protection,
+		   &inheritance, &shared, &object_name, &offset) == KERN_SUCCESS;
+#endif
+	 address += size)
+      {
+	(*pregions) = alloca (sizeof(region_t));
+	(*pregions)->address = address;
+	(*pregions)->size = size;
+#ifdef DARWIN
+	(*pregions)->protection = info.protection;
+	(*pregions)->max_protection = info.max_protection;
+#else
+	(*pregions)->protection = protection;
+	(*pregions)->max_protection = max_protection;
+#endif
+	(*pregions)->file_offset = 0;
+	(*pregions)->file_size = 0;
+	(*pregions)->next = 0;
+	pregions = &((*pregions)->next);
+#ifdef DARWIN
+	if (object_name != MACH_PORT_NULL)
+	  mach_port_deallocate(mach_task_self(), object_name);
+	info_count = VM_REGION_BASIC_INFO_COUNT;
+#endif
+      }
+  }
+#ifdef VERBOSE   
+  printf ("Regions.\n");
+  print_regions (regions);
+  printf ("----------------------------------------------------------------------\n");
+#endif
+   
+  /*
+   * Concatenate regions that are adjacent in memory and share the same
+   * protection attributes.
+   */
+
+  for (cregion = regions; cregion; cregion = cregion->next)
+    {
+      while ((cregion->next) &&
+	     (cregion->next->address == cregion->address + cregion->size) &&
+	     (cregion->next->protection == cregion->protection) &&
+	     (cregion->next->max_protection == cregion->max_protection))
+        {
+	  cregion->size += cregion->next->size;
+	  cregion->next = cregion->next->next;
+        }
+    }
+#ifdef VERBOSE   
+  printf ("Concatenated regions.\n");
+  print_regions (regions);
+  printf ("----------------------------------------------------------------------\n");
+#endif
+
+  /*
+   * Remove read-only regions, and regions above a fixed limit.
+   * Could have been done before allocating, but this way we can show
+   * the regions before and after while debugging.
+   */
+
+  for (pregions = &regions; *pregions != NULL;)
+    {
+      if ( !((*pregions)->protection & VM_PROT_WRITE)
+	   || ((*pregions)->address >= 0x3000000))
+        {
+	  *pregions = (*pregions)->next;
+        }
+      else
+        {
+	  pregions = &((*pregions)->next);
+        }
+    }
+#ifdef VERBOSE
+  printf ("Skipped regions.\n");
+  print_regions (regions);
+  printf ("----------------------------------------------------------------------\n");
+#endif
+  /*
+     * Read original mach header and load commands.
+     */
+
+  mcopy (infd, -1, 0, (unsigned long) &mach_header, sizeof(mach_header), "read original mach header");
+  original_load_commands = alloca (mach_header.sizeofcmds);
+  mcopy (infd, -1, sizeof(mach_header), (unsigned long) original_load_commands, mach_header.sizeofcmds,
+         "read original load comands");
+
+  /*
+     * Skip (or adjust) regions that intersect memory represented by non-data
+     * segments from the original load commands.
+     */
+
+  for (pregions = &regions; *pregions;)
+    {
+      for (load_command = original_load_commands, i = 0;
+	   i < mach_header.ncmds;
+	   i++, load_command = (struct load_command *)(((void *)load_command) + load_command->cmdsize))
+        {
+	  unsigned long ob, oe;
+	  segment_pointer = (struct segment_command *)load_command;
+	  if (segment_pointer->cmd != LC_SEGMENT || (strcmp (segment_pointer->segname, SEG_DATA) == 0)) continue;
+	  ob = MAX((*pregions)->address, segment_pointer->vmaddr);
+	  oe = MIN((*pregions)->address + (*pregions)->size, segment_pointer->vmaddr + segment_pointer->vmsize);
+	  if (ob >= oe) continue;
+	  if (ob == (*pregions)->address)
+            {
+	      if (oe == (*pregions)->address + (*pregions)->size)
+                {
+		  goto skip_region;
+                }
+	      else
+                {
+		  (*pregions)->address = oe;
+		  (*pregions)->size -= (oe - ob);
+                }
+            }
+	  else
+            {
+	      if (oe == (*pregions)->address + (*pregions)->size)
+                {
+		  (*pregions)->size -= (oe - ob);
+                }
+	      else
+                {
+		  cregion = alloca (sizeof(*cregion));
+		  cregion->address = oe;
+		  cregion->size = ((*pregions)->address + (*pregions)->size) - oe;
+		  cregion->protection = (*pregions)->protection;
+		  cregion->max_protection = (*pregions)->max_protection;
+		  cregion->file_offset = 0;
+		  cregion->file_size = 0;
+		  cregion->next = (*pregions)->next;
+		  (*pregions)->size = ob - (*pregions)->address;
+		  (*pregions)->next = cregion;
+                }
+            }
+        }
+
+      pregions = &((*pregions)->next);
+      continue;
+
+    skip_region:
+      *pregions = (*pregions)->next;
+    }
+#ifdef VERBOSE
+  printf ("Munged regions (1).\n");
+  print_regions (regions);
+  printf ("----------------------------------------------------------------------\n");
+#endif
+
+  for (load_command = original_load_commands, i = mach_header.ncmds, header_position = sizeof(mach_header), output_position = 0;
+       i > 0;
+       i--, load_command = (struct load_command *)(((void *)load_command) + load_command->cmdsize))
+    {
+      switch (load_command->cmd)
+        {
+	case LC_SEGMENT:
+	  segment_pointer = (struct segment_command *)load_command;
+
+	  if (strcmp (segment_pointer->segname, SEG_DATA) == 0)
+	    {
+#if 1
+	      unsigned long current_address;
+
+	      original_sections = NULL;
+	      new_sections = NULL;
+	      sect_ptr = &original_sections;
+
+	      section_pointer = (struct section *)(segment_pointer + 1);
+	      for (l = 0; l < segment_pointer->nsects; l++)
+		{
+		  if (!strncmp (section_pointer->sectname, "__la_symbol_ptr", 16))
+		    {
+		      section_item = alloca (sizeof (section_list_t));
+		      section_item->next = *sect_ptr;
+		      section_item->section = *section_pointer;
+		      *sect_ptr = section_item;
+		      sect_ptr = &(section_item->next);
+		    }
+		  else if (!strncmp (section_pointer->sectname, "__nl_symbol_ptr", 16))
+		    {
+		      section_item = alloca (sizeof (section_list_t));
+		      section_item->next = *sect_ptr;
+		      section_item->section = *section_pointer;
+		      *sect_ptr = section_item;
+		      sect_ptr = &(section_item->next);
+		    }
+		  else if (!strncmp (section_pointer->sectname, "__dyld", 16))
+		    {
+		      section_item = alloca (sizeof (section_list_t));
+		      section_item->next = *sect_ptr;
+		      section_item->section = *section_pointer;
+		      *sect_ptr = section_item;
+		      sect_ptr = &(section_item->next);
+		    }
+
+		  section_pointer++;
+		}
+
+	      cregion = regions;
+	      /* new_data_segment */
+	      new_data_segment.cmd = LC_SEGMENT;
+	      strncpy (new_data_segment.segname, SEG_DATA, 16);
+	      new_data_segment.vmaddr = cregion->address;
+	      new_data_segment.vmsize = 0;
+	      new_data_segment.fileoff = 0;
+	      new_data_segment.filesize = 0;
+	      new_data_segment.maxprot = cregion->max_protection;
+	      new_data_segment.initprot = cregion->protection;
+	      new_data_segment.flags = segment_pointer->flags;
+	      new_data_segment.nsects = 0;
+	      new_data_segment.cmdsize = sizeof (struct segment_command);
+#ifdef VERBOSE
+	      printf ("Original sections:\n");
+	      print_sections (original_sections);
+	      printf ("----------------------------------------------------------------------\n");
+#endif
+	      /* Create list of new segments */
+	      sect_ptr = &new_sections;
+	      current_address = new_data_segment.vmaddr;
+	      while (original_sections != NULL)
+		{
+		  if (current_address < original_sections->section.addr)
+		    {
+		      /* Create new section for this. */
+		      section_item = alloca (sizeof (section_list_t));
+		      section_item->next = *sect_ptr;
+
+		      section_pointer = &(section_item->section);
+		      strncpy (section_pointer->sectname, "__data", 16);
+		      strncpy (section_pointer->segname, SEG_DATA, 16);
+		      section_pointer->addr = current_address;
+		      section_pointer->size = original_sections->section.addr - current_address;
+		      section_pointer->offset = 0;
+		      section_pointer->align = 2; /* Yuck. */
+		      section_pointer->reloff = 0;
+		      section_pointer->nreloc = 0;
+		      section_pointer->flags = 0; /* S_REGULAR? */
+		      section_pointer->reserved1 = 0;
+		      section_pointer->reserved2 = 0;
+
+		      *sect_ptr = section_item;
+		      sect_ptr = &(section_item->next);
+		      current_address = original_sections->section.addr;
+		    }
+
+		  /* Put/copy this section into new list */
+		  section_item = original_sections;
+		  original_sections = original_sections->next;
+		  section_item->next = *sect_ptr; /* Should be NULL... */
+		  *sect_ptr = section_item;
+		  sect_ptr = &(section_item->next);
+
+		  /* increase current address */
+		  current_address += section_item->section.size;
+		}
+	      /* if current address < end of region, add final section. */
+	      if (current_address < cregion->address + cregion->size)
+		{
+		  /* Create new section for this. */
+		  section_item = alloca (sizeof (section_list_t));
+		  section_item->next = *sect_ptr;
+
+		  section_pointer = &(section_item->section);
+		  strncpy (section_pointer->sectname, "__data", 16);
+		  strncpy (section_pointer->segname, SEG_DATA, 16);
+		  section_pointer->addr = current_address;
+		  section_pointer->size = cregion->address + cregion->size - current_address;
+		  section_pointer->offset = 0;
+		  section_pointer->align = 2; /* Yuck. */
+		  section_pointer->reloff = 0;
+		  section_pointer->nreloc = 0;
+		  section_pointer->flags = 0; /* S_REGULAR? */
+		  section_pointer->reserved1 = 0;
+		  section_pointer->reserved2 = 0;
+
+		  *sect_ptr = section_item;
+		  sect_ptr = &(section_item->next);
+
+		}
+#ifdef VERBOSE
+	      printf ("New sections:\n");
+	      print_sections (new_sections);
+	      printf ("----------------------------------------------------------------------\n");
+#endif
+	      /**
+	       * Go through new list of sections
+	       *  - write section to disk, either from memory or original file
+	       *  - say, if offset == 0, take from memory, otherwise from original file at that offset
+	       *  - set offset of section
+	       *  - set fileoff of segment to be that of the first section
+	       *  - increase output position
+	       **/
+
+	      sect_ptr = &new_sections;
+	      while (*sect_ptr != NULL)
+		{
+		  section_pointer = &((*sect_ptr)->section);
+		  if (new_data_segment.fileoff == 0)
+		    new_data_segment.fileoff = output_position;
+		  new_data_segment.vmsize += section_pointer->size;
+		  new_data_segment.filesize += section_pointer->size;
+		  new_data_segment.nsects++;
+		  new_data_segment.cmdsize += sizeof (struct section);
+                  printf ("section is '%s'\n", section_pointer->sectname);
+		  if (section_pointer->offset == 0)
+		    {
+		      mcopy (-1, outfd, (unsigned long) section_pointer->addr, output_position, section_pointer->size,
+                             "SEG_DATA: write section data from memory");
+		    }
+		  else
+		    {
+		      mcopy (infd, outfd, (unsigned long) section_pointer->offset, output_position, section_pointer->size,
+                             "SEG_DATA: write section data from original file");
+		    }
+		  section_pointer->offset = output_position;
+		  output_position += section_pointer->size;
+
+		  sect_ptr = &((*sect_ptr)->next);
+		}
+
+	      /* Write data segment and sections, increasing the header position */
+	      mcopy (-1, outfd, (unsigned long) &new_data_segment, header_position, sizeof (struct segment_command),
+                     "SEG_DATA: write segment command");
+	      header_position += sizeof (struct segment_command);
+	      while (new_sections != NULL)
+		{
+		  mcopy (-1, outfd, (unsigned long) &(new_sections->section), header_position, sizeof (struct section),
+                         "SEG_DATA: write section command");
+                  // Need to add this section to a list of all the sections
+		  header_position += sizeof (struct section);
+                  append_section_list (&all_sections, create_new_section_list (&(new_sections->section)));
+		  new_sections = new_sections->next;
+		}
+	      mach_header.ncmds++;
+
+	      /* Finally, skip first data segment. */
+	      regions = regions->next;
+#endif
+
+#if 1
+	      /* Write remainder of regions as data segments */
+	      mach_header.ncmds--;
+	      j = segment_pointer->cmdsize; /* Save original command size for loop. */
+	      for (cregion = regions; cregion != NULL; cregion = cregion->next)
+		{
+		  mcopy (-1, outfd, cregion->address, output_position, cregion->size,
+                         "SEG_DATA: write remainder data");
+		  segment_pointer->cmd = LC_SEGMENT;
+		  segment_pointer->cmdsize = sizeof(*segment_pointer);
+		  strncpy (segment_pointer->segname, SEG_DATA, sizeof(segment_pointer->segname));
+		  segment_pointer->vmaddr = cregion->address;
+		  segment_pointer->vmsize = cregion->size;
+		  segment_pointer->filesize = cregion->size;
+		  segment_pointer->maxprot = cregion->max_protection;
+		  segment_pointer->initprot = cregion->protection;
+		  segment_pointer->nsects = 0;
+		  segment_pointer->flags = 0;
+		  segment_pointer->fileoff = output_position;
+		  output_position += segment_pointer->filesize;
+		  mcopy (-1, outfd, (unsigned long)segment_pointer, header_position, segment_pointer->cmdsize,
+                         "SEG_DATA: write segment command for remainder data");
+		  header_position += segment_pointer->cmdsize;
+		  mach_header.ncmds++;
+
+		  cregion->file_offset = segment_pointer->fileoff;
+		  cregion->file_size = segment_pointer->filesize;
+		}
+	      segment_pointer->cmdsize = j;
+
+#endif
+	    }
+	  else
+	    {
+#ifdef VERBOSE
+              printf ("segment is '%s':\n", segment_pointer->segname);
+#endif
+	      mcopy (infd, outfd, segment_pointer->fileoff, output_position, segment_pointer->filesize,
+                     "SEG_OTHER: write segment data");
+	      section_pointer = (struct section *) (((void *)segment_pointer)+sizeof(*segment_pointer));
+	      for(j = 0; j < segment_pointer->nsects; j++)
+		{
+		  if (section_pointer[j].offset != 0)
+		    section_pointer[j].offset = (section_pointer[j].offset - segment_pointer->fileoff) + output_position;
+		  if (section_pointer[j].reloff != 0)
+		    section_pointer[j].reloff = (section_pointer[j].reloff - segment_pointer->fileoff) + output_position;
+		}
+
+	      if (strcmp (segment_pointer->segname, SEG_LINKEDIT) == 0)
+		{
+		  delta = output_position - segment_pointer->fileoff;
+		}
+
+	      segment_pointer->fileoff = output_position;
+	      output_position += segment_pointer->filesize;
+
+	      mcopy (-1, outfd, (unsigned long)load_command, header_position, load_command->cmdsize,
+                     "SEG_OTHER: write segment command and its sections");
+	      header_position += load_command->cmdsize;
+
+              // Now, scan the segments for sections, so we have a list of all the sections to use to fix up
+              // the symbol table entries.
+              add_sections_from_segment(&all_sections, segment_pointer);
+	    }
+	  break;
+
+	case LC_SYMTAB:
+        {
+            struct nlist *symtab;
+
+            symtab_pointer = (struct symtab_command *)load_command;
+
+            symtab = malloc(symtab_pointer->nsyms * sizeof(struct nlist));
+            mcopy(infd, -1, symtab_pointer->symoff, (unsigned long)symtab, symtab_pointer->nsyms * sizeof(struct nlist),
+                  "Read old symbol table into memory");
+
+            symtab_pointer->symoff += delta;
+            symtab_pointer->stroff += delta;
+            mcopy (-1, outfd, (unsigned long)load_command, header_position, load_command->cmdsize,
+                   "write symtab command");
+            header_position += load_command->cmdsize;
+            printf ("LC_SYMTAB: symoff = %ld, nsyms = %ld, stroff = %ld, strsize = %ld\n",
+                    symtab_pointer->symoff, symtab_pointer->nsyms, symtab_pointer->stroff, symtab_pointer->strsize);
+
+            // We've already written out the symbol table, but we're going to read it back in, adjust the
+            // symbol table entries, and write out the result again.
+
+            if (all_sections != NULL)
+            {
+                int index;
+                struct nlist *nlist_pointer;
+                section_list_t *section;
+                int section_index;
+                int changed_symtabs;
+
+                printf ("All sections:\n");
+                print_sections (all_sections);
+
+                changed_symtabs = 0;
+                nlist_pointer = symtab;
+
+                for (index = 0; index < symtab_pointer->nsyms; index++) {
+                    if ((nlist_pointer->n_type & N_TYPE) == N_SECT) {
+                        section_index = section_with_address(all_sections, nlist_pointer->n_value);
+#if 0
+                        printf ("%5d: 0x%08lx 0x%02x 0x%02x (0x%02x) 0x%04x 0x%08lx\n",
+                                index, nlist_pointer->n_un.n_strx, nlist_pointer->n_type & 0xff, nlist_pointer->n_sect & 0xff,
+                                section_index,
+                                nlist_pointer->n_desc & 0xffff, nlist_pointer->n_value);
+#endif
+                        if (nlist_pointer->n_sect != section_index) {
+                            nlist_pointer->n_sect = section_index;
+                            changed_symtabs++;
+                        }
+                    }
+                    nlist_pointer++;
+                }
+
+                printf ("Adjusted n_sect for %d symbol table entries.\n", changed_symtabs);
+                mcopy(-1, outfd, (unsigned long)symtab, symtab_pointer->symoff, symtab_pointer->nsyms * sizeof(struct nlist),
+                      "write updated symbol table");
+
+                free_section_list(all_sections);
+            }
+
+            free(symtab);
+        }
+        break;
+#if defined(NS_TARGET) || !defined(NeXT)
+	case LC_DYSYMTAB:
+	  dysymtab = (struct dysymtab_command *)load_command;
+	  extreloff = dysymtab->extreloff;
+	  nextrel = dysymtab->nextrel;
+
+	  locreloff = dysymtab->locreloff;
+	  nlocrel = dysymtab->nlocrel;
+
+	  if (dysymtab->nindirectsyms > 0) {
+	    dysymtab->indirectsymoff += delta;
+	  }
+	  if (nextrel > 0) {
+	    dysymtab->extreloff += delta;
+	  }
+
+	  if (nlocrel > 0) {
+	    dysymtab->locreloff += delta;
+	  }
+	  mcopy (-1, outfd, (unsigned long)load_command, header_position, load_command->cmdsize,
+                 "write dysymtab command");
+	  header_position += load_command->cmdsize;
+
+	  break;
+
+       case LC_TWOLEVEL_HINTS: 
+          hinttab = (struct twolevel_hints_command *)load_command;
+          hinttab->offset += delta;
+          
+          mcopy (-1, outfd, (unsigned long)load_command, header_position, load_command->cmdsize,
+                 "write two-level hint command");
+          header_position += load_command->cmdsize;
+
+          break;
+#endif
+	default:
+	  {
+	    char *reason, *cmdstr;
+
+	    /* Create a string that tells what load command is being left
+	     * alone. */
+	    switch (load_command->cmd)
+	      {
+	      case LC_UNIXTHREAD:
+		cmdstr = "LC_UNIXTHREAD";
+		break;
+	      case LC_LOAD_DYLIB:
+		cmdstr = "LC_LOAD_DYLIB";
+		break;
+	      case LC_LOAD_DYLINKER:
+		cmdstr = "LC_LOAD_DYLINKER";
+		break;
+	      default:
+		cmdstr = NULL;
+	      }
+	    if (cmdstr != NULL)
+	      {
+		asprintf(&reason, "write other load command (%s)", cmdstr);
+	      }
+	    else
+	      {
+		asprintf(&reason, "write other load command (0x%x)", load_command->cmd);
+	      }
+
+	    mcopy (-1, outfd, (unsigned long)load_command, header_position, load_command->cmdsize,
+		   reason);
+	    free(reason);
+	    header_position += load_command->cmdsize;
+	  }
+        }
+    }
+
+  mach_header.sizeofcmds = header_position - sizeof(mach_header);
+  mcopy (-1, outfd, (unsigned long) &mach_header, 0, sizeof(mach_header), "write mach header");
+
+#if defined(NS_TARGET) || !defined(NeXT)
+  if (mach_header.flags & MH_PREBOUND) {
+    /* Don't mess with prebound executables */
+    return;
+  }
+
+  /*
+     * Fix up relocation entries in the data segment(s).
+     */
+  if (lseek (infd, locreloff, L_SET) < 0)
+    fatal_unexec ("cannot seek input file");
+
+  fixed_reloc_count = 0;
+  for (i = 0; i < nlocrel; i++)
+    {
+      long zeroval = 0;
+      struct scattered_relocation_info *si;
+
+      if (read (infd, &reloc_info, sizeof(reloc_info)) != sizeof(reloc_info))
+	fatal_unexec ("cannot read input file");
+
+#if 1
+#ifdef VERBOSE
+      printf ("%2d: reloc: %lx, start: %lx, end: %lx\n", i, reloc_info.r_address,
+	      new_data_segment.vmaddr, new_data_segment.vmaddr + new_data_segment.filesize);
+#endif
+      if (reloc_info.r_address >= new_data_segment.vmaddr
+	  && reloc_info.r_address < new_data_segment.vmaddr + new_data_segment.filesize)
+        {
+	  fixed_reloc_count++;
+	  mcopy (-1, outfd, (unsigned long) &zeroval,
+		 new_data_segment.fileoff + reloc_info.r_address - new_data_segment.vmaddr,
+		 1 << reloc_info.r_length, "fix local relocation entry");
+        }
+#endif
+    }
+  printf ("Fixed %lu/%lu local relocation entries in data segment(s).\n", fixed_reloc_count, nlocrel);
+
+  if (lseek (infd, extreloff, L_SET) < 0)
+    fatal_unexec ("cannot seek input file");
+
+  for (i = 0; i < nextrel; i++)
+    {
+      long zeroval = 0;
+
+      if (read (infd, &reloc_info, sizeof(reloc_info)) != sizeof(reloc_info))
+	fatal_unexec ("cannot read input file");
+
+#if 1
+#ifdef VERBOSE
+      printf ("%2d: reloc: %lx, start: %lx, end: %lx\n", i, reloc_info.r_address,
+	      new_data_segment.vmaddr, new_data_segment.vmaddr + new_data_segment.filesize);
+#endif
+      if (reloc_info.r_address >= new_data_segment.vmaddr
+	  && reloc_info.r_address < new_data_segment.vmaddr + new_data_segment.filesize)
+        {
+	  fixed_reloc_count++;
+	  mcopy (-1, outfd, (unsigned long) &zeroval,
+		 new_data_segment.fileoff + reloc_info.r_address - new_data_segment.vmaddr,
+		 1 << reloc_info.r_length, "fix external relocation entry");
+        }
+#endif
+    }
+
+  printf ("Fixed %lu/%lu external relocation entries in data segment(s).\n", fixed_reloc_count, nextrel);
+
+#endif
+}
+
+void unexec (char *outfile, char *infile)
+{
+  char tmpfile[MAXPATHLEN + 1];
+  int infd, outfd;
+   
+  if ((infd = open (infile, O_RDONLY, 0)) < 0)
+    fatal_unexec ("cannot open input file `%s'", infile);
+
+  strcpy (tmpfile, outfile);
+  strcat (tmpfile, "-temp");
+   
+  if ((outfd = open (tmpfile, O_RDWR|O_TRUNC|O_CREAT, 0755)) < 0)
+    fatal_unexec ("cannot open temporary output file `%s'", tmpfile);
+
+  unexec_doit (infd, outfd);
+
+  close (infd);
+  close (outfd);
+  if (rename (tmpfile, outfile) < 0)
+    {
+      unlink (tmpfile);
+      fatal_unexec ("cannot rename `%s' to `%s'", tmpfile, outfile);
+    }  
+}
