Commit | Line | Data |
---|---|---|
681ebc33 | 1 | \input texinfo @c -*- coding: utf-8 -*- |
8cf51b2c | 2 | |
92f9b43f | 3 | @setfilename ../../info/emacs |
8cf51b2c GM |
4 | @settitle GNU Emacs Manual |
5 | ||
bbba8869 GM |
6 | @c The edition number appears in more than one place in this file |
7 | @c I don't really know what it means... | |
8 | @c For example, it has said "Sixteenth" since sometime in the Emacs 22 | |
9 | @c series, all through 23, and into 24. So it is not very useful IMO, | |
10 | @c and offers nothing that EMACSVER does not. I guess it relates | |
11 | @c mainly to the published book sold by the FSF. Hence no longer | |
12 | @c bother including it except iftex. Really, I think it should not be | |
13 | @c here at all (since anyone can make a pdf version), but should just | |
14 | @c be something added by the FSF during the publishing process. | |
15 | @c Also, the lispref uses a float (3.0), whereas this uses an ordinal, | |
16 | @c so the format is not even consistent. | |
166bc0c8 | 17 | @set EDITION Seventeenth |
f7a31f11 | 18 | @include emacsver.texi |
8cf51b2c GM |
19 | |
20 | @copying | |
bbba8869 | 21 | @iftex |
8cf51b2c | 22 | This is the @value{EDITION} edition of the @cite{GNU Emacs Manual},@* |
bbba8869 GM |
23 | @end iftex |
24 | @ifnottex | |
25 | This is the @cite{GNU Emacs Manual}, | |
26 | @end ifnottex | |
8cf51b2c GM |
27 | updated for Emacs version @value{EMACSVER}. |
28 | ||
6bc383b1 | 29 | Copyright @copyright{} 1985--1987, 1993--2014 Free Software Foundation, Inc. |
8cf51b2c GM |
30 | |
31 | @quotation | |
32 | Permission is granted to copy, distribute and/or modify this document | |
4b121911 | 33 | under the terms of the GNU Free Documentation License, Version 1.3 or |
8cf51b2c GM |
34 | any later version published by the Free Software Foundation; with the |
35 | Invariant Sections being ``The GNU Manifesto,'' ``Distribution'' and | |
36 | ``GNU GENERAL PUBLIC LICENSE,'' with the Front-Cover texts being ``A GNU | |
37 | Manual,'' and with the Back-Cover Texts as in (a) below. A copy of the | |
38 | license is included in the section entitled ``GNU Free Documentation | |
39 | License.'' | |
40 | ||
8e65d46c GM |
41 | (a) The FSF's Back-Cover Text is: ``You have the freedom to copy and |
42 | modify this GNU manual. Buying copies from the FSF supports it in | |
8cf51b2c GM |
43 | developing GNU and promoting software freedom.'' |
44 | @end quotation | |
45 | @end copying | |
46 | ||
681ebc33 | 47 | @documentencoding UTF-8 |
6446548e | 48 | |
8cf51b2c GM |
49 | @dircategory Emacs |
50 | @direntry | |
f9405d87 | 51 | * Emacs: (emacs). The extensible self-documenting text editor. |
8cf51b2c GM |
52 | @end direntry |
53 | ||
54 | @c in general, keep the following line commented out, unless doing a | |
55 | @c copy of this manual that will be published. The manual should go | |
56 | @c onto the distribution in the full, 8.5 x 11" size. | |
84f4a531 | 57 | @c @set smallbook |
8cf51b2c GM |
58 | |
59 | @ifset smallbook | |
60 | @smallbook | |
61 | @end ifset | |
62 | ||
63 | @c per rms and peterb, use 10pt fonts for the main text, mostly to | |
64 | @c save on paper cost. | |
65 | @c Do this inside @tex for now, so current makeinfo does not complain. | |
66 | @tex | |
67 | @ifset smallbook | |
68 | @fonttextsize 10 | |
8cf51b2c GM |
69 | @end ifset |
70 | \global\hbadness=6666 % don't worry about not-too-underfull boxes | |
71 | @end tex | |
72 | ||
73 | @defcodeindex op | |
74 | @synindex pg cp | |
75 | ||
76 | @iftex | |
77 | @kbdinputstyle code | |
78 | ||
79 | @shorttitlepage GNU Emacs Manual | |
80 | @end iftex | |
81 | ||
82 | @titlepage | |
83 | @sp 6 | |
84 | @center @titlefont{GNU Emacs Manual} | |
85 | @sp 4 | |
86 | @center @value{EDITION} Edition, Updated for Emacs Version @value{EMACSVER}. | |
87 | @sp 5 | |
1a72be46 | 88 | @center Richard Stallman et al. |
8cf51b2c GM |
89 | @page |
90 | @vskip 0pt plus 1filll | |
91 | @insertcopying | |
92 | ||
93 | @sp 2 | |
94 | Published by the Free Software Foundation @* | |
95 | 51 Franklin Street, Fifth Floor @* | |
96 | Boston, MA 02110-1301 USA @* | |
0c51ff6d | 97 | ISBN 978-0-9831592-4-7 |
8cf51b2c GM |
98 | |
99 | @sp 2 | |
166bc0c8 | 100 | Cover art by Etienne Suvasa; cover design by Matt Lee. |
8cf51b2c GM |
101 | |
102 | @end titlepage | |
103 | ||
104 | ||
105 | @summarycontents | |
106 | @contents | |
107 | ||
108 | ||
109 | @ifnottex | |
abb9615e | 110 | @node Top |
8cf51b2c GM |
111 | @top The Emacs Editor |
112 | ||
113 | Emacs is the extensible, customizable, self-documenting real-time | |
c0765905 | 114 | display editor. This manual describes how to edit with Emacs and |
2d2f6581 | 115 | some of the ways to customize it; it corresponds to GNU Emacs version |
8cf51b2c GM |
116 | @value{EMACSVER}. |
117 | ||
4899e078 | 118 | @c See `manual-html-mono' and `manual-html-node' in admin/admin.el. |
c0765905 GM |
119 | @ifset WWW_GNU_ORG |
120 | @html | |
121 | The homepage for GNU Emacs is at | |
122 | <a href="/software/emacs/">http://www.gnu.org/software/emacs/</a>.<br> | |
123 | To view this manual in other formats, click | |
124 | <a href="/software/emacs/manual/emacs.html">here</a>.<br> | |
125 | You can also purchase a printed copy from the | |
126 | <a href="http://shop.fsf.org/product/emacs-manual/">FSF store</a>. | |
127 | @end html | |
128 | @end ifset | |
129 | ||
8cf51b2c | 130 | @ifinfo |
2d2f6581 GM |
131 | If you are reading this in Emacs, type @kbd{h} to read a basic |
132 | introduction to the Info documentation system. | |
8cf51b2c GM |
133 | @end ifinfo |
134 | ||
135 | For information on extending Emacs, see @ref{Top, Emacs Lisp,, elisp, The | |
136 | Emacs Lisp Reference Manual}. | |
753ad1de GM |
137 | |
138 | @insertcopying | |
8cf51b2c GM |
139 | @end ifnottex |
140 | ||
2d2f6581 GM |
141 | @c Note that the TeX version generates its own TOC, so the ifnottex's |
142 | @c here are not really necessary. | |
8cf51b2c | 143 | @menu |
8838673e GM |
144 | * Distrib:: How to get the latest Emacs distribution. |
145 | * Intro:: An introduction to Emacs concepts. | |
753ad1de | 146 | |
8cf51b2c | 147 | Important General Concepts |
8838673e GM |
148 | * Screen:: How to interpret what you see on the screen. |
149 | * User Input:: Kinds of input events (characters, buttons, | |
8cf51b2c | 150 | function keys). |
8838673e | 151 | * Keys:: Key sequences: what you type to request one |
8cf51b2c | 152 | editing action. |
8838673e | 153 | * Commands:: Named functions run by key sequences to do editing. |
8cf51b2c | 154 | * Entering Emacs:: Starting Emacs from the shell. |
8838673e | 155 | * Exiting:: Stopping or killing Emacs. |
8cf51b2c GM |
156 | |
157 | Fundamental Editing Commands | |
8838673e GM |
158 | * Basic:: The most basic editing commands. |
159 | * Minibuffer:: Entering arguments that are prompted for. | |
160 | * M-x:: Invoking commands by their names. | |
161 | * Help:: Commands for asking Emacs about its commands. | |
8cf51b2c GM |
162 | |
163 | Important Text-Changing Commands | |
f584ca38 | 164 | * Mark:: The mark: how to delimit a "region" of text. |
2d2f6581 | 165 | * Killing:: Killing (cutting) and yanking (copying) text. |
8838673e GM |
166 | * Registers:: Saving a text string or a location in the buffer. |
167 | * Display:: Controlling what text is displayed. | |
168 | * Search:: Finding or replacing occurrences of a string. | |
169 | * Fixit:: Commands especially useful for fixing typos. | |
6cfd0fa2 | 170 | * Keyboard Macros:: Recording a sequence of keystrokes to be replayed. |
8cf51b2c GM |
171 | |
172 | Major Structures of Emacs | |
8838673e GM |
173 | * Files:: All about handling files. |
174 | * Buffers:: Multiple buffers; editing several files at once. | |
2d2f6581 | 175 | * Windows:: Viewing multiple pieces of text in one frame. |
775b55af | 176 | * Frames:: Using multiple "windows" on your display. |
753ad1de | 177 | * International:: Using non-@acronym{ASCII} character sets. |
8cf51b2c GM |
178 | |
179 | Advanced Features | |
44e97401 | 180 | * Modes:: Major and minor modes alter Emacs's basic behavior. |
8838673e | 181 | * Indentation:: Editing the white space at the beginnings of lines. |
f404f8bc | 182 | * Text:: Commands and modes for editing human languages. |
8838673e GM |
183 | * Programs:: Commands and modes for editing programs. |
184 | * Building:: Compiling, running and debugging programs. | |
8cf51b2c | 185 | * Maintaining:: Features for maintaining large programs. |
2d2f6581 | 186 | * Abbrevs:: Defining text abbreviations to reduce typing. |
e0b1591b CY |
187 | * Dired:: Directory and file manager. |
188 | * Calendar/Diary:: Calendar and diary facilities. | |
8cf51b2c | 189 | * Sending Mail:: Sending mail in Emacs. |
8838673e | 190 | * Rmail:: Reading mail in Emacs. |
6cfd0fa2 | 191 | * Gnus:: A flexible mail and news reader. |
856ce114 | 192 | * Document View:: Viewing PDF, PS and DVI files. |
548a1b28 | 193 | * EWW:: A web browser in Emacs. |
8838673e | 194 | * Shell:: Executing shell commands from Emacs. |
6cfd0fa2 | 195 | * Emacs Server:: Using Emacs as an editing server. |
8838673e GM |
196 | * Printing:: Printing hardcopies of buffers or regions. |
197 | * Sorting:: Sorting lines, paragraphs or pages within Emacs. | |
f404f8bc CY |
198 | @ifnottex |
199 | * Picture Mode:: Editing pictures made up of text characters. | |
200 | @end ifnottex | |
2d2f6581 | 201 | * Editing Binary Files:: Editing binary files with Hexl mode. |
8cf51b2c | 202 | * Saving Emacs Sessions:: Saving Emacs state from one session to the next. |
f404f8bc | 203 | * Recursive Edit:: Performing edits while "within another command". |
8838673e | 204 | * Emulation:: Emulating some other editors with Emacs. |
8cf51b2c | 205 | * Hyperlinking:: Following links in buffers. |
8838673e | 206 | * Amusements:: Various games and hacks. |
d43f5a42 | 207 | * Packages:: Installing additional features. |
8cf51b2c | 208 | * Customization:: Modifying the behavior of Emacs. |
8cf51b2c GM |
209 | |
210 | Recovery from Problems | |
8838673e GM |
211 | * Quitting:: Quitting and aborting. |
212 | * Lossage:: What to do if Emacs is hung or malfunctioning. | |
213 | * Bugs:: How and when to report a bug. | |
8cf51b2c | 214 | * Contributing:: How to contribute improvements to Emacs. |
8838673e | 215 | * Service:: How to get help for your own Emacs needs. |
8cf51b2c | 216 | |
753ad1de | 217 | Appendices |
8838673e GM |
218 | * Copying:: The GNU General Public License gives you permission |
219 | to redistribute GNU Emacs on certain terms; | |
220 | it also explains that there is no warranty. | |
753ad1de GM |
221 | * GNU Free Documentation License:: The license for this documentation. |
222 | * Emacs Invocation:: Hairy startup options. | |
223 | * X Resources:: X resources for customizing Emacs. | |
06848b82 | 224 | * Antinews:: Information about Emacs version 23. |
753ad1de GM |
225 | * Mac OS / GNUstep:: Using Emacs under Mac OS and GNUstep. |
226 | * Microsoft Windows:: Using Emacs on Microsoft Windows and MS-DOS. | |
8838673e | 227 | * Manifesto:: What's GNU? Gnu's Not Unix! |
753ad1de | 228 | |
6edc3d28 CY |
229 | * Glossary:: Terms used in this manual. |
230 | @ifnottex | |
231 | * Acknowledgments:: Major contributors to GNU Emacs. | |
232 | @end ifnottex | |
233 | ||
234 | Indexes (each index contains a large menu) | |
235 | * Key Index:: An item for each standard Emacs key sequence. | |
236 | * Option Index:: An item for every command-line option. | |
237 | * Command Index:: An item for each command name. | |
238 | * Variable Index:: An item for each documented variable. | |
239 | * Concept Index:: An item for each concept. | |
240 | ||
8cf51b2c GM |
241 | @c Do NOT modify the following 3 lines! They must have this form to |
242 | @c be correctly identified by `texinfo-multiple-files-update'. In | |
243 | @c particular, the detailed menu header line MUST be identical to the | |
244 | @c value of `texinfo-master-menu-header'. See texnfo-upd.el. | |
245 | ||
246 | @detailmenu | |
247 | --- The Detailed Node Listing --- | |
248 | --------------------------------- | |
249 | ||
c2fd0368 | 250 | Here are some other nodes which are really subnodes of the ones |
8cf51b2c GM |
251 | already listed, mentioned here so you can get to them in one step: |
252 | ||
253 | The Organization of the Screen | |
254 | ||
8838673e | 255 | * Point:: The place in the text where editing commands operate. |
8cf51b2c | 256 | * Echo Area:: Short messages appear at the bottom of the screen. |
8838673e | 257 | * Mode Line:: Interpreting the mode line. |
8cf51b2c GM |
258 | * Menu Bar:: How to use the menu bar. |
259 | ||
260 | Basic Editing Commands | |
261 | ||
262 | * Inserting Text:: Inserting text by simply typing it. | |
753ad1de GM |
263 | * Moving Point:: Moving the cursor to the place where you want to |
264 | change something. | |
8838673e GM |
265 | * Erasing:: Deleting and killing text. |
266 | * Basic Undo:: Undoing recent changes in the text. | |
8cf51b2c GM |
267 | * Basic Files:: Visiting, creating, and saving files. |
268 | * Basic Help:: Asking what a character does. | |
8838673e | 269 | * Blank Lines:: Making and deleting blank lines. |
753ad1de | 270 | * Continuation Lines:: How Emacs displays lines too wide for the screen. |
b2b0776e | 271 | * Position Info:: What line, row, or column is point on? |
8838673e | 272 | * Arguments:: Numeric arguments for repeating a command N times. |
753ad1de | 273 | * Repeating:: Repeating the previous command quickly. |
8cf51b2c GM |
274 | |
275 | The Minibuffer | |
276 | ||
7d806bfe | 277 | * Basic Minibuffer:: Basic usage of the minibuffer. |
8cf51b2c GM |
278 | * Minibuffer File:: Entering file names with the minibuffer. |
279 | * Minibuffer Edit:: How to edit in the minibuffer. | |
8838673e GM |
280 | * Completion:: An abbreviation facility for minibuffer input. |
281 | * Minibuffer History:: Reusing recent minibuffer arguments. | |
282 | * Repetition:: Re-executing commands that used the minibuffer. | |
8d15c8db | 283 | * Passwords:: Entering passwords in the echo area. |
48de8b12 | 284 | * Yes or No Prompts:: Replying yes or no in the echo area. |
8cf51b2c GM |
285 | |
286 | Completion | |
287 | ||
753ad1de GM |
288 | * Completion Example:: Examples of using completion. |
289 | * Completion Commands:: A list of completion commands. | |
a70e06c1 | 290 | * Completion Exit:: Completion and minibuffer text submission. |
27a16462 | 291 | * Completion Styles:: How completion matches are chosen. |
753ad1de | 292 | * Completion Options:: Options for completion. |
8cf51b2c GM |
293 | |
294 | Help | |
295 | ||
8838673e GM |
296 | * Help Summary:: Brief list of all Help commands. |
297 | * Key Help:: Asking what a key does in Emacs. | |
298 | * Name Help:: Asking about a command, variable or function name. | |
299 | * Apropos:: Asking what pertains to a given topic. | |
8cf51b2c | 300 | * Help Mode:: Special features of Help mode and Help buffers. |
3dc62b2b | 301 | * Package Keywords:: Finding Lisp libraries by keywords (topics). |
8cf51b2c | 302 | * Language Help:: Help relating to international language support. |
8838673e | 303 | * Misc Help:: Other help commands. |
a7ef684b | 304 | * Help Files:: Commands to display auxiliary help files. |
775b55af | 305 | * Help Echo:: Help on active text and tooltips ("balloon help"). |
8cf51b2c GM |
306 | |
307 | The Mark and the Region | |
308 | ||
8838673e GM |
309 | * Setting Mark:: Commands to set the mark. |
310 | * Marking Objects:: Commands to put region around textual units. | |
311 | * Using Region:: Summary of ways to operate on contents of the region. | |
312 | * Mark Ring:: Previous mark positions saved so you can go back there. | |
02105f6b CY |
313 | * Global Mark Ring:: Previous mark positions in various buffers. |
314 | * Shift Selection:: Using shifted cursor motion keys. | |
e1a3f5b1 | 315 | * Disabled Transient Mark:: Leaving regions unhighlighted by default. |
8cf51b2c GM |
316 | |
317 | Killing and Moving Text | |
318 | ||
2d2f6581 | 319 | * Deletion and Killing:: Commands that remove text. |
a4289d0e | 320 | * Yanking:: Commands that insert text. |
2d2f6581 | 321 | * Cut and Paste:: Clipboard and selections on graphical displays. |
a4289d0e | 322 | * Accumulating Text:: Other methods to add text to the buffer. |
2d2f6581 | 323 | * Rectangles:: Operating on text in rectangular areas. |
a4289d0e | 324 | * CUA Bindings:: Using @kbd{C-x}/@kbd{C-c}/@kbd{C-v} to kill and yank. |
2d2f6581 GM |
325 | |
326 | Deletion and Killing | |
327 | ||
8838673e GM |
328 | * Deletion:: Commands for deleting small amounts of text and |
329 | blank areas. | |
330 | * Killing by Lines:: How to kill entire lines of text at one time. | |
8cf51b2c | 331 | * Other Kill Commands:: Commands to kill large regions of text and |
8838673e | 332 | syntactic units such as words and sentences. |
91ed7ea8 | 333 | * Kill Options:: Options that affect killing. |
8cf51b2c GM |
334 | |
335 | Yanking | |
336 | ||
50b063c3 | 337 | * Kill Ring:: Where killed text is stored. |
8838673e | 338 | * Earlier Kills:: Yanking something killed some time ago. |
50b063c3 | 339 | * Appending Kills:: Several kills in a row all yank together. |
8cf51b2c | 340 | |
a4289d0e | 341 | "Cut and Paste" Operations on Graphical Displays |
4d45a8b7 | 342 | |
a4289d0e | 343 | * Clipboard:: How Emacs uses the system clipboard. |
4d45a8b7 CY |
344 | * Primary Selection:: The temporarily selected text selection. |
345 | * Secondary Selection:: Cutting without altering point and mark. | |
346 | ||
8cf51b2c GM |
347 | Registers |
348 | ||
ced5cc29 XF |
349 | * Position Registers:: Saving positions in registers. |
350 | * Text Registers:: Saving text in registers. | |
351 | * Rectangle Registers:: Saving rectangles in registers. | |
352 | * Configuration Registers:: Saving window configurations in registers. | |
353 | * Number Registers:: Numbers in registers. | |
354 | * File Registers:: File names in registers. | |
355 | * Keyboard Macro Registers:: Keyboard macros in registers. | |
356 | * Bookmarks:: Bookmarks are like registers, but persistent. | |
8cf51b2c GM |
357 | |
358 | Controlling the Display | |
359 | ||
8838673e | 360 | * Scrolling:: Commands to move text up and down in a window. |
a4289d0e | 361 | * Recentering:: A scroll command that centers the current line. |
8cf51b2c GM |
362 | * Auto Scrolling:: Redisplay scrolls text automatically when needed. |
363 | * Horizontal Scrolling:: Moving text left and right in a window. | |
f404f8bc CY |
364 | * Narrowing:: Restricting display and editing to a portion |
365 | of the buffer. | |
a6326082 | 366 | * View Mode:: Viewing read-only buffers. |
8cf51b2c | 367 | * Follow Mode:: Follow mode lets two windows scroll as one. |
8838673e | 368 | * Faces:: How to change the display style using faces. |
8863a584 | 369 | * Colors:: Specifying colors for faces. |
44e97401 | 370 | * Standard Faces:: The main predefined faces. |
d366bd53 | 371 | * Text Scale:: Increasing or decreasing text size in a buffer. |
8cf51b2c GM |
372 | * Font Lock:: Minor mode for syntactic highlighting using faces. |
373 | * Highlight Interactively:: Tell Emacs what text to highlight. | |
374 | * Fringes:: Enabling or disabling window fringes. | |
375 | * Displaying Boundaries:: Displaying top and bottom of the buffer. | |
2d2f6581 | 376 | * Useless Whitespace:: Showing possibly spurious trailing whitespace. |
8cf51b2c GM |
377 | * Selective Display:: Hiding lines with lots of indentation. |
378 | * Optional Mode Line:: Optional mode line display features. | |
379 | * Text Display:: How text characters are normally displayed. | |
380 | * Cursor Display:: Features for displaying the cursor. | |
381 | * Line Truncation:: Truncating lines to fit the screen width instead | |
382 | of continuing them to multiple screen lines. | |
4c2e2be9 | 383 | * Visual Line Mode:: Word wrap and screen line-based editing. |
8cf51b2c GM |
384 | * Display Custom:: Information on variables for customizing display. |
385 | ||
386 | Searching and Replacement | |
387 | ||
8838673e | 388 | * Incremental Search:: Search happens as you type the string. |
8cf51b2c | 389 | * Nonincremental Search:: Specify entire string and then search. |
8838673e | 390 | * Word Search:: Search for sequence of words. |
05b621a6 | 391 | * Symbol Search:: Search for a source code symbol. |
8838673e GM |
392 | * Regexp Search:: Search for match for a regexp. |
393 | * Regexps:: Syntax of regular expressions. | |
8cf51b2c GM |
394 | * Regexp Backslash:: Regular expression constructs starting with `\'. |
395 | * Regexp Example:: A complex regular expression explained. | |
8838673e GM |
396 | * Search Case:: To ignore case while searching, or not. |
397 | * Replace:: Search, and replace some or all matches. | |
8cf51b2c GM |
398 | * Other Repeating Search:: Operating on all matches for some regexp. |
399 | ||
400 | Incremental Search | |
401 | ||
80fa505f AM |
402 | * Basic Isearch:: Basic incremental search commands. |
403 | * Repeat Isearch:: Searching for the same string again. | |
404 | * Error in Isearch:: When your string is not found. | |
405 | * Special Isearch:: Special input in incremental search. | |
406 | * Isearch Yank:: Commands that grab text into the search string | |
407 | or else edit the search string. | |
408 | * Not Exiting Isearch:: Prefix argument and scrolling commands. | |
409 | * Isearch Minibuffer:: Incremental search of the minibuffer history. | |
8cf51b2c GM |
410 | |
411 | Replacement Commands | |
412 | ||
413 | * Unconditional Replace:: Replacing all matches for a string. | |
8838673e | 414 | * Regexp Replace:: Replacing all matches for a regexp. |
8cf51b2c | 415 | * Replacement and Case:: How replacements preserve case of letters. |
8838673e | 416 | * Query Replace:: How to use querying. |
8cf51b2c GM |
417 | |
418 | Commands for Fixing Typos | |
419 | ||
753ad1de | 420 | * Undo:: The Undo commands. |
8838673e | 421 | * Transpose:: Exchanging two characters, words, lines, lists... |
8cf51b2c | 422 | * Fixing Case:: Correcting case of last word entered. |
8838673e | 423 | * Spelling:: Apply spelling checker to a word, or a whole file. |
8cf51b2c GM |
424 | |
425 | Keyboard Macros | |
426 | ||
427 | * Basic Keyboard Macro:: Defining and running keyboard macros. | |
428 | * Keyboard Macro Ring:: Where previous keyboard macros are saved. | |
429 | * Keyboard Macro Counter:: Inserting incrementing numbers in macros. | |
2d2f6581 GM |
430 | * Keyboard Macro Query:: Making keyboard macros do different things each |
431 | time. | |
432 | * Save Keyboard Macro:: Giving keyboard macros names; saving them in | |
433 | files. | |
8cf51b2c GM |
434 | * Edit Keyboard Macro:: Editing keyboard macros. |
435 | * Keyboard Macro Step-Edit:: Interactively executing and editing a keyboard | |
436 | macro. | |
437 | ||
438 | File Handling | |
439 | ||
440 | * File Names:: How to type and edit file-name arguments. | |
441 | * Visiting:: Visiting a file prepares Emacs to edit the file. | |
442 | * Saving:: Saving makes your changes permanent. | |
443 | * Reverting:: Reverting cancels all the changes not saved. | |
2d2f6581 | 444 | @ifnottex |
8cf51b2c | 445 | * Autorevert:: Auto Reverting non-file buffers. |
2d2f6581 | 446 | @end ifnottex |
8cf51b2c GM |
447 | * Auto Save:: Auto Save periodically protects against loss of data. |
448 | * File Aliases:: Handling multiple names for one file. | |
8cf51b2c GM |
449 | * Directories:: Creating, deleting, and listing file directories. |
450 | * Comparing Files:: Finding where two files differ. | |
753ad1de | 451 | * Diff Mode:: Mode for editing file differences. |
8cf51b2c GM |
452 | * Misc File Ops:: Other things you can do on files. |
453 | * Compressed Files:: Accessing compressed files. | |
454 | * File Archives:: Operating on tar, zip, jar etc. archive files. | |
2d2f6581 | 455 | * Remote Files:: Accessing files on other machines. |
8cf51b2c GM |
456 | * Quoted File Names:: Quoting special characters in file names. |
457 | * File Name Cache:: Completion against a list of files you often use. | |
458 | * File Conveniences:: Convenience Features for Finding Files. | |
459 | * Filesets:: Handling sets of files. | |
460 | ||
461 | Saving Files | |
462 | ||
463 | * Save Commands:: Commands for saving files. | |
464 | * Backup:: How Emacs saves the old version of your file. | |
465 | * Customize Save:: Customizing the saving of files. | |
466 | * Interlocking:: How Emacs protects against simultaneous editing | |
467 | of one file by two users. | |
468 | * File Shadowing:: Copying files to "shadows" automatically. | |
469 | * Time Stamps:: Emacs can update time stamps on saved files. | |
470 | ||
471 | Backup Files | |
472 | ||
8838673e GM |
473 | * Backup Names:: How backup files are named. |
474 | * Backup Deletion:: Emacs deletes excess numbered backups. | |
475 | * Backup Copying:: Backups can be made by copying or renaming. | |
753ad1de | 476 | |
2d2f6581 | 477 | @ifnottex |
753ad1de GM |
478 | Auto Reverting Non-File Buffers |
479 | ||
480 | * Auto Reverting the Buffer Menu:: Auto Revert of the Buffer Menu. | |
481 | * Auto Reverting Dired:: Auto Revert of Dired buffers. | |
482 | * Supporting additional buffers:: How to add more Auto Revert support. | |
2d2f6581 | 483 | @end ifnottex |
8cf51b2c GM |
484 | |
485 | Auto-Saving: Protection Against Disasters | |
486 | ||
753ad1de GM |
487 | * Auto Save Files:: The file where auto-saved changes are |
488 | actually made until you save the file. | |
489 | * Auto Save Control:: Controlling when and how often to auto-save. | |
8838673e | 490 | * Recover:: Recovering text from auto-save files. |
8cf51b2c | 491 | |
8cf51b2c GM |
492 | Using Multiple Buffers |
493 | ||
494 | * Select Buffer:: Creating a new buffer or reselecting an old one. | |
495 | * List Buffers:: Getting a list of buffers that exist. | |
8838673e GM |
496 | * Misc Buffer:: Renaming; changing read-onlyness; copying text. |
497 | * Kill Buffer:: Killing buffers you no longer need. | |
8cf51b2c | 498 | * Several Buffers:: How to go through the list of all buffers |
8838673e | 499 | and operate variously on several of them. |
8cf51b2c GM |
500 | * Indirect Buffers:: An indirect buffer shares the text of another buffer. |
501 | * Buffer Convenience:: Convenience and customization features for | |
502 | buffer handling. | |
503 | ||
753ad1de GM |
504 | Convenience Features and Customization of Buffer Handling |
505 | ||
506 | * Uniquify:: Making buffer names unique with directory parts. | |
ba25559e | 507 | * Icomplete:: Fast minibuffer selection. |
753ad1de GM |
508 | * Buffer Menus:: Configurable buffer menu. |
509 | ||
8cf51b2c GM |
510 | Multiple Windows |
511 | ||
512 | * Basic Window:: Introduction to Emacs windows. | |
513 | * Split Window:: New windows are made by splitting existing windows. | |
514 | * Other Window:: Moving to another window or doing something to it. | |
515 | * Pop Up Window:: Finding a file or buffer in another window. | |
8cf51b2c | 516 | * Change Window:: Deleting windows and changing their sizes. |
0a2132ba | 517 | * Displaying Buffers:: How Emacs picks a window for displaying a buffer. |
8cf51b2c GM |
518 | * Window Convenience:: Convenience functions for window handling. |
519 | ||
a4289d0e | 520 | Displaying a Buffer in a Window |
2d2f6581 GM |
521 | |
522 | * Window Choice:: How @code{display-buffer} works. | |
523 | ||
8cf51b2c GM |
524 | Frames and Graphical Displays |
525 | ||
4d45a8b7 CY |
526 | * Mouse Commands:: Moving, cutting, and pasting, with the mouse. |
527 | * Word and Line Mouse:: Mouse commands for selecting whole words or lines. | |
8cf51b2c GM |
528 | * Mouse References:: Using the mouse to select an item from a list. |
529 | * Menu Mouse Clicks:: Mouse clicks that bring up menus. | |
530 | * Mode Line Mouse:: Mouse clicks on the mode line. | |
531 | * Creating Frames:: Creating additional Emacs frames with various contents. | |
532 | * Frame Commands:: Iconifying, deleting, and switching frames. | |
d68eb23c | 533 | * Fonts:: Changing the frame font. |
8cf51b2c | 534 | * Speedbar:: How to make and use a speedbar frame. |
2d2f6581 | 535 | * Multiple Displays:: How one Emacs instance can talk to several displays. |
8cf51b2c | 536 | * Frame Parameters:: Changing the colors and other modes of frames. |
8838673e | 537 | * Scroll Bars:: How to enable and disable scroll bars; how to use them. |
8cf51b2c | 538 | * Drag and Drop:: Using drag and drop to open files and insert text. |
8838673e | 539 | * Menu Bars:: Enabling and disabling the menu bar. |
8cf51b2c GM |
540 | * Tool Bars:: Enabling and disabling the tool bar. |
541 | * Dialog Boxes:: Controlling use of dialog boxes. | |
753ad1de | 542 | * Tooltips:: Displaying information at the current mouse position. |
a4289d0e | 543 | * Mouse Avoidance:: Preventing the mouse pointer from obscuring text. |
8cf51b2c | 544 | * Non-Window Terminals:: Multiple frames on terminals that show only one. |
0be641c0 | 545 | * Text-Only Mouse:: Using the mouse in text terminals. |
8cf51b2c GM |
546 | |
547 | International Character Set Support | |
548 | ||
549 | * International Chars:: Basic concepts of multibyte characters. | |
8cf51b2c GM |
550 | * Language Environments:: Setting things up for the language you use. |
551 | * Input Methods:: Entering text characters not on your keyboard. | |
552 | * Select Input Method:: Specifying your choice of input methods. | |
8cf51b2c GM |
553 | * Coding Systems:: Character set conversion when you read and |
554 | write files, and so on. | |
555 | * Recognize Coding:: How Emacs figures out which conversion to use. | |
556 | * Specify Coding:: Specifying a file's coding system explicitly. | |
557 | * Output Coding:: Choosing coding systems for output. | |
558 | * Text Coding:: Choosing conversion to use for file text. | |
559 | * Communication Coding:: Coding systems for interprocess communication. | |
560 | * File Name Coding:: Coding systems for file @emph{names}. | |
561 | * Terminal Coding:: Specifying coding systems for converting | |
562 | terminal input and output. | |
563 | * Fontsets:: Fontsets are collections of fonts | |
564 | that cover the whole spectrum of characters. | |
565 | * Defining Fontsets:: Defining a new fontset. | |
753ad1de | 566 | * Modifying Fontsets:: Modifying an existing fontset. |
8cf51b2c GM |
567 | * Undisplayable Characters::When characters don't display. |
568 | * Unibyte Mode:: You can pick one European character set | |
569 | to use without multibyte characters. | |
570 | * Charsets:: How Emacs groups its internal character codes. | |
2d2f6581 | 571 | * Bidirectional Editing:: Support for right-to-left scripts. |
8cf51b2c | 572 | |
a4289d0e | 573 | Major and Minor Modes |
8cf51b2c | 574 | |
8875da1e CY |
575 | * Major Modes:: Text mode vs. Lisp mode vs. C mode... |
576 | * Minor Modes:: Each minor mode is a feature you can turn on | |
577 | independently of any others. | |
578 | * Choosing Modes:: How modes are chosen when visiting files. | |
8cf51b2c GM |
579 | |
580 | Indentation | |
581 | ||
6d262977 CY |
582 | * Indentation Commands:: More commands for performing indentation. |
583 | * Tab Stops:: Stop points for indentation in Text modes. | |
584 | * Just Spaces:: Using only space characters for indentation. | |
585 | * Indent Convenience:: Optional indentation features. | |
8cf51b2c GM |
586 | |
587 | Commands for Human Languages | |
588 | ||
8838673e GM |
589 | * Words:: Moving over and killing words. |
590 | * Sentences:: Moving over and killing sentences. | |
591 | * Paragraphs:: Moving over paragraphs. | |
592 | * Pages:: Moving over pages. | |
593 | * Filling:: Filling or justifying text. | |
594 | * Case:: Changing the case of text. | |
595 | * Text Mode:: The major modes for editing text files. | |
8cf51b2c | 596 | * Outline Mode:: Editing outlines. |
0ed49f93 | 597 | * Org Mode:: The Emacs organizer. |
2d2f6581 | 598 | * TeX Mode:: Editing TeX and LaTeX files. |
f67c5dd0 | 599 | * HTML Mode:: Editing HTML and SGML files. |
2d2f6581 | 600 | * Nroff Mode:: Editing input to the nroff formatter. |
775b55af | 601 | * Enriched Text:: Editing text "enriched" with fonts, colors, etc. |
8863a584 | 602 | * Text Based Tables:: Commands for editing text-based tables. |
f404f8bc | 603 | * Two-Column:: Splitting text columns into separate windows. |
8cf51b2c GM |
604 | |
605 | Filling Text | |
606 | ||
8838673e | 607 | * Auto Fill:: Auto Fill mode breaks long lines automatically. |
8cf51b2c | 608 | * Fill Commands:: Commands to refill paragraphs and center lines. |
8838673e | 609 | * Fill Prefix:: Filling paragraphs that are indented |
8cf51b2c GM |
610 | or in a comment, etc. |
611 | * Adaptive Fill:: How Emacs can determine the fill prefix automatically. | |
8cf51b2c GM |
612 | |
613 | Outline Mode | |
614 | ||
753ad1de | 615 | * Outline Format:: What the text of an outline looks like. |
2d2f6581 | 616 | * Outline Motion:: Special commands for moving through outlines. |
753ad1de GM |
617 | * Outline Visibility:: Commands to control what is visible. |
618 | * Outline Views:: Outlines and multiple views. | |
619 | * Foldout:: Folding means zooming in on outlines. | |
8cf51b2c | 620 | |
2d2f6581 GM |
621 | Org Mode |
622 | ||
623 | * Org Organizer:: Managing TODO lists and agendas. | |
624 | * Org Authoring:: Exporting Org buffers to various formats. | |
625 | ||
8cf51b2c GM |
626 | @TeX{} Mode |
627 | ||
753ad1de GM |
628 | * TeX Editing:: Special commands for editing in TeX mode. |
629 | * LaTeX Editing:: Additional commands for LaTeX input files. | |
630 | * TeX Print:: Commands for printing part of a file with TeX. | |
631 | * TeX Misc:: Customization of TeX mode, and related features. | |
8cf51b2c | 632 | |
a4289d0e | 633 | Enriched Text |
8cf51b2c | 634 | |
8863a584 CY |
635 | * Enriched Mode:: Entering and exiting Enriched mode. |
636 | * Hard and Soft Newlines:: There are two different kinds of newlines. | |
637 | * Editing Format Info:: How to edit text properties. | |
638 | * Enriched Faces:: Bold, italic, underline, etc. | |
639 | * Enriched Indentation:: Changing the left and right margins. | |
640 | * Enriched Justification:: Centering, setting text flush with the | |
641 | left or right margin, etc. | |
642 | * Enriched Properties:: The "special" text properties submenu. | |
8cf51b2c | 643 | |
753ad1de GM |
644 | @c The automatic texinfo menu update inserts some duplicate items here |
645 | @c (faces, colors, indentation, justification, properties), because | |
646 | @c they are listed in two menus. But we already have them above, no | |
647 | @c need to list them twice. | |
648 | ||
8cf51b2c GM |
649 | Editing Text-based Tables |
650 | ||
651 | * Table Definition:: What is a text based table. | |
652 | * Table Creation:: How to create a table. | |
653 | * Table Recognition:: How to activate and deactivate tables. | |
654 | * Cell Commands:: Cell-oriented commands in a table. | |
655 | * Cell Justification:: Justifying cell contents. | |
a24bf23e | 656 | * Table Rows and Columns:: Inserting and deleting rows and columns. |
8cf51b2c | 657 | * Table Conversion:: Converting between plain text and tables. |
8cf51b2c GM |
658 | * Table Misc:: Table miscellany. |
659 | ||
660 | Editing Programs | |
661 | ||
662 | * Program Modes:: Major modes for editing programs. | |
663 | * Defuns:: Commands to operate on major top-level parts | |
664 | of a program. | |
665 | * Program Indent:: Adjusting indentation to show the nesting. | |
666 | * Parentheses:: Commands that operate on parentheses. | |
8838673e | 667 | * Comments:: Inserting, killing, and aligning comments. |
8cf51b2c GM |
668 | * Documentation:: Getting documentation of functions you plan to call. |
669 | * Hideshow:: Displaying blocks selectively. | |
670 | * Symbol Completion:: Completion on symbol names of your program or language. | |
671 | * Glasses:: Making identifiersLikeThis more readable. | |
a42dbee1 | 672 | * Semantic:: Suite of editing tools based on source code parsing. |
8cf51b2c GM |
673 | * Misc for Programs:: Other Emacs features useful for editing programs. |
674 | * C Modes:: Special commands of C, C++, Objective-C, | |
2d2f6581 | 675 | Java, IDL, Pike and AWK modes. |
8cf51b2c | 676 | * Asm Mode:: Asm mode and its special features. |
2d2f6581 | 677 | @ifnottex |
8cf51b2c | 678 | * Fortran:: Fortran mode and its special features. |
2d2f6581 | 679 | @end ifnottex |
8cf51b2c GM |
680 | |
681 | Top-Level Definitions, or Defuns | |
682 | ||
683 | * Left Margin Paren:: An open-paren or similar opening delimiter | |
684 | starts a defun if it is at the left margin. | |
685 | * Moving by Defuns:: Commands to move over or mark a major definition. | |
686 | * Imenu:: Making buffer indexes as menus. | |
687 | * Which Function:: Which Function mode shows which function you are in. | |
688 | ||
689 | Indentation for Programs | |
690 | ||
8838673e | 691 | * Basic Indent:: Indenting a single line. |
8cf51b2c | 692 | * Multi-line Indent:: Commands to reindent many lines at once. |
8838673e GM |
693 | * Lisp Indent:: Specifying how each Lisp function should be indented. |
694 | * C Indent:: Extra features for indenting C and related modes. | |
695 | * Custom C Indent:: Controlling indentation style for C and related modes. | |
8cf51b2c GM |
696 | |
697 | Commands for Editing with Parentheses | |
698 | ||
699 | * Expressions:: Expressions with balanced parentheses. | |
700 | * Moving by Parens:: Commands for moving up, down and across | |
701 | in the structure of parentheses. | |
8838673e | 702 | * Matching:: Insertion of a close-delimiter flashes matching open. |
8cf51b2c GM |
703 | |
704 | Manipulating Comments | |
705 | ||
706 | * Comment Commands:: Inserting, killing, and aligning comments. | |
707 | * Multi-Line Comments:: Commands for adding and editing multi-line comments. | |
708 | * Options for Comments::Customizing the comment features. | |
709 | ||
710 | Documentation Lookup | |
711 | ||
2d2f6581 GM |
712 | * Info Lookup:: Looking up library functions and commands in Info files. |
713 | * Man Page:: Looking up man pages of library functions and commands. | |
714 | * Lisp Doc:: Looking up Emacs Lisp functions, etc. | |
8cf51b2c GM |
715 | |
716 | C and Related Modes | |
717 | ||
718 | * Motion in C:: Commands to move by C statements, etc. | |
719 | * Electric C:: Colon and other chars can automatically reindent. | |
720 | * Hungry Delete:: A more powerful DEL command. | |
721 | * Other C Commands:: Filling comments, viewing expansion of macros, | |
722 | and other neat features. | |
723 | ||
2d2f6581 | 724 | @ifnottex |
753ad1de GM |
725 | Fortran Mode |
726 | ||
8838673e GM |
727 | * Fortran Motion:: Moving point by statements or subprograms. |
728 | * Fortran Indent:: Indentation commands for Fortran. | |
729 | * Fortran Comments:: Inserting and aligning comments. | |
730 | * Fortran Autofill:: Auto fill support for Fortran. | |
731 | * Fortran Columns:: Measuring columns for valid Fortran. | |
732 | * Fortran Abbrev:: Built-in abbrevs for Fortran keywords. | |
753ad1de GM |
733 | |
734 | Fortran Indentation | |
735 | ||
736 | * ForIndent Commands:: Commands for indenting and filling Fortran. | |
737 | * ForIndent Cont:: How continuation lines indent. | |
738 | * ForIndent Num:: How line numbers auto-indent. | |
739 | * ForIndent Conv:: Conventions you must obey to avoid trouble. | |
740 | * ForIndent Vars:: Variables controlling Fortran indent style. | |
2d2f6581 | 741 | @end ifnottex |
753ad1de | 742 | |
8cf51b2c GM |
743 | Compiling and Testing Programs |
744 | ||
8838673e GM |
745 | * Compilation:: Compiling programs in languages other |
746 | than Lisp (C, Pascal, etc.). | |
8cf51b2c GM |
747 | * Compilation Mode:: The mode for visiting compiler errors. |
748 | * Compilation Shell:: Customizing your shell properly | |
749 | for use in the compilation buffer. | |
750 | * Grep Searching:: Searching with grep. | |
751 | * Flymake:: Finding syntax errors on the fly. | |
8838673e GM |
752 | * Debuggers:: Running symbolic debuggers for non-Lisp programs. |
753 | * Executing Lisp:: Various modes for editing Lisp programs, | |
754 | with different facilities for running | |
755 | the Lisp programs. | |
29eabb8e | 756 | * Lisp Libraries:: How Lisp programs are loaded into Emacs. |
8838673e | 757 | * Lisp Eval:: Executing a single Lisp expression in Emacs. |
8cf51b2c | 758 | * Lisp Interaction:: Executing Lisp in an Emacs buffer. |
8838673e | 759 | * External Lisp:: Communicating through Emacs with a separate Lisp. |
8cf51b2c GM |
760 | |
761 | Running Debuggers Under Emacs | |
762 | ||
8838673e GM |
763 | * Starting GUD:: How to start a debugger subprocess. |
764 | * Debugger Operation:: Connection between the debugger and source buffers. | |
765 | * Commands of GUD:: Key bindings for common commands. | |
766 | * GUD Customization:: Defining your own commands for GUD. | |
8cf51b2c | 767 | * GDB Graphical Interface:: An enhanced mode that uses GDB features to |
2d2f6581 | 768 | implement a graphical debugging environment. |
8cf51b2c | 769 | |
753ad1de GM |
770 | GDB Graphical Interface |
771 | ||
22ef1944 | 772 | * GDB User Interface Layout:: Control the number of displayed buffers. |
691cf4a0 NR |
773 | * Source Buffers:: Use the mouse in the fringe/margin to |
774 | control your program. | |
775 | * Breakpoints Buffer:: A breakpoint control panel. | |
776 | * Threads Buffer:: Displays your threads. | |
777 | * Stack Buffer:: Select a frame from the call stack. | |
0595bd7e | 778 | * Other GDB Buffers:: Other buffers for controlling the GDB state. |
691cf4a0 NR |
779 | * Watch Expressions:: Monitor variable values in the speedbar. |
780 | * Multithreaded Debugging:: Debugging programs with several threads. | |
753ad1de | 781 | |
8cf51b2c GM |
782 | Maintaining Large Programs |
783 | ||
753ad1de | 784 | * Version Control:: Using version control systems. |
8838673e GM |
785 | * Change Log:: Maintaining a change history for your program. |
786 | * Tags:: Go directly to any function in your program in one | |
787 | command. Tags remembers which file it is in. | |
a42dbee1 | 788 | * EDE:: An integrated development environment for Emacs. |
2d2f6581 | 789 | @ifnottex |
8cf51b2c | 790 | * Emerge:: A convenient way of merging two versions of a program. |
2d2f6581 | 791 | @end ifnottex |
8cf51b2c | 792 | |
1963ba49 CY |
793 | Version Control |
794 | ||
795 | * Introduction to VC:: How version control works in general. | |
796 | * VC Mode Line:: How the mode line shows version control status. | |
797 | * Basic VC Editing:: How to edit a file under version control. | |
1aaae3f3 | 798 | * Log Buffer:: Features available in log entry buffers. |
9cff91f8 | 799 | * Registering:: Putting a file under version control. |
753ad1de | 800 | * Old Revisions:: Examining and comparing old versions. |
9cff91f8 CY |
801 | * VC Change Log:: Viewing the VC Change Log. |
802 | * VC Undo:: Canceling changes before or after committing. | |
d5065cca | 803 | * VC Ignore:: Ignore files under version control system. |
753ad1de | 804 | * VC Directory Mode:: Listing files managed by version control. |
1963ba49 | 805 | * Branches:: Multiple lines of development. |
2d2f6581 | 806 | @ifnottex |
1963ba49 CY |
807 | * Miscellaneous VC:: Various other commands and features of VC. |
808 | * Customizing VC:: Variables that change VC's behavior. | |
2d2f6581 | 809 | @end ifnottex |
9cff91f8 | 810 | |
753ad1de GM |
811 | Introduction to Version Control |
812 | ||
813 | * Why Version Control?:: Understanding the problems it addresses. | |
814 | * Version Control Systems:: Supported version control back-end systems. | |
815 | * VCS Concepts:: Words and concepts related to version control. | |
1aaae3f3 | 816 | * VCS Merging:: How file conflicts are handled. |
a4289d0e | 817 | * VCS Changesets:: How changes are grouped. |
1aaae3f3 | 818 | * VCS Repositories:: Where version control repositories are stored. |
753ad1de GM |
819 | * Types of Log File:: The VCS log in contrast to the ChangeLog. |
820 | ||
821 | Basic Editing under Version Control | |
822 | ||
823 | * VC With A Merging VCS:: Without locking: default mode for CVS. | |
824 | * VC With A Locking VCS:: RCS in its default mode, SCCS, and optionally CVS. | |
825 | * Advanced C-x v v:: Advanced features available with a prefix argument. | |
753ad1de | 826 | |
753ad1de GM |
827 | VC Directory Mode |
828 | ||
829 | * VC Directory Buffer:: What the buffer looks like and means. | |
830 | * VC Directory Commands:: Commands to use in a VC directory buffer. | |
831 | ||
a4289d0e | 832 | Version Control Branches |
753ad1de GM |
833 | |
834 | * Switching Branches:: How to get to another existing branch. | |
a4289d0e | 835 | * VC Pull:: Updating the contents of a branch. |
753ad1de | 836 | * Merging:: Transferring changes between branches. |
2edef1a0 | 837 | * Creating Branches:: How to start a new branch. |
753ad1de | 838 | |
2d2f6581 | 839 | @ifnottex |
753ad1de GM |
840 | Miscellaneous Commands and Features of VC |
841 | ||
842 | * Change Logs and VC:: Generating a change log file from log entries. | |
3d992aa0 CY |
843 | * VC Delete/Rename:: Deleting and renaming version-controlled files. |
844 | * Revision Tags:: Symbolic names for revisions. | |
753ad1de GM |
845 | * Version Headers:: Inserting version control headers into working files. |
846 | ||
847 | Customizing VC | |
848 | ||
849 | * General VC Options:: Options that apply to multiple back ends. | |
850 | * RCS and SCCS:: Options for RCS and SCCS. | |
851 | * CVS Options:: Options for CVS. | |
2d2f6581 | 852 | @end ifnottex |
753ad1de GM |
853 | |
854 | Change Logs | |
855 | ||
856 | * Change Log Commands:: Commands for editing change log files. | |
857 | * Format of ChangeLog:: What the change log file looks like. | |
1963ba49 | 858 | |
8cf51b2c GM |
859 | Tags Tables |
860 | ||
8838673e | 861 | * Tag Syntax:: Tag syntax for various types of code and text files. |
a4289d0e | 862 | * Create Tags Table:: Creating a tags table with @command{etags}. |
8cf51b2c | 863 | * Etags Regexps:: Create arbitrary tags using regular expressions. |
8838673e GM |
864 | * Select Tags Table:: How to visit a tags table. |
865 | * Find Tag:: Commands to find the definition of a specific tag. | |
866 | * Tags Search:: Using a tags table for searching and replacing. | |
a4289d0e | 867 | * List Tags:: Using tags for completion, and listing them. |
8cf51b2c | 868 | |
2d2f6581 | 869 | @ifnottex |
753ad1de GM |
870 | Merging Files with Emerge |
871 | ||
8838673e GM |
872 | * Overview of Emerge:: How to start Emerge. Basic concepts. |
873 | * Submodes of Emerge:: Fast mode vs. Edit mode. | |
874 | Skip Prefers mode and Auto Advance mode. | |
875 | * State of Difference:: You do the merge by specifying state A or B | |
876 | for each difference. | |
877 | * Merge Commands:: Commands for selecting a difference, | |
878 | changing states of differences, etc. | |
879 | * Exiting Emerge:: What to do when you've finished the merge. | |
880 | * Combining in Emerge:: How to keep both alternatives for a difference. | |
753ad1de | 881 | * Fine Points of Emerge:: Miscellaneous issues. |
2d2f6581 | 882 | @end ifnottex |
753ad1de | 883 | |
8cf51b2c GM |
884 | Abbrevs |
885 | ||
886 | * Abbrev Concepts:: Fundamentals of defined abbrevs. | |
887 | * Defining Abbrevs:: Defining an abbrev, so it will expand when typed. | |
888 | * Expanding Abbrevs:: Controlling expansion: prefixes, canceling expansion. | |
889 | * Editing Abbrevs:: Viewing or editing the entire list of defined abbrevs. | |
890 | * Saving Abbrevs:: Saving the entire list of abbrevs for another session. | |
891 | * Dynamic Abbrevs:: Abbreviations for words already in the buffer. | |
892 | * Dabbrev Customization:: What is a word, for dynamic abbrevs. Case handling. | |
893 | ||
894 | @ifnottex | |
895 | Editing Pictures | |
896 | ||
897 | * Basic Picture:: Basic concepts and simple commands of Picture Mode. | |
898 | * Insert in Picture:: Controlling direction of cursor motion | |
899 | after "self-inserting" characters. | |
900 | * Tabs in Picture:: Various features for tab stops and indentation. | |
901 | * Rectangles in Picture:: Clearing and superimposing rectangles. | |
902 | @end ifnottex | |
903 | ||
8cf51b2c GM |
904 | Dired, the Directory Editor |
905 | ||
8838673e | 906 | * Dired Enter:: How to invoke Dired. |
753ad1de | 907 | * Dired Navigation:: Special motion commands in the Dired buffer. |
8cf51b2c GM |
908 | * Dired Deletion:: Deleting files with Dired. |
909 | * Flagging Many Files:: Flagging files based on their names. | |
910 | * Dired Visiting:: Other file operations through Dired. | |
8838673e GM |
911 | * Marks vs Flags:: Flagging for deletion vs marking. |
912 | * Operating on Files:: How to copy, rename, print, compress, etc. | |
913 | either one file or several files. | |
8cf51b2c GM |
914 | * Shell Commands in Dired:: Running a shell command on the marked files. |
915 | * Transforming File Names:: Using patterns to rename multiple files. | |
53eced6d | 916 | * Comparison in Dired:: Running @code{diff} by way of Dired. |
8cf51b2c | 917 | * Subdirectories in Dired:: Adding subdirectories to the Dired buffer. |
2d2f6581 | 918 | @ifnottex |
8cf51b2c | 919 | * Subdir Switches:: Subdirectory switches in Dired. |
2d2f6581 | 920 | @end ifnottex |
8838673e | 921 | * Subdirectory Motion:: Moving across subdirectories, and up and down. |
8cf51b2c GM |
922 | * Hiding Subdirectories:: Making subdirectories visible or invisible. |
923 | * Dired Updating:: Discarding lines for files of no interest. | |
53eced6d | 924 | * Dired and Find:: Using @code{find} to choose the files for Dired. |
8cf51b2c | 925 | * Wdired:: Operating on files by editing the Dired buffer. |
753ad1de | 926 | * Image-Dired:: Viewing image thumbnails in Dired. |
8cf51b2c GM |
927 | * Misc Dired Features:: Various other features. |
928 | ||
929 | The Calendar and the Diary | |
930 | ||
931 | * Calendar Motion:: Moving through the calendar; selecting a date. | |
932 | * Scroll Calendar:: Bringing earlier or later months onto the screen. | |
933 | * Counting Days:: How many days are there between two dates? | |
934 | * General Calendar:: Exiting or recomputing the calendar. | |
935 | * Writing Calendar Files:: Writing calendars to files of various formats. | |
936 | * Holidays:: Displaying dates of holidays. | |
937 | * Sunrise/Sunset:: Displaying local times of sunrise and sunset. | |
938 | * Lunar Phases:: Displaying phases of the moon. | |
939 | * Other Calendars:: Converting dates to other calendar systems. | |
940 | * Diary:: Displaying events from your diary. | |
8838673e | 941 | * Appointments:: Reminders when it's time to do something. |
8cf51b2c | 942 | * Importing Diary:: Converting diary events to/from other formats. |
2d2f6581 | 943 | * Daylight Saving:: How to specify when daylight saving time is active. |
8cf51b2c | 944 | * Time Intervals:: Keeping track of time intervals. |
2d2f6581 | 945 | @ifnottex |
8cf51b2c | 946 | * Advanced Calendar/Diary Usage:: Advanced Calendar/Diary customization. |
2d2f6581 | 947 | @end ifnottex |
8cf51b2c GM |
948 | |
949 | Movement in the Calendar | |
950 | ||
951 | * Calendar Unit Motion:: Moving by days, weeks, months, and years. | |
952 | * Move to Beginning or End:: Moving to start/end of weeks, months, and years. | |
8838673e GM |
953 | * Specified Dates:: Moving to the current date or another |
954 | specific date. | |
8cf51b2c GM |
955 | |
956 | Conversion To and From Other Calendars | |
957 | ||
8838673e GM |
958 | * Calendar Systems:: The calendars Emacs understands |
959 | (aside from Gregorian). | |
960 | * To Other Calendar:: Converting the selected date to various calendars. | |
961 | * From Other Calendar:: Moving to a date specified in another calendar. | |
8cf51b2c GM |
962 | |
963 | The Diary | |
964 | ||
965 | * Displaying the Diary:: Viewing diary entries and associated calendar dates. | |
966 | * Format of Diary File:: Entering events in your diary. | |
8838673e GM |
967 | * Date Formats:: Various ways you can specify dates. |
968 | * Adding to Diary:: Commands to create diary entries. | |
8cf51b2c GM |
969 | * Special Diary Entries:: Anniversaries, blocks of dates, cyclic entries, etc. |
970 | ||
2d2f6581 | 971 | @ifnottex |
4695c850 | 972 | More advanced features of the Calendar and Diary |
753ad1de GM |
973 | |
974 | * Calendar Customizing:: Calendar layout and hooks. | |
975 | * Holiday Customizing:: Defining your own holidays. | |
65b36413 | 976 | * Mayan Calendar:: Moving to a date specified in a Mayan calendar. |
753ad1de GM |
977 | * Date Display Format:: Changing the format. |
978 | * Time Display Format:: Changing the format. | |
979 | * Diary Customizing:: Defaults you can set. | |
980 | * Non-Gregorian Diary:: Diary entries based on other calendars. | |
806642d4 GM |
981 | * Diary Display:: A choice of ways to display the diary. |
982 | * Fancy Diary Display:: Sorting diary entries, using included diary files. | |
983 | * Sexp Diary Entries:: More flexible diary entries. | |
2d2f6581 | 984 | @end ifnottex |
753ad1de | 985 | |
e0b1591b CY |
986 | Sending Mail |
987 | ||
a4289d0e | 988 | * Mail Format:: Format of a mail message. |
e0b1591b CY |
989 | * Mail Headers:: Details of some standard mail header fields. |
990 | * Mail Aliases:: Abbreviating and grouping mail addresses. | |
991 | * Mail Commands:: Special commands for editing mail being composed. | |
992 | * Mail Signature:: Adding a signature to every message. | |
993 | * Mail Amusements:: Distracting the NSA; adding fortune messages. | |
994 | * Mail Methods:: Using alternative mail-composition methods. | |
995 | ||
996 | Mail Commands | |
997 | ||
998 | * Mail Sending:: Commands to send the message. | |
999 | * Header Editing:: Commands to move to header fields and edit them. | |
1000 | * Citing Mail:: Quoting a message you are replying to. | |
1001 | * Mail Misc:: Attachments, spell checking, etc. | |
1002 | ||
1003 | Reading Mail with Rmail | |
1004 | ||
1005 | * Rmail Basics:: Basic concepts of Rmail, and simple use. | |
1006 | * Rmail Scrolling:: Scrolling through a message. | |
1007 | * Rmail Motion:: Moving to another message. | |
1008 | * Rmail Deletion:: Deleting and expunging messages. | |
1009 | * Rmail Inbox:: How mail gets into the Rmail file. | |
1010 | * Rmail Files:: Using multiple Rmail files. | |
1011 | * Rmail Output:: Copying message out to files. | |
1012 | * Rmail Labels:: Classifying messages by labeling them. | |
1013 | * Rmail Attributes:: Certain standard labels, called attributes. | |
1014 | * Rmail Reply:: Sending replies to messages you are viewing. | |
1015 | * Rmail Summary:: Summaries show brief info on many messages. | |
1016 | * Rmail Sorting:: Sorting messages in Rmail. | |
1017 | * Rmail Display:: How Rmail displays a message; customization. | |
1018 | * Rmail Coding:: How Rmail handles decoding character sets. | |
1019 | * Rmail Editing:: Editing message text and headers in Rmail. | |
1020 | * Rmail Digest:: Extracting the messages from a digest message. | |
1021 | * Rmail Rot13:: Reading messages encoded in the rot13 code. | |
1022 | * Movemail:: More details of fetching new mail. | |
1023 | * Remote Mailboxes:: Retrieving mail from remote mailboxes. | |
1024 | * Other Mailbox Formats:: Retrieving mail from local mailboxes in | |
1025 | various formats. | |
1026 | ||
1027 | Rmail Summaries | |
1028 | ||
2d2f6581 GM |
1029 | * Rmail Make Summary:: Making various sorts of summaries. |
1030 | * Rmail Summary Edit:: Manipulating messages from the summary. | |
e0b1591b | 1031 | |
8cf51b2c GM |
1032 | Gnus |
1033 | ||
8838673e GM |
1034 | * Buffers of Gnus:: The group, summary, and article buffers. |
1035 | * Gnus Startup:: What you should know about starting Gnus. | |
b8ecfdfe CY |
1036 | * Gnus Group Buffer:: A short description of Gnus group commands. |
1037 | * Gnus Summary Buffer:: A short description of Gnus summary commands. | |
8cf51b2c | 1038 | |
a4289d0e GM |
1039 | Document Viewing |
1040 | ||
1041 | * DocView Navigation:: Navigating DocView buffers. | |
1042 | * DocView Searching:: Searching inside documents. | |
1043 | * DocView Slicing:: Specifying which part of a page is displayed. | |
1044 | * DocView Conversion:: Influencing and triggering conversion. | |
1045 | ||
8cf51b2c GM |
1046 | Running Shell Commands from Emacs |
1047 | ||
8838673e GM |
1048 | * Single Shell:: How to run one shell command and return. |
1049 | * Interactive Shell:: Permanent shell taking input via Emacs. | |
1050 | * Shell Mode:: Special Emacs commands used with permanent shell. | |
8cf51b2c GM |
1051 | * Shell Prompts:: Two ways to recognize shell prompts. |
1052 | * Shell History:: Repeating previous commands in a shell buffer. | |
1053 | * Directory Tracking:: Keeping track when the subshell changes directory. | |
1054 | * Shell Options:: Options for customizing Shell mode. | |
1055 | * Terminal emulator:: An Emacs window as a terminal emulator. | |
1056 | * Term Mode:: Special Emacs commands used in Term mode. | |
8838673e | 1057 | * Remote Host:: Connecting to another computer. |
37e5d54a | 1058 | * Serial Terminal:: Connecting to a serial port. |
8cf51b2c | 1059 | |
753ad1de GM |
1060 | Shell Command History |
1061 | ||
1062 | * Shell Ring:: Fetching commands from the history list. | |
1063 | * Shell History Copying::Moving to a command and then copying it. | |
1064 | * History References:: Expanding @samp{!}-style history references. | |
1065 | ||
8cf51b2c GM |
1066 | Using Emacs as a Server |
1067 | ||
e670e599 CY |
1068 | * Invoking emacsclient:: Connecting to the Emacs server. |
1069 | * emacsclient Options:: Emacs client startup options. | |
8cf51b2c GM |
1070 | |
1071 | Printing Hard Copies | |
1072 | ||
8838673e | 1073 | * PostScript:: Printing buffers or regions as PostScript. |
8cf51b2c GM |
1074 | * PostScript Variables:: Customizing the PostScript printing commands. |
1075 | * Printing Package:: An optional advanced printing interface. | |
1076 | ||
1077 | Hyperlinking and Navigation Features | |
1078 | ||
1079 | * Browse-URL:: Following URLs. | |
60d8d164 | 1080 | * Goto Address mode:: Activating URLs. |
8cf51b2c GM |
1081 | * FFAP:: Finding files etc. at point. |
1082 | ||
ddb54206 CY |
1083 | Emacs Lisp Packages |
1084 | ||
1085 | * Package Menu:: Buffer for viewing and managing packages. | |
1086 | * Package Installation:: Options for package installation. | |
1087 | * Package Files:: Where packages are installed. | |
1088 | ||
8cf51b2c GM |
1089 | Customization |
1090 | ||
753ad1de | 1091 | * Easy Customization:: Convenient way to browse and change settings. |
8838673e GM |
1092 | * Variables:: Many Emacs commands examine Emacs variables |
1093 | to decide what to do; by setting variables, | |
1094 | you can control their functioning. | |
a4289d0e | 1095 | * Key Bindings:: The keymaps say what command each key runs. |
f584ca38 | 1096 | By changing them, you can "redefine" keys. |
8838673e | 1097 | * Init File:: How to write common customizations in the |
a4289d0e | 1098 | initialization file. |
8cf51b2c | 1099 | |
753ad1de GM |
1100 | Easy Customization Interface |
1101 | ||
b0d7d8af | 1102 | * Customization Groups:: How settings are classified. |
753ad1de GM |
1103 | * Browsing Custom:: Browsing and searching for settings. |
1104 | * Changing a Variable:: How to edit an option's value and set the option. | |
b0d7d8af | 1105 | * Saving Customizations:: Saving customizations for future Emacs sessions. |
753ad1de | 1106 | * Face Customization:: How to edit the attributes of a face. |
b0d7d8af CY |
1107 | * Specific Customization:: Customizing specific settings or groups. |
1108 | * Custom Themes:: Collections of customization settings. | |
1109 | * Creating Custom Themes:: How to create a new custom theme. | |
753ad1de | 1110 | |
8cf51b2c GM |
1111 | Variables |
1112 | ||
8838673e GM |
1113 | * Examining:: Examining or setting one variable's value. |
1114 | * Hooks:: Hook variables let you specify programs for parts | |
1115 | of Emacs to run on particular occasions. | |
1116 | * Locals:: Per-buffer values of variables. | |
8cf51b2c | 1117 | * File Variables:: How files can specify variable values. |
753ad1de GM |
1118 | * Directory Variables:: How variable values can be specified by directory. |
1119 | ||
1120 | Local Variables in Files | |
1121 | ||
1122 | * Specifying File Variables:: Specifying file local variables. | |
1123 | * Safe File Variables:: Making sure file local variables are safe. | |
8cf51b2c GM |
1124 | |
1125 | Customizing Key Bindings | |
1126 | ||
1127 | * Keymaps:: Generalities. The global keymap. | |
1128 | * Prefix Keymaps:: Keymaps for prefix keys. | |
1129 | * Local Keymaps:: Major and minor modes have their own keymaps. | |
1130 | * Minibuffer Maps:: The minibuffer uses its own local keymaps. | |
1131 | * Rebinding:: How to redefine one key's meaning conveniently. | |
a4289d0e | 1132 | * Init Rebinding:: Rebinding keys with your initialization file. |
f049d162 | 1133 | * Modifier Keys:: Using modifier keys in key bindings. |
8cf51b2c GM |
1134 | * Function Keys:: Rebinding terminal function keys. |
1135 | * Named ASCII Chars:: Distinguishing @key{TAB} from @kbd{C-i}, and so on. | |
1136 | * Mouse Buttons:: Rebinding mouse buttons in Emacs. | |
1137 | * Disabling:: Disabling a command means confirmation is required | |
1138 | before it can be executed. This is done to protect | |
1139 | beginners from surprises. | |
1140 | ||
a4289d0e | 1141 | The Emacs Initialization File |
8cf51b2c | 1142 | |
8838673e | 1143 | * Init Syntax:: Syntax of constants in Emacs Lisp. |
8cf51b2c GM |
1144 | * Init Examples:: How to do some things with an init file. |
1145 | * Terminal Init:: Each terminal type can have an init file. | |
8838673e | 1146 | * Find Init:: How Emacs finds the init file. |
8cf51b2c GM |
1147 | * Init Non-ASCII:: Using non-@acronym{ASCII} characters in an init file. |
1148 | ||
1149 | Dealing with Emacs Trouble | |
1150 | ||
1151 | * DEL Does Not Delete:: What to do if @key{DEL} doesn't delete. | |
1152 | * Stuck Recursive:: `[...]' in mode line around the parentheses. | |
1153 | * Screen Garbled:: Garbage on the screen. | |
1154 | * Text Garbled:: Garbage in the text. | |
1155 | * Memory Full:: How to cope when you run out of memory. | |
cf29dd84 | 1156 | * Crashing:: What Emacs does when it crashes. |
8cf51b2c | 1157 | * After a Crash:: Recovering editing in an Emacs session that crashed. |
c61ab18c | 1158 | * Emergency Escape:: What to do if Emacs stops responding. |
8cf51b2c GM |
1159 | |
1160 | Reporting Bugs | |
1161 | ||
63e1eaa1 | 1162 | * Known Problems:: How to read about known problems and bugs. |
8cf51b2c | 1163 | * Bug Criteria:: Have you really found a bug? |
8838673e GM |
1164 | * Understanding Bug Reporting:: How to report a bug effectively. |
1165 | * Checklist:: Steps to follow for a good bug report. | |
1166 | * Sending Patches:: How to send a patch for GNU Emacs. | |
8cf51b2c GM |
1167 | |
1168 | Command Line Arguments for Emacs Invocation | |
1169 | ||
8838673e GM |
1170 | * Action Arguments:: Arguments to visit files, load libraries, |
1171 | and call functions. | |
8cf51b2c GM |
1172 | * Initial Options:: Arguments that take effect while starting Emacs. |
1173 | * Command Example:: Examples of using command line arguments. | |
8cf51b2c GM |
1174 | * Environment:: Environment variables that Emacs uses. |
1175 | * Display X:: Changing the default display and using remote login. | |
8838673e | 1176 | * Font X:: Choosing a font for text, under X. |
8863a584 | 1177 | * Colors X:: Choosing display colors. |
8cf51b2c | 1178 | * Window Size X:: Start-up window size, under X. |
8838673e | 1179 | * Borders X:: Internal and external borders, under X. |
8cf51b2c GM |
1180 | * Title X:: Specifying the initial frame's title. |
1181 | * Icons X:: Choosing what sort of icon to use, under X. | |
1182 | * Misc X:: Other display options. | |
1183 | ||
1184 | Environment Variables | |
1185 | ||
8838673e GM |
1186 | * General Variables:: Environment variables that all versions of Emacs use. |
1187 | * Misc Variables:: Certain system-specific variables. | |
8cf51b2c GM |
1188 | * MS-Windows Registry:: An alternative to the environment on MS-Windows. |
1189 | ||
1190 | X Options and Resources | |
1191 | ||
1192 | * Resources:: Using X resources with Emacs (in general). | |
1193 | * Table of Resources:: Table of specific X resources that affect Emacs. | |
8cf51b2c | 1194 | * Lucid Resources:: X resources for Lucid menus. |
5d85cfe6 | 1195 | * Motif Resources:: X resources for Motif and LessTif menus. |
8cf51b2c GM |
1196 | * GTK resources:: Resources for GTK widgets. |
1197 | ||
753ad1de GM |
1198 | GTK resources |
1199 | ||
06848b82 CY |
1200 | * GTK Resource Basics:: Basic usage of GTK+ resources. |
1201 | * GTK Widget Names:: How GTK+ widgets are named. | |
a4289d0e | 1202 | * GTK Names in Emacs:: GTK widgets used by Emacs. |
753ad1de GM |
1203 | * GTK styles:: What can be customized in a GTK widget. |
1204 | ||
e93bc142 | 1205 | Emacs and Mac OS / GNUstep |
8cf51b2c | 1206 | |
753ad1de GM |
1207 | * Mac / GNUstep Basics:: Basic Emacs usage under GNUstep or Mac OS. |
1208 | * Mac / GNUstep Customization:: Customizations under GNUstep or Mac OS. | |
1209 | * Mac / GNUstep Events:: How window system events are handled. | |
1210 | * GNUstep Support:: Details on status of GNUstep support. | |
8cf51b2c GM |
1211 | |
1212 | Emacs and Microsoft Windows/MS-DOS | |
1213 | ||
62d72a4a | 1214 | * Windows Startup:: How to start Emacs on Windows. |
8cf51b2c GM |
1215 | * Text and Binary:: Text files use CRLF to terminate lines. |
1216 | * Windows Files:: File-name conventions on Windows. | |
1217 | * ls in Lisp:: Emulation of @code{ls} for Dired. | |
a4289d0e GM |
1218 | * Windows HOME:: Where Emacs looks for your @file{.emacs} and |
1219 | where it starts up. | |
8cf51b2c GM |
1220 | * Windows Keyboard:: Windows-specific keyboard features. |
1221 | * Windows Mouse:: Windows-specific mouse features. | |
1222 | * Windows Processes:: Running subprocesses on Windows. | |
1223 | * Windows Printing:: How to specify the printer on MS-Windows. | |
753ad1de | 1224 | * Windows Fonts:: Specifying fonts on MS-Windows. |
8cf51b2c | 1225 | * Windows Misc:: Miscellaneous Windows features. |
2d2f6581 GM |
1226 | @ifnottex |
1227 | * MS-DOS:: Using Emacs on MS-DOS. | |
753ad1de GM |
1228 | |
1229 | Emacs and MS-DOS | |
1230 | ||
1231 | * MS-DOS Keyboard:: Keyboard conventions on MS-DOS. | |
1232 | * MS-DOS Mouse:: Mouse conventions on MS-DOS. | |
1233 | * MS-DOS Display:: Fonts, frames and display size on MS-DOS. | |
1234 | * MS-DOS File Names:: File name conventions on MS-DOS. | |
1235 | * MS-DOS Printing:: Printing specifics on MS-DOS. | |
1236 | * MS-DOS and MULE:: Support for internationalization on MS-DOS. | |
1237 | * MS-DOS Processes:: Running subprocesses on MS-DOS. | |
2d2f6581 | 1238 | @end ifnottex |
753ad1de | 1239 | |
8cf51b2c GM |
1240 | @end detailmenu |
1241 | @end menu | |
1242 | ||
1243 | @iftex | |
1244 | @unnumbered Preface | |
1245 | ||
1246 | This manual documents the use and simple customization of the Emacs | |
1247 | editor. Simple Emacs customizations do not require you to be a | |
1248 | programmer, but if you are not interested in customizing, you can | |
1249 | ignore the customization hints. | |
1250 | ||
1251 | This is primarily a reference manual, but can also be used as a | |
1252 | primer. If you are new to Emacs, we recommend you start with | |
753ad1de | 1253 | the integrated, learn-by-doing tutorial, before reading the manual. To |
8cf51b2c GM |
1254 | run the tutorial, start Emacs and type @kbd{C-h t}. The tutorial |
1255 | describes commands, tells you when to try them, and explains the | |
2d2f6581 | 1256 | results. The tutorial is available in several languages. |
8cf51b2c GM |
1257 | |
1258 | On first reading, just skim chapters 1 and 2, which describe the | |
1259 | notational conventions of the manual and the general appearance of the | |
1260 | Emacs display screen. Note which questions are answered in these | |
1261 | chapters, so you can refer back later. After reading chapter 4, you | |
1262 | should practice the commands shown there. The next few chapters | |
1263 | describe fundamental techniques and concepts that are used constantly. | |
1264 | You need to understand them thoroughly, so experiment with them | |
1265 | until you are fluent. | |
1266 | ||
1267 | Chapters 14 through 19 describe intermediate-level features that are | |
1268 | useful for many kinds of editing. Chapter 20 and following chapters | |
1269 | describe optional but useful features; read those chapters when you | |
1270 | need them. | |
1271 | ||
753ad1de GM |
1272 | Read the Common Problems chapter if Emacs does not seem to be |
1273 | working properly. It explains how to cope with several common | |
2d2f6581 GM |
1274 | problems (@pxref{Lossage,, Dealing with Emacs Trouble}), as well as |
1275 | when and how to report Emacs bugs (@pxref{Bugs}). | |
8cf51b2c GM |
1276 | |
1277 | To find the documentation of a particular command, look in the index. | |
1278 | Keys (character commands) and command names have separate indexes. | |
1279 | There is also a glossary, with a cross reference for each term. | |
1280 | ||
1281 | This manual is available as a printed book and also as an Info file. | |
2d2f6581 GM |
1282 | The Info file is for reading from Emacs itself, or with the Info program. |
1283 | Info is the principal format for documentation in the GNU system. | |
1284 | The Info file and the printed book contain substantially the same text | |
1285 | and are generated from the same source files, which are also | |
1286 | distributed with GNU Emacs. | |
8cf51b2c GM |
1287 | |
1288 | GNU Emacs is a member of the Emacs editor family. There are many | |
1289 | Emacs editors, all sharing common principles of organization. For | |
1290 | information on the underlying philosophy of Emacs and the lessons | |
1291 | learned from its development, see @cite{Emacs, the Extensible, | |
1292 | Customizable Self-Documenting Display Editor}, available from | |
1293 | @url{ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-519A.pdf}. | |
1294 | ||
2d2f6581 | 1295 | This version of the manual is mainly intended for use with GNU Emacs |
7c2fb837 | 1296 | installed on GNU and Unix systems. GNU Emacs can also be used on |
2d2f6581 GM |
1297 | MS-DOS, Microsoft Windows, and Macintosh systems. The Info file |
1298 | version of this manual contains some more information about using | |
1299 | Emacs on those systems. Those systems use different file name syntax; | |
1300 | in addition MS-DOS does not support all GNU Emacs features. | |
1301 | @xref{Microsoft Windows}, for information about using Emacs on | |
1302 | Windows. @xref{Mac OS / GNUstep}, for information about using Emacs | |
1303 | on Macintosh (and GNUstep). | |
8cf51b2c GM |
1304 | @end iftex |
1305 | ||
abb9615e | 1306 | @node Distrib |
8cf51b2c GM |
1307 | @unnumbered Distribution |
1308 | ||
1309 | GNU Emacs is @dfn{free software}; this means that everyone is free to | |
ae15b89b | 1310 | use it and free to redistribute it under certain conditions. GNU Emacs |
8cf51b2c GM |
1311 | is not in the public domain; it is copyrighted and there are |
1312 | restrictions on its distribution, but these restrictions are designed | |
1313 | to permit everything that a good cooperating citizen would want to do. | |
1314 | What is not allowed is to try to prevent others from further sharing | |
1315 | any version of GNU Emacs that they might get from you. The precise | |
1316 | conditions are found in the GNU General Public License that comes with | |
1317 | Emacs and also appears in this manual@footnote{This manual is itself | |
ae15b89b GM |
1318 | covered by the GNU Free Documentation License. This license is |
1319 | similar in spirit to the General Public License, but is more suitable | |
1320 | for documentation. @xref{GNU Free Documentation License}.}. | |
1321 | @xref{Copying}. | |
8cf51b2c GM |
1322 | |
1323 | One way to get a copy of GNU Emacs is from someone else who has it. | |
1324 | You need not ask for our permission to do so, or tell any one else; | |
1325 | just copy it. If you have access to the Internet, you can get the | |
1326 | latest distribution version of GNU Emacs by anonymous FTP; see | |
1327 | @url{http://www.gnu.org/software/emacs} on our website for more | |
1328 | information. | |
1329 | ||
1330 | You may also receive GNU Emacs when you buy a computer. Computer | |
1331 | manufacturers are free to distribute copies on the same terms that apply to | |
1332 | everyone else. These terms require them to give you the full sources, | |
1333 | including whatever changes they may have made, and to permit you to | |
1334 | redistribute the GNU Emacs received from them under the usual terms of the | |
1335 | General Public License. In other words, the program must be free for you | |
1336 | when you get it, not just free for the manufacturer. | |
1337 | ||
ae15b89b GM |
1338 | If you find GNU Emacs useful, please @strong{send a donation} to the |
1339 | Free Software Foundation to support our work. Donations to the Free | |
1df7defd | 1340 | Software Foundation are tax deductible in the US@. If you use GNU Emacs |
cf29dd84 | 1341 | at your workplace, please suggest that the company make a donation. |
ae15b89b GM |
1342 | For more information on how you can help, see |
1343 | @url{http://www.gnu.org/help/help.html}. | |
1344 | ||
1345 | We also sell hardcopy versions of this manual and @cite{An | |
1df7defd | 1346 | Introduction to Programming in Emacs Lisp}, by Robert J. Chassell. |
ae15b89b GM |
1347 | You can visit our online store at @url{http://shop.fsf.org/}. |
1348 | The income from sales goes to support the foundation's purpose: the | |
1349 | development of new free software, and improvements to our existing | |
1350 | programs including GNU Emacs. | |
1351 | ||
1352 | If you need to contact the Free Software Foundation, see | |
1353 | @url{http://www.fsf.org/about/contact/}, or write to | |
8cf51b2c GM |
1354 | |
1355 | @display | |
1356 | Free Software Foundation | |
1357 | 51 Franklin Street, Fifth Floor | |
1358 | Boston, MA 02110-1301 | |
1359 | USA | |
1360 | @end display | |
1361 | ||
8cf51b2c | 1362 | @iftex |
abb9615e | 1363 | @node Acknowledgments |
8cf51b2c GM |
1364 | @unnumberedsec Acknowledgments |
1365 | ||
1366 | Contributors to GNU Emacs include Jari Aalto, Per Abrahamsen, Tomas | |
1df7defd | 1367 | Abrahamsson, Jay K. Adams, Alon Albert, Michael Albinus, Nagy |
681ebc33 | 1368 | Andras, Benjamin Andresen, Ralf Angeli, Dmitry Antipov, Joe Arceneaux, Emil Åström, |
80c3c4b9 | 1369 | Miles Bader, David Bakhash, Juanma Barranquero, Eli Barzilay, Thomas |
1df7defd | 1370 | Baumann, Steven L. Baur, Jay Belanger, Alexander L. Belikoff, |
80c3c4b9 | 1371 | Thomas Bellman, Scott Bender, Boaz Ben-Zvi, Sergey Berezin, Karl |
1df7defd | 1372 | Berry, Anna M. Bigatti, Ray Blaak, Martin Blais, Jim Blandy, Johan |
681ebc33 | 1373 | Bockgård, Jan Böcker, Joel Boehland, Lennart Borgman, Per Bothner, |
80c3c4b9 | 1374 | Terrence Brannon, Frank Bresz, Peter Breton, Emmanuel Briot, Kevin |
1df7defd | 1375 | Broadey, Vincent Broman, Michael Brouwer, David M. Brown, Stefan Bruda, |
5294599f | 1376 | Georges Brun-Cottan, Joe Buehler, Scott Byer, Włodek Bzyl, |
132b9726 GM |
1377 | Bill Carpenter, Per Cederqvist, Hans Chalupsky, Chris Chase, Bob |
1378 | Chassell, Andrew Choi, Chong Yidong, Sacha Chua, Stewart Clamen, James | |
80c3c4b9 | 1379 | Clark, Mike Clarkson, Glynn Clements, Andrew Cohen, Daniel Colascione, |
14a58169 | 1380 | Christoph Conrad, Ludovic Courtès, Andrew Csillag, |
132b9726 GM |
1381 | Toby Cubitt, Baoqiu Cui, Doug Cutting, Mathias Dahl, Julien Danjou, Satyaki |
1382 | Das, Vivek Dasmohapatra, Dan Davison, Michael DeCorte, Gary Delp, Nachum | |
80c3c4b9 | 1383 | Dershowitz, Dave Detlefs, Matthieu Devin, Christophe de Dinechin, Eri |
681ebc33 | 1384 | Ding, Jan Djärv, Lawrence R. Dodd, Carsten Dominik, Scott Draves, |
80c3c4b9 GM |
1385 | Benjamin Drieu, Viktor Dukhovni, Jacques Duthen, Dmitry Dzhus, John |
1386 | Eaton, Rolf Ebert, Carl Edman, David Edmondson, Paul Eggert, Stephen | |
681ebc33 | 1387 | Eglen, Christian Egli, Torbjörn Einarsson, Tsugutomo Enami, David |
80c3c4b9 GM |
1388 | Engster, Hans Henrik Eriksen, Michael Ernst, Ata Etemadi, Frederick |
1389 | Farnbach, Oscar Figueiredo, Fred Fish, Steve Fisk, Karl Fogel, Gary | |
1df7defd PE |
1390 | Foster, Eric S. Fraga, Romain Francoise, Noah Friedman, Andreas |
1391 | Fuchs, Shigeru Fukaya, Hallvard Furuseth, Keith Gabryelski, Peter S. | |
681ebc33 | 1392 | Galbraith, Kevin Gallagher, Fabián E. Gallina, Kevin Gallo, Juan León Lahoz García, |
80c3c4b9 | 1393 | Howard Gayle, Daniel German, Stephen Gildea, Julien Gilles, David |
132b9726 GM |
1394 | Gillespie, Bob Glickstein, Deepak Goel, David De La Harpe Golden, Boris |
1395 | Goldowsky, David Goodger, Chris Gray, Kevin Greiner, Michelangelo Grigni, Odd | |
681ebc33 | 1396 | Gripenstam, Kai Großjohann, Michael Gschwind, Bastien Guerry, Henry |
80c3c4b9 | 1397 | Guillaume, Doug Gwyn, Bruno Haible, Ken'ichi Handa, Lars Hansen, Chris |
1df7defd PE |
1398 | Hanson, Jesper Harder, Alexandru Harsanyi, K. Shane Hartman, John |
1399 | Heidemann, Jon K. Hellan, Magnus Henoch, Markus Heritsch, Dirk | |
80c3c4b9 | 1400 | Herrmann, Karl Heuer, Manabu Higashida, Konrad Hinsen, Anders Holst, |
1df7defd | 1401 | Jeffrey C. Honig, Tassilo Horn, Kurt Hornik, Tom Houlder, Joakim |
80c3c4b9 GM |
1402 | Hove, Denis Howe, Lars Ingebrigtsen, Andrew Innes, Seiichiro Inoue, |
1403 | Philip Jackson, Martyn Jago, Pavel Janik, Paul Jarc, Ulf Jasper, | |
1df7defd | 1404 | Thorsten Jolitz, Michael K. Johnson, Kyle Jones, Terry Jones, Simon |
681ebc33 | 1405 | Josefsson, Alexandre Julliard, Arne Jørgensen, Tomoji Kagatani, |
6ad823e7 GM |
1406 | Brewster Kahle, Tokuya Kameshima, Lute Kamstra, Ivan Kanis, David |
1407 | Kastrup, David Kaufman, Henry Kautz, Taichi Kawabata, Taro Kawagishi, | |
1408 | Howard Kaye, Michael Kifer, Richard King, Peter Kleiweg, Karel | |
5294599f | 1409 | Klíč, Shuhei Kobayashi, Pavel Kobyakov, Larry K. Kolodney, David |
1df7defd | 1410 | M. Koppelman, Koseki Yoshinori, Robert Krawitz, Sebastian Kremer, |
681ebc33 | 1411 | Ryszard Kubiak, Igor Kuzmin, David Kågedal, Daniel LaLiberte, Karl |
1df7defd | 1412 | Landstrom, Mario Lang, Aaron Larson, James R. Larus, Vinicius Jose |
6ad823e7 GM |
1413 | Latorre, Werner Lemberg, Frederic Lepied, Peter Liljenberg, Christian |
1414 | Limpach, Lars Lindberg, Chris Lindblad, Anders Lindgren, Thomas Link, | |
1df7defd | 1415 | Juri Linkov, Francis Litterio, Sergey Litvinov, Emilio C. Lopes, |
5294599f | 1416 | Martin Lorentzon, Dave Love, Eric Ludlam, Károly Lőrentey, Sascha |
681ebc33 | 1417 | Lüdecke, Greg McGary, Roland McGrath, Michael McNamara, Alan Mackenzie, |
1df7defd | 1418 | Christopher J. Madsen, Neil M. Mager, Ken Manheimer, Bill Mann, |
80c3c4b9 | 1419 | Brian Marick, Simon Marshall, Bengt Martensson, Charlie Martin, |
ef7238c3 | 1420 | Yukihiro Matsumoto, Tomohiro Matsuyama, David Maus, Thomas May, Will Mengarini, David |
1df7defd | 1421 | Megginson, Stefan Merten, Ben A. Mesander, Wayne Mesard, Brad |
8c106d17 | 1422 | Miller, Lawrence Mitchell, Richard Mlynarik, Gerd Möllmann, Stefan |
132b9726 GM |
1423 | Monnier, Keith Moore, Jan Moringen, Morioka Tomohiko, Glenn Morris, |
1424 | Don Morrison, Diane Murray, Riccardo Murri, Sen Nagata, Erik Naggum, | |
1425 | Gergely Nagy, Nobuyoshi Nakada, Thomas Neumann, Mike Newton, Thien-Thi Nguyen, | |
8c106d17 | 1426 | Jurgen Nickelsen, Dan Nicolaescu, Hrvoje Nikšić, Jeff Norden, |
14a58169 | 1427 | Andrew Norman, Edward O'Connor, Kentaro Ohkouchi, Christian Ohler, |
80c3c4b9 | 1428 | Kenichi Okada, Alexandre Oliva, Bob Olson, Michael Olson, Takaaki Ota, |
1df7defd PE |
1429 | Pieter E. J. Pareit, Ross Patterson, David Pearson, Juan Pechiar, |
1430 | Jeff Peck, Damon Anton Permezel, Tom Perrine, William M. Perry, Per | |
1431 | Persson, Jens Petersen, Daniel Pfeiffer, Justus Piater, Richard L. | |
681ebc33 | 1432 | Pieri, Fred Pierresteguy, François Pinard, Daniel Pittman, Christian |
8c106d17 | 1433 | Plaunt, Alexander Pohoyda, David Ponce, Francesco A. Potortì, |
1df7defd PE |
1434 | Michael D. Prange, Mukesh Prasad, Ken Raeburn, Marko Rahamaa, Ashwin |
1435 | Ram, Eric S. Raymond, Paul Reilly, Edward M. Reingold, David | |
80c3c4b9 | 1436 | Reitter, Alex Rezinsky, Rob Riepel, Lara Rios, Adrian Robert, Nick |
1df7defd | 1437 | Roberts, Roland B. Roberts, John Robinson, Denis B. Roegel, Danny |
80c3c4b9 | 1438 | Roozendaal, Sebastian Rose, William Rosenblatt, Markus Rost, Guillermo |
1df7defd PE |
1439 | J. Rozas, Martin Rudalics, Ivar Rummelhoff, Jason Rumney, Wolfgang |
1440 | Rupprecht, Benjamin Rutt, Kevin Ryde, James B. Salem, Masahiko Sato, | |
8c106d17 | 1441 | Timo Savola, Jorgen Schäfer, Holger Schauer, William Schelter, Ralph |
1df7defd | 1442 | Schleicher, Gregor Schmid, Michael Schmidt, Ronald S. Schnell, |
132b9726 | 1443 | Philippe Schnoebelen, Jan Schormann, Alex Schroeder, Stefan Schoef, |
8c106d17 | 1444 | Rainer Schöpf, Raymond Scholz, Eric Schulte, Andreas Schwab, Randal |
80c3c4b9 GM |
1445 | Schwartz, Oliver Seidel, Manuel Serrano, Paul Sexton, Hovav Shacham, |
1446 | Stanislav Shalunov, Marc Shapiro, Richard Sharman, Olin Shivers, Tibor | |
5294599f | 1447 | Šimko, Espen Skoglund, Rick Sladkey, Lynn Slater, Chris Smith, |
1df7defd | 1448 | David Smith, Paul D. Smith, Wilson Snyder, William Sommerfeld, Simon |
80c3c4b9 GM |
1449 | South, Andre Spiegel, Michael Staats, Thomas Steffen, Ulf Stegemann, |
1450 | Reiner Steib, Sam Steingold, Ake Stenhoff, Peter Stephenson, Ken | |
1df7defd | 1451 | Stevens, Andy Stewart, Jonathan Stigelman, Martin Stjernholm, Kim F. |
80c3c4b9 GM |
1452 | Storm, Steve Strassmann, Christopher Suckling, Olaf Sylvester, Naoto |
1453 | Takahashi, Steven Tamm, Luc Teirlinck, Jean-Philippe Theberge, Jens | |
1df7defd | 1454 | T. Berger Thielemann, Spencer Thomas, Jim Thompson, Toru Tomabechi, |
80c3c4b9 GM |
1455 | David O'Toole, Markus Triska, Tom Tromey, Enami Tsugutomo, Eli |
1456 | Tziperman, Daiki Ueno, Masanobu Umeda, Rajesh Vaidheeswarran, Neil | |
1df7defd | 1457 | W. Van Dyke, Didier Verna, Joakim Verona, Ulrik Vieth, Geoffrey |
6ad823e7 | 1458 | Voelker, Johan Vromans, Inge Wallin, John Paul Wallington, Colin |
80c3c4b9 GM |
1459 | Walters, Barry Warsaw, Christoph Wedler, Ilja Weis, Zhang Weize, |
1460 | Morten Welinder, Joseph Brian Wells, Rodney Whitby, John Wiegley, | |
1461 | Sascha Wilde, Ed Wilkinson, Mike Williams, Roland Winkler, Bill | |
1df7defd PE |
1462 | Wohler, Steven A. Wood, Dale R. Worley, Francis J. Wright, Felix |
1463 | S. T. Wu, Tom Wurgler, Yamamoto Mitsuharu, Katsumi Yamaoka, | |
80c3c4b9 GM |
1464 | Masatake Yamato, Jonathan Yavner, Ryan Yeske, Ilya Zakharevich, Milan |
1465 | Zamazal, Victor Zandy, Eli Zaretskii, Jamie Zawinski, Andrew Zhilin, | |
8c106d17 | 1466 | Shenghuo Zhu, Piotr Zieliński, Ian T. Zimmermann, Reto Zimmermann, |
80c3c4b9 | 1467 | Neal Ziring, Teodor Zlatanov, and Detlev Zundel. |
8cf51b2c GM |
1468 | @end iftex |
1469 | ||
abb9615e | 1470 | @node Intro |
8cf51b2c GM |
1471 | @unnumbered Introduction |
1472 | ||
1473 | You are reading about GNU Emacs, the GNU incarnation of the | |
1474 | advanced, self-documenting, customizable, extensible editor Emacs. | |
6232855d | 1475 | (The @samp{G} in @acronym{GNU, @acronym{GNU}'s Not Unix} is not silent.) |
8cf51b2c | 1476 | |
332b5b9a CY |
1477 | We call Emacs @dfn{advanced} because it can do much more than simple |
1478 | insertion and deletion of text. It can control subprocesses, indent | |
753ad1de | 1479 | programs automatically, show multiple files at once, and more. |
332b5b9a CY |
1480 | Emacs editing commands operate in terms of characters, words, lines, |
1481 | sentences, paragraphs, and pages, as well as expressions and comments | |
1482 | in various programming languages. | |
1483 | ||
1484 | @dfn{Self-documenting} means that at any time you can use special | |
1485 | commands, known as @dfn{help commands}, to find out what your options | |
867d4bb3 | 1486 | are, or to find out what any command does, or to find all the |
332b5b9a CY |
1487 | commands that pertain to a given topic. @xref{Help}. |
1488 | ||
1489 | @dfn{Customizable} means that you can easily alter the behavior of | |
1490 | Emacs commands in simple ways. For instance, if you use a programming | |
1491 | language in which comments start with @samp{<**} and end with | |
1492 | @samp{**>}, you can tell the Emacs comment manipulation commands to | |
1493 | use those strings (@pxref{Comments}). To take another example, you | |
1494 | can rebind the basic cursor motion commands (up, down, left and right) | |
1495 | to any keys on the keyboard that you find comfortable. | |
1496 | @xref{Customization}. | |
8cf51b2c GM |
1497 | |
1498 | @dfn{Extensible} means that you can go beyond simple customization | |
332b5b9a CY |
1499 | and create entirely new commands. New commands are simply programs |
1500 | written in the Lisp language, which are run by Emacs's own Lisp | |
1501 | interpreter. Existing commands can even be redefined in the middle of | |
1502 | an editing session, without having to restart Emacs. Most of the | |
1503 | editing commands in Emacs are written in Lisp; the few exceptions | |
8cf51b2c GM |
1504 | could have been written in Lisp but use C instead for efficiency. |
1505 | Writing an extension is programming, but non-programmers can use it | |
1506 | afterwards. @xref{Top, Emacs Lisp Intro, Preface, eintr, An | |
1507 | Introduction to Programming in Emacs Lisp}, if you want to learn Emacs | |
1508 | Lisp programming. | |
1509 | ||
8cf51b2c GM |
1510 | @include screen.texi |
1511 | @include commands.texi | |
1512 | @include entering.texi | |
1513 | @include basic.texi | |
1514 | @include mini.texi | |
1515 | @include m-x.texi | |
1516 | @include help.texi | |
1517 | @include mark.texi | |
1518 | @include killing.texi | |
1519 | @include regs.texi | |
1520 | @include display.texi | |
1521 | @include search.texi | |
1522 | @include fixit.texi | |
1523 | @include kmacro.texi | |
753ad1de | 1524 | @c Includes arevert-xtra. |
8cf51b2c GM |
1525 | @include files.texi |
1526 | @include buffers.texi | |
1527 | @include windows.texi | |
1528 | @include frames.texi | |
1529 | @include mule.texi | |
8875da1e | 1530 | @include modes.texi |
8cf51b2c GM |
1531 | @include indent.texi |
1532 | @include text.texi | |
753ad1de | 1533 | @c Includes fortran-xtra. |
8cf51b2c GM |
1534 | @include programs.texi |
1535 | @include building.texi | |
753ad1de | 1536 | @c Includes vc1-xtra, emerge-xtra. |
8cf51b2c GM |
1537 | @include maintaining.texi |
1538 | @include abbrevs.texi | |
753ad1de | 1539 | @c Includes dired-xtra. |
8cf51b2c | 1540 | @include dired.texi |
753ad1de | 1541 | @c Includes cal-xtra. |
8cf51b2c | 1542 | @include calendar.texi |
856ce114 CY |
1543 | @include sending.texi |
1544 | @include rmail.texi | |
1545 | @c Includes picture-xtra.texi | |
8cf51b2c | 1546 | @include misc.texi |
d43f5a42 | 1547 | @include package.texi |
8cf51b2c GM |
1548 | @include custom.texi |
1549 | @include trouble.texi | |
1550 | ||
abb9615e | 1551 | @node Copying |
8cf51b2c GM |
1552 | @appendix GNU GENERAL PUBLIC LICENSE |
1553 | @include gpl.texi | |
1554 | ||
abb9615e | 1555 | @node GNU Free Documentation License |
8cf51b2c GM |
1556 | @appendix GNU Free Documentation License |
1557 | @include doclicense.texi | |
1558 | ||
1559 | @include cmdargs.texi | |
1560 | @include xresources.texi | |
1561 | ||
1562 | @include anti.texi | |
1563 | @include macos.texi | |
753ad1de | 1564 | @c Includes msdog-xtra. |
8cf51b2c GM |
1565 | @include msdog.texi |
1566 | @include gnu.texi | |
1567 | @include glossary.texi | |
1568 | @ifnottex | |
1569 | @include ack.texi | |
1570 | @end ifnottex | |
1571 | ||
1572 | @c The Option Index is produced only in the on-line version, | |
1573 | @c because the index entries related to command-line options | |
1574 | @c tend to point to the same pages and all begin with a dash. | |
8cf51b2c | 1575 | |
abb9615e | 1576 | @node Key Index |
8cf51b2c GM |
1577 | @unnumbered Key (Character) Index |
1578 | @printindex ky | |
8cf51b2c GM |
1579 | |
1580 | @ifnottex | |
abb9615e | 1581 | @node Option Index |
8cf51b2c GM |
1582 | @unnumbered Command-Line Options Index |
1583 | @printindex op | |
8cf51b2c GM |
1584 | @end ifnottex |
1585 | ||
abb9615e | 1586 | @node Command Index |
8cf51b2c GM |
1587 | @unnumbered Command and Function Index |
1588 | @printindex fn | |
8cf51b2c | 1589 | |
abb9615e | 1590 | @node Variable Index |
8cf51b2c GM |
1591 | @unnumbered Variable Index |
1592 | @printindex vr | |
1593 | ||
abb9615e | 1594 | @node Concept Index |
8cf51b2c GM |
1595 | @unnumbered Concept Index |
1596 | @printindex cp | |
1597 | ||
1598 | @bye |