annotate man/help.texi @ 89440:06b495fd070a

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