Mercurial > emacs
annotate doc/emacs/help.texi @ 107951:4cdebb02755e
* help.texi (Help Summary): Mention M-x info-finder.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Thu, 15 Apr 2010 00:25:20 -0700 |
parents | 1d1d5d9bd884 |
children | 51ddcf320fe4 |
rev | line source |
---|---|
84246 | 1 @c This is part of the Emacs manual. |
2 @c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, | |
106815 | 3 @c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. |
84246 | 4 @c See file emacs.texi for copying conditions. |
5 @node Help, Mark, M-x, Top | |
6 @chapter Help | |
7 @kindex Help | |
8 @cindex help | |
9 @cindex self-documentation | |
10 @findex help-command | |
11 @kindex C-h | |
12 @kindex F1 | |
13 | |
14 Emacs provides extensive help features, all accessible through the | |
15 @dfn{help character}, @kbd{C-h}. This is a prefix key that is used | |
16 for commands that display documentation; the next character you type | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
17 should be a @dfn{help option}, to ask for a particular kind of help. |
84246 | 18 You can cancel the @kbd{C-h} command with @kbd{C-g}. The function key |
19 @key{F1} is equivalent to @kbd{C-h}. | |
20 | |
21 @kindex C-h C-h | |
22 @findex help-for-help | |
23 @kbd{C-h} itself is one of the help options; @kbd{C-h C-h} displays | |
24 a list of help options, with a brief description of each one | |
25 (@code{help-for-help}). You can scroll the list with @key{SPC} and | |
26 @key{DEL}, then type the help option you want. To cancel, type | |
27 @kbd{C-g}. | |
28 | |
29 @kbd{C-h} or @key{F1} means ``help'' in various other contexts as | |
30 well. For instance, you can type them after a prefix key to display | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
31 a list of the keys that can follow the prefix key. (A few prefix keys |
84246 | 32 don't support @kbd{C-h} in this way, because they define other |
33 meanings for it, but they all support @key{F1} for help.) | |
34 | |
35 Most help buffers use a special major mode, Help mode, which lets | |
36 you scroll conveniently with @key{SPC} and @key{DEL}. You can also | |
37 follow hyperlinks to URLs, and to other facilities including Info | |
38 nodes and customization buffers. @xref{Help Mode}. | |
39 | |
40 @cindex searching documentation efficiently | |
41 @cindex looking for a subject in documentation | |
42 If you are looking for a certain feature, but don't know what it is | |
43 called or where to look, we recommend three methods. First, try an | |
44 apropos command, then try searching the manual index, then look in the | |
45 FAQ and the package keywords. | |
46 | |
47 @table @kbd | |
48 @item C-h a @var{topics} @key{RET} | |
49 This searches for commands whose names match the argument | |
50 @var{topics}. The argument can be a keyword, a list of keywords, or a | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
51 regular expression (@pxref{Regexps}). @xref{Apropos}. |
84246 | 52 |
53 @item C-h i d m emacs @key{RET} i @var{topic} @key{RET} | |
54 This searches for @var{topic} in the indices of the on-line Emacs | |
55 manual, and displays the first match found. Press @kbd{,} to see | |
56 subsequent matches. You can use a regular expression as @var{topic}. | |
57 | |
58 @item C-h i d m emacs @key{RET} s @var{topic} @key{RET} | |
59 Similar, but searches the @emph{text} of the manual rather than the | |
60 indices. | |
61 | |
62 @item C-h C-f | |
63 This displays the Emacs FAQ. You can use the Info commands | |
64 to browse it. | |
65 | |
66 @item C-h p | |
67 This displays the available Emacs packages based on keywords. | |
68 @xref{Library Keywords}. | |
69 @end table | |
70 | |
71 @menu | |
72 * Help Summary:: Brief list of all Help commands. | |
73 * Key Help:: Asking what a key does in Emacs. | |
74 * Name Help:: Asking about a command, variable or function name. | |
75 * Apropos:: Asking what pertains to a given topic. | |
76 * Help Mode:: Special features of Help mode and Help buffers. | |
77 * Library Keywords:: Finding Lisp libraries by keywords (topics). | |
78 * Language Help:: Help relating to international language support. | |
79 * Misc Help:: Other help commands. | |
80 * Help Files:: Commands to display pre-written help files. | |
103845
4fcc84803527
(Help): End menu descriptions with a period.
Glenn Morris <rgm@gnu.org>
parents:
100974
diff
changeset
|
81 * Help Echo:: Help on active text and tooltips (`balloon help'). |
84246 | 82 @end menu |
83 | |
84 @iftex | |
85 @node Help Summary | |
86 @end iftex | |
87 @ifnottex | |
88 @node Help Summary | |
89 @section Help Summary | |
90 @end ifnottex | |
91 | |
92 Here is a summary of the Emacs interactive help commands. (The | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
93 character that follows @kbd{C-h} is the ``help option.'') See |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
94 @ref{Help Files}, for other help commands that display fixed files |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
95 of information. |
84246 | 96 |
97 @table @kbd | |
98 @item C-h a @var{topics} @key{RET} | |
99 Display a list of commands whose names match @var{topics} | |
100 (@code{apropos-command}; @pxref{Apropos}). | |
101 @item C-h b | |
102 Display all active key bindings; minor mode bindings first, then those | |
103 of the major mode, then global bindings (@code{describe-bindings}). | |
104 @item C-h c @var{key} | |
105 Given a key sequence @var{key}, show the name of the command that it | |
106 runs (@code{describe-key-briefly}). Here @kbd{c} stands for | |
107 ``character.'' For more extensive information on @var{key}, use | |
108 @kbd{C-h k}. | |
109 @item C-h d @var{topics} @key{RET} | |
110 Display the commands and variables whose documentation matches | |
111 @var{topics} (@code{apropos-documentation}). | |
112 @item C-h e | |
113 Display the @code{*Messages*} buffer | |
114 (@code{view-echo-area-messages}). | |
115 @item C-h f @var{function} @key{RET} | |
116 Display documentation on the Lisp function named @var{function} | |
117 (@code{describe-function}). Since commands are Lisp functions, | |
118 this works for commands too. | |
119 @item C-h h | |
120 Display the @file{HELLO} file, which shows examples of various character | |
121 sets. | |
122 @item C-h i | |
123 Run Info, the GNU documentation browser (@code{info}). | |
124 The complete Emacs manual is available on-line in Info. | |
125 @item C-h k @var{key} | |
126 Display the name and documentation of the command that @var{key} runs | |
127 (@code{describe-key}). | |
128 @item C-h l | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
129 Display a description of your last 300 keystrokes |
84246 | 130 (@code{view-lossage}). |
131 @item C-h m | |
132 Display documentation of the current major mode (@code{describe-mode}). | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
133 @item C-h n |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
134 Display news of recent Emacs changes (@code{view-emacs-news}). |
84246 | 135 @item C-h p |
107951
4cdebb02755e
* help.texi (Help Summary): Mention M-x info-finder.
Glenn Morris <rgm@gnu.org>
parents:
106815
diff
changeset
|
136 Find packages by topic keyword (@code{finder-by-keyword}). For an |
4cdebb02755e
* help.texi (Help Summary): Mention M-x info-finder.
Glenn Morris <rgm@gnu.org>
parents:
106815
diff
changeset
|
137 alternative interface to the same information, try the @code{info-finder} |
4cdebb02755e
* help.texi (Help Summary): Mention M-x info-finder.
Glenn Morris <rgm@gnu.org>
parents:
106815
diff
changeset
|
138 command. |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
139 @item C-h r |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
140 Display the Emacs manual in Info (@code{info-emacs-manual}). |
84246 | 141 @item C-h s |
142 Display the current contents of the syntax table, with an explanation of | |
143 what they mean (@code{describe-syntax}). @xref{Syntax}. | |
144 @item C-h t | |
145 Enter the Emacs interactive tutorial (@code{help-with-tutorial}). | |
146 @item C-h v @var{var} @key{RET} | |
147 Display the documentation of the Lisp variable @var{var} | |
148 (@code{describe-variable}). | |
149 @item C-h w @var{command} @key{RET} | |
150 Show which keys run the command named @var{command} (@code{where-is}). | |
151 @item C-h C @var{coding} @key{RET} | |
152 Describe the coding system @var{coding} | |
153 (@code{describe-coding-system}). | |
154 @item C-h C @key{RET} | |
155 Describe the coding systems currently in use. | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
156 @item C-h F @var{command} @key{RET} |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
157 Enter Info and go to the node that documents the Emacs command |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
158 @var{command} (@code{Info-goto-emacs-command-node}). |
84246 | 159 @item C-h I @var{method} @key{RET} |
160 Describe the input method @var{method} (@code{describe-input-method}). | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
161 @item C-h K @var{key} |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
162 Enter Info and go to the node that documents the key sequence |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
163 @var{key} (@code{Info-goto-emacs-key-command-node}). |
84246 | 164 @item C-h L @var{language-env} @key{RET} |
165 Display information on the character sets, coding systems, and input | |
166 methods used in language environment @var{language-env} | |
167 (@code{describe-language-environment}). | |
168 @item C-h S @var{symbol} @key{RET} | |
169 Display the Info documentation on symbol @var{symbol} according to the | |
170 programming language you are editing (@code{info-lookup-symbol}). | |
171 @item C-h . | |
172 Display the help message for a special text area, if point is in one | |
173 (@code{display-local-help}). (These include, for example, links in | |
174 @samp{*Help*} buffers.) | |
175 @end table | |
176 | |
177 @node Key Help | |
178 @section Documentation for a Key | |
179 | |
180 @kindex C-h c | |
181 @findex describe-key-briefly | |
182 The help commands to get information about a key sequence are | |
183 @kbd{C-h c} and @w{@kbd{C-h k}}. @kbd{C-h c @var{key}} displays in | |
184 the echo area the name of the command that @var{key} is bound to. For | |
185 example, @kbd{C-h c C-f} displays @samp{forward-char}. Since command | |
186 names are chosen to describe what the commands do, this gives you a | |
187 very brief description of what @var{key} does. | |
188 | |
189 @kindex C-h k | |
190 @findex describe-key | |
191 @kbd{C-h k @var{key}} is similar but gives more information: it | |
192 displays the documentation string of the command as well as its name. | |
193 It displays this information in a window, since it may not fit in the | |
194 echo area. | |
195 | |
196 @kindex C-h K | |
197 @findex Info-goto-emacs-key-command-node | |
198 To find the documentation of a key sequence @var{key}, type @kbd{C-h | |
199 K @var{key}}. This displays the appropriate manual section which | |
200 contains the documentation of @var{key}. | |
201 | |
202 @kbd{C-h c}, @kbd{C-h k} and @kbd{C-h K} work for any sort of key | |
203 sequences, including function keys, menus, and mouse events. For | |
204 instance, after @kbd{C-h k} you can select a menu item from the menu | |
205 bar, to view the documentation string of the command it runs. | |
206 | |
207 @kindex C-h w | |
208 @findex where-is | |
209 @kbd{C-h w @var{command} @key{RET}} lists the keys that are bound to | |
210 @var{command}. It displays the list in the echo area. If it says the | |
211 command is not on any key, that means you must use @kbd{M-x} to run | |
212 it. @kbd{C-h w} runs the command @code{where-is}. | |
213 | |
214 @node Name Help | |
215 @section Help by Command or Variable Name | |
216 | |
217 @kindex C-h f | |
218 @findex describe-function | |
219 @kbd{C-h f @var{function} @key{RET}} (@code{describe-function}) | |
220 displays the documentation of Lisp function @var{function}, in a | |
221 window. Since commands are Lisp functions, you can use this method to | |
222 view the documentation of any command whose name you know. For | |
223 example, | |
224 | |
225 @example | |
226 C-h f auto-fill-mode @key{RET} | |
227 @end example | |
228 | |
229 @noindent | |
230 displays the documentation of @code{auto-fill-mode}. This is the only | |
231 way to get the documentation of a command that is not bound to any key | |
232 (one which you would normally run using @kbd{M-x}). | |
233 | |
234 @kbd{C-h f} is also useful for Lisp functions that you use in a Lisp | |
235 program. For example, if you have just written the expression | |
236 @code{(make-vector len)} and want to check that you are using | |
237 @code{make-vector} properly, type @kbd{C-h f make-vector @key{RET}}. | |
238 Because @kbd{C-h f} allows all function names, not just command names, | |
239 you may find that some of your favorite completion abbreviations that | |
240 work in @kbd{M-x} don't work in @kbd{C-h f}. An abbreviation that is | |
241 unique among command names may not be unique among all function names. | |
242 | |
243 If you type @kbd{C-h f @key{RET}}, it describes the function called | |
244 by the innermost Lisp expression in the buffer around point, | |
245 @emph{provided} that function name is a valid, defined Lisp function. | |
246 (That name appears as the default while you enter the argument.) For | |
247 example, if point is located following the text @samp{(make-vector | |
248 (car x)}, the innermost list containing point is the one that starts | |
249 with @samp{(make-vector}, so @kbd{C-h f @key{RET}} will describe the | |
250 function @code{make-vector}. | |
251 | |
252 @kbd{C-h f} is also useful just to verify that you spelled a | |
253 function name correctly. If the minibuffer prompt for @kbd{C-h f} | |
254 shows the function name from the buffer as the default, it means that | |
255 name is defined as a Lisp function. Type @kbd{C-g} to cancel the | |
256 @kbd{C-h f} command if you don't really want to view the | |
257 documentation. | |
258 | |
259 @kindex C-h v | |
260 @findex describe-variable | |
261 @kbd{C-h v} (@code{describe-variable}) is like @kbd{C-h f} but | |
262 describes Lisp variables instead of Lisp functions. Its default is | |
263 the Lisp symbol around or before point, if that is the name of a | |
264 defined Lisp variable. @xref{Variables}. | |
265 | |
266 Help buffers that describe Emacs variables and functions normally | |
267 have hyperlinks to the corresponding source definition, if you have | |
268 the source files installed. (@xref{Hyperlinking}.) If you know Lisp | |
269 (or C), this provides the ultimate documentation. If you don't know | |
270 Lisp, you should learn it. (The Introduction to Emacs Lisp | |
271 Programming, available from the FSF through fsf.org, is a good way to | |
272 get started.) If Emacs feels you are just @emph{using} it, treating | |
273 it as an object program, its feelings may be hurt. For real intimacy, | |
274 read the Emacs source code. | |
275 | |
276 @kindex C-h F | |
277 @findex Info-goto-emacs-command-node | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
278 To find a command's documentation in a manual, use @kbd{C-h F} |
84246 | 279 (@code{Info-goto-emacs-command-node}). This knows about various |
280 manuals, not just the Emacs manual, and finds the right one. | |
281 | |
282 @node Apropos | |
283 @section Apropos | |
284 | |
285 The @dfn{apropos} commands answer questions like, ``What are the | |
286 commands for working with files?'' More precisely, you specify an | |
287 @dfn{apropos pattern}, which means either a word, a list of words, or | |
288 a regular expression. Each apropos command displays a list of items | |
289 that match the pattern, in a separate buffer. | |
290 | |
291 @table @kbd | |
292 @item C-h a @var{pattern} @key{RET} | |
293 Search for commands whose names match @var{pattern}. | |
294 | |
295 @item M-x apropos @key{RET} @var{pattern} @key{RET} | |
296 Search for functions and variables whose names match @var{pattern}. | |
297 Both interactive functions (commands) and noninteractive functions can | |
298 be found by this command. | |
299 | |
300 @item M-x apropos-variable @key{RET} @var{pattern} @key{RET} | |
301 Search for user-option variables whose names match @var{pattern}. | |
302 | |
303 @item M-x apropos-value @key{RET} @var{pattern} @key{RET} | |
86049
c1cef74b41d1
(Help Summary, Apropos, Misc Help): Fix typos.
Martin Rudalics <rudalics@gmx.at>
parents:
84246
diff
changeset
|
304 Search for functions whose definitions match @var{pattern}, and |
c1cef74b41d1
(Help Summary, Apropos, Misc Help): Fix typos.
Martin Rudalics <rudalics@gmx.at>
parents:
84246
diff
changeset
|
305 variables whose values match @var{pattern}. |
84246 | 306 |
307 @item C-h d @var{pattern} @key{RET} | |
308 Search for functions and variables whose @strong{documentation | |
309 strings} match @var{pattern}. | |
310 @end table | |
311 | |
312 @kindex C-h a | |
313 @findex apropos-command | |
314 @cindex apropos | |
315 The simplest kind of apropos pattern is one word. Anything which | |
316 contains that word matches the pattern. Thus, to find the commands | |
317 that work on files, type @kbd{C-h a file @key{RET}}. This displays a | |
318 list of all command names that contain @samp{file}, including | |
319 @code{copy-file}, @code{find-file}, and so on. Each command name | |
320 comes with a brief description and a list of keys you can currently | |
321 invoke it with. In our example, it would say that you can invoke | |
322 @code{find-file} by typing @kbd{C-x C-f}. | |
323 | |
324 The @kbd{a} in @kbd{C-h a} stands for ``Apropos''; @kbd{C-h a} | |
325 runs the command @code{apropos-command}. This command normally checks | |
326 only commands (interactive functions); if you specify a prefix | |
327 argument, it checks noninteractive functions as well. | |
328 | |
329 For more information about a function definition, variable or symbol | |
330 property listed in the apropos buffer, you can click on it with | |
331 @kbd{Mouse-1} or @kbd{Mouse-2}, or move there and type @key{RET}. | |
332 | |
333 When you specify more than one word in the apropos pattern, a name | |
334 must contain at least two of the words in order to match. Thus, if | |
335 you are looking for commands to kill a chunk of text before point, you | |
336 could try @kbd{C-h a kill back backward behind before @key{RET}}. The | |
337 real command name @code{kill-backward} will match that; if there were | |
338 a command @code{kill-text-before}, it would also match, since it | |
339 contains two of the specified words. | |
340 | |
341 For even greater flexibility, you can specify a regular expression | |
342 (@pxref{Regexps}). An apropos pattern is interpreted as a regular | |
343 expression if it contains any of the regular expression special | |
344 characters, @samp{^$*+?.\[}. | |
345 | |
346 Following the conventions for naming Emacs commands, here are some | |
347 words that you'll find useful in apropos patterns. By using them in | |
348 @kbd{C-h a}, you will also get a feel for the naming conventions. | |
349 | |
350 @quotation | |
351 char, line, word, sentence, paragraph, region, page, sexp, list, defun, | |
352 rect, buffer, frame, window, face, file, dir, register, mode, beginning, end, | |
353 forward, backward, next, previous, up, down, search, goto, kill, delete, | |
354 mark, insert, yank, fill, indent, case, change, set, what, list, find, | |
355 view, describe, default. | |
356 @end quotation | |
357 | |
358 @findex apropos | |
359 Use @kbd{M-x apropos} instead of @kbd{C-h a} to list all the Lisp | |
360 symbols that match an apropos pattern, not just the symbols that are | |
361 commands. This command does not list key bindings by default; specify | |
362 a numeric argument if you want it to list them. | |
363 | |
364 @findex apropos-variable | |
365 Use @kbd{M-x apropos-variable} to list user-customizable variables | |
366 that match an apropos pattern. If you specify a prefix argument, it | |
367 lists all matching variables. | |
368 | |
369 @kindex C-h d | |
370 @findex apropos-documentation | |
371 The @code{apropos-documentation} command is like @code{apropos} | |
372 except that it searches documentation strings instead of symbol names | |
373 for matches. | |
374 | |
375 @findex apropos-value | |
376 The @code{apropos-value} command is like @code{apropos} except that | |
377 it searches variables' values for matches for the apropos pattern. | |
378 With a prefix argument, it also checks symbols' function definitions | |
379 and property lists. | |
380 | |
381 @vindex apropos-do-all | |
382 If the variable @code{apropos-do-all} is non-@code{nil}, the apropos | |
383 commands always behave as if they had been given a prefix argument. | |
384 | |
385 @vindex apropos-sort-by-scores | |
386 @cindex apropos search results, order by score | |
387 By default, apropos lists the search results in alphabetical order. | |
388 If the variable @code{apropos-sort-by-scores} is non-@code{nil}, the | |
389 apropos commands try to guess the relevance of each result, and | |
390 display the most relevant ones first. | |
391 | |
392 @vindex apropos-documentation-sort-by-scores | |
393 By default, apropos lists the search results for | |
394 @code{apropos-documentation} in order of relevance of the match. If | |
395 the variable @code{apropos-documentation-sort-by-scores} is | |
396 @code{nil}, apropos lists the symbols found in alphabetical order. | |
397 | |
398 @node Help Mode | |
399 @section Help Mode Commands | |
400 | |
401 Help buffers provide the same commands as View mode (@pxref{Misc File | |
402 Ops}), plus a few special commands of their own. | |
403 | |
404 @table @kbd | |
405 @item @key{SPC} | |
406 Scroll forward. | |
407 @item @key{DEL} | |
408 Scroll backward. | |
409 @item @key{RET} | |
410 Follow a cross reference at point. | |
411 @item @key{TAB} | |
412 Move point forward to the next cross reference. | |
413 @item S-@key{TAB} | |
414 Move point back to the previous cross reference. | |
415 @item Mouse-1 | |
416 @itemx Mouse-2 | |
417 Follow a cross reference that you click on. | |
418 @item C-c C-c | |
419 Show all documentation about the symbol at point. | |
420 @end table | |
421 | |
422 When a function name (@pxref{M-x,, Running Commands by Name}), | |
423 variable name (@pxref{Variables}), or face name (@pxref{Faces}) | |
424 appears in the documentation, it normally appears inside paired | |
425 single-quotes. To view the documentation of that command, variable or | |
426 face, you can click on the name with @kbd{Mouse-1} or @kbd{Mouse-2}, | |
427 or move point there and type @key{RET}. Use @kbd{C-c C-b} to retrace | |
428 your steps. | |
429 | |
430 @cindex URL, viewing in help | |
431 @cindex help, viewing web pages | |
432 @cindex viewing web pages in help | |
433 @cindex web pages, viewing in help | |
434 @findex browse-url | |
435 You can follow cross references to URLs (web pages) also. This uses | |
436 the @code{browse-url} command to view the page in the browser you | |
437 choose. @xref{Browse-URL}. | |
438 | |
439 @kindex @key{TAB} @r{(Help mode)} | |
440 @findex help-next-ref | |
441 @kindex S-@key{TAB} @r{(Help mode)} | |
442 @findex help-previous-ref | |
443 There are convenient commands to move point to cross references in | |
444 the help text. @key{TAB} (@code{help-next-ref}) moves point down to | |
445 the next cross reference. @kbd{S-@key{TAB}} moves up to the previous | |
446 cross reference (@code{help-previous-ref}). | |
447 | |
448 To view all documentation about any symbol name that appears in the | |
449 text, move point to the symbol name and type @kbd{C-c C-c} | |
450 (@code{help-follow-symbol}). This shows all available documentation | |
451 about the symbol as a variable, function and/or face. As above, use | |
452 @kbd{C-c C-b} to retrace your steps. | |
453 | |
454 @node Library Keywords | |
455 @section Keyword Search for Lisp Libraries | |
456 | |
457 @kindex C-h p | |
458 @findex finder-by-keyword | |
459 The @kbd{C-h p} command lets you search the standard Emacs Lisp | |
460 libraries by topic keywords. Here is a partial list of keywords you can | |
461 use: | |
462 | |
463 @multitable {convenience} {aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa} | |
464 @item abbrev@tab abbreviation handling, typing shortcuts, macros. | |
465 @item bib@tab code related to the @code{bib} bibliography processor. | |
466 @item c@tab support for the C language and related languages. | |
467 @item calendar@tab calendar and time management support. | |
468 @item comm@tab communications, networking, remote access to files. | |
469 @item convenience@tab convenience features for faster editing. | |
470 @item data@tab support for editing files of data. | |
471 @item docs@tab support for Emacs documentation. | |
472 @item emulations@tab emulations of other editors. | |
473 @item extensions@tab Emacs Lisp language extensions. | |
474 @item faces@tab support for multiple fonts. | |
475 @item files@tab support for editing and manipulating files. | |
476 @item frames@tab support for Emacs frames and window systems. | |
477 @item games@tab games, jokes and amusements. | |
478 @item hardware@tab support for interfacing with exotic hardware. | |
479 @item help@tab support for on-line help systems. | |
480 @item hypermedia@tab support for links between text or other media types. | |
481 @item i18n@tab internationalization and alternate character-set support. | |
482 @item internal@tab code for Emacs internals, build process, defaults. | |
483 @item languages@tab specialized modes for editing programming languages. | |
484 @item lisp@tab Lisp support, including Emacs Lisp. | |
485 @item local@tab code local to your site. | |
486 @item maint@tab maintenance aids for the Emacs development group. | |
487 @item mail@tab modes for electronic-mail handling. | |
488 @item matching@tab various sorts of searching and matching. | |
489 @item mouse@tab mouse support. | |
490 @item multimedia@tab images and sound support. | |
491 @item news@tab support for netnews reading and posting. | |
492 @item oop@tab support for object-oriented programming. | |
493 @item outlines@tab support for hierarchical outlining. | |
494 @item processes@tab process, subshell, compilation, and job control support. | |
495 @item terminals@tab support for terminal types. | |
496 @item tex@tab supporting code for the @TeX{} formatter. | |
497 @item tools@tab programming tools. | |
498 @item unix@tab front-ends/assistants for, or emulators of, UNIX-like features. | |
499 @item wp@tab word processing. | |
500 @end multitable | |
501 | |
502 @node Language Help | |
503 @section Help for International Language Support | |
504 | |
505 You can use the command @kbd{C-h L} | |
506 (@code{describe-language-environment}) to get information about a | |
507 specific language environment. @xref{Language Environments}. This | |
508 tells you which languages this language environment supports. It also | |
509 lists the character sets, coding systems, and input methods that work | |
510 with this language environment, and finally shows some sample text to | |
511 illustrate scripts. | |
512 | |
513 The command @kbd{C-h h} (@code{view-hello-file}) displays the file | |
514 @file{etc/HELLO}, which shows how to say ``hello'' in many languages. | |
515 | |
516 The command @kbd{C-h I} (@code{describe-input-method}) describes an | |
517 input method---either a specified input method, or by default the | |
518 input method currently in use. @xref{Input Methods}. | |
519 | |
520 The command @kbd{C-h C} (@code{describe-coding-system}) describes | |
521 coding systems---either a specified coding system, or the ones | |
522 currently in use. @xref{Coding Systems}. | |
523 | |
524 @node Misc Help | |
525 @section Other Help Commands | |
526 | |
527 @kindex C-h i | |
528 @findex info | |
529 @cindex Info | |
530 @cindex manuals, on-line | |
531 @cindex on-line manuals | |
532 @kbd{C-h i} (@code{info}) runs the Info program, which browses | |
533 structured documentation files. The entire Emacs manual is available | |
534 within Info, along with many other manuals for the GNU system. Type | |
535 @kbd{h} after entering Info to run a tutorial on using Info. | |
536 | |
537 @cindex find Info manual by its file name | |
538 With a numeric argument @var{n}, @kbd{C-h i} selects the Info buffer | |
539 @samp{*info*<@var{n}>}. This is useful if you want to browse multiple | |
540 Info manuals simultaneously. If you specify just @kbd{C-u} as the | |
541 prefix argument, @kbd{C-h i} prompts for the name of a documentation | |
542 file, so you can browse a file which doesn't have an entry in the | |
543 top-level Info menu. | |
544 | |
545 The help commands @kbd{C-h F @var{function} @key{RET}} and @kbd{C-h | |
546 K @var{key}}, described above, enter Info and go straight to the | |
547 documentation of @var{function} or @var{key}. | |
548 | |
549 @kindex C-h S | |
550 @findex info-lookup-symbol | |
551 When editing a program, if you have an Info version of the manual | |
552 for the programming language, you can use @kbd{C-h S} | |
86049
c1cef74b41d1
(Help Summary, Apropos, Misc Help): Fix typos.
Martin Rudalics <rudalics@gmx.at>
parents:
84246
diff
changeset
|
553 (@code{info-lookup-symbol}) to find an entry for a symbol (keyword, |
c1cef74b41d1
(Help Summary, Apropos, Misc Help): Fix typos.
Martin Rudalics <rudalics@gmx.at>
parents:
84246
diff
changeset
|
554 function or variable) in the proper manual. The details of how this |
c1cef74b41d1
(Help Summary, Apropos, Misc Help): Fix typos.
Martin Rudalics <rudalics@gmx.at>
parents:
84246
diff
changeset
|
555 command works depend on the major mode. |
84246 | 556 |
557 @kindex C-h l | |
558 @findex view-lossage | |
100675
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
559 If something surprising happens, and you are not sure what you typed, |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
560 use @kbd{C-h l} (@code{view-lossage}). @kbd{C-h l} displays your last |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
561 300 input keystrokes. If you see commands that you don't know, you can |
7bd3f6af5679
(Help): Fix typos and reword.
Martin Rudalics <rudalics@gmx.at>
parents:
92356
diff
changeset
|
562 use @kbd{C-h c} to find out what they do. |
84246 | 563 |
564 @kindex C-h e | |
565 @findex view-echo-area-messages | |
566 To review recent echo area messages, use @kbd{C-h e} | |
567 (@code{view-echo-area-messages}). This displays the buffer | |
568 @code{*Messages*}, where those messages are kept. | |
569 | |
570 @kindex C-h m | |
571 @findex describe-mode | |
572 Each Emacs major mode typically redefines a few keys and makes other | |
573 changes in how editing works. @kbd{C-h m} (@code{describe-mode}) | |
574 displays documentation on the current major mode, which normally | |
575 describes the commands and features that are changed in this mode. | |
576 | |
577 @kindex C-h b | |
578 @findex describe-bindings | |
579 @kbd{C-h b} (@code{describe-bindings}) and @kbd{C-h s} | |
580 (@code{describe-syntax}) show other information about the current | |
581 environment within Emacs. @kbd{C-h b} displays a list of all the key | |
582 bindings now in effect: first the local bindings of the current minor | |
583 modes, then the local bindings defined by the current major mode, and | |
584 finally the global bindings (@pxref{Key Bindings}). @kbd{C-h s} | |
585 displays the contents of the syntax table, with explanations of each | |
586 character's syntax (@pxref{Syntax}). | |
587 | |
588 You can get a list of subcommands for a particular prefix key by | |
589 typing @kbd{C-h} after the prefix key. (There are a few prefix keys | |
590 for which this does not work---those that provide their own bindings | |
591 for @kbd{C-h}. One of these is @key{ESC}, because @kbd{@key{ESC} C-h} | |
592 is actually @kbd{C-M-h}, which marks a defun.) | |
593 | |
594 @node Help Files | |
595 @section Help Files | |
596 | |
597 The Emacs help commands described above display dynamic help based | |
598 on the current state within Emacs, or refer to manuals. Other help | |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
599 commands display pre-written, static help files. |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
600 |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
601 Except for @kbd{C-h g}, these commands all have the form @kbd{C-h |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
602 C-@var{char}}; that is, @kbd{C-h} followed by a control character. |
84246 | 603 |
604 @kindex C-h C-c | |
605 @findex describe-copying | |
606 @kindex C-h C-d | |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
607 @findex view-emacs-debugging |
84246 | 608 @kindex C-h C-e |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
609 @findex view-external-packages |
84246 | 610 @kindex C-h C-f |
611 @findex view-emacs-FAQ | |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
612 @kindex C-h g |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
613 @findex describe-gnu-project |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
614 @kindex C-h C-m |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
615 @findex view-order-manuals |
84246 | 616 @kindex C-h C-n |
617 @findex view-emacs-news | |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
618 @kindex C-h C-o |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
619 @findex describe-distribution |
84246 | 620 @kindex C-h C-p |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
621 @findex view-emacs-problems |
84246 | 622 @kindex C-h C-t |
623 @findex view-emacs-todo | |
624 @kindex C-h C-w | |
625 @findex describe-no-warranty | |
626 | |
627 @table @kbd | |
628 @item C-h C-c | |
629 Display the Emacs copying conditions (@code{describe-copying}). | |
630 These are the rules under which you can copy and redistribute Emacs. | |
631 @item C-h C-d | |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
632 Display how to debug Emacs problems (@code{view-emacs-debugging}). |
84246 | 633 @item C-h C-f |
634 Display the Emacs frequently-answered-questions list (@code{view-emacs-FAQ}). | |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
635 @item C-h g |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
636 Display general information about the GNU Project |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
637 (@code{describe-gnu-project}). |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
638 @item C-h C-m |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
639 Display how to order printed copies of Emacs manuals |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
640 (@code{view-order-manuals}). |
84246 | 641 @item C-h C-n |
642 Display the Emacs ``news'' file, which lists new features in the most | |
643 recent version of Emacs (@code{view-emacs-news}). | |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
644 @item C-h C-o |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
645 Display how to order or download the latest version of |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
646 Emacs and other GNU software (@code{describe-distribution}). |
84246 | 647 @item C-h C-p |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
648 Display the list of known Emacs problems, sometimes with suggested |
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
649 workarounds (@code{view-emacs-problems}). |
84246 | 650 @item C-h C-t |
92356
7b94f25b3b30
(Help Files): Move describe-gnu-project to C-h g.
Kim F. Storm <storm@cua.dk>
parents:
87903
diff
changeset
|
651 Display the Emacs to-do list (@code{view-emacs-todo}). |
84246 | 652 @item C-h C-w |
653 Display the full details on the complete absence of warranty for GNU | |
654 Emacs (@code{describe-no-warranty}). | |
655 @end table | |
656 | |
657 @node Help Echo | |
658 @section Help on Active Text and Tooltips | |
659 | |
660 @cindex tooltips | |
661 @cindex balloon help | |
86432 | 662 When text on the screen is ``active'', so that it does something |
663 special in response to mouse clicks or @kbd{RET}, it often has associated | |
664 help text. For instance, most parts of the mode line have help text. On | |
665 terminals that support mouse tracking, Emacs displays the help text as a | |
666 ``tooltip'' (sometimes known as ``balloon help'') or in the echo area, | |
667 whenever you leave the mouse stationary over the active text. | |
668 @xref{Tooltips}. | |
84246 | 669 |
670 @kindex C-h . | |
671 @findex display-local-help | |
672 @vindex help-at-pt-display-when-idle | |
86432 | 673 If your terminal doesn't support mouse-tracking, you can display the |
674 help text for active buffer text using the keyboard. @kbd{C-h .} | |
675 (@code{display-local-help}) displays any help text associated with the | |
676 character after point, using the echo area. To display help text | |
677 automatically whenever it is available on the character after point, set | |
678 the variable @code{help-at-pt-display-when-idle} to @code{t}. | |
84246 | 679 |
680 @ignore | |
681 arch-tag: 6f33ab62-bc75-4367-8057-fd67cc15c3a1 | |
682 @end ignore |