]> code.delx.au - gnu-emacs/blob - doc/emacs/help.texi
Quote less in manuals
[gnu-emacs] / doc / emacs / help.texi
1 @c This is part of the Emacs manual.
2 @c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software
3 @c Foundation, Inc.
4 @c See file emacs.texi for copying conditions.
5 @node Help
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 @kindex C-h C-h
15 @findex help-for-help
16 Emacs provides a wide variety of help commands, all accessible
17 through the prefix key @kbd{C-h} (or, equivalently, the function key
18 @key{F1}). These help commands are described in the following
19 sections. You can also type @kbd{C-h C-h} to view a list of help
20 commands (@code{help-for-help}). You can scroll the list with
21 @key{SPC} and @key{DEL}, then type the help command you want. To
22 cancel, type @kbd{C-g}.
23
24 Many help commands display their information in a special @dfn{help
25 buffer}. In this buffer, you can type @key{SPC} and @key{DEL} to
26 scroll and type @key{RET} to follow hyperlinks. @xref{Help Mode}.
27
28 @cindex searching documentation efficiently
29 @cindex looking for a subject in documentation
30 If you are looking for a certain feature, but don't know what it is
31 called or where to look, we recommend three methods. First, try an
32 apropos command, then try searching the manual index, then look in the
33 FAQ and the package keywords.
34
35 @table @kbd
36 @item C-h a @var{topics} @key{RET}
37 This searches for commands whose names match the argument
38 @var{topics}. The argument can be a keyword, a list of keywords, or a
39 regular expression (@pxref{Regexps}). @xref{Apropos}.
40
41 @item C-h i d m emacs @key{RET} i @var{topic} @key{RET}
42 This searches for @var{topic} in the indices of the Emacs Info manual,
43 displaying the first match found. Press @kbd{,} to see subsequent
44 matches. You can use a regular expression as @var{topic}.
45
46 @item C-h i d m emacs @key{RET} s @var{topic} @key{RET}
47 Similar, but searches the @emph{text} of the manual rather than the
48 indices.
49
50 @item C-h C-f
51 This displays the Emacs FAQ, using Info.
52
53 @item C-h p
54 This displays the available Emacs packages based on keywords.
55 @xref{Package Keywords}.
56 @end table
57
58 @kbd{C-h} or @key{F1} mean ``help'' in various other contexts as
59 well. For instance, you can type them after a prefix key to view a
60 list of the keys that can follow the prefix key. (You can also use
61 @kbd{?} in this context. A few prefix keys don't support @kbd{C-h}
62 or @kbd{?} in this way, because they define other meanings for those
63 inputs, but they all support @key{F1}.)
64
65 @menu
66 * Help Summary:: Brief list of all Help commands.
67 * Key Help:: Asking what a key does in Emacs.
68 * Name Help:: Asking about a command, variable or function name.
69 * Apropos:: Asking what pertains to a given topic.
70 * Help Mode:: Special features of Help mode and Help buffers.
71 * Package Keywords:: Finding Lisp libraries by keywords (topics).
72 * Language Help:: Help relating to international language support.
73 * Misc Help:: Other help commands.
74 * Help Files:: Commands to display auxiliary help files.
75 * Help Echo:: Help on active text and tooltips.
76 @end menu
77
78 @iftex
79 @node Help Summary
80 @end iftex
81 @ifnottex
82 @node Help Summary
83 @section Help Summary
84 @end ifnottex
85
86 Here is a summary of help commands for accessing the built-in
87 documentation. Most of these are described in more detail in the
88 following sections.
89
90 @table @kbd
91 @item C-h a @var{topics} @key{RET}
92 Display a list of commands whose names match @var{topics}
93 (@code{apropos-command}).
94 @item C-h b
95 Display all active key bindings; minor mode bindings first, then those
96 of the major mode, then global bindings (@code{describe-bindings}).
97 @item C-h c @var{key}
98 Show the name of the command that the key sequence @var{key} is bound
99 to (@code{describe-key-briefly}). Here @kbd{c} stands for
100 ``character''. For more extensive information on @var{key}, use
101 @kbd{C-h k}.
102 @item C-h d @var{topics} @key{RET}
103 Display the commands and variables whose documentation matches
104 @var{topics} (@code{apropos-documentation}).
105 @item C-h e
106 Display the @file{*Messages*} buffer
107 (@code{view-echo-area-messages}).
108 @item C-h f @var{function} @key{RET}
109 Display documentation on the Lisp function named @var{function}
110 (@code{describe-function}). Since commands are Lisp functions,
111 this works for commands too.
112 @item C-h h
113 Display the @file{HELLO} file, which shows examples of various character
114 sets.
115 @item C-h i
116 Run Info, the GNU documentation browser (@code{info}). The Emacs
117 manual is available in Info.
118 @item C-h k @var{key}
119 Display the name and documentation of the command that @var{key} runs
120 (@code{describe-key}).
121 @item C-h l
122 Display a description of your last 300 keystrokes
123 (@code{view-lossage}).
124 @item C-h m
125 Display documentation of the current major mode and minor modes
126 (@code{describe-mode}).
127 @item C-h n
128 Display news of recent Emacs changes (@code{view-emacs-news}).
129 @item C-h p
130 Find packages by topic keyword (@code{finder-by-keyword}). This lists
131 packages using a package menu buffer. @xref{Packages}.
132 @item C-h P @var{package} @key{RET}
133 Display documentation about the specified package
134 (@code{describe-package}).
135 @item C-h r
136 Display the Emacs manual in Info (@code{info-emacs-manual}).
137 @item C-h s
138 Display the contents of the current @dfn{syntax table}
139 (@code{describe-syntax}). The syntax table says which characters are
140 opening delimiters, which are parts of words, and so on. @xref{Syntax
141 Tables,, Syntax Tables, elisp, The Emacs Lisp Reference Manual}, for
142 details.
143 @item C-h t
144 Enter the Emacs interactive tutorial (@code{help-with-tutorial}).
145 @item C-h v @var{var} @key{RET}
146 Display the documentation of the Lisp variable @var{var}
147 (@code{describe-variable}).
148 @item C-h w @var{command} @key{RET}
149 Show which keys run the command named @var{command} (@code{where-is}).
150 @item C-h C @var{coding} @key{RET}
151 Describe the coding system @var{coding}
152 (@code{describe-coding-system}).
153 @item C-h C @key{RET}
154 Describe the coding systems currently in use.
155 @item C-h F @var{command} @key{RET}
156 Enter Info and go to the node that documents the Emacs command
157 @var{command} (@code{Info-goto-emacs-command-node}).
158 @item C-h I @var{method} @key{RET}
159 Describe the input method @var{method} (@code{describe-input-method}).
160 @item C-h K @var{key}
161 Enter Info and go to the node that documents the key sequence
162 @var{key} (@code{Info-goto-emacs-key-command-node}).
163 @item C-h L @var{language-env} @key{RET}
164 Display information on the character sets, coding systems, and input
165 methods used in language environment @var{language-env}
166 (@code{describe-language-environment}).
167 @item C-h S @var{symbol} @key{RET}
168 Display the Info documentation on symbol @var{symbol} according to the
169 programming language you are editing (@code{info-lookup-symbol}).
170 @item C-h .
171 Display the help message for a special text area, if point is in one
172 (@code{display-local-help}). (These include, for example, links in
173 @file{*Help*} buffers.)
174 @end table
175
176 @node Key Help
177 @section Documentation for a Key
178
179 @findex describe-key-briefly
180 @findex describe-key
181 The help commands to get information about a key sequence are
182 @kbd{C-h c} (@code{describe-key-briefly}) and @kbd{C-h k}
183 (@code{describe-key}).
184
185 @kindex C-h c
186 @kbd{C-h c @var{key}} displays in the echo area the name of the
187 command that @var{key} is bound to. For example, @kbd{C-h c C-f}
188 displays @samp{forward-char}.
189
190 @cindex documentation string
191 @kindex C-h k
192 @kbd{C-h k @var{key}} is similar but gives more information: it
193 displays a help buffer containing the command's @dfn{documentation
194 string}, which describes exactly what the command does.
195
196 @kindex C-h K
197 @findex Info-goto-emacs-key-command-node
198 @kbd{C-h K @var{key}} displays the section of the Emacs manual that
199 describes the command corresponding to @var{key}.
200
201 @kbd{C-h c}, @kbd{C-h k} and @kbd{C-h K} work for any sort of key
202 sequences, including function keys, menus, and mouse events. For
203 instance, after @kbd{C-h k} you can select a menu item from the menu
204 bar, to view the documentation string of the command it runs.
205
206 @kindex C-h w
207 @findex where-is
208 @kbd{C-h w @var{command} @key{RET}} lists the keys that are bound to
209 @var{command}. It displays the list in the echo area. If it says the
210 command is not on any key, that means you must use @kbd{M-x} to run
211 it. @kbd{C-h w} runs the command @code{where-is}.
212
213 @node Name Help
214 @section Help by Command or Variable Name
215
216 @kindex C-h f
217 @findex describe-function
218 @kbd{C-h f @var{function} @key{RET}} (@code{describe-function})
219 displays the documentation of Lisp function @var{function}, in a
220 window. Since commands are Lisp functions, you can use this method to
221 view the documentation of any command whose name you know. For
222 example,
223
224 @example
225 C-h f auto-fill-mode @key{RET}
226 @end example
227
228 @noindent
229 displays the documentation of @code{auto-fill-mode}. This is the only
230 way to get the documentation of a command that is not bound to any key
231 (one which you would normally run using @kbd{M-x}).
232
233 @kbd{C-h f} is also useful for Lisp functions that you use in a Lisp
234 program. For example, if you have just written the expression
235 @code{(make-vector len)} and want to check that you are using
236 @code{make-vector} properly, type @kbd{C-h f make-vector @key{RET}}.
237 Because @kbd{C-h f} allows all function names, not just command names,
238 you may find that some of your favorite completion abbreviations that
239 work in @kbd{M-x} don't work in @kbd{C-h f}. An abbreviation that is
240 unique among command names may not be unique among all function names.
241
242 If you type @kbd{C-h f @key{RET}}, it describes the function called
243 by the innermost Lisp expression in the buffer around point,
244 @emph{provided} that function name is a valid, defined Lisp function.
245 (That name appears as the default while you enter the argument.) For
246 example, if point is located following the text @samp{(make-vector
247 (car x)}, the innermost list containing point is the one that starts
248 with @samp{(make-vector}, so @kbd{C-h f @key{RET}} describes the
249 function @code{make-vector}.
250
251 @kbd{C-h f} is also useful just to verify that you spelled a
252 function name correctly. If the minibuffer prompt for @kbd{C-h f}
253 shows the function name from the buffer as the default, it means that
254 name is defined as a Lisp function. Type @kbd{C-g} to cancel the
255 @kbd{C-h f} command if you don't really want to view the
256 documentation.
257
258 @kindex C-h v
259 @findex describe-variable
260 @kbd{C-h v} (@code{describe-variable}) is like @kbd{C-h f} but
261 describes Lisp variables instead of Lisp functions. Its default is
262 the Lisp symbol around or before point, if that is the name of a
263 defined Lisp variable. @xref{Variables}.
264
265 Help buffers that describe Emacs variables and functions normally
266 have hyperlinks to the corresponding source code, if you have the
267 source files installed (@pxref{Hyperlinking}).
268
269 @kindex C-h F
270 @findex Info-goto-emacs-command-node
271 To find a command's documentation in a manual, use @kbd{C-h F}
272 (@code{Info-goto-emacs-command-node}). This knows about various
273 manuals, not just the Emacs manual, and finds the right one.
274
275 @node Apropos
276 @section Apropos
277 @cindex apropos
278
279 The @dfn{apropos} commands answer questions like, ``What are the
280 commands for working with files?'' More precisely, you specify an
281 @dfn{apropos pattern}, which means either a word, a list of words, or
282 a regular expression.
283
284 Each of the following apropos commands reads an apropos pattern in
285 the minibuffer, searches for items that match the pattern, and
286 displays the results in a different window.
287
288 @table @kbd
289 @item C-h a
290 @kindex C-h a
291 @findex apropos-command
292 Search for commands (@code{apropos-command}). With a prefix argument,
293 search for noninteractive functions too.
294
295 @item M-x apropos
296 @findex apropos
297 Search for functions and variables. Both interactive functions
298 (commands) and noninteractive functions can be found by this.
299
300 @item M-x apropos-user-option
301 @findex apropos-user-option
302 Search for user-customizable variables. With a prefix argument,
303 search for non-customizable variables too.
304
305 @item M-x apropos-variable
306 @findex apropos-variable
307 Search for variables. With a prefix argument, search for
308 customizable variables only.
309
310 @item M-x apropos-value
311 @findex apropos-value
312 Search for variables whose values match the specified pattern. With a
313 prefix argument, search also for functions with definitions matching
314 the pattern, and Lisp symbols with properties matching the pattern.
315
316 @item C-h d
317 @kindex C-h d
318 @findex apropos-documentation
319 Search for functions and variables whose documentation strings match
320 the specified pattern (@code{apropos-documentation}).
321 @end table
322
323 The simplest kind of apropos pattern is one word. Anything
324 containing that word matches the pattern. Thus, to find commands that
325 work on files, type @kbd{C-h a file @key{RET}}. This displays a list
326 of all command names that contain @samp{file}, including
327 @code{copy-file}, @code{find-file}, and so on. Each command name
328 comes with a brief description and a list of keys you can currently
329 invoke it with. In our example, it would say that you can invoke
330 @code{find-file} by typing @kbd{C-x C-f}.
331
332 For more information about a function definition, variable or symbol
333 property listed in an apropos buffer, you can click on it with
334 @kbd{Mouse-1} or @kbd{Mouse-2}, or move there and type @key{RET}.
335
336 When you specify more than one word in the apropos pattern, a name
337 must contain at least two of the words in order to match. Thus, if
338 you are looking for commands to kill a chunk of text before point, you
339 could try @kbd{C-h a kill back backward behind before @key{RET}}. The
340 real command name @code{kill-backward} will match that; if there were
341 a command @code{kill-text-before}, it would also match, since it
342 contains two of the specified words.
343
344 For even greater flexibility, you can specify a regular expression
345 (@pxref{Regexps}). An apropos pattern is interpreted as a regular
346 expression if it contains any of the regular expression special
347 characters, @samp{^$*+?.\[}.
348
349 Following the conventions for naming Emacs commands, here are some
350 words that you'll find useful in apropos patterns. By using them in
351 @kbd{C-h a}, you will also get a feel for the naming conventions.
352
353 @quotation
354 char, line, word, sentence, paragraph, region, page, sexp, list, defun,
355 rect, buffer, frame, window, face, file, dir, register, mode, beginning, end,
356 forward, backward, next, previous, up, down, search, goto, kill, delete,
357 mark, insert, yank, fill, indent, case, change, set, what, list, find,
358 view, describe, default.
359 @end quotation
360
361 @vindex apropos-do-all
362 If the variable @code{apropos-do-all} is non-@code{nil}, most
363 apropos commands behave as if they had been given a prefix argument.
364 There is one exception: @code{apropos-variable} without a prefix
365 argument will always search for all variables, no matter what the
366 value of @code{apropos-do-all} is.
367
368 @vindex apropos-sort-by-scores
369 @cindex apropos search results, order by score
370 @vindex apropos-documentation-sort-by-scores
371 By default, all apropos commands except @code{apropos-documentation}
372 list their results in alphabetical order. If the variable
373 @code{apropos-sort-by-scores} is non-@code{nil}, these commands
374 instead try to guess the relevance of each result, and display the
375 most relevant ones first. The @code{apropos-documentation} command
376 lists its results in order of relevance by default; to list them in
377 alphabetical order, change the variable
378 @code{apropos-documentation-sort-by-scores} to @code{nil}.
379
380 @node Help Mode
381 @section Help Mode Commands
382
383 Help buffers provide the same commands as View mode (@pxref{View
384 Mode}); for instance, @key{SPC} scrolls forward, and @key{DEL} or
385 @kbd{S-@key{SPC}} scrolls backward. A few special commands are also
386 provided:
387
388 @table @kbd
389 @item @key{RET}
390 Follow a cross reference at point (@code{help-follow}).
391 @item @key{TAB}
392 Move point forward to the next hyperlink (@code{forward-button}).
393 @item S-@key{TAB}
394 Move point back to the previous hyperlink (@code{backward-button}).
395 @item Mouse-1
396 @itemx Mouse-2
397 Follow a hyperlink that you click on.
398 @item C-c C-c
399 Show all documentation about the symbol at point
400 (@code{help-follow-symbol}).
401 @item C-c C-b
402 Go back to the previous help topic (@code{help-go-back}).
403 @end table
404
405 @cindex hyperlink
406 @findex help-follow
407 @findex help-go-back
408 @kindex RET @r{(Help mode)}
409 @kindex C-c C-b @r{(Help mode)}
410 When a function name, variable name, or face name (@pxref{Faces})
411 appears in the documentation in the help buffer, it is normally an
412 underlined @dfn{hyperlink}. To view the associated documentation,
413 move point there and type @key{RET} (@code{help-follow}), or click on
414 the hyperlink with @kbd{Mouse-1} or @kbd{Mouse-2}. Doing so replaces
415 the contents of the help buffer; to retrace your steps, type @kbd{C-c
416 C-b} (@code{help-go-back}).
417
418 @cindex URL, viewing in help
419 @cindex help, viewing web pages
420 @cindex viewing web pages in help
421 @cindex web pages, viewing in help
422 @findex browse-url
423 A help buffer can also contain hyperlinks to Info manuals, source
424 code definitions, and URLs (web pages). The first two are opened in
425 Emacs, and the third using a web browser via the @code{browse-url}
426 command (@pxref{Browse-URL}).
427
428 @kindex TAB @r{(Help mode)}
429 @findex forward-button
430 @kindex S-TAB @r{(Help mode)}
431 @findex backward-button
432 In a help buffer, @key{TAB} (@code{forward-button}) moves point
433 forward to the next hyperlink, while @kbd{S-@key{TAB}}
434 (@code{backward-button}) point back to the previous hyperlink. These
435 commands act cyclically; for instance, typing @key{TAB} at the last
436 hyperlink moves back to the first hyperlink.
437
438 To view all documentation about any symbol in the text, move point
439 to there and type @kbd{C-c C-c} (@code{help-follow-symbol}). This
440 shows all available documentation about the symbol---as a variable,
441 function and/or face.
442
443 @node Package Keywords
444 @section Keyword Search for Packages
445 @cindex finder
446
447 Most optional features in Emacs are grouped into @dfn{packages}.
448 Emacs contains several hundred built-in packages, and more can be
449 installed over the network (@pxref{Packages}).
450
451 @kindex C-h p
452 @findex finder-by-keyword
453 To make it easier to find packages related to a topic, most packages
454 are associated with one or more @dfn{keywords} based on what they do.
455 Type @kbd{C-h p} (@code{finder-by-keyword}) to bring up a list of
456 package keywords, together with a description of what the keywords
457 mean. To view a list of packages for a given keyword, type @key{RET}
458 on that line; this displays the list of packages in a Package Menu
459 buffer (@pxref{Package Menu}).
460
461 @findex describe-package
462 @kindex C-h P
463 @kbd{C-h P} (@code{describe-package}) prompts for the name of a
464 package, and displays a help buffer describing the attributes of the
465 package and the features that it implements. The buffer lists the
466 keywords that relate to the package in the form of buttons. Click on
467 a button to see other packages related to that keyword.
468
469 @node Language Help
470 @section Help for International Language Support
471
472 For information on a specific language environment (@pxref{Language
473 Environments}), type @kbd{C-h L}
474 (@code{describe-language-environment}). This displays a help buffer
475 describing the languages supported by the language environment, and
476 listing the associated character sets, coding systems, and input
477 methods, as well as some sample text for that language environment.
478
479 The command @kbd{C-h h} (@code{view-hello-file}) displays the file
480 @file{etc/HELLO}, which demonstrates various character sets by showing
481 how to say ``hello'' in many languages.
482
483 The command @kbd{C-h I} (@code{describe-input-method}) describes an
484 input method---either a specified input method, or by default the
485 input method currently in use. @xref{Input Methods}.
486
487 The command @kbd{C-h C} (@code{describe-coding-system}) describes
488 coding systems---either a specified coding system, or the ones
489 currently in use. @xref{Coding Systems}.
490
491 @node Misc Help
492 @section Other Help Commands
493
494 @kindex C-h i
495 @findex info
496 @cindex Info
497 @cindex manuals, included
498 @kbd{C-h i} (@code{info}) runs the Info program, which browses
499 structured documentation files. The entire Emacs manual is available
500 within Info, along with many other manuals for the GNU system. Type
501 @kbd{h} after entering Info to run a tutorial on using Info.
502
503 @cindex find Info manual by its file name
504 With a numeric argument @var{n}, @kbd{C-h i} selects the Info buffer
505 @samp{*info*<@var{n}>}. This is useful if you want to browse multiple
506 Info manuals simultaneously. If you specify just @kbd{C-u} as the
507 prefix argument, @kbd{C-h i} prompts for the name of a documentation
508 file, so you can browse a file which doesn't have an entry in the
509 top-level Info menu.
510
511 The help commands @kbd{C-h F @var{function} @key{RET}} and @kbd{C-h
512 K @var{key}}, described above, enter Info and go straight to the
513 documentation of @var{function} or @var{key}.
514
515 @kindex C-h S
516 @findex info-lookup-symbol
517 When editing a program, if you have an Info version of the manual
518 for the programming language, you can use @kbd{C-h S}
519 (@code{info-lookup-symbol}) to find an entry for a symbol (keyword,
520 function or variable) in the proper manual. The details of how this
521 command works depend on the major mode.
522
523 @kindex C-h l
524 @findex view-lossage
525 If something surprising happens, and you are not sure what you typed,
526 use @kbd{C-h l} (@code{view-lossage}). @kbd{C-h l} displays your last
527 300 input keystrokes. If you see commands that you don't know, you can
528 use @kbd{C-h c} to find out what they do.
529
530 @kindex C-h e
531 @findex view-echo-area-messages
532 To review recent echo area messages, use @kbd{C-h e}
533 (@code{view-echo-area-messages}). This displays the buffer
534 @file{*Messages*}, where those messages are kept.
535
536 @kindex C-h m
537 @findex describe-mode
538 Each Emacs major mode typically redefines a few keys and makes other
539 changes in how editing works. @kbd{C-h m} (@code{describe-mode})
540 displays documentation on the current major mode, which normally
541 describes the commands and features that are changed in this mode.
542
543 @kindex C-h b
544 @findex describe-bindings
545 @kindex C-h s
546 @findex describe-syntax
547 @kbd{C-h b} (@code{describe-bindings}) and @kbd{C-h s}
548 (@code{describe-syntax}) show other information about the current
549 environment within Emacs. @kbd{C-h b} displays a list of all the key
550 bindings now in effect: first the local bindings of the current minor
551 modes, then the local bindings defined by the current major mode, and
552 finally the global bindings (@pxref{Key Bindings}). @kbd{C-h s}
553 displays the contents of the syntax table, with explanations of each
554 character's syntax (@pxref{Syntax Tables,, Syntax Tables, elisp, The
555 Emacs Lisp Reference Manual}).
556
557 @findex describe-prefix-bindings
558 You can get a list of subcommands for a particular prefix key by
559 typing @kbd{C-h}, @kbd{?}, or @key{F1}
560 (@code{describe-prefix-bindings}) after the prefix key. (There are a
561 few prefix keys for which not all of these keys work---those that
562 provide their own bindings for that key. One of these prefix keys
563 is @key{ESC}, because @kbd{@key{ESC} C-h} is actually @kbd{C-M-h},
564 which marks a defun. However, @kbd{@key{ESC} @key{F1}} and
565 @kbd{@key{ESC} ?} work fine.)
566
567 @node Help Files
568 @section Help Files
569
570 Apart from the built-in documentation and manuals, Emacs contains
571 several other files describing topics like copying conditions, release
572 notes, instructions for debugging and reporting bugs, and so forth.
573 You can use the following commands to view these files. Apart from
574 @kbd{C-h g}, they all have the form @kbd{C-h C-@var{char}}.
575
576 @kindex C-h C-c
577 @findex describe-copying
578 @kindex C-h C-d
579 @findex view-emacs-debugging
580 @kindex C-h C-e
581 @findex view-external-packages
582 @kindex C-h C-f
583 @findex view-emacs-FAQ
584 @kindex C-h g
585 @findex describe-gnu-project
586 @kindex C-h C-m
587 @findex view-order-manuals
588 @kindex C-h C-n
589 @findex view-emacs-news
590 @kindex C-h C-o
591 @findex describe-distribution
592 @kindex C-h C-p
593 @findex view-emacs-problems
594 @kindex C-h C-t
595 @findex view-emacs-todo
596 @kindex C-h C-w
597 @findex describe-no-warranty
598
599 @table @kbd
600 @item C-h C-c
601 Display the rules under which you can copy and redistribute Emacs
602 (@code{describe-copying}).
603 @item C-h C-d
604 Display help for debugging Emacs (@code{view-emacs-debugging}).
605 @item C-h C-e
606 Display information about where to get external packages
607 (@code{view-external-packages}).
608 @item C-h C-f
609 Display the Emacs frequently-answered-questions list (@code{view-emacs-FAQ}).
610 @item C-h g
611 Visit a @uref{http://www.gnu.org} page with information about the GNU
612 Project (@code{describe-gnu-project}).
613 @item C-h C-m
614 Display information about ordering printed copies of Emacs manuals
615 (@code{view-order-manuals}).
616 @item C-h C-n
617 Display the news, which lists the new features in this
618 version of Emacs (@code{view-emacs-news}).
619 @item C-h C-o
620 Display how to order or download the latest version of
621 Emacs and other GNU software (@code{describe-distribution}).
622 @item C-h C-p
623 Display the list of known Emacs problems, sometimes with suggested
624 workarounds (@code{view-emacs-problems}).
625 @item C-h C-t
626 Display the Emacs to-do list (@code{view-emacs-todo}).
627 @item C-h C-w
628 Display the full details on the complete absence of warranty for GNU
629 Emacs (@code{describe-no-warranty}).
630 @end table
631
632 @node Help Echo
633 @section Help on Active Text and Tooltips
634
635 @cindex tooltips
636 @cindex balloon help
637 In Emacs, stretches of active text (text that does something
638 special in response to mouse clicks or @key{RET}) often have
639 associated help text. This includes hyperlinks in Emacs buffers, as
640 well as parts of the mode line. On graphical displays, as well as
641 some text terminals which support mouse tracking, moving the mouse
642 over the active text displays the help text as a @dfn{tooltip}.
643 @xref{Tooltips}.
644
645 @kindex C-h .
646 @findex display-local-help
647 @vindex help-at-pt-display-when-idle
648 On terminals that don't support mouse-tracking, you can display the
649 help text for active buffer text at point by typing @kbd{C-h .}
650 (@code{display-local-help}). This shows the help text in the echo
651 area. To display help text automatically whenever it is available at
652 point, set the variable @code{help-at-pt-display-when-idle} to
653 @code{t}.