;ELC   
;;; Compiled by rms@psilocin.ai.mit.edu on Mon Aug 10 08:07:15 1998
;;; from file /gd/gnu/emacs/lisp/help.el
;;; in Emacs version 20.2.98.3
;;; with bytecomp version 2.48
;;; 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 "`help.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


#@47 Keymap for characters following the Help key.
(defvar help-map (make-sparse-keymap) (#$ . 596))
#@23 Keymap for help mode.
(defvar help-mode-map (make-sparse-keymap) (#$ . 698))
(byte-code "\303\304	!\305#\210\303\306\305#\210\303\307\305#\210\305\nM\210\303\n\304	!\310#\210\303\n\311\310#\210\303\n\312\310#\210\303\n\313\310#\210\303\n\314\315#\210\303\n\316\317#\210\303\n\320\321#\210\303\n\322\323#\210\303\n\324\325#\210\303\n\326\327#\210\303\n\330\331#\210\303\n\332\333#\210\303\n\334\335#\210\303\n\336\335#\210\303\n\337\340#\210\303\n\341\342#\210\303\n\343\344#\210\303\n\345\346#\210\303\n\347\350#\210\303\n\351\352#\210\303\n\353\354#\210\303\n\355\356#\210\303\n\357\360#\210\303\n\361\360#\210\303\n\362\363#\207" [global-map help-char help-map define-key char-to-string help-command [help] [f1] help-for-help [help] [f1] "?" "" describe-copying "" describe-distribution "" describe-no-warranty "" describe-project "a" apropos-command "b" describe-bindings "c" describe-key-briefly "k" describe-key "d" describe-function "f" "F" view-emacs-FAQ "i" info "4i" info-other-window "" Info-goto-emacs-command-node "" Info-goto-emacs-key-command-node "	" info-lookup-symbol "l" view-lossage "m" describe-mode "" view-emacs-news "n" "p" finder-by-keyword] 4)
#@41 Find packages matching a given keyword.
(autoload 'finder-by-keyword "finder" '(#$ . 1883) t)
(byte-code "\302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\312#\210\302\313\314#\210\302	\315\316#\210\302	\317\320#\210\302	\321\322#\210\302	\323\324#\210\302	\325\326#\210\302	\327\326#\210\302	\330\322#\207" [help-map help-mode-map define-key "s" describe-syntax "t" help-with-tutorial "w" where-is "v" describe-variable "q" help-quit [mouse-2] help-follow-mouse "" help-go-back "" help-follow "	" help-next-ref [backtab] help-previous-ref [(shift tab)] ""] 4)
#@245 A stack of ways by which to return to help buffers after following xrefs.
Used by `help-follow' and `help-xref-go-back'.
An element looks like (POSITION FUNCTION ARGS...).
To use the element, do (apply FUNCTION ARGS) then (goto-char POSITION).
(defvar help-xref-stack nil (#$ . 2472))
(put 'help-xref-stack 'permanent-local t)
#@108 An item for `help-follow' in this buffer to push onto `help-xref-stack'.
The format is (FUNCTION ARGS...).
(defvar help-xref-stack-item nil (#$ . 2806))
(byte-code "\300\301\302\303#\210\304\305\306\"\210\304\301\306\"\207" [put help-xref-stack-item permanent-local t set-default help-xref-stack nil] 4)
#@152 Major mode for viewing help text and navigating references in it.
Entry to this mode runs the normal hook `help-mode-hook'.
Commands:
\{help-mode-map}
(defalias 'help-mode #[nil "\305 \210\306!\210\307\310\311\303!\210\312\313 \210\311\304!\210\314\315\316!\207" [help-mode-map mode-name major-mode font-lock-defaults view-no-disable-on-exit kill-all-local-variables use-local-map "Help" help-mode make-local-variable nil view-mode t run-hooks help-mode-hook] 2 (#$ . 3117) nil])
(defalias 'help-mode-maybe #[nil "\303=\203	 \304 \210\304=\203 \305\306!\210\307p!\210\310 	BC\211\207" [major-mode help-return-method view-return-to-alist fundamental-mode help-mode toggle-read-only 1 help-make-xrefs selected-window] 2])
(add-hook 'temp-buffer-show-hook 'help-mode-maybe)
(defalias 'help-quit #[nil "\300\207" [nil] 1 nil nil])
#@273 Select the Emacs learn-by-doing tutorial.
If there is a tutorial version written in the language
of the selected language environment, that version is used.
If there's no tutorial in that language, `TUTORIAL' is selected.
With arg, you are asked to choose which language.
(defalias 'help-with-tutorial #[(&optional arg) "\203\f \306\307\310\311#\202 \312	\307\"\203 	\202 \311\313\211\312\f\307\"\314\315\nP!\316 \210\317!\2039 \320\317!!\202\231 \320\321!!\210\314\315! \313!\322\314\n\"\"!\210eb\210\323\324!\210\325y\210`\313\210`|\210\326\327 !\330e`\"Z\331Z\211#\332W\203} \333#!\210\202\222 \333#\334\245!\210\335\336\261\210\333#\211\334\245Z!\210)eb\210\337\313!+\207" [arg current-language-environment filename file lang buffer-file-name read-language-name tutorial "Language: " "English" get-language-info nil expand-file-name "~/" delete-other-windows get-file-buffer switch-to-buffer create-file-buffer insert-file-contents search-forward "\n<<" 0 window-height selected-window count-lines 6 12 newline 2 "[Middle of page left blank for didactic purposes.  " "Text continues below]" set-buffer-modified-p default-directory buffer-auto-save-file-name data-directory n] 5 (#$ . 3960) "P"])
#@136 Print the name of the function KEY invokes.  KEY is a string.
If INSERT (the prefix arg) is non-nil, insert the message in the buffer.
(defalias 'describe-key-briefly #[(key &optional insert) "\212\306\307H!	\203 p\202 \310\311\211\312>\204' \313>\204' \314>\203R \307H\211A@)\211@)\307H\211A@)\211A@:\203M \nA@@\202P \nA@)\315!\203` \316!q\210\nb\210\317!\320!\211\203t \250\203~ \321\322\323\"!\202\246 \321\322	\203\210 \324\202\223 \315!\203\222 \325\202\223 \3269\203\240 \202\244 \327!#!.\207" [key insert position window standard-output modifiers event-modifiers 0 t nil click down drag windowp window-buffer key-binding key-description princ format "%s is undefined" "`%s' (`%s')" "%s at that spot runs the command %s" "%s runs the command %s" prin1-to-string event key-desc defn] 7 (#$ . 5190) "kDescribe key briefly: \nP"])
#@262 What to do to "exit" the help buffer.
This is a list
 (WINDOW . t)              delete the selected window, go to WINDOW.
 (WINDOW . quit-window)    do quit-window, then select WINDOW.
 (WINDOW BUF START POINT)  display BUF at START, POINT, then select WINDOW.
(defvar help-return-method nil (#$ . 6073))
#@209 Display or return message saying how to restore windows after help command.
Computes a message and applies the optional argument FUNCTION to it.
If FUNCTION is nil, applies `message' to it, thus printing it.
(defalias 'print-help-return-message #[(&optional function) "\305!?\205v \306\307!!\203 \310 \311B\312\202? \313\311!\204' \310 \314B\315\202? \n\2034 \310 \311B\316\202? \310 \317 \320 \321 F\322\f\206E \323\203O \324!\202P \325\203X \326\202Y \325\306\307!!?\205s \327\307!!\203p \324\330!\202s \324\331!Q!)\207" [standard-output help-return-method pop-up-windows first-message function get-buffer-window special-display-p buffer-name selected-window t nil one-window-p quit-window "Type \\[switch-to-buffer-other-window] RET to restore the other window." "Type \\[delete-other-windows] to remove help window." window-buffer window-start window-point "Type \\[switch-to-buffer] RET to remove help window." message substitute-command-keys "" "  " same-window-p "\\[scroll-up] to scroll the help." "\\[scroll-other-window] to scroll the help."] 6 (#$ . 6385)])
#@73 Display documentation of the function invoked by KEY.  KEY is a string.
(defalias 'describe-key #[(key) "\212\306\307H!\310\211\311>\204 \312>\204 \313>\203F \307H\211A@)\211@)\307H\211A@)\211A@:\203A 	A@@\202D 	A@)\314\n!\203T \315\n!q\210	b\210\316!\211\203a \250\203j \317\320\321!\"\202\220 \322\220\323\321!!\210\314\n!\203| \323\324!\210\323\325!\210\326!\210\323\327!\210\330\310\"\210\331 \221-\207" [key position window modifiers event defn event-modifiers 0 nil click down drag windowp window-buffer key-binding message "%s is undefined" key-description "*Help*" princ " at that spot" " runs the command " prin1 "\n   which is " describe-function-1 print-help-return-message] 5 (#$ . 7473) "kDescribe key: "])
#@238 Display documentation of current major mode and minor modes.
For this to work correctly for a minor mode, the mode's indicator variable
(listed in `minor-mode-alist') must also be a function whose documentation
describes the minor mode.
(defalias 'describe-mode #[nil "\306\220\307\211\203s \n@@\n@A@J\203k \310!\203k \311\312\313!\"\2033 \314\313!\315\211\224O!\f\203C \f9\203C \fJ\211\2047 	\203K \316\317!\210\320\316\321\322\f\203\\ \321\323\f\"\202] \324#!\210\316\325!!\210\316\326!\210)*\nA\211\204\n *\316!\210\316\327!\210\316\325!!\210\330\331pDt\"\210\332 \221\207" [minor-mode-alist first minor-modes minor-mode indicator pretty-minor-mode "*Help*" t fboundp string-match "-mode$" symbol-name capitalize 0 princ "The minor modes are described first,\nfollowed by the major mode, which is described on the last page.\n\f\n" nil format "%s minor mode (%s):\n" "indicator%s" "no indicator" documentation "\n\f\n" " mode:\n" help-setup-xref help-xref-mode print-help-return-message mode-name major-mode] 9 (#$ . 8224) nil])
(byte-code "\300\301KM\207" [defining-kbd-macro start-kbd-macro] 2)
#@64 Display info on how to obtain the latest version of GNU Emacs.
(defalias 'describe-distribution #[nil "\301\302\303\"!\207" [data-directory find-file-read-only expand-file-name "DISTRIB"] 4 (#$ . 9351) nil])
#@63 Display info on how you may redistribute copies of GNU Emacs.
(defalias 'describe-copying #[nil "\301\302\303\"!\210eb\207" [data-directory find-file-read-only expand-file-name "COPYING"] 4 (#$ . 9566) nil])
#@34 Display info on the GNU project.
(defalias 'describe-project #[nil "\301\302\303\"!\210eb\207" [data-directory find-file-read-only expand-file-name "GNU"] 4 (#$ . 9781) nil])
#@64 Display info on all the kinds of warranty Emacs does NOT have.
(defalias 'describe-no-warranty #[nil "\301 \210\302\303\304!\210\305\306!)\207" [case-fold-search describe-copying nil search-forward "NO WARRANTY" recenter 0] 2 (#$ . 9963) nil])
#@164 Describe the bindings of the prefix used to reach this command.
The prefix described consists of all but the last event
of the key sequence that ran this command.
(defalias 'describe-prefix-bindings #[nil "\303 \304;\203 \305GSO\2022 \306GS\307\"\305	\nGW\2030 \n		HI\210	T\211\202 \n*!)\207" [key i prefix this-command-keys describe-bindings 0 make-vector nil] 6 (#$ . 10215) nil])
(byte-code "\301\301\207" [prefix-help-command describe-prefix-bindings] 1)
#@118 Display info on recent changes to Emacs.
With numeric argument display information on correspondingly older changes.
(defalias 'view-emacs-news #[(&optional arg) "\203\n \302!\202 \303\304\305\306\307\"\310P	\"!)\207" [arg data-directory prefix-numeric-value 0 find-file-read-only expand-file-name make-string 79 "NEWS"] 5 (#$ . 10693) "P"])
#@58 Display the Emacs Frequently Asked Questions (FAQ) file.
(defalias 'view-emacs-FAQ #[nil "\301\302\303\"!\207" [data-directory find-file-read-only expand-file-name "FAQ"] 4 (#$ . 11046) nil])
#@36 Display last 100 input keystrokes.
(defalias 'view-lossage #[nil "\303\220\304\305\306\307 \310#!\210\212q\210eb\210\311\312!\210m\204& \313\310\314\315#\210\316c\210\202 \314\314)\317 \221\207" [standard-output help-xref-stack help-xref-stack-item "*Help*" princ mapconcat #[(key) "\250\204 9\204 <\203 \301!\207\302\303\"\207" [key single-key-description prin1-to-string nil] 3] recent-keys " " move-to-column 50 search-forward nil t "\n" print-help-return-message] 6 (#$ . 11245) nil])
(defalias 'help 'help-for-help)
#@2406 You have typed \[help-command], the help character.  Type a Help option:
(Use SPC or DEL to scroll through this text.  Type \<help-map>\[help-quit] to exit the Help command.)

a  command-apropos.  Give a substring, and see a list of commands
	(functions interactively callable) that contain
	that substring.  See also the  apropos  command.
b  describe-bindings.  Display table of all key bindings.
c  describe-key-briefly.  Type a command key sequence;
	it prints the function name that sequence runs.
C  describe-coding-system.  This describes either a specific coding system
        (if you type its name) or the coding systems currently in use
	(if you type just RET).
f  describe-function.  Type a function name and get documentation of it.
C-f Info-goto-emacs-command-node.  Type a function name;
	it takes you to the Info node for that command.
i  info. The  info  documentation reader.
I  describe-input-method.  Describe a specific input method (if you type
	its name) or the current input method (if you type just RET).
k  describe-key.  Type a command key sequence;
	it displays the full documentation.
C-k Info-goto-emacs-key-command-node.  Type a command key sequence;
	it takes you to the Info node for the command bound to that key.
l  view-lossage.  Shows last 100 characters you typed.
L  describe-language-environment.  This describes either the a
	specific language environment (if you type its name)
	or the current language environment (if you type just RET).
m  describe-mode.  Print documentation of current minor modes,
	and the current major mode, including their special commands.
n  view-emacs-news.  Shows emacs news file.
p  finder-by-keyword. Find packages matching a given topic keyword.
s  describe-syntax.  Display contents of syntax table, plus explanations
t  help-with-tutorial.  Select the Emacs learn-by-doing tutorial.
v  describe-variable.  Type name of a variable;
	it displays the variable's documentation and value.
w  where-is.  Type command name; it prints which keystrokes
	invoke that command.

F  Display the frequently asked questions file.
h  Display the HELLO file which illustrates various scripts.
C-c Display Emacs copying permission (General Public License).
C-d Display Emacs ordering information.
C-n Display news of recent Emacs changes.
C-p Display information about the GNU project.
C-w Display information on absence of warranty for GNU Emacs.
(defalias 'help-for-help #[nil "\306\307!	\203 \310\311\"\210\312\313!\314 \315\316 \3154\3155\3156\3157\317\2168\241\210\320\321\322#\210\320\323\3249\325\"#\210	\203c :\326\315!)6\324;6\"\203Z \324;6\"66\327H7\202f \33077\330=\204} 7<=\204} 7=>\203\331 4\332\333!\210\334\335!\203\235 \336\337 !=\204\235 \336\337 !5\3154\315>\340 \210\nc\210\341 \210eb\2107\342=<\343B\">\204\311 7\242\344=\204\311 6\345\232\203\315\346\347\217\210\350:?\326\351\352\353d!\203\341 \354\202\342 \355\"!\2116\327H7*7\356=\203\254 \357\3246\"\3156#\210\202\254 \310\354!\2107<\2037@B@\315\2114\202H\3246\"\211A\203E4\2031\3604!\210\31545\203>\3615!\210\3155\362A!\202G\363 ).\n\207" [line-prompt three-step-help help-screen local-map minor-mode-map-alist prev-frame substitute-command-keys "a b c C f F C-f i I k C-k l L m n p s t v w C-c C-d C-n C-p C-w; ? for help:" message "%s" documentation help-for-help make-sparse-keymap nil selected-frame ((byte-code "\203 \302!\210	\203 \303	!\210\302\207" [new-frame config iconify-frame set-window-configuration] 2)) define-key [t] undefined [vertical-scroll-bar] lookup-key [vertical-scroll-bar] read-key-sequence 0 63 current-window-configuration switch-to-buffer-other-window "*Help*" fboundp make-frame window-frame selected-window erase-buffer help-mode append (63 22 32 127 delete backspace vertical-scroll-bar -134217610) switch-frame "\366" (byte-code "\242\302=\203 \303!\210\304>\203 \305 \210\306>\204  	\307\232\203# \310 \210\302\207" [char key switch-frame handle-switch-frame (22 32) scroll-up (127 -134217610 delete backspace) "\366" scroll-down] 2) ((error)) t format "Type one of the options listed%s: " pos-visible-in-window-p "" ", or SPACE or DEL to scroll" vertical-scroll-bar command-execute set-window-configuration iconify-frame call-interactively ding config new-frame key char help-map global-map overriding-local-map function-key-map help-char help-event-list buffer-read-only cursor-in-echo-area unread-command-events defn] 7 (#$ . 11786) nil])
(defalias 'function-called-at-point #[nil "\302 \303	!\210\304\216\305\306\307\217\206 \305\310\311\217*\207" [stab emacs-lisp-mode-syntax-table syntax-table set-syntax-table ((set-syntax-table stab)) nil (byte-code "\212\214e`\301Z]d}\210\302\303!\210\303u\210\304\305!\203 \306\307!\210\310\311p!\2119\205- \312!\205- +\207" [obj 1000 backward-up-list 1 looking-at "[ 	]" error "Probably not a Lisp function call" nil read fboundp] 4) ((error)) (byte-code "\212\301\302\303!!\203 gz\304=\204 gz\305=\204 \306\307!\210\310\311w\210\312p!\2119\205/ \313!\205/ *\207" [obj zerop skip-syntax-backward "_w" 119 95 forward-sexp -1 "'" nil read fboundp] 4) ((error))] 3])
(defalias 'describe-function-find-file #[(function) "\305\211\211\203 \f@A>\203 @@\305A\211\204\n \n+\207" [load-history functions file files function nil] 4])
#@56 Display the full documentation of FUNCTION (a symbol).
(defalias 'describe-function #[(function) "\203 \302\220\303!\210\304\305!\210\306\307\"\210\310 \210\212	q\210\311 )\221\207\312\313!\207" [function standard-output "*Help*" prin1 princ " is " describe-function-1 nil print-help-return-message buffer-string message "You didn't specify a function"] 4 (#$ . 17140) (let ((fn (function-called-at-point)) (enable-recursive-minibuffers t) val) (setq val (completing-read (if fn (format "Describe function (default %s): " fn) "Describe function: ") obarray 'fboundp t nil nil (symbol-name fn))) (list (if (equal val "") fn (intern val))))])
(defalias 'describe-function-1 #[#'parens "K\306\306\306\307	!\203 \310\202 \311	;\204  \312	!\203$ \313\202\240 \314	!\2030 \315P\202\240 \316	!\203< \317P\202\240 	9\203U 	K9\203N 	K\211\202B \320\321	\"\202\240 	\242\322=\203b \323P\202\240 	\242\324=\203m \325\202\240 	\242\326=\203x \327\202\240 	\242\330=\203\237 	A@\320\331\307	!\203\217 \332\202\220 \333\334	8\203\232 \335\202\233 \336#\202\240 \3377\203\262 \337\232\204\262 \340\341\342!\210\341!\210\n\204\276 \343!\n\203\340 \341\344!\210\341\n!\210\341\345!\210r\346q\210\212\347\350\306\340#\210\351\352\353#\210*\f\203\350 \341\354!\210\341\355!\210\356 \210\357	!\211\242\324=\203\375 	A\316	!\203\360	\306\"@\202	\242\322=\203	A@\202\340\2118<\203-\341\361\3628\"B!\210\356 \210)\363!\2119\203H\356 \210\3419!\210\364\365Dt\"\202K\341\366!.\207" [function def file-name string need-close beg nil commandp "an interactive " "a " vectorp "a keyboard macro" subrp "built-in function" byte-code-function-p "compiled Lisp function" format "alias for `%s'" lambda "Lisp function" macro "a Lisp macro" mocklisp "a mocklisp function" autoload "%s autoloaded Lisp %s" "an interactive" "an" 4 "macro" "function" "" t princ "(" describe-function-find-file " in `" "'" "*Help*" re-search-backward "`\\([^`']+\\)'" help-xref-button 1 #[(arg) "\302!\303	@!\210	Ab)\207" [arg location find-function-noselect pop-to-buffer] 2] ")" "." terpri indirect-function append mapcar #[(arg) "\301>\203 \207\302\303!\226!\207" [arg (&optional &rest) intern symbol-name] 3] documentation help-setup-xref describe-function "not documented" parens arglist doc] 6])
(defalias 'variable-at-point #[nil "\300\301\302\217\207" [nil (byte-code "\303 \304\216\212\305	!\210\306\307\310!!\203$ gz\311=\204$ gz\312=\204$ \313\314!\210\315\316w\210\317p!\2119\203; \320\n!\203; \n\206< \321,\207" [stab emacs-lisp-mode-syntax-table obj syntax-table ((set-syntax-table stab)) set-syntax-table zerop skip-syntax-backward "_w" 119 95 forward-sexp -1 "'" nil read boundp 0] 4) ((error 0))] 3])
#@101 Display the full documentation of VARIABLE (a symbol).
Returns the documentation as a string, also.
(defalias 'describe-variable #[(variable) "9\203\335 \305\306\220\307!\210\310!\204 \311\312!\210\313 \210\314\202. \311\315!\210\313 \210\316J!\210\313 \210\317!\203Y \311\320\321\322 \"!\210\323!\204I \311\324!\210\202V \311\325!\210\313 \210\316\326!!\210\313 \210\313 \210r\nq\210\327ed\"\330V\203\211 eb\210	\203v \331y\210\202\211 \332\331!\210`\305\210`|\210\333c\210\212\334c\210))\311\335!\210\313 \210\336\337\"\311\206\234 \340!\210)\341\342Dt\"\210\343!\203\320 \344\313 \210\313 \210\311\345\f\346Q!\210r\306q\210\212\347\350\f\351Q\305\314#\210\352\331\353#\210+\354 \210\212\nq\210\355 )\221)\207\356\357!\207" [variable valvoid standard-output doc customize-label nil "*Help*" prin1 boundp princ " is void" terpri t "'s value is " pp local-variable-p format "Local in buffer %s; " buffer-name default-boundp "globally void" "global value is " default-value count-lines 10 1 forward-sexp "'s value is shown below.\n\n" "\n\nValue:" "Documentation:" documentation-property variable-documentation "not documented as a variable." help-setup-xref describe-variable user-variable-p "customize" "You can " " this variable." re-search-backward "\\(" "\\)" help-xref-button #[(v) "\301!\207" [v customize-variable] 2] print-help-return-message buffer-string message "You did not specify a variable"] 5 (#$ . 19864) (let ((v (variable-at-point)) (enable-recursive-minibuffers t) val) (setq val (completing-read (if (symbolp v) (format "Describe variable (default %s): " v) "Describe variable: ") obarray 'boundp t nil nil (if (symbolp v) (symbol-name v)))) (list (if (equal val "") v (intern val))))])
#@344 Show a list of all defined keys, and their definitions.
We put that list in a buffer, and display the buffer.

The optional argument PREFIX, if non-nil, should be a key sequence;
then we display only bindings that start with that prefix.
The optional argument BUFFER specifies which buffer's bindings
to display (default, the current buffer).
(defalias 'describe-bindings #[(&optional prefix buffer) "\204 prq\210\302\303	\"\210)r\304q\210\305\306	Et\")\207" [buffer prefix describe-bindings-internal nil "*Help*" help-setup-xref describe-bindings] 4 (#$ . 21598) "P"])
#@220 Print message listing key sequences that invoke specified command.
Argument is a command definition, usually a symbol with a function definition.
If INSERT (the prefix arg) is non-nil, insert the message in the buffer.
(defalias 'where-is #[(definition &optional insert) "\306	\307\211$\310\311\n\312#\f\203 p\202 \313\f\2037 G\314V\203- \315\316\317#!\210\202P \315\316\320\"!\210\202P G\314V\203I \315\316\321#!\210\202P \315\316\322\"!\210+\307\207" [definition overriding-local-map keys keys1 insert standard-output where-is-internal nil mapconcat key-description ", " t 0 princ format "%s (%s)" "M-x %s RET" "%s is on %s" "%s is not on any key"] 5 (#$ . 22180) (let ((fn (function-called-at-point)) (enable-recursive-minibuffers t) val) (setq val (completing-read (if fn (format "Where is command (default %s): " fn) "Where is command: ") obarray 'fboundp t)) (list (if (equal val "") fn (intern val)) current-prefix-arg))])
#@412 Show the precise file name of Emacs library LIBRARY.
This command searches the directories in `load-path' like `M-x load-library'
to find the file that `M-x load-library RET LIBRARY RET' would load.
Optional second arg NOSUFFIX non-nil means don't add suffixes `.elc' or `.el'
to the specified name LIBRARY.

If the optional third arg PATH is specified, that list of directories
is used instead of `load-path'.
(defalias 'locate-library #[(library &optional nosuffix path interactive-call) "\303\304\305\215\210	\203 \203 \306\307\"\210\202 \306\310\n\"\210)\207" [result interactive-call library nil answer (byte-code "\302\303\206 	\"\207" [path load-path mapcar #[(dir) "\301\302\203\n \303\202 \304\"\207" [nosuffix mapcar #[(suf) "\305	P\n\"\306!\205 \307!?\205 \310\311\")\207" [library suf dir try result expand-file-name file-readable-p file-directory-p throw answer] 3] ("") (".elc" ".el" "")] 3]] 3) message "Library is file %s" "No library %s in search path"] 3 (#$ . 23131) (list (read-string "Locate library: ") nil nil t)])
#@234 *If non-nil, `help-make-xrefs' highlight cross-references.
Under a window system it highlights them with face defined by
`help-highlight-face'.  On a character terminal highlighted
references look like cross-references in info mode.
(custom-declare-variable 'help-highlight-p 't '(#$ . -24196) :group 'help :version "20.3" :type 'boolean)
#@91 Face used by `help-make-xrefs' to highlight cross-references.
Must be previously-defined.
(custom-declare-variable 'help-highlight-face ''underline '(#$ . 24541) :group 'help :version "20.3" :type 'face)
#@62 Label to use by `help-make-xrefs' for the go-back reference.
(defvar help-back-label "[back]" (#$ . 24751))
#@180 Regexp matching doc string references to symbols.

The words preceding the quoted symbol can be used in doc strings to
distinguish references to variables, functions and symbols.
(defvar help-xref-symbol-regexp "\\(\\<\\(\\(variable\\|option\\)\\|\\(function\\|command\\)\\|\\(symbol\\)\\)\\s-+\\)?`\\(\\sw\\(\\sw\\|\\s_\\)+\\)'" (#$ . 24866))
#@56 Regexp matching doc string references to an Info node.
(defvar help-xref-info-regexp "\\<info\\s-+node\\s-`\\([^']+\\)'" (#$ . 25216))
#@334 Invoked from commands using the "*Help*" buffer to install some xref info.

ITEM is a (FUNCTION . ARGS) pair appropriate for recreating the help
buffer after following a reference.  INTERACTIVE-P is non-nil if the
calling command was invoked interactively.  In this case the stack of
items for help buffer "back" buttons is cleared.
(defalias 'help-setup-xref #[(item interactive-p) "\203 \304\n\211\207" [interactive-p help-xref-stack item help-xref-stack-item nil] 2 (#$ . 25358)])
#@576 Parse and hyperlink documentation cross-references in the given BUFFER.

Find cross-reference information in a buffer and, if
`help-highlight-p' is non-nil, highlight it with face defined by
`help-highlight-face'; activate such cross references for selection
with `help-follow'.  Cross-references have the canonical form `...'
and the type of reference may be disambiguated by the preceding
word(s) used in `help-xref-symbol-regexp'.

A special reference `back' is made to return back through a stack of
help buffers.  Variable `help-back-label' specifies the text for
that.
(defalias 'help-make-xrefs #[(&optional buffer) "\212\206 pq\210eb\210\306 \210\307 \310 \311\211\312!\210\313\216\212\3142\315\311#\203\246 \316\317!3\3203!\2114\203\242 \316\321!\203N \3224!\203\242 \323\317\3244#\210\202\242 \316\325!\203e \3264!\203\242 \323\317\3274#\210\202\242 \316\330!\204\242 \3224!\203\203 \3264!\203\203 \323\317\3314#\210\202\242 \3224!\203\224 \323\317\3244#\210\202\242 \3264!\203\242 \323\317\3274#\210*\202 )\212\3145\315\311#\203\275 \323\332\333\334\332!C#\210\202\250 )\212\314\335\315\311#\203\340 \320\316\332!!4\3264!\203\334 \323\332\3274#\210)\202\277 )\212eb\210\314\336\315\311#\2030\332\225\332\224Z6\337\340!\203,\3416!\342V\203\337\343!\203\320\316\342!!4\3264!\203\323\342\3274#\210)\315y\342U\203,\341\342!\204\364 )\202\345 *7\203Qdb\210\212\3448\261\210)\337\345\3468!\347Q!\210\323\332\350p#\210+\351\352!\353\354 9\3559:\"\210\3569\357\360#\2109)BCL\210\361	!*\207" [buffer old-modified inhibit-read-only case-fold-search stab emacs-lisp-mode-syntax-table forward-paragraph buffer-modified-p syntax-table t set-syntax-table ((set-syntax-table stab)) re-search-forward nil match-string 6 intern-soft 3 boundp help-xref-button describe-variable 4 fboundp describe-function 5 help-xref-interned 1 Info-goto-node match-data "\\<M-x\\s-+\\(\\sw\\(\\sw\\|\\s_\\)+\\)" "^key +binding\n\\(-+ +\\)-+\n\n" looking-at "^\n?[^\n]" move-to-column 0 "\\(\\sw\\|\\s_\\)+$" "\n\n" "\n\n\\(" regexp-quote "\\)" help-xref-go-back make-local-variable minor-mode-overriding-map-alist view-mode make-sparse-keymap set-keymap-parent define-key "" help-follow set-buffer-modified-p help-xref-symbol-regexp data sym help-xref-info-regexp col help-xref-stack help-back-label map view-mode-map] 7 (#$ . 25853) "b"])
#@281 Make a hyperlink for cross-reference text previously matched.

MATCH-NUMBER is the subexpression of interest in the last matched
regexp.  FUNCTION is a function to invoke when the button is
activated, applied to DATA.  DATA may be a single value or a list.
See `help-make-xrefs'.
(defalias 'help-xref-button #[(match-number function data) "\305\224\225\306\307\310	\n<\203 \n\202 \nCBF#\210\205$ \311\224\225\312\f$\207" [match-number function data help-highlight-p help-highlight-face add-text-properties mouse-face highlight help-xref put-text-property face] 8 (#$ . 28230)])
#@154 Follow a hyperlink which appeared to be an arbitrary interned SYMBOL.

Both variable and function documentation are extracted into a single
help buffer.
(defalias 'help-xref-interned #[(symbol) "\302!\303!\210db\210\304	\261\210)eb\210\305\306D\307\"\207" [symbol fdoc describe-function describe-variable "\n\n" help-setup-xref help-xref-interned nil] 3 (#$ . 28822)])
#@48 Do a `describe-mode' for the specified BUFFER.
(defalias 'help-xref-mode #[(buffer) "\212q\210\301 )\207" [buffer describe-mode] 1 (#$ . 29202)])
#@47 Follow the cross-reference that you click on.
(defalias 'help-follow-mouse #[(click) "\211A@)\211@\nA@r\305!q\210\306\f!,\207" [click event start window pos window-buffer help-follow] 3 (#$ . 29355) "e"])
#@75 Go back to the previous help buffer text using info on `help-xref-stack'.
(defalias 'help-xref-go-back #[(buffer) "\306\211\211\211r\fq\210\203$ A\211@\211@A@AAA)\307	\"\210\nb,\207" [args method position item buffer help-xref-stack nil apply] 5 (#$ . 29572) nil])
(defalias 'help-go-back #[nil "\300dS!\207" [help-follow] 2 nil nil])
#@109 Follow cross-reference at POS, defaulting to point.

For the cross-reference format, see `help-make-xrefs'.
(defalias 'help-follow #[(&optional pos) "dU\204 \306\307\"\206 eU?\205 \306S\307\"\211@	A`\fBB\310	\2050 \311\n\"+\207" [pos help-data method args help-xref-stack-item help-xref-stack get-text-property help-xref nil apply] 4 (#$ . 29930) "d"])
#@51 Find the next help cross-reference in the buffer.
(defalias 'help-next-ref #[nil "\301?\205? \302`\303\"\203 \304`\303\"\206 `b\210\304`\303\"\211\203+ \203 b\210\202 o\2039 \305\306!\210\307\211\202 eb\210\202 )\207" [pos nil get-text-property help-xref next-single-property-change message "No cross references in the buffer." t] 4 (#$ . 30303) nil])
#@55 Find the previous help cross-reference in the buffer.
(defalias 'help-previous-ref #[nil "\301?\205? \302`\303\"\203 \304`\303\"\206 `b\210\304`\303\"\211\203+ \203 b\210\202 o\2039 \305\306!\210\307\211\202 db\210\202 )\207" [pos nil get-text-property help-xref previous-single-property-change message "No cross references in the buffer." t] 4 (#$ . 30673) nil])
