annotate man/help.texi @ 36174:19101dffc5c1

Don't say that the mode line is taller, because we are fixing that. Minor cleanups.
author Richard M. Stallman <rms@gnu.org>
date Sat, 17 Feb 2001 22:20:09 +0000
parents 41b70b041a5a
children 62cf166239f3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
1 @c This is part of the Emacs manual.
28433
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
2 @c Copyright (C) 1985, 86, 87, 93, 94, 95, 97, 2000
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
3 @c Free Software Foundation, Inc.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
4 @c See file emacs.texi for copying conditions.
Dave Love <fx@gnu.org>
parents:
diff changeset
5 @node Help, Mark, M-x, Top
Dave Love <fx@gnu.org>
parents:
diff changeset
6 @chapter Help
Dave Love <fx@gnu.org>
parents:
diff changeset
7 @kindex Help
Dave Love <fx@gnu.org>
parents:
diff changeset
8 @cindex help
Dave Love <fx@gnu.org>
parents:
diff changeset
9 @cindex self-documentation
Dave Love <fx@gnu.org>
parents:
diff changeset
10 @findex help-command
Dave Love <fx@gnu.org>
parents:
diff changeset
11 @kindex C-h
Dave Love <fx@gnu.org>
parents:
diff changeset
12 @kindex F1
Dave Love <fx@gnu.org>
parents:
diff changeset
13
Dave Love <fx@gnu.org>
parents:
diff changeset
14 Emacs provides extensive help features accessible through a single
Dave Love <fx@gnu.org>
parents:
diff changeset
15 character, @kbd{C-h}. @kbd{C-h} is a prefix key that is used only for
Dave Love <fx@gnu.org>
parents:
diff changeset
16 documentation-printing commands. The characters that you can type after
Dave Love <fx@gnu.org>
parents:
diff changeset
17 @kbd{C-h} are called @dfn{help options}. One help option is @kbd{C-h};
Dave Love <fx@gnu.org>
parents:
diff changeset
18 that is how you ask for help about using @kbd{C-h}. To cancel, type
Dave Love <fx@gnu.org>
parents:
diff changeset
19 @kbd{C-g}. The function key @key{F1} is equivalent to @kbd{C-h}.
Dave Love <fx@gnu.org>
parents:
diff changeset
20
Dave Love <fx@gnu.org>
parents:
diff changeset
21 @kindex C-h C-h
Dave Love <fx@gnu.org>
parents:
diff changeset
22 @findex help-for-help
Dave Love <fx@gnu.org>
parents:
diff changeset
23 @kbd{C-h C-h} (@code{help-for-help}) displays a list of the possible
Dave Love <fx@gnu.org>
parents:
diff changeset
24 help options, each with a brief description. Before you type a help
Dave Love <fx@gnu.org>
parents:
diff changeset
25 option, you can use @key{SPC} or @key{DEL} to scroll through the list.
Dave Love <fx@gnu.org>
parents:
diff changeset
26
Dave Love <fx@gnu.org>
parents:
diff changeset
27 @kbd{C-h} or @key{F1} means ``help'' in various other contexts as
Dave Love <fx@gnu.org>
parents:
diff changeset
28 well. For example, in the middle of @code{query-replace}, it describes
Dave Love <fx@gnu.org>
parents:
diff changeset
29 the options available for how to operate on the current match. After a
Dave Love <fx@gnu.org>
parents:
diff changeset
30 prefix key, it displays a list of the alternatives that can follow the
Dave Love <fx@gnu.org>
parents:
diff changeset
31 prefix key. (A few prefix keys don't support @kbd{C-h}, because they
Dave Love <fx@gnu.org>
parents:
diff changeset
32 define other meanings for it, but they all support @key{F1}.)
Dave Love <fx@gnu.org>
parents:
diff changeset
33
Dave Love <fx@gnu.org>
parents:
diff changeset
34 Most help buffers use a special major mode, Help mode, which lets you
28433
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
35 scroll conveniently with @key{SPC} and @key{DEL}. It also offers
36159
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
36 hyperlinks to further help regarding cross-referenced names, Info nodes,
28433
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
37 customization buffers and the like. @xref{Help Mode}.
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
38
32276
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
39 @cindex searching documentation efficiently
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
40 @cindex looking for a subject in documentation
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
41 If you are looking for a certain feature, but don't know where exactly
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
42 it is documented, and aren't even sure what is the name of the related
36159
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
43 command or option, we recommend these commands:
32276
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
44
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
45 @table @kbd
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
46 @item C-h a @var{topic} @key{RET}
36159
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
47 This searches for commands whose names match @var{topic}, which should
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
48 be a regular expression (@pxref{Regexps}). Browse the buffer popped
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
49 up by Emacs, to find what you are looking for. @xref{Apropos}.
32276
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
50
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
51 @item M-x apropos @var{topic} @key{RET}
32362
c74db5a73b6f Fix last change for docs search procedure (suggested by Dave Love).
Eli Zaretskii <eliz@gnu.org>
parents: 32276
diff changeset
52 This works like @kbd{C-h a}, but it also searches for user options and
c74db5a73b6f Fix last change for docs search procedure (suggested by Dave Love).
Eli Zaretskii <eliz@gnu.org>
parents: 32276
diff changeset
53 other variables, in case the feature you are looking for is controlled
c74db5a73b6f Fix last change for docs search procedure (suggested by Dave Love).
Eli Zaretskii <eliz@gnu.org>
parents: 32276
diff changeset
54 by an option, not a command. @xref{Apropos}.
c74db5a73b6f Fix last change for docs search procedure (suggested by Dave Love).
Eli Zaretskii <eliz@gnu.org>
parents: 32276
diff changeset
55
32432
2b1871fcf25f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 32363
diff changeset
56 @item M-x apropos-documentation @var{topic} @key{RET}
2b1871fcf25f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 32363
diff changeset
57 This searches the @emph{documentation strings} (the built-in short
2b1871fcf25f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 32363
diff changeset
58 descriptions) of all variables and functions (not their names) for a
2b1871fcf25f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 32363
diff changeset
59 match for @var{topic}, a regular expression. @xref{Apropos}.
2b1871fcf25f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 32363
diff changeset
60
36159
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
61 @item C-h i m emacs @key{RET} i @var{topic} @key{RET}
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
62 This looks up @var{topic} in the indices of the Emacs on-line manual.
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
63 There may be several matches, so displays the first one. You can then
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
64 press @key{,} to move to other matches, until you find what you are
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
65 looking for.
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
66
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
67 @item C-h i m emacs @key{RET} s @var{topic} @key{RET}
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
68 Similar, but searches for @var{topic} (which can be a regular
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
69 expression) in the @emph{text} of the manual rather than in its
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
70 indices.
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
71
32276
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
72 @item C-h F
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
73 This brings up the Emacs FAQ, where you can use the usual search
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
74 commands (@pxref{Search}) to find the information.
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
75
32362
c74db5a73b6f Fix last change for docs search procedure (suggested by Dave Love).
Eli Zaretskii <eliz@gnu.org>
parents: 32276
diff changeset
76 @item C-h p
32276
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
77 Finally, you can try looking up a suitable package using keywords
32362
c74db5a73b6f Fix last change for docs search procedure (suggested by Dave Love).
Eli Zaretskii <eliz@gnu.org>
parents: 32276
diff changeset
78 pertinent to the feature you need. @xref{Library Keywords}.
32276
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
79 @end table
49a967404304 (Help): Describe an orderly procedure to find features in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 30801
diff changeset
80
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
81 @menu
Dave Love <fx@gnu.org>
parents:
diff changeset
82 * Help Summary:: Brief list of all Help commands.
Dave Love <fx@gnu.org>
parents:
diff changeset
83 * Key Help:: Asking what a key does in Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
84 * Name Help:: Asking about a command, variable or function name.
Dave Love <fx@gnu.org>
parents:
diff changeset
85 * Apropos:: Asking what pertains to a given topic.
Dave Love <fx@gnu.org>
parents:
diff changeset
86 * Library Keywords:: Finding Lisp libraries by keywords (topics).
Dave Love <fx@gnu.org>
parents:
diff changeset
87 * Language Help:: Help relating to international language support.
Dave Love <fx@gnu.org>
parents:
diff changeset
88 * Help Mode:: Special features of Help mode and Help buffers.
Dave Love <fx@gnu.org>
parents:
diff changeset
89 * Misc Help:: Other help commands.
28433
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
90 * Help Echo:: Help on active text and tooltips (`balloon help')
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
91 @end menu
Dave Love <fx@gnu.org>
parents:
diff changeset
92
Dave Love <fx@gnu.org>
parents:
diff changeset
93 @iftex
Dave Love <fx@gnu.org>
parents:
diff changeset
94 @node Help Summary
Dave Love <fx@gnu.org>
parents:
diff changeset
95 @end iftex
Dave Love <fx@gnu.org>
parents:
diff changeset
96 @ifinfo
Dave Love <fx@gnu.org>
parents:
diff changeset
97 @node Help Summary
Dave Love <fx@gnu.org>
parents:
diff changeset
98 @section Help Summary
Dave Love <fx@gnu.org>
parents:
diff changeset
99 @end ifinfo
Dave Love <fx@gnu.org>
parents:
diff changeset
100
Dave Love <fx@gnu.org>
parents:
diff changeset
101 Here is a summary of the defined help commands.
Dave Love <fx@gnu.org>
parents:
diff changeset
102
Dave Love <fx@gnu.org>
parents:
diff changeset
103 @table @kbd
Dave Love <fx@gnu.org>
parents:
diff changeset
104 @item C-h a @var{regexp} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
105 Display a list of commands whose names match @var{regexp}
Dave Love <fx@gnu.org>
parents:
diff changeset
106 (@code{apropos-command}).
Dave Love <fx@gnu.org>
parents:
diff changeset
107 @item C-h b
Dave Love <fx@gnu.org>
parents:
diff changeset
108 Display a table of all key bindings in effect now, in this order: minor
Dave Love <fx@gnu.org>
parents:
diff changeset
109 mode bindings, major mode bindings, and global bindings
Dave Love <fx@gnu.org>
parents:
diff changeset
110 (@code{describe-bindings}).
Dave Love <fx@gnu.org>
parents:
diff changeset
111 @item C-h c @var{key}
Dave Love <fx@gnu.org>
parents:
diff changeset
112 Print the name of the command that @var{key} runs
Dave Love <fx@gnu.org>
parents:
diff changeset
113 (@code{describe-key-briefly}). Here @kbd{c} stands for `character'. For more
Dave Love <fx@gnu.org>
parents:
diff changeset
114 extensive information on @var{key}, use @kbd{C-h k}.
Dave Love <fx@gnu.org>
parents:
diff changeset
115 @item C-h f @var{function} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
116 Display documentation on the Lisp function named @var{function}
Dave Love <fx@gnu.org>
parents:
diff changeset
117 (@code{describe-function}). Since commands are Lisp functions,
Dave Love <fx@gnu.org>
parents:
diff changeset
118 a command name may be used.
Dave Love <fx@gnu.org>
parents:
diff changeset
119 @item C-h h
Dave Love <fx@gnu.org>
parents:
diff changeset
120 Display the @file{hello} file, which shows examples of various character
Dave Love <fx@gnu.org>
parents:
diff changeset
121 sets.
Dave Love <fx@gnu.org>
parents:
diff changeset
122 @item C-h i
Dave Love <fx@gnu.org>
parents:
diff changeset
123 Run Info, the program for browsing documentation files (@code{info}).
Dave Love <fx@gnu.org>
parents:
diff changeset
124 The complete Emacs manual is available on-line in Info.
Dave Love <fx@gnu.org>
parents:
diff changeset
125 @item C-h k @var{key}
Dave Love <fx@gnu.org>
parents:
diff changeset
126 Display the name and documentation of the command that @var{key} runs
Dave Love <fx@gnu.org>
parents:
diff changeset
127 (@code{describe-key}).
Dave Love <fx@gnu.org>
parents:
diff changeset
128 @item C-h l
Dave Love <fx@gnu.org>
parents:
diff changeset
129 Display a description of the last 100 characters you typed
Dave Love <fx@gnu.org>
parents:
diff changeset
130 (@code{view-lossage}).
Dave Love <fx@gnu.org>
parents:
diff changeset
131 @item C-h m
Dave Love <fx@gnu.org>
parents:
diff changeset
132 Display documentation of the current major mode (@code{describe-mode}).
Dave Love <fx@gnu.org>
parents:
diff changeset
133 @item C-h n
Dave Love <fx@gnu.org>
parents:
diff changeset
134 Display documentation of Emacs changes, most recent first
Dave Love <fx@gnu.org>
parents:
diff changeset
135 (@code{view-emacs-news}).
26767
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
136 @item C-h P
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
137 Display info on known problems with Emacs and possible workarounds
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
138 (@code{view-emacs-problems}).
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
139 @item C-h p
Dave Love <fx@gnu.org>
parents:
diff changeset
140 Find packages by topic keyword (@code{finder-by-keyword}).
Dave Love <fx@gnu.org>
parents:
diff changeset
141 @item C-h s
Dave Love <fx@gnu.org>
parents:
diff changeset
142 Display current contents of the syntax table, plus an explanation of
Dave Love <fx@gnu.org>
parents:
diff changeset
143 what they mean (@code{describe-syntax}). @xref{Syntax}.
Dave Love <fx@gnu.org>
parents:
diff changeset
144 @item C-h t
Dave Love <fx@gnu.org>
parents:
diff changeset
145 Enter the Emacs interactive tutorial (@code{help-with-tutorial}).
Dave Love <fx@gnu.org>
parents:
diff changeset
146 @item C-h v @var{var} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
147 Display the documentation of the Lisp variable @var{var}
Dave Love <fx@gnu.org>
parents:
diff changeset
148 (@code{describe-variable}).
Dave Love <fx@gnu.org>
parents:
diff changeset
149 @item C-h w @var{command} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
150 Print which keys run the command named @var{command} (@code{where-is}).
Dave Love <fx@gnu.org>
parents:
diff changeset
151 @item C-h C @var{coding} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
152 Describe coding system @var{coding}
Dave Love <fx@gnu.org>
parents:
diff changeset
153 (@code{describe-coding-system}).
Dave Love <fx@gnu.org>
parents:
diff changeset
154 @item C-h C @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
155 Describe the coding systems currently in use.
Dave Love <fx@gnu.org>
parents:
diff changeset
156 @item C-h I @var{method} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
157 Describe an input method (@code{describe-input-method}).
Dave Love <fx@gnu.org>
parents:
diff changeset
158 @item C-h L @var{language-env} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
159 Describe information on the character sets, coding systems and input
Dave Love <fx@gnu.org>
parents:
diff changeset
160 methods used for language environment @var{language-env}
Dave Love <fx@gnu.org>
parents:
diff changeset
161 (@code{describe-language-environment}).
Dave Love <fx@gnu.org>
parents:
diff changeset
162 @item C-h C-c
Dave Love <fx@gnu.org>
parents:
diff changeset
163 Display the copying conditions for GNU Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
164 @item C-h C-d
Dave Love <fx@gnu.org>
parents:
diff changeset
165 Display information about getting new versions of GNU Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
166 @item C-h C-f @var{function} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
167 Enter Info and go to the node documenting the Emacs function @var{function}
Dave Love <fx@gnu.org>
parents:
diff changeset
168 (@code{Info-goto-emacs-command-node}).
Dave Love <fx@gnu.org>
parents:
diff changeset
169 @item C-h C-k @var{key}
Dave Love <fx@gnu.org>
parents:
diff changeset
170 Enter Info and go to the node where the key sequence @var{key} is
Dave Love <fx@gnu.org>
parents:
diff changeset
171 documented (@code{Info-goto-emacs-key-command-node}).
Dave Love <fx@gnu.org>
parents:
diff changeset
172 @item C-h C-p
Dave Love <fx@gnu.org>
parents:
diff changeset
173 Display information about the GNU Project.
Dave Love <fx@gnu.org>
parents:
diff changeset
174 @item C-h @key{TAB} @var{symbol} @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
175 Display the Info documentation on symbol @var{symbol} according to the
Dave Love <fx@gnu.org>
parents:
diff changeset
176 programming language you are editing (@code{info-lookup-symbol}).
Dave Love <fx@gnu.org>
parents:
diff changeset
177 @end table
Dave Love <fx@gnu.org>
parents:
diff changeset
178
Dave Love <fx@gnu.org>
parents:
diff changeset
179 @node Key Help
Dave Love <fx@gnu.org>
parents:
diff changeset
180 @section Documentation for a Key
Dave Love <fx@gnu.org>
parents:
diff changeset
181
Dave Love <fx@gnu.org>
parents:
diff changeset
182 @kindex C-h c
Dave Love <fx@gnu.org>
parents:
diff changeset
183 @findex describe-key-briefly
Dave Love <fx@gnu.org>
parents:
diff changeset
184 The most basic @kbd{C-h} options are @kbd{C-h c}
Dave Love <fx@gnu.org>
parents:
diff changeset
185 (@code{describe-key-briefly}) and @w{@kbd{C-h k}} (@code{describe-key}).
Dave Love <fx@gnu.org>
parents:
diff changeset
186 @kbd{C-h c @var{key}} prints in the echo area the name of the command
Dave Love <fx@gnu.org>
parents:
diff changeset
187 that @var{key} is bound to. For example, @kbd{C-h c C-f} prints
Dave Love <fx@gnu.org>
parents:
diff changeset
188 @samp{forward-char}. Since command names are chosen to describe what
Dave Love <fx@gnu.org>
parents:
diff changeset
189 the commands do, this is a good way to get a very brief description of
Dave Love <fx@gnu.org>
parents:
diff changeset
190 what @var{key} does.
Dave Love <fx@gnu.org>
parents:
diff changeset
191
Dave Love <fx@gnu.org>
parents:
diff changeset
192 @kindex C-h k
Dave Love <fx@gnu.org>
parents:
diff changeset
193 @findex describe-key
Dave Love <fx@gnu.org>
parents:
diff changeset
194 @kbd{C-h k @var{key}} is similar but gives more information: it
Dave Love <fx@gnu.org>
parents:
diff changeset
195 displays the documentation string of the command as well as its name.
Dave Love <fx@gnu.org>
parents:
diff changeset
196 This is too big for the echo area, so a window is used for the display.
Dave Love <fx@gnu.org>
parents:
diff changeset
197
Dave Love <fx@gnu.org>
parents:
diff changeset
198 @kbd{C-h c} and @kbd{C-h k} work for any sort of key sequences,
Dave Love <fx@gnu.org>
parents:
diff changeset
199 including function keys and mouse events.
Dave Love <fx@gnu.org>
parents:
diff changeset
200
Dave Love <fx@gnu.org>
parents:
diff changeset
201 @node Name Help
Dave Love <fx@gnu.org>
parents:
diff changeset
202 @section Help by Command or Variable Name
Dave Love <fx@gnu.org>
parents:
diff changeset
203
Dave Love <fx@gnu.org>
parents:
diff changeset
204 @kindex C-h f
Dave Love <fx@gnu.org>
parents:
diff changeset
205 @findex describe-function
Dave Love <fx@gnu.org>
parents:
diff changeset
206 @kbd{C-h f} (@code{describe-function}) reads the name of a Lisp function
Dave Love <fx@gnu.org>
parents:
diff changeset
207 using the minibuffer, then displays that function's documentation string
Dave Love <fx@gnu.org>
parents:
diff changeset
208 in a window. Since commands are Lisp functions, you can use this to get
Dave Love <fx@gnu.org>
parents:
diff changeset
209 the documentation of a command that you know by name. For example,
Dave Love <fx@gnu.org>
parents:
diff changeset
210
Dave Love <fx@gnu.org>
parents:
diff changeset
211 @example
Dave Love <fx@gnu.org>
parents:
diff changeset
212 C-h f auto-fill-mode @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
213 @end example
Dave Love <fx@gnu.org>
parents:
diff changeset
214
Dave Love <fx@gnu.org>
parents:
diff changeset
215 @noindent
Dave Love <fx@gnu.org>
parents:
diff changeset
216 displays the documentation of @code{auto-fill-mode}. This is the only
Dave Love <fx@gnu.org>
parents:
diff changeset
217 way to get the documentation of a command that is not bound to any key
Dave Love <fx@gnu.org>
parents:
diff changeset
218 (one which you would normally run using @kbd{M-x}).
Dave Love <fx@gnu.org>
parents:
diff changeset
219
Dave Love <fx@gnu.org>
parents:
diff changeset
220 @kbd{C-h f} is also useful for Lisp functions that you are planning to
Dave Love <fx@gnu.org>
parents:
diff changeset
221 use in a Lisp program. For example, if you have just written the
Dave Love <fx@gnu.org>
parents:
diff changeset
222 expression @code{(make-vector len)} and want to check that you are using
Dave Love <fx@gnu.org>
parents:
diff changeset
223 @code{make-vector} properly, type @kbd{C-h f make-vector @key{RET}}.
Dave Love <fx@gnu.org>
parents:
diff changeset
224 Because @kbd{C-h f} allows all function names, not just command names,
Dave Love <fx@gnu.org>
parents:
diff changeset
225 you may find that some of your favorite abbreviations that work in
Dave Love <fx@gnu.org>
parents:
diff changeset
226 @kbd{M-x} don't work in @kbd{C-h f}. An abbreviation may be unique
Dave Love <fx@gnu.org>
parents:
diff changeset
227 among command names yet fail to be unique when other function names are
Dave Love <fx@gnu.org>
parents:
diff changeset
228 allowed.
Dave Love <fx@gnu.org>
parents:
diff changeset
229
Dave Love <fx@gnu.org>
parents:
diff changeset
230 The function name for @kbd{C-h f} to describe has a default which is
Dave Love <fx@gnu.org>
parents:
diff changeset
231 used if you type @key{RET} leaving the minibuffer empty. The default is
Dave Love <fx@gnu.org>
parents:
diff changeset
232 the function called by the innermost Lisp expression in the buffer around
Dave Love <fx@gnu.org>
parents:
diff changeset
233 point, @emph{provided} that is a valid, defined Lisp function name. For
Dave Love <fx@gnu.org>
parents:
diff changeset
234 example, if point is located following the text @samp{(make-vector (car
Dave Love <fx@gnu.org>
parents:
diff changeset
235 x)}, the innermost list containing point is the one that starts with
Dave Love <fx@gnu.org>
parents:
diff changeset
236 @samp{(make-vector}, so the default is to describe the function
Dave Love <fx@gnu.org>
parents:
diff changeset
237 @code{make-vector}.
Dave Love <fx@gnu.org>
parents:
diff changeset
238
Dave Love <fx@gnu.org>
parents:
diff changeset
239 @kbd{C-h f} is often useful just to verify that you have the right
Dave Love <fx@gnu.org>
parents:
diff changeset
240 spelling for the function name. If @kbd{C-h f} mentions a name from the
Dave Love <fx@gnu.org>
parents:
diff changeset
241 buffer as the default, that name must be defined as a Lisp function. If
Dave Love <fx@gnu.org>
parents:
diff changeset
242 that is all you want to know, just type @kbd{C-g} to cancel the @kbd{C-h
Dave Love <fx@gnu.org>
parents:
diff changeset
243 f} command, then go on editing.
Dave Love <fx@gnu.org>
parents:
diff changeset
244
Dave Love <fx@gnu.org>
parents:
diff changeset
245 @kindex C-h w
Dave Love <fx@gnu.org>
parents:
diff changeset
246 @findex where-is
Dave Love <fx@gnu.org>
parents:
diff changeset
247 @kbd{C-h w @var{command} @key{RET}} tells you what keys are bound to
Dave Love <fx@gnu.org>
parents:
diff changeset
248 @var{command}. It prints a list of the keys in the echo area. If it
Dave Love <fx@gnu.org>
parents:
diff changeset
249 says the command is not on any key, you must use @kbd{M-x} to run it.
Dave Love <fx@gnu.org>
parents:
diff changeset
250 @kbd{C-h w} runs the command @code{where-is}.
Dave Love <fx@gnu.org>
parents:
diff changeset
251
Dave Love <fx@gnu.org>
parents:
diff changeset
252 @kbd{C-h v} (@code{describe-variable}) is like @kbd{C-h f} but describes
Dave Love <fx@gnu.org>
parents:
diff changeset
253 Lisp variables instead of Lisp functions. Its default is the Lisp symbol
Dave Love <fx@gnu.org>
parents:
diff changeset
254 around or before point, but only if that is the name of a known Lisp
Dave Love <fx@gnu.org>
parents:
diff changeset
255 variable. @xref{Variables}.@refill
Dave Love <fx@gnu.org>
parents:
diff changeset
256
36159
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
257 Help buffers describing variables or functions defined in Lisp
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
258 normally have hyperlinks to the Lisp definition, if you have the Lisp
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
259 source files installed. If you know Lisp, this provides the ultimate
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
260 documentation. If you don't know Lisp, you should learn it. If you
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
261 are treating Emacs as an object file, then you are just @emph{using}
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
262 Emacs. For real intimacy with Emacs, you must read the source code.
41b70b041a5a Clean up and move index-searching recommendation.
Richard M. Stallman <rms@gnu.org>
parents: 34024
diff changeset
263
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
264 @node Apropos
Dave Love <fx@gnu.org>
parents:
diff changeset
265 @section Apropos
Dave Love <fx@gnu.org>
parents:
diff changeset
266
Dave Love <fx@gnu.org>
parents:
diff changeset
267 @kindex C-h a
Dave Love <fx@gnu.org>
parents:
diff changeset
268 @findex apropos-command
Dave Love <fx@gnu.org>
parents:
diff changeset
269 @cindex apropos
Dave Love <fx@gnu.org>
parents:
diff changeset
270 A more sophisticated sort of question to ask is, ``What are the
Dave Love <fx@gnu.org>
parents:
diff changeset
271 commands for working with files?'' To ask this question, type @kbd{C-h
Dave Love <fx@gnu.org>
parents:
diff changeset
272 a file @key{RET}}, which displays a list of all command names that
Dave Love <fx@gnu.org>
parents:
diff changeset
273 contain @samp{file}, including @code{copy-file}, @code{find-file}, and
Dave Love <fx@gnu.org>
parents:
diff changeset
274 so on. With each command name appears a brief description of how to use
Dave Love <fx@gnu.org>
parents:
diff changeset
275 the command, and what keys you can currently invoke it with. For
Dave Love <fx@gnu.org>
parents:
diff changeset
276 example, it would say that you can invoke @code{find-file} by typing
Dave Love <fx@gnu.org>
parents:
diff changeset
277 @kbd{C-x C-f}. The @kbd{a} in @kbd{C-h a} stands for `Apropos';
Dave Love <fx@gnu.org>
parents:
diff changeset
278 @kbd{C-h a} runs the command @code{apropos-command}. This command
Dave Love <fx@gnu.org>
parents:
diff changeset
279 normally checks only commands (interactive functions); if you specify a
Dave Love <fx@gnu.org>
parents:
diff changeset
280 prefix argument, it checks noninteractive functions as well.
Dave Love <fx@gnu.org>
parents:
diff changeset
281
Dave Love <fx@gnu.org>
parents:
diff changeset
282 Because @kbd{C-h a} looks only for functions whose names contain the
Dave Love <fx@gnu.org>
parents:
diff changeset
283 string you specify, you must use ingenuity in choosing the
Dave Love <fx@gnu.org>
parents:
diff changeset
284 string. If you are looking for commands for killing backwards and
Dave Love <fx@gnu.org>
parents:
diff changeset
285 @kbd{C-h a kill-backwards @key{RET}} doesn't reveal any, don't give up.
Dave Love <fx@gnu.org>
parents:
diff changeset
286 Try just @kbd{kill}, or just @kbd{backwards}, or just @kbd{back}. Be
Dave Love <fx@gnu.org>
parents:
diff changeset
287 persistent. Also note that you can use a regular expression as the
Dave Love <fx@gnu.org>
parents:
diff changeset
288 argument, for more flexibility (@pxref{Regexps}).
Dave Love <fx@gnu.org>
parents:
diff changeset
289
Dave Love <fx@gnu.org>
parents:
diff changeset
290 Here is a set of arguments to give to @kbd{C-h a} that covers many
Dave Love <fx@gnu.org>
parents:
diff changeset
291 classes of Emacs commands, since there are strong conventions for naming
Dave Love <fx@gnu.org>
parents:
diff changeset
292 the standard Emacs commands. By giving you a feel for the naming
Dave Love <fx@gnu.org>
parents:
diff changeset
293 conventions, this set should also serve to aid you in developing a
Dave Love <fx@gnu.org>
parents:
diff changeset
294 technique for picking @code{apropos} strings.
Dave Love <fx@gnu.org>
parents:
diff changeset
295
Dave Love <fx@gnu.org>
parents:
diff changeset
296 @quotation
Dave Love <fx@gnu.org>
parents:
diff changeset
297 char, line, word, sentence, paragraph, region, page, sexp, list, defun,
Dave Love <fx@gnu.org>
parents:
diff changeset
298 rect, buffer, frame, window, face, file, dir, register, mode, beginning, end,
Dave Love <fx@gnu.org>
parents:
diff changeset
299 forward, backward, next, previous, up, down, search, goto, kill, delete,
Dave Love <fx@gnu.org>
parents:
diff changeset
300 mark, insert, yank, fill, indent, case, change, set, what, list, find,
Dave Love <fx@gnu.org>
parents:
diff changeset
301 view, describe, default.
Dave Love <fx@gnu.org>
parents:
diff changeset
302 @end quotation
Dave Love <fx@gnu.org>
parents:
diff changeset
303
Dave Love <fx@gnu.org>
parents:
diff changeset
304 @findex apropos-variable
Dave Love <fx@gnu.org>
parents:
diff changeset
305 To list all user variables that match a regexp, use the command
Dave Love <fx@gnu.org>
parents:
diff changeset
306 @kbd{M-x apropos-variable}. This command shows only user variables and
Dave Love <fx@gnu.org>
parents:
diff changeset
307 customization options by default; if you specify a prefix argument, it
Dave Love <fx@gnu.org>
parents:
diff changeset
308 checks all variables.
Dave Love <fx@gnu.org>
parents:
diff changeset
309
Dave Love <fx@gnu.org>
parents:
diff changeset
310 @findex apropos
Dave Love <fx@gnu.org>
parents:
diff changeset
311 To list all Lisp symbols that contain a match for a regexp, not just
Dave Love <fx@gnu.org>
parents:
diff changeset
312 the ones that are defined as commands, use the command @kbd{M-x apropos}
Dave Love <fx@gnu.org>
parents:
diff changeset
313 instead of @kbd{C-h a}. This command does not check key bindings by
Dave Love <fx@gnu.org>
parents:
diff changeset
314 default; specify a numeric argument if you want it to check them.
Dave Love <fx@gnu.org>
parents:
diff changeset
315
Dave Love <fx@gnu.org>
parents:
diff changeset
316 @findex apropos-documentation
Dave Love <fx@gnu.org>
parents:
diff changeset
317 The @code{apropos-documentation} command is like @code{apropos} except
Dave Love <fx@gnu.org>
parents:
diff changeset
318 that it searches documentation strings as well as symbol names for
Dave Love <fx@gnu.org>
parents:
diff changeset
319 matches for the specified regular expression.
Dave Love <fx@gnu.org>
parents:
diff changeset
320
Dave Love <fx@gnu.org>
parents:
diff changeset
321 @findex apropos-value
Dave Love <fx@gnu.org>
parents:
diff changeset
322 The @code{apropos-value} command is like @code{apropos} except that it
Dave Love <fx@gnu.org>
parents:
diff changeset
323 searches symbols' values for matches for the specified regular
Dave Love <fx@gnu.org>
parents:
diff changeset
324 expression. This command does not check function definitions or
Dave Love <fx@gnu.org>
parents:
diff changeset
325 property lists by default; specify a numeric argument if you want it to
Dave Love <fx@gnu.org>
parents:
diff changeset
326 check them.
Dave Love <fx@gnu.org>
parents:
diff changeset
327
Dave Love <fx@gnu.org>
parents:
diff changeset
328 @vindex apropos-do-all
Dave Love <fx@gnu.org>
parents:
diff changeset
329 If the variable @code{apropos-do-all} is non-@code{nil}, the commands
Dave Love <fx@gnu.org>
parents:
diff changeset
330 above all behave as if they had been given a prefix argument.
Dave Love <fx@gnu.org>
parents:
diff changeset
331
Dave Love <fx@gnu.org>
parents:
diff changeset
332 If you want more information about a function definition, variable or
Dave Love <fx@gnu.org>
parents:
diff changeset
333 symbol property listed in the Apropos buffer, you can click on it with
Dave Love <fx@gnu.org>
parents:
diff changeset
334 @kbd{Mouse-2} or move there and type @key{RET}.
Dave Love <fx@gnu.org>
parents:
diff changeset
335
Dave Love <fx@gnu.org>
parents:
diff changeset
336 @node Library Keywords
Dave Love <fx@gnu.org>
parents:
diff changeset
337 @section Keyword Search for Lisp Libraries
Dave Love <fx@gnu.org>
parents:
diff changeset
338
Dave Love <fx@gnu.org>
parents:
diff changeset
339 @kindex C-h p
Dave Love <fx@gnu.org>
parents:
diff changeset
340 @findex finder-by-keyword
Dave Love <fx@gnu.org>
parents:
diff changeset
341 The @kbd{C-h p} command lets you search the standard Emacs Lisp
Dave Love <fx@gnu.org>
parents:
diff changeset
342 libraries by topic keywords. Here is a partial list of keywords you can
Dave Love <fx@gnu.org>
parents:
diff changeset
343 use:
Dave Love <fx@gnu.org>
parents:
diff changeset
344
Dave Love <fx@gnu.org>
parents:
diff changeset
345 @display
Dave Love <fx@gnu.org>
parents:
diff changeset
346 abbrev --- abbreviation handling, typing shortcuts, macros.
Dave Love <fx@gnu.org>
parents:
diff changeset
347 bib --- support for the bibliography processor @code{bib}.
Dave Love <fx@gnu.org>
parents:
diff changeset
348 c --- C and C++ language support.
Dave Love <fx@gnu.org>
parents:
diff changeset
349 calendar --- calendar and time management support.
Dave Love <fx@gnu.org>
parents:
diff changeset
350 comm --- communications, networking, remote access to files.
Dave Love <fx@gnu.org>
parents:
diff changeset
351 data --- support for editing files of data.
Dave Love <fx@gnu.org>
parents:
diff changeset
352 docs --- support for Emacs documentation.
Dave Love <fx@gnu.org>
parents:
diff changeset
353 emulations --- emulations of other editors.
Dave Love <fx@gnu.org>
parents:
diff changeset
354 extensions --- Emacs Lisp language extensions.
Dave Love <fx@gnu.org>
parents:
diff changeset
355 faces --- support for using faces (fonts and colors; @pxref{Faces}).
Dave Love <fx@gnu.org>
parents:
diff changeset
356 frames --- support for Emacs frames and window systems.
Dave Love <fx@gnu.org>
parents:
diff changeset
357 games --- games, jokes and amusements.
Dave Love <fx@gnu.org>
parents:
diff changeset
358 hardware --- support for interfacing with exotic hardware.
Dave Love <fx@gnu.org>
parents:
diff changeset
359 help --- support for on-line help systems.
Dave Love <fx@gnu.org>
parents:
diff changeset
360 hypermedia --- support for links within text, or other media types.
Dave Love <fx@gnu.org>
parents:
diff changeset
361 i18n --- internationalization and alternate character-set support.
Dave Love <fx@gnu.org>
parents:
diff changeset
362 internal --- code for Emacs internals, build process, defaults.
Dave Love <fx@gnu.org>
parents:
diff changeset
363 languages --- specialized modes for editing programming languages.
Dave Love <fx@gnu.org>
parents:
diff changeset
364 lisp --- support for using Lisp (including Emacs Lisp).
Dave Love <fx@gnu.org>
parents:
diff changeset
365 local --- libraries local to your site.
Dave Love <fx@gnu.org>
parents:
diff changeset
366 maint --- maintenance aids for the Emacs development group.
Dave Love <fx@gnu.org>
parents:
diff changeset
367 mail --- modes for electronic-mail handling.
Dave Love <fx@gnu.org>
parents:
diff changeset
368 matching --- searching and matching.
Dave Love <fx@gnu.org>
parents:
diff changeset
369 news --- support for netnews reading and posting.
Dave Love <fx@gnu.org>
parents:
diff changeset
370 non-text --- support for editing files that are not ordinary text.
Dave Love <fx@gnu.org>
parents:
diff changeset
371 oop --- support for object-oriented programming.
Dave Love <fx@gnu.org>
parents:
diff changeset
372 outlines --- hierarchical outlining.
Dave Love <fx@gnu.org>
parents:
diff changeset
373 processes --- process, subshell, compilation, and job control support.
Dave Love <fx@gnu.org>
parents:
diff changeset
374 terminals --- support for terminal types.
Dave Love <fx@gnu.org>
parents:
diff changeset
375 tex --- support for the @TeX{} formatter.
Dave Love <fx@gnu.org>
parents:
diff changeset
376 tools --- programming tools.
Dave Love <fx@gnu.org>
parents:
diff changeset
377 unix --- front-ends/assistants for, or emulators of, Unix features.
Dave Love <fx@gnu.org>
parents:
diff changeset
378 vms --- support code for VMS.
Dave Love <fx@gnu.org>
parents:
diff changeset
379 wp --- word processing.
Dave Love <fx@gnu.org>
parents:
diff changeset
380 @end display
Dave Love <fx@gnu.org>
parents:
diff changeset
381
Dave Love <fx@gnu.org>
parents:
diff changeset
382 @node Language Help
Dave Love <fx@gnu.org>
parents:
diff changeset
383 @section Help for International Language Support
Dave Love <fx@gnu.org>
parents:
diff changeset
384
Dave Love <fx@gnu.org>
parents:
diff changeset
385 You can use the command @kbd{C-h L}
Dave Love <fx@gnu.org>
parents:
diff changeset
386 (@code{describe-language-environment}) to find out the support for a
Dave Love <fx@gnu.org>
parents:
diff changeset
387 specific language environment. @xref{Language Environments}. This
Dave Love <fx@gnu.org>
parents:
diff changeset
388 tells you which languages this language environment is useful for, and
Dave Love <fx@gnu.org>
parents:
diff changeset
389 lists the character sets, coding systems, and input methods that go with
Dave Love <fx@gnu.org>
parents:
diff changeset
390 it. It also shows some sample text to illustrate scripts.
Dave Love <fx@gnu.org>
parents:
diff changeset
391
Dave Love <fx@gnu.org>
parents:
diff changeset
392 The command @kbd{C-h h} (@code{view-hello-file}) displays the file
Dave Love <fx@gnu.org>
parents:
diff changeset
393 @file{etc/HELLO}, which shows how to say ``hello'' in many languages.
Dave Love <fx@gnu.org>
parents:
diff changeset
394
Dave Love <fx@gnu.org>
parents:
diff changeset
395 The command @kbd{C-h I} (@code{describe-input-method}) describes
Dave Love <fx@gnu.org>
parents:
diff changeset
396 information about input methods---either a specified input method, or by
Dave Love <fx@gnu.org>
parents:
diff changeset
397 default the input method in use. @xref{Input Methods}.
Dave Love <fx@gnu.org>
parents:
diff changeset
398
Dave Love <fx@gnu.org>
parents:
diff changeset
399 The command @kbd{C-h C} (@code{describe-coding-system}) describes
Dave Love <fx@gnu.org>
parents:
diff changeset
400 information about coding systems---either a specified coding system, or
Dave Love <fx@gnu.org>
parents:
diff changeset
401 the ones currently in use. @xref{Coding Systems}.
Dave Love <fx@gnu.org>
parents:
diff changeset
402
Dave Love <fx@gnu.org>
parents:
diff changeset
403 @node Help Mode
Dave Love <fx@gnu.org>
parents:
diff changeset
404 @section Help Mode Commands
Dave Love <fx@gnu.org>
parents:
diff changeset
405
Dave Love <fx@gnu.org>
parents:
diff changeset
406 Help buffers provide the commands of View mode (@pxref{Misc File
Dave Love <fx@gnu.org>
parents:
diff changeset
407 Ops}), plus a few special commands of their own.
Dave Love <fx@gnu.org>
parents:
diff changeset
408
Dave Love <fx@gnu.org>
parents:
diff changeset
409 @table @kbd
Dave Love <fx@gnu.org>
parents:
diff changeset
410 @item @key{SPC}
Dave Love <fx@gnu.org>
parents:
diff changeset
411 Scroll forward.
Dave Love <fx@gnu.org>
parents:
diff changeset
412 @item @key{DEL}
Dave Love <fx@gnu.org>
parents:
diff changeset
413 Scroll backward.
Dave Love <fx@gnu.org>
parents:
diff changeset
414 @item @key{RET}
Dave Love <fx@gnu.org>
parents:
diff changeset
415 Follow a cross reference at point.
Dave Love <fx@gnu.org>
parents:
diff changeset
416 @item @key{TAB}
Dave Love <fx@gnu.org>
parents:
diff changeset
417 Move point forward to the next cross reference.
Dave Love <fx@gnu.org>
parents:
diff changeset
418 @item S-@key{TAB}
Dave Love <fx@gnu.org>
parents:
diff changeset
419 Move point back to the previous cross reference.
Dave Love <fx@gnu.org>
parents:
diff changeset
420 @item Mouse-2
Dave Love <fx@gnu.org>
parents:
diff changeset
421 Follow a cross reference that you click on.
Dave Love <fx@gnu.org>
parents:
diff changeset
422 @end table
Dave Love <fx@gnu.org>
parents:
diff changeset
423
Dave Love <fx@gnu.org>
parents:
diff changeset
424 When a command name (@pxref{M-x,, Running Commands by Name}) or
Dave Love <fx@gnu.org>
parents:
diff changeset
425 variable name (@pxref{Variables}) appears in the documentation, it
Dave Love <fx@gnu.org>
parents:
diff changeset
426 normally appears inside paired single-quotes. You can click on the name
Dave Love <fx@gnu.org>
parents:
diff changeset
427 with @kbd{Mouse-2}, or move point there and type @key{RET}, to view the
Dave Love <fx@gnu.org>
parents:
diff changeset
428 documentation of that command or variable. Use @kbd{C-c C-b} to retrace
Dave Love <fx@gnu.org>
parents:
diff changeset
429 your steps.
Dave Love <fx@gnu.org>
parents:
diff changeset
430
Dave Love <fx@gnu.org>
parents:
diff changeset
431 @kindex @key{TAB} @r{(Help mode)}
Dave Love <fx@gnu.org>
parents:
diff changeset
432 @findex help-next-ref
Dave Love <fx@gnu.org>
parents:
diff changeset
433 @kindex S-@key{TAB} @r{(Help mode)}
Dave Love <fx@gnu.org>
parents:
diff changeset
434 @findex help-previous-ref
Dave Love <fx@gnu.org>
parents:
diff changeset
435 There are convenient commands for moving point to cross references in
Dave Love <fx@gnu.org>
parents:
diff changeset
436 the help text. @key{TAB} (@code{help-next-ref}) moves point down to the
Dave Love <fx@gnu.org>
parents:
diff changeset
437 next cross reference. Use @kbd{S-@key{TAB}} to move point up to the
Dave Love <fx@gnu.org>
parents:
diff changeset
438 previous cross reference (@code{help-previous-ref}).
Dave Love <fx@gnu.org>
parents:
diff changeset
439
Dave Love <fx@gnu.org>
parents:
diff changeset
440 @node Misc Help
Dave Love <fx@gnu.org>
parents:
diff changeset
441 @section Other Help Commands
Dave Love <fx@gnu.org>
parents:
diff changeset
442
Dave Love <fx@gnu.org>
parents:
diff changeset
443 @kindex C-h i
Dave Love <fx@gnu.org>
parents:
diff changeset
444 @findex info
Dave Love <fx@gnu.org>
parents:
diff changeset
445 @cindex Info
Dave Love <fx@gnu.org>
parents:
diff changeset
446 @cindex manuals, on-line
Dave Love <fx@gnu.org>
parents:
diff changeset
447 @cindex on-line manuals
Dave Love <fx@gnu.org>
parents:
diff changeset
448 @kbd{C-h i} (@code{info}) runs the Info program, which is used for
Dave Love <fx@gnu.org>
parents:
diff changeset
449 browsing through structured documentation files. The entire Emacs manual
Dave Love <fx@gnu.org>
parents:
diff changeset
450 is available within Info. Eventually all the documentation of the GNU
Dave Love <fx@gnu.org>
parents:
diff changeset
451 system will be available. Type @kbd{h} after entering Info to run
Dave Love <fx@gnu.org>
parents:
diff changeset
452 a tutorial on using Info.
Dave Love <fx@gnu.org>
parents:
diff changeset
453
Dave Love <fx@gnu.org>
parents:
diff changeset
454 If you specify a numeric argument, @kbd{C-h i} prompts for the name of
Dave Love <fx@gnu.org>
parents:
diff changeset
455 a documentation file. This way, you can browse a file which doesn't
Dave Love <fx@gnu.org>
parents:
diff changeset
456 have an entry in the top-level Info menu. It is also handy when you
Dave Love <fx@gnu.org>
parents:
diff changeset
457 need to get to the documentation quickly, and you know the exact name of
Dave Love <fx@gnu.org>
parents:
diff changeset
458 the file.
Dave Love <fx@gnu.org>
parents:
diff changeset
459
Dave Love <fx@gnu.org>
parents:
diff changeset
460 @kindex C-h C-f
Dave Love <fx@gnu.org>
parents:
diff changeset
461 @kindex C-h C-k
Dave Love <fx@gnu.org>
parents:
diff changeset
462 @findex Info-goto-emacs-key-command-node
Dave Love <fx@gnu.org>
parents:
diff changeset
463 @findex Info-goto-emacs-command-node
Dave Love <fx@gnu.org>
parents:
diff changeset
464 There are two special help commands for accessing Emacs documentation
Dave Love <fx@gnu.org>
parents:
diff changeset
465 through Info. @kbd{C-h C-f @var{function} @key{RET}} enters Info and
Dave Love <fx@gnu.org>
parents:
diff changeset
466 goes straight to the documentation of the Emacs function
Dave Love <fx@gnu.org>
parents:
diff changeset
467 @var{function}. @kbd{C-h C-k @var{key}} enters Info and goes straight
Dave Love <fx@gnu.org>
parents:
diff changeset
468 to the documentation of the key @var{key}. These two keys run the
Dave Love <fx@gnu.org>
parents:
diff changeset
469 commands @code{Info-goto-emacs-command-node} and
Dave Love <fx@gnu.org>
parents:
diff changeset
470 @code{Info-goto-emacs-key-command-node}.
Dave Love <fx@gnu.org>
parents:
diff changeset
471
Dave Love <fx@gnu.org>
parents:
diff changeset
472 When editing a program, if you have an Info version of the manual for
Dave Love <fx@gnu.org>
parents:
diff changeset
473 the programming language, you can use the command @kbd{C-h C-i} to refer
Dave Love <fx@gnu.org>
parents:
diff changeset
474 to the manual documentation for a symbol (keyword, function or
Dave Love <fx@gnu.org>
parents:
diff changeset
475 variable). The details of how this command works depend on the major
Dave Love <fx@gnu.org>
parents:
diff changeset
476 mode.
Dave Love <fx@gnu.org>
parents:
diff changeset
477
Dave Love <fx@gnu.org>
parents:
diff changeset
478 @kindex C-h l
Dave Love <fx@gnu.org>
parents:
diff changeset
479 @findex view-lossage
Dave Love <fx@gnu.org>
parents:
diff changeset
480 If something surprising happens, and you are not sure what commands you
Dave Love <fx@gnu.org>
parents:
diff changeset
481 typed, use @kbd{C-h l} (@code{view-lossage}). @kbd{C-h l} prints the last
Dave Love <fx@gnu.org>
parents:
diff changeset
482 100 command characters you typed in. If you see commands that you don't
Dave Love <fx@gnu.org>
parents:
diff changeset
483 know, you can use @kbd{C-h c} to find out what they do.
Dave Love <fx@gnu.org>
parents:
diff changeset
484
Dave Love <fx@gnu.org>
parents:
diff changeset
485 @kindex C-h m
Dave Love <fx@gnu.org>
parents:
diff changeset
486 @findex describe-mode
Dave Love <fx@gnu.org>
parents:
diff changeset
487 Emacs has numerous major modes, each of which redefines a few keys and
Dave Love <fx@gnu.org>
parents:
diff changeset
488 makes a few other changes in how editing works. @kbd{C-h m}
Dave Love <fx@gnu.org>
parents:
diff changeset
489 (@code{describe-mode}) prints documentation on the current major mode,
Dave Love <fx@gnu.org>
parents:
diff changeset
490 which normally describes all the commands that are changed in this
Dave Love <fx@gnu.org>
parents:
diff changeset
491 mode.
Dave Love <fx@gnu.org>
parents:
diff changeset
492
Dave Love <fx@gnu.org>
parents:
diff changeset
493 @kindex C-h b
Dave Love <fx@gnu.org>
parents:
diff changeset
494 @findex describe-bindings
Dave Love <fx@gnu.org>
parents:
diff changeset
495 @kbd{C-h b} (@code{describe-bindings}) and @kbd{C-h s}
Dave Love <fx@gnu.org>
parents:
diff changeset
496 (@code{describe-syntax}) present other information about the current
Dave Love <fx@gnu.org>
parents:
diff changeset
497 Emacs mode. @kbd{C-h b} displays a list of all the key bindings now in
Dave Love <fx@gnu.org>
parents:
diff changeset
498 effect; the local bindings defined by the current minor modes first,
Dave Love <fx@gnu.org>
parents:
diff changeset
499 then the local bindings defined by the current major mode, and finally
Dave Love <fx@gnu.org>
parents:
diff changeset
500 the global bindings (@pxref{Key Bindings}). @kbd{C-h s} displays the
Dave Love <fx@gnu.org>
parents:
diff changeset
501 contents of the syntax table, with explanations of each character's
Dave Love <fx@gnu.org>
parents:
diff changeset
502 syntax (@pxref{Syntax}).
Dave Love <fx@gnu.org>
parents:
diff changeset
503
Dave Love <fx@gnu.org>
parents:
diff changeset
504 You can get a similar list for a particular prefix key by typing
Dave Love <fx@gnu.org>
parents:
diff changeset
505 @kbd{C-h} after the prefix key. (There are a few prefix keys for which
Dave Love <fx@gnu.org>
parents:
diff changeset
506 this does not work---those that provide their own bindings for
Dave Love <fx@gnu.org>
parents:
diff changeset
507 @kbd{C-h}. One of these is @key{ESC}, because @kbd{@key{ESC} C-h} is
Dave Love <fx@gnu.org>
parents:
diff changeset
508 actually @kbd{C-M-h}, which marks a defun.)
Dave Love <fx@gnu.org>
parents:
diff changeset
509
Dave Love <fx@gnu.org>
parents:
diff changeset
510 @kindex C-h F
Dave Love <fx@gnu.org>
parents:
diff changeset
511 @findex view-emacs-FAQ
Dave Love <fx@gnu.org>
parents:
diff changeset
512 @kindex C-h n
Dave Love <fx@gnu.org>
parents:
diff changeset
513 @findex view-emacs-news
Dave Love <fx@gnu.org>
parents:
diff changeset
514 @kindex C-h C-c
Dave Love <fx@gnu.org>
parents:
diff changeset
515 @findex describe-copying
Dave Love <fx@gnu.org>
parents:
diff changeset
516 @kindex C-h C-d
Dave Love <fx@gnu.org>
parents:
diff changeset
517 @findex describe-distribution
Dave Love <fx@gnu.org>
parents:
diff changeset
518 @kindex C-h C-w
Dave Love <fx@gnu.org>
parents:
diff changeset
519 @findex describe-no-warranty
Dave Love <fx@gnu.org>
parents:
diff changeset
520 @kindex C-h C-p
Dave Love <fx@gnu.org>
parents:
diff changeset
521 @findex describe-project
26767
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
522 @kindex C-h P
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
523 @findex view-emacs-problems
25829
Dave Love <fx@gnu.org>
parents:
diff changeset
524 The other @kbd{C-h} options display various files of useful
Dave Love <fx@gnu.org>
parents:
diff changeset
525 information. @kbd{C-h C-w} displays the full details on the complete
Dave Love <fx@gnu.org>
parents:
diff changeset
526 absence of warranty for GNU Emacs. @kbd{C-h n} (@code{view-emacs-news})
Dave Love <fx@gnu.org>
parents:
diff changeset
527 displays the file @file{emacs/etc/NEWS}, which contains documentation on
Dave Love <fx@gnu.org>
parents:
diff changeset
528 Emacs changes arranged chronologically. @kbd{C-h F}
Dave Love <fx@gnu.org>
parents:
diff changeset
529 (@code{view-emacs-FAQ}) displays the Emacs frequently-answered-questions
Dave Love <fx@gnu.org>
parents:
diff changeset
530 list. @kbd{C-h t} (@code{help-with-tutorial}) displays the
Dave Love <fx@gnu.org>
parents:
diff changeset
531 learn-by-doing Emacs tutorial. @kbd{C-h C-c} (@code{describe-copying})
Dave Love <fx@gnu.org>
parents:
diff changeset
532 displays the file @file{emacs/etc/COPYING}, which tells you the
Dave Love <fx@gnu.org>
parents:
diff changeset
533 conditions you must obey in distributing copies of Emacs. @kbd{C-h C-d}
Dave Love <fx@gnu.org>
parents:
diff changeset
534 (@code{describe-distribution}) displays the file
Dave Love <fx@gnu.org>
parents:
diff changeset
535 @file{emacs/etc/DISTRIB}, which tells you how you can order a copy of
Dave Love <fx@gnu.org>
parents:
diff changeset
536 the latest version of Emacs. @kbd{C-h C-p} (@code{describe-project})
26767
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
537 displays general information about the GNU Project. @kbd{C-h P}
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
538 (@code{view-emacs-problems}) displays the file
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
539 @file{emacs/etc/PROBLEMS}, which lists known problems with Emacs in
c45d65c93702 Mention view-emacs-problems.
Dave Love <fx@gnu.org>
parents: 25829
diff changeset
540 various situations with solutions or workarounds in many cases.
28433
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
541
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
542 @node Help Echo
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
543 @section Help on Active Text and Tooltips
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
544
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
545 @cindex tooltips
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
546 @cindex ballon help
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
547 Often when a region of text is `active' so that you can select it with
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
548 the mouse or a key like @kbd{RET}, it has associated help text. Areas
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
549 of the mode line are examples. This help will normally be printed in
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
550 the echo area when you move point into the active text. In a window
8605ab7873d4 Hyperlinks, help echo.
Dave Love <fx@gnu.org>
parents: 26767
diff changeset
551 system you can display the help text as `tooltips'. @xref{Tooltips}.