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