Mercurial > emacs
annotate man/emacs.texi @ 42811:cf0c0ef57504
*** empty log message ***
| author | Jason Rumney <jasonr@gnu.org> |
|---|---|
| date | Thu, 17 Jan 2002 19:29:24 +0000 |
| parents | eb194a8d11de |
| children | e4c362348aae |
| rev | line source |
|---|---|
| 24093 | 1 \input texinfo |
| 2 | |
| 3 @setchapternewpage odd | |
| 4 @settitle GNU Emacs Manual | |
| 5 @setfilename ../info/emacs | |
|
37452
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
6 @defcodeindex op |
| 24093 | 7 @synindex pg cp |
| 8 | |
|
35942
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
9 @c The edition number appears in several places in this file |
|
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
10 @set EDITION Fourteenth |
| 42651 | 11 @set EMACSVER 21.2.50 |
|
35942
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
12 |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
13 @ifnottex |
|
35942
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
14 This is the @value{EDITION} edition of the @cite{GNU Emacs Manual}, |
|
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
15 updated for Emacs version @value{EMACSVER}. |
| 24093 | 16 |
| 30009 | 17 @dircategory Emacs |
| 24093 | 18 @direntry |
| 19 * Emacs: (emacs). The extensible self-documenting text editor. | |
| 20 @end direntry | |
| 21 | |
| 22 Published by the Free Software Foundation | |
| 23 59 Temple Place, Suite 330 | |
| 24 Boston, MA 02111-1307 USA | |
| 25 | |
| 35197 | 26 Copyright (C) 1985, 1986,1987,1993,1994,1995,1996,1997,1998,1999,2000,2001 |
| 24093 | 27 Free Software Foundation, Inc. |
| 28 | |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
29 Permission is granted to copy, distribute and/or modify this document |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
30 under the terms of the GNU Free Documentation License, Version 1.1 or |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
31 any later version published by the Free Software Foundation; with the |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
32 Invariant Sections being ``The GNU Manifesto'', ``Distribution'' and |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
33 ``GNU GENERAL PUBLIC LICENSE'', with the Front-Cover texts being ``A GNU |
|
36153
87a2cea44a9c
Fix punctuation in license notices.
Richard M. Stallman <rms@gnu.org>
parents:
36104
diff
changeset
|
34 Manual,'' and with the Back-Cover Texts as in (a) below. A copy of the |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
35 license is included in the section entitled ``GNU Free Documentation |
|
36153
87a2cea44a9c
Fix punctuation in license notices.
Richard M. Stallman <rms@gnu.org>
parents:
36104
diff
changeset
|
36 License.'' |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
37 |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
38 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
39 this GNU Manual, like GNU software. Copies published by the Free |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
40 Software Foundation raise funds for GNU development.'' |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
41 @end ifnottex |
| 24093 | 42 |
| 43 @c in general, keep the following line commented out, unless doing a | |
| 44 @c copy of this manual that will be published. the manual should go | |
| 45 @c onto the distribution in the full, 8.5 x 11" size. | |
| 46 | |
|
39626
456e8149059d
Comment out @smallbook.
Richard M. Stallman <rms@gnu.org>
parents:
39438
diff
changeset
|
47 @c @smallbook |
| 24093 | 48 |
| 49 @iftex | |
| 50 @kbdinputstyle code | |
| 51 | |
| 52 @shorttitlepage GNU Emacs Manual | |
| 53 @end iftex | |
| 54 @titlepage | |
| 55 @sp 6 | |
| 56 @center @titlefont{GNU Emacs Manual} | |
| 57 @sp 4 | |
|
35942
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
58 @center @value{EDITION} Edition, Updated for Emacs Version @value{EMACSVER}. |
| 24093 | 59 @sp 5 |
| 60 @center Richard Stallman | |
| 61 @page | |
| 62 @vskip 0pt plus 1filll | |
| 35197 | 63 Copyright @copyright{} 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 |
| 24093 | 64 Free Software Foundation, Inc. |
| 65 @sp 2 | |
|
35942
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
66 @value{EDITION} Edition @* |
|
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
67 Updated for Emacs Version @value{EMACSVER}, @* |
|
31144
f09cfa9cb90b
Bump version to 14, Emacs version to 21.1, and add 2000 to the
Eli Zaretskii <eliz@gnu.org>
parents:
30870
diff
changeset
|
68 August 2000 |
| 24093 | 69 |
| 70 ISBN 1-882114-06-X | |
| 71 @sp 1 | |
| 72 Published by the Free Software Foundation @* | |
| 73 59 Temple Place, Suite 330 @* | |
| 74 Boston, MA 02111-1307 USA | |
| 75 @sp 1 | |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
76 Permission is granted to copy, distribute and/or modify this document |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
77 under the terms of the GNU Free Documentation License, Version 1.1 or |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
78 any later version published by the Free Software Foundation; with the |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
79 Invariant Sections being ``The GNU Manifesto'', ``Distribution'' and |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
80 ``GNU GENERAL PUBLIC LICENSE'', with the Front-Cover texts being ``A GNU |
|
36153
87a2cea44a9c
Fix punctuation in license notices.
Richard M. Stallman <rms@gnu.org>
parents:
36104
diff
changeset
|
81 Manual,'' and with the Back-Cover Texts as in (a) below. A copy of the |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
82 license is included in the section entitled ``GNU Free Documentation |
|
36153
87a2cea44a9c
Fix punctuation in license notices.
Richard M. Stallman <rms@gnu.org>
parents:
36104
diff
changeset
|
83 License.'' |
| 24093 | 84 |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
85 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
86 this GNU Manual, like GNU software. Copies published by the Free |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
87 Software Foundation raise funds for GNU development.'' |
| 24093 | 88 |
| 89 @sp 2 | |
| 90 Cover art by Etienne Suvasa. | |
| 91 | |
| 92 @end titlepage | |
| 93 @page | |
| 30870 | 94 @ifnottex |
| 24093 | 95 @node Top, Distrib, (dir), (dir) |
| 96 @top The Emacs Editor | |
| 97 | |
| 98 Emacs is the extensible, customizable, self-documenting real-time | |
| 99 display editor. This Info file describes how to edit with Emacs and | |
|
35942
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
100 some of how to customize it; it corresponds to GNU Emacs version |
|
d302cde082a0
Use @set and @value to avoid changing the edition and the Emacs version
Eli Zaretskii <eliz@gnu.org>
parents:
35745
diff
changeset
|
101 @value{EMACSVER}. |
|
41864
16dc446b245f
Don't omit first argument of @ref.
Andreas Schwab <schwab@suse.de>
parents:
41370
diff
changeset
|
102 For information on extending Emacs, see @ref{Top, Emacs Lisp,, elisp, The |
| 24093 | 103 Emacs Lisp Reference Manual}. |
| 30870 | 104 @end ifnottex |
| 24093 | 105 |
| 106 @ignore | |
| 107 These subcategories have been deleted for simplicity | |
| 108 and to avoid conflicts. | |
| 109 Completion | |
| 110 Backup Files | |
| 111 Auto-Saving: Protection Against Disasters | |
| 112 Snapshots | |
| 113 Text Mode | |
| 114 Outline Mode | |
| 115 @TeX{} Mode | |
| 116 Formatted Text | |
| 117 Fortran Mode | |
| 118 Fortran Indentation | |
| 119 Shell Command History | |
| 120 | |
| 121 The ones for Dired and Rmail have had the items turned into :: items | |
| 122 to avoid conflicts. | |
| 123 Also Running Shell Commands from Emacs | |
| 124 and Sending Mail and Registers and Minibuffer. | |
| 125 @end ignore | |
| 126 | |
| 127 @menu | |
| 128 * Distrib:: How to get the latest Emacs distribution. | |
| 129 * Copying:: The GNU General Public License gives you permission | |
| 130 to redistribute GNU Emacs on certain terms; | |
| 131 it also explains that there is no warranty. | |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
132 * GNU Free Documentation License:: The license for this documentation. |
| 24093 | 133 * Intro:: An introduction to Emacs concepts. |
| 134 * Glossary:: The glossary. | |
|
32113
a0915106b092
(Top): Update version in `Antinews' menu entry.
Miles Bader <miles@gnu.org>
parents:
31356
diff
changeset
|
135 * Antinews:: Information about Emacs version 20. |
| 34199 | 136 * Mac OS:: Using Emacs in the Mac. |
| 24093 | 137 * MS-DOS:: Using Emacs on MS-DOS (otherwise known as "MS-DOG"). |
| 138 * Manifesto:: What's GNU? Gnu's Not Unix! | |
| 139 * Acknowledgments:: Major contributors to GNU Emacs. | |
| 140 | |
| 141 Indexes (nodes containing large menus) | |
| 142 * Key Index:: An item for each standard Emacs key sequence. | |
| 143 * Command Index:: An item for each command name. | |
| 144 * Variable Index:: An item for each documented variable. | |
| 145 * Concept Index:: An item for each concept. | |
|
37452
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
146 @c This is last because @ifnottex leaves an empty line. |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
147 @ifnottex |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
148 * Option Index:: An item for every command-line option. |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
149 @end ifnottex |
| 24093 | 150 |
| 151 Important General Concepts | |
| 152 * Screen:: How to interpret what you see on the screen. | |
| 153 * User Input:: Kinds of input events (characters, buttons, | |
| 154 function keys). | |
| 155 * Keys:: Key sequences: what you type to request one | |
| 156 editing action. | |
| 157 * Commands:: Named functions run by key sequences to do editing. | |
| 158 * Text Characters:: Character set for text (the contents of buffers | |
| 159 and strings). | |
| 160 * Entering Emacs:: Starting Emacs from the shell. | |
| 161 * Exiting:: Stopping or killing Emacs. | |
| 162 * Command Arguments:: Hairy startup options. | |
| 163 | |
| 164 Fundamental Editing Commands | |
| 165 * Basic:: The most basic editing commands. | |
| 166 * Minibuffer:: Entering arguments that are prompted for. | |
| 167 * M-x:: Invoking commands by their names. | |
| 168 * Help:: Commands for asking Emacs about its commands. | |
| 169 | |
| 170 Important Text-Changing Commands | |
| 171 * Mark:: The mark: how to delimit a ``region'' of text. | |
| 172 * Killing:: Killing text. | |
| 173 * Yanking:: Recovering killed text. Moving text. | |
| 174 * Accumulating Text:: Other ways of copying text. | |
| 175 * Rectangles:: Operating on the text inside a rectangle on the screen. | |
| 176 * Registers:: Saving a text string or a location in the buffer. | |
| 177 * Display:: Controlling what text is displayed. | |
| 178 * Search:: Finding or replacing occurrences of a string. | |
| 179 * Fixit:: Commands especially useful for fixing typos. | |
| 180 | |
| 181 Major Structures of Emacs | |
| 182 * Files:: All about handling files. | |
| 183 * Buffers:: Multiple buffers; editing several files at once. | |
| 184 * Windows:: Viewing two pieces of text at once. | |
| 185 * Frames:: Running the same Emacs session in multiple X windows. | |
|
24571
9944f4ca2ee5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
24094
diff
changeset
|
186 * International:: Using non-ASCII character sets (the MULE features). |
| 24093 | 187 |
| 188 Advanced Features | |
| 189 * Major Modes:: Text mode vs. Lisp mode vs. C mode ... | |
| 190 * Indentation:: Editing the white space at the beginnings of lines. | |
| 191 * Text:: Commands and modes for editing English. | |
| 192 * Programs:: Commands and modes for editing programs. | |
| 193 * Building:: Compiling, running and debugging programs. | |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
194 * Maintaining:: Features for maintaining large programs. |
| 24093 | 195 * Abbrevs:: How to define text abbreviations to reduce |
| 196 the number of characters you must type. | |
| 197 * Picture:: Editing pictures made up of characters | |
| 198 using the quarter-plane screen model. | |
| 199 * Sending Mail:: Sending mail in Emacs. | |
| 200 * Rmail:: Reading mail in Emacs. | |
| 201 * Dired:: You can ``edit'' a directory to manage files in it. | |
| 202 * Calendar/Diary:: The calendar and diary facilities. | |
| 203 * Gnus:: How to read netnews with Emacs. | |
| 204 * Shell:: Executing shell commands from Emacs. | |
| 205 * Emacs Server:: Using Emacs as an editing server for @code{mail}, etc. | |
| 206 * Hardcopy:: Printing buffers or regions. | |
| 27212 | 207 * PostScript:: Printing buffers or regions as PostScript. |
| 208 * PostScript Variables:: | |
| 209 Customizing the PostScript printing commands. | |
| 24093 | 210 * Sorting:: Sorting lines, paragraphs or pages within Emacs. |
| 211 * Narrowing:: Restricting display and editing to a portion | |
| 212 of the buffer. | |
| 213 * Two-Column:: Splitting apart columns to edit them | |
| 214 in side-by-side windows. | |
| 215 * Editing Binary Files:: | |
| 216 Using Hexl mode to edit binary files. | |
| 217 * Saving Emacs Sessions:: | |
| 218 Saving Emacs state from one session to the next. | |
| 219 * Recursive Edit:: A command can allow you to do editing | |
| 220 "within the command". This is called a | |
| 36211 | 221 "recursive editing level". |
| 24093 | 222 * Emulation:: Emulating some other editors with Emacs. |
| 30870 | 223 * Hyperlinking:: Following links in buffers. |
| 24093 | 224 * Dissociated Press:: Dissociating text for fun. |
| 225 * Amusements:: Various games and hacks. | |
| 226 * Customization:: Modifying the behavior of Emacs. | |
|
40520
9062bc5cc660
Add new appendix "X Resources" to menu.
Richard M. Stallman <rms@gnu.org>
parents:
39874
diff
changeset
|
227 * X Resources:: X resources for customizing Emacs. |
| 24093 | 228 |
| 229 Recovery from Problems | |
| 230 * Quitting:: Quitting and aborting. | |
| 231 * Lossage:: What to do if Emacs is hung or malfunctioning. | |
| 232 * Bugs:: How and when to report a bug. | |
| 233 * Contributing:: How to contribute improvements to Emacs. | |
| 234 * Service:: How to get help for your own Emacs needs. | |
| 235 | |
| 236 Here are some other nodes which are really inferiors of the ones | |
| 237 already listed, mentioned here so you can get to them in one step: | |
| 238 | |
| 239 --- The Detailed Node Listing --- | |
| 240 | |
| 241 The Organization of the Screen | |
| 242 | |
| 243 * Point:: The place in the text where editing commands operate. | |
| 244 * Echo Area:: Short messages appear at the bottom of the screen. | |
| 245 * Mode Line:: Interpreting the mode line. | |
| 246 * Menu Bar:: How to use the menu bar. | |
| 247 | |
| 248 Basic Editing Commands | |
| 249 | |
| 250 * Inserting Text:: Inserting text by simply typing it. | |
| 251 * Moving Point:: How to move the cursor to the place where you want to | |
| 252 change something. | |
| 253 * Erasing:: Deleting and killing text. | |
| 254 * Undo:: Undoing recent changes in the text. | |
| 255 * Files: Basic Files. Visiting, creating, and saving files. | |
| 256 * Help: Basic Help. Asking what a character does. | |
| 257 * Blank Lines:: Commands to make or delete blank lines. | |
| 258 * Continuation Lines:: Lines too wide for the screen. | |
| 259 * Position Info:: What page, line, row, or column is point on? | |
| 260 * Arguments:: Numeric arguments for repeating a command. | |
| 261 | |
| 262 The Minibuffer | |
| 263 | |
| 264 * Minibuffer File:: Entering file names with the minibuffer. | |
| 265 * Minibuffer Edit:: How to edit in the minibuffer. | |
| 266 * Completion:: An abbreviation facility for minibuffer input. | |
| 267 * Minibuffer History:: Reusing recent minibuffer arguments. | |
| 268 * Repetition:: Re-executing commands that used the minibuffer. | |
| 269 | |
| 270 Help | |
| 271 | |
| 272 * Help Summary:: Brief list of all Help commands. | |
| 273 * Key Help:: Asking what a key does in Emacs. | |
| 274 * Name Help:: Asking about a command, variable or function name. | |
| 275 * Apropos:: Asking what pertains to a given topic. | |
| 276 * Library Keywords:: Finding Lisp libraries by keywords (topics). | |
| 277 * Language Help:: Help relating to international language support. | |
| 278 * Misc Help:: Other help commands. | |
| 279 | |
| 280 The Mark and the Region | |
| 281 | |
| 282 * Setting Mark:: Commands to set the mark. | |
| 283 * Transient Mark:: How to make Emacs highlight the region-- | |
| 284 when there is one. | |
| 285 * Using Region:: Summary of ways to operate on contents of the region. | |
| 286 * Marking Objects:: Commands to put region around textual units. | |
| 287 * Mark Ring:: Previous mark positions saved so you can go back there. | |
| 288 * Global Mark Ring:: Previous mark positions in various buffers. | |
| 289 | |
| 290 Deletion and Killing | |
| 291 | |
| 292 * Deletion:: Commands for deleting small amounts of text and | |
| 293 blank areas. | |
| 294 * Killing by Lines:: How to kill entire lines of text at one time. | |
| 295 * Other Kill Commands:: Commands to kill large regions of text and | |
| 296 syntactic units such as words and sentences. | |
| 297 | |
| 298 Yanking | |
| 299 | |
| 300 * Kill Ring:: Where killed text is stored. Basic yanking. | |
| 301 * Appending Kills:: Several kills in a row all yank together. | |
| 302 * Earlier Kills:: Yanking something killed some time ago. | |
| 303 | |
| 304 Registers | |
| 305 | |
| 306 * RegPos:: Saving positions in registers. | |
| 307 * RegText:: Saving text in registers. | |
| 308 * RegRect:: Saving rectangles in registers. | |
| 309 * RegConfig:: Saving window configurations in registers. | |
| 310 * RegFiles:: File names in registers. | |
| 311 * Bookmarks:: Bookmarks are like registers, but persistent. | |
| 312 | |
| 313 Controlling the Display | |
| 314 | |
| 315 * Scrolling:: Moving text up and down in a window. | |
| 316 * Horizontal Scrolling:: Moving text left and right in a window. | |
| 317 * Follow Mode:: Follow mode lets two windows scroll as one. | |
| 318 * Selective Display:: Hiding lines with lots of indentation. | |
| 319 * Optional Mode Line:: Optional mode line display features. | |
| 320 * Text Display:: How text is normally displayed. | |
| 36211 | 321 * Display Custom:: Information on variables for customizing display. |
| 24093 | 322 |
| 323 Searching and Replacement | |
| 324 | |
| 325 * Incremental Search:: Search happens as you type the string. | |
| 326 * Nonincremental Search:: Specify entire string and then search. | |
| 327 * Word Search:: Search for sequence of words. | |
| 328 * Regexp Search:: Search for match for a regexp. | |
| 329 * Regexps:: Syntax of regular expressions. | |
| 330 * Search Case:: To ignore case while searching, or not. | |
| 331 * Replace:: Search, and replace some or all matches. | |
| 332 * Other Repeating Search:: Operating on all matches for some regexp. | |
| 333 | |
| 334 Replacement Commands | |
| 335 | |
| 336 * Unconditional Replace:: Replacing all matches for a string. | |
| 337 * Regexp Replace:: Replacing all matches for a regexp. | |
| 338 * Replacement and Case:: How replacements preserve case of letters. | |
| 339 * Query Replace:: How to use querying. | |
| 340 | |
| 341 Commands for Fixing Typos | |
| 342 | |
| 343 * Kill Errors:: Commands to kill a batch of recently entered text. | |
| 344 * Transpose:: Exchanging two characters, words, lines, lists... | |
| 345 * Fixing Case:: Correcting case of last word entered. | |
| 346 * Spelling:: Apply spelling checker to a word or a whole buffer. | |
| 347 | |
| 348 File Handling | |
| 349 | |
| 350 * File Names:: How to type and edit file-name arguments. | |
| 351 * Visiting:: Visiting a file prepares Emacs to edit the file. | |
| 352 * Saving:: Saving makes your changes permanent. | |
| 353 * Reverting:: Reverting cancels all the changes not saved. | |
| 354 * Auto Save:: Auto Save periodically protects against loss of data. | |
| 355 * File Aliases:: Handling multiple names for one file. | |
| 356 * Version Control:: Version control systems (RCS, CVS and SCCS). | |
| 357 * Directories:: Creating, deleting, and listing file directories. | |
| 358 * Comparing Files:: Finding where two files differ. | |
| 359 * Misc File Ops:: Other things you can do on files. | |
| 360 * Compressed Files:: Accessing compressed files. | |
| 361 * Remote Files:: Accessing files on other sites. | |
| 362 * Quoted File Names:: Quoting special characters in file names. | |
| 363 | |
| 364 Saving Files | |
| 365 | |
| 366 * Backup:: How Emacs saves the old version of your file. | |
| 367 * Interlocking:: How Emacs protects against simultaneous editing | |
| 368 of one file by two users. | |
| 369 | |
| 370 Version Control | |
| 371 | |
| 372 * Introduction to VC:: How version control works in general. | |
| 373 * VC Mode Line:: How the mode line shows version control status. | |
| 374 * Basic VC Editing:: How to edit a file under version control. | |
| 375 * Old Versions:: Examining and comparing old versions. | |
| 376 * Secondary VC Commands:: The commands used a little less frequently. | |
| 377 * Branches:: Multiple lines of development. | |
| 378 * Snapshots:: Sets of file versions treated as a unit. | |
| 379 * Miscellaneous VC:: Various other commands and features of VC. | |
| 380 * Customizing VC:: Variables that change VC's behavior. | |
| 381 | |
| 382 Using Multiple Buffers | |
| 383 | |
| 384 * Select Buffer:: Creating a new buffer or reselecting an old one. | |
| 385 * List Buffers:: Getting a list of buffers that exist. | |
| 39267 | 386 * Misc Buffer:: Renaming; changing read-onliness; copying text. |
| 24093 | 387 * Kill Buffer:: Killing buffers you no longer need. |
| 388 * Several Buffers:: How to go through the list of all buffers | |
| 389 and operate variously on several of them. | |
| 390 * Indirect Buffers:: An indirect buffer shares the text of another buffer. | |
| 391 | |
| 392 Multiple Windows | |
| 393 | |
| 394 * Basic Window:: Introduction to Emacs windows. | |
| 395 * Split Window:: New windows are made by splitting existing windows. | |
| 396 * Other Window:: Moving to another window or doing something to it. | |
| 397 * Pop Up Window:: Finding a file or buffer in another window. | |
| 398 * Force Same Window:: Forcing certain buffers to appear in the selected | |
| 399 window rather than in another window. | |
| 400 * Change Window:: Deleting windows and changing their sizes. | |
| 401 | |
| 402 Frames and X Windows | |
| 403 | |
| 404 * Mouse Commands:: Moving, cutting, and pasting, with the mouse. | |
| 405 * Secondary Selection:: Cutting without altering point and mark. | |
| 36211 | 406 * Clipboard:: Using the clipboard for selections. |
| 24093 | 407 * Mouse References:: Using the mouse to select an item from a list. |
| 408 * Menu Mouse Clicks:: Mouse clicks that bring up menus. | |
| 409 * Mode Line Mouse:: Mouse clicks on the mode line. | |
| 410 * Creating Frames:: Creating additional Emacs frames with various contents. | |
| 36211 | 411 * Frame Commands:: Iconifying, deleting, and switching frames. |
| 412 * Speedbar:: How to make and use a speedbar frame. | |
| 24093 | 413 * Multiple Displays:: How one Emacs job can talk to several displays. |
| 414 * Special Buffer Frames:: You can make certain buffers have their own frames. | |
| 415 * Frame Parameters:: Changing the colors and other modes of frames. | |
| 416 * Scroll Bars:: How to enable and disable scroll bars; how to use them. | |
| 36211 | 417 * Wheeled Mice:: Using mouse wheels for scrolling. |
| 24093 | 418 * Menu Bars:: Enabling and disabling the menu bar. |
| 36211 | 419 * Tool Bars:: Enabling and disabling the tool bar. |
| 420 * Dialog Boxes:: Controlling use of dialog boxes. | |
| 24093 | 421 * Faces:: How to change the display style using faces. |
| 422 * Font Lock:: Minor mode for syntactic highlighting using faces. | |
| 36211 | 423 * Highlight Changes:: Using colors to show where you changed the buffer. |
| 424 * Highlight Interactively:: Tell Emacs what text to highlight. | |
| 425 * Trailing Whitespace:: Showing possibly-spurious trailing whitespace. | |
| 426 * Tooltips:: Showing "tooltips", AKA "ballon help" for active text. | |
| 427 * Mouse Avoidance:: Moving the mouse pointer out of the way. | |
| 24093 | 428 * Non-Window Terminals:: Multiple frames on terminals that show only one. |
| 36211 | 429 * XTerm Mouse:: Using the mouse in an XTerm terminal emulator. |
| 24093 | 430 |
| 431 International Character Set Support | |
| 432 | |
|
37844
25ec812aa6bd
International Intro node renamed to International Chars.
Richard M. Stallman <rms@gnu.org>
parents:
37620
diff
changeset
|
433 * International Chars:: Basic concepts of multibyte characters. |
| 24093 | 434 * Enabling Multibyte:: Controlling whether to use multibyte characters. |
| 435 * Language Environments:: Setting things up for the language you use. | |
| 436 * Input Methods:: Entering text characters not on your keyboard. | |
| 437 * Select Input Method:: Specifying your choice of input methods. | |
| 438 * Coding Systems:: Character set conversion when you read and | |
| 439 write files, and so on. | |
| 440 * Recognize Coding:: How Emacs figures out which conversion to use. | |
| 441 * Specify Coding:: Various ways to choose which conversion to use. | |
| 442 * Fontsets:: Fontsets are collections of fonts | |
| 443 that cover the whole spectrum of characters. | |
| 444 * Defining Fontsets:: Defining a new fontset. | |
| 27212 | 445 * Single-Byte Character Support:: |
| 24093 | 446 You can pick one European character set |
| 447 to use without multibyte characters. | |
| 448 | |
| 449 Major Modes | |
| 450 | |
| 451 * Choosing Modes:: How major modes are specified or chosen. | |
| 452 | |
| 453 Indentation | |
| 454 | |
| 455 * Indentation Commands:: Various commands and techniques for indentation. | |
| 456 * Tab Stops:: You can set arbitrary "tab stops" and then | |
| 457 indent to the next tab stop when you want to. | |
| 458 * Just Spaces:: You can request indentation using just spaces. | |
| 459 | |
| 460 Commands for Human Languages | |
| 461 | |
| 462 * Words:: Moving over and killing words. | |
| 463 * Sentences:: Moving over and killing sentences. | |
| 464 * Paragraphs:: Moving over paragraphs. | |
| 465 * Pages:: Moving over pages. | |
| 466 * Filling:: Filling or justifying text. | |
| 467 * Case:: Changing the case of text. | |
| 468 * Text Mode:: The major modes for editing text files. | |
| 469 * Outline Mode:: Editing outlines. | |
| 470 * TeX Mode:: Editing input to the formatter TeX. | |
| 471 * Nroff Mode:: Editing input to the formatter nroff. | |
| 472 * Formatted Text:: Editing formatted text directly in WYSIWYG fashion. | |
| 473 | |
| 474 Filling Text | |
| 475 | |
| 476 * Auto Fill:: Auto Fill mode breaks long lines automatically. | |
| 477 * Fill Commands:: Commands to refill paragraphs and center lines. | |
| 478 * Fill Prefix:: Filling paragraphs that are indented | |
| 479 or in a comment, etc. | |
| 480 * Adaptive Fill:: How Emacs can determine the fill prefix automatically. | |
| 481 | |
| 482 Editing Programs | |
| 483 | |
| 484 * Program Modes:: Major modes for editing programs. | |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
485 * Defuns:: Commands to operate on major top-level parts |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
486 of a program. |
| 24093 | 487 * Program Indent:: Adjusting indentation to show the nesting. |
| 488 * Comments:: Inserting, killing, and aligning comments. | |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
489 * Parentheses:: Commands that operate on parentheses. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
490 * Documentation:: Getting documentation of functions you plan to call. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
491 * Hideshow:: Displaying blocks selectively. |
| 24093 | 492 * Symbol Completion:: Completion on symbol names of your program or language. |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
493 * Glasses:: Making identifiersLikeThis more readable. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
494 * Misc for Programs:: Other Emacs features useful for editing programs. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
495 * C Modes:: Special commands of C, C++, Objective-C, |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
496 Java, and Pike modes. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
497 * Fortran:: Fortran mode and its special features. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
498 * Asm Mode:: Asm mode and its special features. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
499 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
500 Top-Level Definitions, or Defuns |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
501 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
502 * Left Margin Paren:: An open-paren or similar opening delimiter |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
503 starts a defun if it is at the left margin. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
504 * Moving by Defuns:: Commands to move over or mark a major definition. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
505 * Imenu:: Making buffer indexes as menus. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
506 * Which Function:: Which Function mode shows which function you are in. |
| 24093 | 507 |
| 508 Indentation for Programs | |
| 509 | |
| 510 * Basic Indent:: Indenting a single line. | |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
511 * Multi-line Indent:: Commands to reindent many lines at once. |
| 24093 | 512 * Lisp Indent:: Specifying how each Lisp function should be indented. |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
513 * C Indent:: Extra features for indenting C and related modes. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
514 * Custom C Indent:: Controlling indentation style for C and related modes. |
| 24093 | 515 |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
516 Commands for Editing with Parentheses |
| 24093 | 517 |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
518 * Expressions:: Expressions with balanced parentheses. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
519 * Moving by Parens:: Commands for moving up, down and across |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
520 in the structure of parentheses. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
521 * Matching:: Insertion of a close-delimiter flashes matching open. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
522 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
523 Manipulating Comments |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
524 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
525 * Comment Commands:: Inserting, killing, and indenting comments. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
526 * Multi-Line Comments:: Commands for adding and editing multi-line comments. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
527 * Options for Comments::Customizing the comment features. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
528 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
529 Documentation Lookup |
| 24093 | 530 |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
531 * Info Lookup:: Looking up library functions and commands |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
532 in Info files. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
533 * Man Page:: Looking up man pages of library functions and commands. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
534 * Lisp Doc:: Looking up Emacs Lisp functions, etc. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
535 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
536 C and Related Modes |
| 24093 | 537 |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
538 * Motion in C:: Commands to move by C statements, etc. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
539 * Electric C:: Colon and other chars can automatically reindent. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
540 * Hungry Delete:: A more powerful DEL command. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
541 * Other C Commands:: Filling comments, viewing expansion of macros, |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
542 and other neat features. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
543 * Comments in C:: Options for customizing comment style. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
544 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
545 Fortran Mode |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
546 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
547 * Motion: Fortran Motion. Moving point by statements or subprograms. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
548 * Indent: Fortran Indent. Indentation commands for Fortran. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
549 * Comments: Fortran Comments. Inserting and aligning comments. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
550 * Autofill: Fortran Autofill. Auto fill minor mode for Fortran. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
551 * Columns: Fortran Columns. Measuring columns for valid Fortran. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
552 * Abbrev: Fortran Abbrev. Built-in abbrevs for Fortran keywords. |
| 24093 | 553 |
| 554 Compiling and Testing Programs | |
| 555 | |
| 556 * Compilation:: Compiling programs in languages other | |
| 557 than Lisp (C, Pascal, etc.). | |
| 558 * Compilation Mode:: The mode for visiting compiler errors. | |
| 559 * Compilation Shell:: Customizing your shell properly | |
| 560 for use in the compilation buffer. | |
| 561 * Debuggers:: Running symbolic debuggers for non-Lisp programs. | |
| 562 * Executing Lisp:: Various modes for editing Lisp programs, | |
| 563 with different facilities for running | |
| 564 the Lisp programs. | |
| 565 * Lisp Libraries:: Creating Lisp programs to run in Emacs. | |
| 566 * Lisp Interaction:: Executing Lisp in an Emacs buffer. | |
| 567 * Lisp Eval:: Executing a single Lisp expression in Emacs. | |
| 568 * External Lisp:: Communicating through Emacs with a separate Lisp. | |
| 569 | |
| 570 Running Debuggers Under Emacs | |
| 571 | |
| 572 * Starting GUD:: How to start a debugger subprocess. | |
| 573 * Debugger Operation:: Connection between the debugger and source buffers. | |
| 574 * Commands of GUD:: Key bindings for common commands. | |
| 575 * GUD Customization:: Defining your own commands for GUD. | |
| 576 | |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
577 Maintaining Programs |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
578 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
579 * Change Log:: Maintaining a change history for your program. |
|
40792
7ea12eee7004
Comment out the Authors node.
Richard M. Stallman <rms@gnu.org>
parents:
40525
diff
changeset
|
580 @ignore |
|
39082
b2693c0914e4
Fix the AUTHORS menu item. Suggested by Eric Hanchrow <offby1@blarg.net>.
Eli Zaretskii <eliz@gnu.org>
parents:
39059
diff
changeset
|
581 * Authors:: Maintaining the Emacs @file{AUTHORS} file. |
|
40792
7ea12eee7004
Comment out the Authors node.
Richard M. Stallman <rms@gnu.org>
parents:
40525
diff
changeset
|
582 @end ignore |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
583 * Tags:: Go direct to any function in your program in one |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
584 command. Tags remembers which file it is in. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
585 * Emerge:: A convenient way of merging two versions of a program. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
586 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
587 Tags Tables |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
588 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
589 * Tag Syntax:: Tag syntax for various types of code and text files. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
590 * Create Tags Table:: Creating a tags table with @code{etags}. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
591 * Select Tags Table:: How to visit a tags table. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
592 * Find Tag:: Commands to find the definition of a specific tag. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
593 * Tags Search:: Using a tags table for searching and replacing. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
594 * List Tags:: Listing and finding tags defined in a file. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
595 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
596 Merging Files with Emerge |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
597 |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
598 * Overview of Emerge:: How to start Emerge. Basic concepts. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
599 * Submodes of Emerge:: Fast mode vs. Edit mode. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
600 Skip Prefers mode and Auto Advance mode. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
601 * State of Difference:: You do the merge by specifying state A or B |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
602 for each difference. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
603 * Merge Commands:: Commands for selecting a difference, |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
604 changing states of differences, etc. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
605 * Exiting Emerge:: What to do when you've finished the merge. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
606 * Combining in Emerge:: How to keep both alternatives for a difference. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
607 * Fine Points of Emerge:: Misc. |
|
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
608 |
| 24093 | 609 Abbrevs |
| 610 | |
| 611 * Abbrev Concepts:: Fundamentals of defined abbrevs. | |
| 612 * Defining Abbrevs:: Defining an abbrev, so it will expand when typed. | |
| 613 * Expanding Abbrevs:: Controlling expansion: prefixes, canceling expansion. | |
| 614 * Editing Abbrevs:: Viewing or editing the entire list of defined abbrevs. | |
| 615 * Saving Abbrevs:: Saving the entire list of abbrevs for another session. | |
| 616 * Dynamic Abbrevs:: Abbreviations for words already in the buffer. | |
| 617 | |
| 618 Editing Pictures | |
| 619 | |
| 620 * Basic Picture:: Basic concepts and simple commands of Picture Mode. | |
| 621 * Insert in Picture:: Controlling direction of cursor motion | |
| 622 after "self-inserting" characters. | |
| 623 * Tabs in Picture:: Various features for tab stops and indentation. | |
| 624 * Rectangles in Picture:: Clearing and superimposing rectangles. | |
| 625 | |
| 626 Sending Mail | |
| 627 | |
| 628 * Mail Format:: Format of the mail being composed. | |
| 629 * Mail Headers:: Details of permitted mail header fields. | |
| 630 * Mail Aliases:: Abbreviating and grouping mail addresses. | |
| 631 * Mail Mode:: Special commands for editing mail being composed. | |
|
36212
339b9d45f288
Distracting NSA => Mail Amusements.
Richard M. Stallman <rms@gnu.org>
parents:
36211
diff
changeset
|
632 * Mail Amusements:: Distract the NSA's attention; add a fortune to a msg. |
| 24093 | 633 * Mail Methods:: Using alternative mail-composition methods. |
| 634 | |
| 635 Reading Mail with Rmail | |
| 636 | |
| 637 * Rmail Basics:: Basic concepts of Rmail, and simple use. | |
| 638 * Rmail Scrolling:: Scrolling through a message. | |
| 639 * Rmail Motion:: Moving to another message. | |
| 640 * Rmail Deletion:: Deleting and expunging messages. | |
| 641 * Rmail Inbox:: How mail gets into the Rmail file. | |
| 642 * Rmail Files:: Using multiple Rmail files. | |
| 643 * Rmail Output:: Copying message out to files. | |
| 644 * Rmail Labels:: Classifying messages by labeling them. | |
| 645 * Rmail Attributes:: Certain standard labels, called attributes. | |
| 646 * Rmail Reply:: Sending replies to messages you are viewing. | |
| 647 * Rmail Summary:: Summaries show brief info on many messages. | |
| 648 * Rmail Sorting:: Sorting messages in Rmail. | |
| 649 * Rmail Display:: How Rmail displays a message; customization. | |
| 650 * Rmail Editing:: Editing message text and headers in Rmail. | |
| 651 * Rmail Digest:: Extracting the messages from a digest message. | |
| 652 * Out of Rmail:: Converting an Rmail file to mailbox format. | |
| 653 * Rmail Rot13:: Reading messages encoded in the rot13 code. | |
| 654 * Movemail:: More details of fetching new mail. | |
| 655 | |
| 656 Dired, the Directory Editor | |
| 657 | |
| 658 * Dired Enter:: How to invoke Dired. | |
|
37993
1ff0891cec4c
Change "Dired Commands" to "Dired Navigation". Move the general
Eli Zaretskii <eliz@gnu.org>
parents:
37844
diff
changeset
|
659 * Dired Navigation:: How to move in the Dired buffer. |
| 24093 | 660 * Dired Deletion:: Deleting files with Dired. |
| 661 * Flagging Many Files:: Flagging files based on their names. | |
| 662 * Dired Visiting:: Other file operations through Dired. | |
| 663 * Marks vs Flags:: Flagging for deletion vs marking. | |
| 664 * Operating on Files:: How to copy, rename, print, compress, etc. | |
| 665 either one file or several files. | |
| 666 * Shell Commands in Dired:: Running a shell command on the marked files. | |
| 667 * Transforming File Names:: Using patterns to rename multiple files. | |
| 668 * Comparison in Dired:: Running `diff' by way of Dired. | |
| 669 * Subdirectories in Dired:: Adding subdirectories to the Dired buffer. | |
| 670 * Subdirectory Motion:: Moving across subdirectories, and up and down. | |
| 671 * Hiding Subdirectories:: Making subdirectories visible or invisible. | |
| 672 * Dired Updating:: Discarding lines for files of no interest. | |
| 673 * Dired and Find:: Using `find' to choose the files for Dired. | |
| 674 | |
| 675 The Calendar and the Diary | |
| 676 | |
| 677 * Calendar Motion:: Moving through the calendar; selecting a date. | |
| 678 * Scroll Calendar:: Bringing earlier or later months onto the screen. | |
| 679 * Counting Days:: How many days are there between two dates? | |
| 680 * General Calendar:: Exiting or recomputing the calendar. | |
| 681 * LaTeX Calendar:: Print a calendar using LaTeX. | |
| 682 * Holidays:: Displaying dates of holidays. | |
| 683 * Sunrise/Sunset:: Displaying local times of sunrise and sunset. | |
| 684 * Lunar Phases:: Displaying phases of the moon. | |
| 685 * Other Calendars:: Converting dates to other calendar systems. | |
| 686 * Diary:: Displaying events from your diary. | |
| 687 * Appointments:: Reminders when it's time to do something. | |
| 688 * Daylight Savings:: How to specify when daylight savings time is active. | |
| 689 | |
| 690 Movement in the Calendar | |
| 691 | |
| 692 * Calendar Unit Motion:: Moving by days, weeks, months, and years. | |
| 693 * Move to Beginning or End:: Moving to start/end of weeks, months, and years. | |
| 694 * Specified Dates:: Moving to the current date or another | |
| 695 specific date. | |
| 696 | |
| 697 Conversion To and From Other Calendars | |
| 698 | |
| 699 * Calendar Systems:: The calendars Emacs understands | |
| 700 (aside from Gregorian). | |
| 701 * To Other Calendar:: Converting the selected date to various calendars. | |
| 702 * From Other Calendar:: Moving to a date specified in another calendar. | |
| 703 * Mayan Calendar:: Moving to a date specified in a Mayan calendar. | |
| 704 | |
| 705 The Diary | |
| 706 | |
| 707 * Diary Commands:: Viewing diary entries and associated calendar dates. | |
| 708 * Format of Diary File:: Entering events in your diary. | |
| 709 * Date Formats:: Various ways you can specify dates. | |
| 710 * Adding to Diary:: Commands to create diary entries. | |
| 711 * Special Diary Entries:: Anniversaries, blocks of dates, cyclic entries, etc. | |
| 712 | |
| 713 @sc{Gnus} | |
| 714 | |
| 715 * Buffers of Gnus:: The group, summary, and article buffers. | |
| 716 * Gnus Startup:: What you should know about starting Gnus. | |
| 717 * Summary of Gnus:: A short description of the basic Gnus commands. | |
| 718 | |
| 719 Running Shell Commands from Emacs | |
| 720 | |
| 721 * Single Shell:: How to run one shell command and return. | |
| 722 * Interactive Shell:: Permanent shell taking input via Emacs. | |
| 723 * Shell Mode:: Special Emacs commands used with permanent shell. | |
| 724 * Shell History:: Repeating previous commands in a shell buffer. | |
| 725 * Shell Options:: Options for customizing Shell mode. | |
| 726 * Remote Host:: Connecting to another computer. | |
| 727 | |
| 728 Customization | |
| 729 | |
| 730 * Minor Modes:: Each minor mode is one feature you can turn on | |
| 731 independently of any others. | |
| 732 * Variables:: Many Emacs commands examine Emacs variables | |
| 733 to decide what to do; by setting variables, | |
| 734 you can control their functioning. | |
| 735 * Keyboard Macros:: A keyboard macro records a sequence of | |
| 736 keystrokes to be replayed with a single command. | |
| 737 * Key Bindings:: The keymaps say what command each key runs. | |
| 738 By changing them, you can "redefine keys". | |
| 739 * Keyboard Translations:: | |
| 740 If your keyboard passes an undesired code | |
| 741 for a key, you can tell Emacs to | |
| 742 substitute another code. | |
| 743 * Syntax:: The syntax table controls how words and | |
| 744 expressions are parsed. | |
| 745 * Init File:: How to write common customizations in the | |
| 746 @file{.emacs} file. | |
| 747 | |
| 748 Variables | |
| 749 | |
| 750 * Examining:: Examining or setting one variable's value. | |
| 751 * Easy Customization:: | |
| 752 Convenient and easy customization of variables. | |
| 753 * Hooks:: Hook variables let you specify programs for parts | |
| 754 of Emacs to run on particular occasions. | |
| 755 * Locals:: Per-buffer values of variables. | |
| 756 * File Variables:: How files can specify variable values. | |
| 757 | |
| 758 Keyboard Macros | |
| 759 | |
| 760 * Basic Kbd Macro:: Defining and running keyboard macros. | |
| 761 * Save Kbd Macro:: Giving keyboard macros names; saving them in files. | |
| 762 * Kbd Macro Query:: Making keyboard macros do different things each time. | |
| 763 | |
| 764 Customizing Key Bindings | |
| 765 | |
| 766 * Keymaps:: Generalities. The global keymap. | |
| 767 * Prefix Keymaps:: Keymaps for prefix keys. | |
| 768 * Local Keymaps:: Major and minor modes have their own keymaps. | |
| 769 * Minibuffer Maps:: The minibuffer uses its own local keymaps. | |
| 770 * Rebinding:: How to redefine one key's meaning conveniently. | |
| 771 * Init Rebinding:: Rebinding keys with your init file, @file{.emacs}. | |
| 772 * Function Keys:: Rebinding terminal function keys. | |
| 773 * Named ASCII Chars:: Distinguishing @key{TAB} from @kbd{C-i}, and so on. | |
| 774 * Mouse Buttons:: Rebinding mouse buttons in Emacs. | |
| 775 * Disabling:: Disabling a command means confirmation is required | |
| 776 before it can be executed. This is done to protect | |
| 777 beginners from surprises. | |
| 778 | |
| 779 The Init File, @file{~/.emacs} | |
| 780 | |
| 781 * Init Syntax:: Syntax of constants in Emacs Lisp. | |
| 782 * Init Examples:: How to do some things with an init file. | |
| 783 * Terminal Init:: Each terminal type can have an init file. | |
| 784 * Find Init:: How Emacs finds the init file. | |
| 785 | |
| 786 Dealing with Emacs Trouble | |
| 787 | |
|
38767
5889c45fd6ad
Change the name of the "DEL Doesn't Delete" node to "DEL Does Not Delete",
Eli Zaretskii <eliz@gnu.org>
parents:
38400
diff
changeset
|
788 * DEL Does Not Delete:: What to do if @key{DEL} doesn't delete. |
| 24093 | 789 * Stuck Recursive:: `[...]' in mode line around the parentheses. |
| 790 * Screen Garbled:: Garbage on the screen. | |
| 791 * Text Garbled:: Garbage in the text. | |
| 792 * Unasked-for Search:: Spontaneous entry to incremental search. | |
| 793 * Memory Full:: How to cope when you run out of memory. | |
| 794 * Emergency Escape:: Emergency escape--- | |
| 795 What to do if Emacs stops responding. | |
| 796 * Total Frustration:: When you are at your wits' end. | |
| 797 | |
| 798 Reporting Bugs | |
| 799 | |
| 800 * Criteria: Bug Criteria. Have you really found a bug? | |
| 801 * Understanding Bug Reporting:: How to report a bug effectively. | |
| 802 * Checklist:: Steps to follow for a good bug report. | |
| 803 * Sending Patches:: How to send a patch for GNU Emacs. | |
| 804 | |
| 805 Command Line Options and Arguments | |
| 806 | |
| 807 * Action Arguments:: Arguments to visit files, load libraries, | |
| 808 and call functions. | |
| 809 * Initial Options:: Arguments that take effect while starting Emacs. | |
| 810 * Command Example:: Examples of using command line arguments. | |
| 811 * Resume Arguments:: Specifying arguments when you resume a running Emacs. | |
| 812 * Environment:: Environment variables that Emacs uses. | |
| 813 * Display X:: Changing the default display and using remote login. | |
| 814 * Font X:: Choosing a font for text, under X. | |
| 42751 | 815 * Colors:: Choosing disply colors. |
| 24093 | 816 * Window Size X:: Start-up window size, under X. |
| 817 * Borders X:: Internal and external borders, under X. | |
| 818 * Title X:: Specifying the initial frame's title. | |
| 819 * Icons X:: Choosing what sort of icon to use, under X. | |
|
41370
3f1a375341ab
Update menu for changes in cmdargs.texi and xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents:
40792
diff
changeset
|
820 |
|
3f1a375341ab
Update menu for changes in cmdargs.texi and xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents:
40792
diff
changeset
|
821 X Resources |
|
3f1a375341ab
Update menu for changes in cmdargs.texi and xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents:
40792
diff
changeset
|
822 |
|
3f1a375341ab
Update menu for changes in cmdargs.texi and xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents:
40792
diff
changeset
|
823 * Resources:: Using X resources with Emacs (in general). |
|
3f1a375341ab
Update menu for changes in cmdargs.texi and xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents:
40792
diff
changeset
|
824 * Table of Resources:: Table of specific X resources that affect Emacs. |
|
3f1a375341ab
Update menu for changes in cmdargs.texi and xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents:
40792
diff
changeset
|
825 * Face Resources:: X resources for customizing faces. |
| 24093 | 826 * Lucid Resources:: X resources for Lucid menus. |
|
36501
8a046a8e91dc
Give LessTif precedence over Motif.
Richard M. Stallman <rms@gnu.org>
parents:
36212
diff
changeset
|
827 * LessTif Resources:: X resources for LessTif and Motif menus. |
| 24093 | 828 |
| 829 Environment Variables | |
| 830 | |
| 831 * General Variables:: Environment variables that all versions of Emacs use. | |
| 832 * Misc Variables:: Certain system specific variables. | |
| 833 | |
|
24094
1a575df191bb
(Top): Include Windows 98 in the MS-DOS section.
Andrew Innes <andrewi@gnu.org>
parents:
24093
diff
changeset
|
834 MS-DOS and Windows 95/98/NT |
| 24093 | 835 |
| 836 * MS-DOS Input:: Keyboard and mouse usage on MS-DOS. | |
| 837 * MS-DOS Display:: Fonts, frames and display size on MS-DOS. | |
| 838 * MS-DOS File Names:: File-name conventions on MS-DOS. | |
| 839 * Text and Binary:: Text files on MS-DOS use CRLF to separate lines. | |
| 840 * MS-DOS Printing:: How to specify the printer on MS-DOS. | |
| 841 * MS-DOS Processes:: Running subprocesses on MS-DOS. | |
| 842 * Windows Processes:: Running subprocesses on Windows. | |
| 843 * Windows System Menu:: Controlling what the ALT key does. | |
| 844 @end menu | |
| 845 | |
| 846 @iftex | |
| 847 @unnumbered Preface | |
| 848 | |
| 849 This manual documents the use and simple customization of the Emacs | |
| 850 editor. The reader is not expected to be a programmer; simple | |
| 851 customizations do not require programming skill. But the user who is not | |
| 852 interested in customizing can ignore the scattered customization hints. | |
| 853 | |
| 854 This is primarily a reference manual, but can also be used as a | |
| 855 primer. For complete beginners, it is a good idea to start with the | |
| 856 on-line, learn-by-doing tutorial, before reading the manual. To run the | |
| 857 tutorial, start Emacs and type @kbd{C-h t}. This way you can learn | |
| 858 Emacs by using Emacs on a specially designed file which describes | |
| 859 commands, tells you when to try them, and then explains the results you | |
| 860 see. | |
| 861 | |
| 862 On first reading, just skim chapters 1 and 2, which describe the | |
| 863 notational conventions of the manual and the general appearance of the | |
| 864 Emacs display screen. Note which questions are answered in these | |
| 865 chapters, so you can refer back later. After reading chapter 4, you | |
| 866 should practice the commands there. The next few chapters describe | |
| 867 fundamental techniques and concepts that are used constantly. You need | |
| 868 to understand them thoroughly, experimenting with them if necessary. | |
| 869 | |
| 870 Chapters 14 through 19 describe intermediate-level features that are | |
| 871 useful for all kinds of editing. Chapter 20 and following chapters | |
| 872 describe features that you may or may not want to use; read those | |
| 873 chapters when you need them. | |
| 874 | |
| 875 Read the Trouble chapter if Emacs does not seem to be working | |
| 876 properly. It explains how to cope with some common problems | |
| 877 (@pxref{Lossage}), as well as when and how to report Emacs bugs | |
| 878 (@pxref{Bugs}). | |
| 879 | |
| 880 To find the documentation on a particular command, look in the index. | |
| 881 Keys (character commands) and command names have separate indexes. There | |
| 882 is also a glossary, with a cross reference for each term. | |
| 883 | |
| 884 This manual is available as a printed book and also as an Info file. | |
| 885 The Info file is for on-line perusal with the Info program, which will | |
| 886 be the principal way of viewing documentation on-line in the GNU system. | |
| 887 Both the Info file and the Info program itself are distributed along | |
| 888 with GNU Emacs. The Info file and the printed book contain | |
| 889 substantially the same text and are generated from the same source | |
| 890 files, which are also distributed along with GNU Emacs. | |
| 891 | |
| 892 GNU Emacs is a member of the Emacs editor family. There are many Emacs | |
| 893 editors, all sharing common principles of organization. For information on | |
| 894 the underlying philosophy of Emacs and the lessons learned from its | |
| 895 development, write for a copy of AI memo 519a, ``Emacs, the Extensible, | |
| 896 Customizable Self-Documenting Display Editor,'' to Publications Department, | |
| 897 Artificial Intelligence Lab, 545 Tech Square, Cambridge, MA 02139, USA@. At | |
| 898 last report they charge $2.25 per copy. Another useful publication is LCS | |
| 899 TM-165, ``A Cookbook for an Emacs,'' by Craig Finseth, available from | |
| 900 Publications Department, Laboratory for Computer Science, 545 Tech Square, | |
| 901 Cambridge, MA 02139, USA@. The price today is $3. | |
| 902 | |
| 903 This edition of the manual is intended for use with GNU Emacs installed | |
| 904 on GNU and Unix systems. GNU Emacs can also be used on VMS, MS-DOS | |
| 905 (also called MS-DOG), Windows NT, and Windows 95 systems. Those systems use | |
| 906 different file name syntax; in addition, VMS and MS-DOS do not support | |
| 907 all GNU Emacs features. We don't try to describe VMS usage in this | |
| 908 manual. @xref{MS-DOS}, for information about using Emacs on MS-DOS. | |
| 909 @end iftex | |
| 910 | |
| 911 @node Distrib, Copying, Top, Top | |
| 912 @unnumbered Distribution | |
| 913 | |
| 914 GNU Emacs is @dfn{free software}; this means that everyone is free to | |
| 915 use it and free to redistribute it on certain conditions. GNU Emacs is | |
| 916 not in the public domain; it is copyrighted and there are restrictions | |
| 917 on its distribution, but these restrictions are designed to permit | |
| 918 everything that a good cooperating citizen would want to do. What is | |
| 919 not allowed is to try to prevent others from further sharing any version | |
| 920 of GNU Emacs that they might get from you. The precise conditions are | |
| 921 found in the GNU General Public License that comes with Emacs and also | |
| 922 appears following this section. | |
| 923 | |
| 924 One way to get a copy of GNU Emacs is from someone else who has it. You | |
| 925 need not ask for our permission to do so, or tell any one else; just | |
| 926 copy it. If you have access to the Internet, you can get the latest | |
| 927 distribution version of GNU Emacs by anonymous FTP; see the file | |
| 928 @file{etc/FTP} in the Emacs distribution for more information. | |
| 929 | |
| 930 You may also receive GNU Emacs when you buy a computer. Computer | |
| 931 manufacturers are free to distribute copies on the same terms that apply to | |
| 932 everyone else. These terms require them to give you the full sources, | |
| 933 including whatever changes they may have made, and to permit you to | |
| 934 redistribute the GNU Emacs received from them under the usual terms of the | |
| 935 General Public License. In other words, the program must be free for you | |
| 936 when you get it, not just free for the manufacturer. | |
| 937 | |
| 938 You can also order copies of GNU Emacs from the Free Software Foundation | |
| 939 on CD-ROM@. This is a convenient and reliable way to get a copy; it is | |
| 940 also a good way to help fund our work. (The Foundation has always | |
| 941 received most of its funds in this way.) An order form is included in | |
| 942 the file @file{etc/ORDERS} in the Emacs distribution, and on our web | |
| 943 site in @url{http://www.gnu.org/order/order.html}. For further | |
| 944 information, write to | |
| 945 | |
| 946 @display | |
| 947 Free Software Foundation | |
| 948 59 Temple Place, Suite 330 | |
| 949 Boston, MA 02111-1307 USA | |
| 950 USA | |
| 951 @end display | |
| 952 | |
| 953 The income from distribution fees goes to support the foundation's | |
| 954 purpose: the development of new free software, and improvements to our | |
| 955 existing programs including GNU Emacs. | |
| 956 | |
| 957 If you find GNU Emacs useful, please @strong{send a donation} to the | |
| 958 Free Software Foundation to support our work. Donations to the Free | |
| 959 Software Foundation are tax deductible in the US. If you use GNU Emacs | |
| 960 at your workplace, please suggest that the company make a donation. If | |
| 961 company policy is unsympathetic to the idea of donating to charity, you | |
| 962 might instead suggest ordering a CD-ROM from the Foundation | |
| 963 occasionally, or subscribing to periodic updates. | |
| 964 | |
| 965 @iftex | |
| 966 Contributors to GNU Emacs include Per Abrahamsen, Jay K. Adams, Joe | |
| 967 Arceneaux, Boaz Ben-Zvi, Jim Blandy, Terrence Brannon, Frank Bresz, | |
| 968 Peter Breton, Kevin Broadey, Vincent Broman, David M. Brown, Bill | |
| 969 Carpenter, Hans Chalupsky, Bob Chassell, James Clark, Mike Clarkson, | |
| 970 Glynn Clements, Andrew Csillag, Doug Cutting, Michael DeCorte, Gary | |
| 971 Delp, Matthieu Devin, Eri Ding, Carsten Dominik, Scott Draves, Viktor | |
| 972 Dukhovni, John Eaton, Rolf Ebert, Stephen Eglen, Torbj@"orn Einarsson, | |
| 973 Tsugumoto Enami, Hans Henrik Eriksen, Michael Ernst, Ata Etemadi, | |
| 974 Frederick Farnback, Fred Fish, Karl Fogel, Gary Foster, Noah Friedman, | |
| 975 Keith Gabryelski, Kevin Gallagher, Kevin Gallo, Howard Gayle, Stephen | |
| 976 Gildea, David Gillespie, Bob Glickstein, Boris Goldowsky, Michelangelo | |
| 24882 | 977 Grigni, Michael Gschwind, Henry Guillaume, Doug Gwyn, Ken'ichi Handa, |
| 24093 | 978 Chris Hanson, K. Shane Hartman, John Heidemann, Markus Heritsch, Karl |
| 979 Heuer, Manabu Higashida, Anders Holst, Kurt Hornik, Tom Houlder, Lars | |
| 980 Ingebrigtsen, Andrew Innes, Michael K. Johnson, Kyle Jones, Tomoji | |
| 981 Kagatani, Brewster Kahle, David Kaufman, Henry Kautz, Howard Kaye, | |
| 982 Michael Kifer, Richard King, Larry K. Kolodney, Robert Krawitz, | |
| 983 Sebastian Kremer, Geoff Kuenning, David K@aa gedal, Daniel LaLiberte, | |
| 984 Aaron Larson, James R. Larus, Frederic Lepied, Lars Lindberg, Eric | |
| 985 Ludlam, Neil M. Mager, Ken Manheimer, Bill Mann, Brian Marick, Simon | |
| 986 Marshall, Bengt Martensson, Charlie Martin, Thomas May, Roland McGrath, | |
| 987 David Megginson, Wayne Mesard, Richard Mlynarik, Keith Moore, Erik | |
| 988 Naggum, Thomas Neumann, Mike Newton, Jurgen Nickelsen, Jeff Norden, | |
| 989 Andrew Norman, Jeff Peck, Damon Anton Permezel, Tom Perrine, Jens | |
| 990 Petersen, Daniel Pfeiffer, Fred Pierresteguy, Christian Plaunt, | |
| 991 Francesco A. Potorti, Michael D. Prange, Ashwin Ram, Eric S. Raymond, | |
| 992 Paul Reilly, Edward M. Reingold, Rob Riepel, Roland B. Roberts, John | |
| 993 Robinson, Danny Roozendaal, William Rosenblatt, Guillermo J. Rozas, Ivar | |
| 994 Rummelhoff, Wolfgang Rupprecht, James B. Salem, Masahiko Sato, William | |
| 995 Schelter, Ralph Schleicher, Gregor Schmid, Michael Schmidt, Ronald | |
| 996 S. Schnell, Philippe Schnoebelen, Stephen Schoef, Randal Schwartz, | |
| 997 Manuel Serrano, Stanislav Shalunov, Mark Shapiro, Richard Sharman, Olin | |
| 998 Shivers, Espen Skoglund, Rick Sladkey, Lynn Slater, Chris Smith, David | |
| 999 Smith, Paul D. Smith, William Sommerfeld, Michael Staats, Sam Steingold, | |
| 1000 Ake Stenhoff, Peter Stephenson, Jonathan Stigelman, Steve Strassman, | |
| 1001 Jens T. Berger Thielemann, Spencer Thomas, Jim Thompson, Masanobu Umeda, | |
| 1002 Neil W. Van Dyke, Ulrik Vieth, Geoffrey Voelker, Johan Vromans, Barry | |
| 1003 Warsaw, Morten Welinder, Joseph Brian Wells, Rodney Whitby, Ed | |
| 1004 Wilkinson, Mike Williams, Steven A. Wood, Dale R. Worley, Felix | |
| 1005 S. T. Wu, Tom Wurgler, Eli Zaretskii, Jamie Zawinski, Ian T. Zimmermann, | |
| 1006 Reto Zimmermann, and Neal Ziring. | |
| 1007 @end iftex | |
| 1008 | |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
1009 @node Copying, GNU Free Documentation License, Distrib, Top |
| 24093 | 1010 @unnumbered GNU GENERAL PUBLIC LICENSE |
| 1011 @center Version 2, June 1991 | |
| 1012 | |
| 1013 @display | |
| 1014 Copyright @copyright{} 1989, 1991 Free Software Foundation, Inc. | |
| 1015 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 1016 | |
| 1017 Everyone is permitted to copy and distribute verbatim copies | |
| 1018 of this license document, but changing it is not allowed. | |
| 1019 @end display | |
| 1020 | |
| 1021 @unnumberedsec Preamble | |
| 1022 | |
| 1023 The licenses for most software are designed to take away your | |
| 1024 freedom to share and change it. By contrast, the GNU General Public | |
| 1025 License is intended to guarantee your freedom to share and change free | |
| 1026 software---to make sure the software is free for all its users. This | |
| 1027 General Public License applies to most of the Free Software | |
| 1028 Foundation's software and to any other program whose authors commit to | |
| 1029 using it. (Some other Free Software Foundation software is covered by | |
| 1030 the GNU Library General Public License instead.) You can apply it to | |
| 1031 your programs, too. | |
| 1032 | |
| 1033 When we speak of free software, we are referring to freedom, not | |
| 1034 price. Our General Public Licenses are designed to make sure that you | |
| 1035 have the freedom to distribute copies of free software (and charge for | |
| 1036 this service if you wish), that you receive source code or can get it | |
| 1037 if you want it, that you can change the software or use pieces of it | |
| 1038 in new free programs; and that you know you can do these things. | |
| 1039 | |
| 1040 To protect your rights, we need to make restrictions that forbid | |
| 1041 anyone to deny you these rights or to ask you to surrender the rights. | |
| 1042 These restrictions translate to certain responsibilities for you if you | |
| 1043 distribute copies of the software, or if you modify it. | |
| 1044 | |
| 1045 For example, if you distribute copies of such a program, whether | |
| 1046 gratis or for a fee, you must give the recipients all the rights that | |
| 1047 you have. You must make sure that they, too, receive or can get the | |
| 1048 source code. And you must show them these terms so they know their | |
| 1049 rights. | |
| 1050 | |
| 1051 We protect your rights with two steps: (1) copyright the software, and | |
| 1052 (2) offer you this license which gives you legal permission to copy, | |
| 1053 distribute and/or modify the software. | |
| 1054 | |
| 1055 Also, for each author's protection and ours, we want to make certain | |
| 1056 that everyone understands that there is no warranty for this free | |
| 1057 software. If the software is modified by someone else and passed on, we | |
| 1058 want its recipients to know that what they have is not the original, so | |
| 1059 that any problems introduced by others will not reflect on the original | |
| 1060 authors' reputations. | |
| 1061 | |
| 1062 Finally, any free program is threatened constantly by software | |
| 1063 patents. We wish to avoid the danger that redistributors of a free | |
| 1064 program will individually obtain patent licenses, in effect making the | |
| 1065 program proprietary. To prevent this, we have made it clear that any | |
| 1066 patent must be licensed for everyone's free use or not licensed at all. | |
| 1067 | |
| 1068 The precise terms and conditions for copying, distribution and | |
| 1069 modification follow. | |
| 1070 | |
| 1071 @iftex | |
| 1072 @unnumberedsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | |
| 1073 @end iftex | |
| 1074 @ifinfo | |
| 1075 @center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | |
| 1076 @end ifinfo | |
| 1077 | |
| 1078 @enumerate 0 | |
| 1079 @item | |
| 1080 This License applies to any program or other work which contains | |
| 1081 a notice placed by the copyright holder saying it may be distributed | |
|
36168
df827c1def99
Clean up close-quote punctuation.
Richard M. Stallman <rms@gnu.org>
parents:
36153
diff
changeset
|
1082 under the terms of this General Public License. The ``Program,'' below, |
| 24093 | 1083 refers to any such program or work, and a ``work based on the Program'' |
| 1084 means either the Program or any derivative work under copyright law: | |
| 1085 that is to say, a work containing the Program or a portion of it, | |
| 1086 either verbatim or with modifications and/or translated into another | |
| 1087 language. (Hereinafter, translation is included without limitation in | |
|
36168
df827c1def99
Clean up close-quote punctuation.
Richard M. Stallman <rms@gnu.org>
parents:
36153
diff
changeset
|
1088 the term ``modification.'') Each licensee is addressed as ``you.'' |
| 24093 | 1089 |
| 1090 Activities other than copying, distribution and modification are not | |
| 1091 covered by this License; they are outside its scope. The act of | |
| 1092 running the Program is not restricted, and the output from the Program | |
| 1093 is covered only if its contents constitute a work based on the | |
| 1094 Program (independent of having been made by running the Program). | |
| 1095 Whether that is true depends on what the Program does. | |
| 1096 | |
| 1097 @item | |
| 1098 You may copy and distribute verbatim copies of the Program's | |
| 1099 source code as you receive it, in any medium, provided that you | |
| 1100 conspicuously and appropriately publish on each copy an appropriate | |
| 1101 copyright notice and disclaimer of warranty; keep intact all the | |
| 1102 notices that refer to this License and to the absence of any warranty; | |
| 1103 and give any other recipients of the Program a copy of this License | |
| 1104 along with the Program. | |
| 1105 | |
| 1106 You may charge a fee for the physical act of transferring a copy, and | |
| 1107 you may at your option offer warranty protection in exchange for a fee. | |
| 1108 | |
| 1109 @item | |
| 1110 You may modify your copy or copies of the Program or any portion | |
| 1111 of it, thus forming a work based on the Program, and copy and | |
| 1112 distribute such modifications or work under the terms of Section 1 | |
| 1113 above, provided that you also meet all of these conditions: | |
| 1114 | |
| 1115 @enumerate a | |
| 1116 @item | |
| 1117 You must cause the modified files to carry prominent notices | |
| 1118 stating that you changed the files and the date of any change. | |
| 1119 | |
| 1120 @item | |
| 1121 You must cause any work that you distribute or publish, that in | |
| 1122 whole or in part contains or is derived from the Program or any | |
| 1123 part thereof, to be licensed as a whole at no charge to all third | |
| 1124 parties under the terms of this License. | |
| 1125 | |
| 1126 @item | |
| 1127 If the modified program normally reads commands interactively | |
| 1128 when run, you must cause it, when started running for such | |
| 1129 interactive use in the most ordinary way, to print or display an | |
| 1130 announcement including an appropriate copyright notice and a | |
| 1131 notice that there is no warranty (or else, saying that you provide | |
| 1132 a warranty) and that users may redistribute the program under | |
| 1133 these conditions, and telling the user how to view a copy of this | |
| 1134 License. (Exception: if the Program itself is interactive but | |
| 1135 does not normally print such an announcement, your work based on | |
| 1136 the Program is not required to print an announcement.) | |
| 1137 @end enumerate | |
| 1138 | |
| 1139 These requirements apply to the modified work as a whole. If | |
| 1140 identifiable sections of that work are not derived from the Program, | |
| 1141 and can be reasonably considered independent and separate works in | |
| 1142 themselves, then this License, and its terms, do not apply to those | |
| 1143 sections when you distribute them as separate works. But when you | |
| 1144 distribute the same sections as part of a whole which is a work based | |
| 1145 on the Program, the distribution of the whole must be on the terms of | |
| 1146 this License, whose permissions for other licensees extend to the | |
| 1147 entire whole, and thus to each and every part regardless of who wrote it. | |
| 1148 | |
| 1149 Thus, it is not the intent of this section to claim rights or contest | |
| 1150 your rights to work written entirely by you; rather, the intent is to | |
| 1151 exercise the right to control the distribution of derivative or | |
| 1152 collective works based on the Program. | |
| 1153 | |
| 1154 In addition, mere aggregation of another work not based on the Program | |
| 1155 with the Program (or with a work based on the Program) on a volume of | |
| 1156 a storage or distribution medium does not bring the other work under | |
| 1157 the scope of this License. | |
| 1158 | |
| 1159 @item | |
| 1160 You may copy and distribute the Program (or a work based on it, | |
| 1161 under Section 2) in object code or executable form under the terms of | |
| 1162 Sections 1 and 2 above provided that you also do one of the following: | |
| 1163 | |
| 1164 @enumerate a | |
| 1165 @item | |
| 1166 Accompany it with the complete corresponding machine-readable | |
| 1167 source code, which must be distributed under the terms of Sections | |
| 1168 1 and 2 above on a medium customarily used for software interchange; or, | |
| 1169 | |
| 1170 @item | |
| 1171 Accompany it with a written offer, valid for at least three | |
| 1172 years, to give any third party, for a charge no more than your | |
| 1173 cost of physically performing source distribution, a complete | |
| 1174 machine-readable copy of the corresponding source code, to be | |
| 1175 distributed under the terms of Sections 1 and 2 above on a medium | |
| 1176 customarily used for software interchange; or, | |
| 1177 | |
| 1178 @item | |
| 1179 Accompany it with the information you received as to the offer | |
| 1180 to distribute corresponding source code. (This alternative is | |
| 1181 allowed only for noncommercial distribution and only if you | |
| 1182 received the program in object code or executable form with such | |
| 1183 an offer, in accord with Subsection b above.) | |
| 1184 @end enumerate | |
| 1185 | |
| 1186 The source code for a work means the preferred form of the work for | |
| 1187 making modifications to it. For an executable work, complete source | |
| 1188 code means all the source code for all modules it contains, plus any | |
| 1189 associated interface definition files, plus the scripts used to | |
| 1190 control compilation and installation of the executable. However, as a | |
| 1191 special exception, the source code distributed need not include | |
| 1192 anything that is normally distributed (in either source or binary | |
| 1193 form) with the major components (compiler, kernel, and so on) of the | |
| 1194 operating system on which the executable runs, unless that component | |
| 1195 itself accompanies the executable. | |
| 1196 | |
| 1197 If distribution of executable or object code is made by offering | |
| 1198 access to copy from a designated place, then offering equivalent | |
| 1199 access to copy the source code from the same place counts as | |
| 1200 distribution of the source code, even though third parties are not | |
| 1201 compelled to copy the source along with the object code. | |
| 1202 | |
| 1203 @item | |
| 1204 You may not copy, modify, sublicense, or distribute the Program | |
| 1205 except as expressly provided under this License. Any attempt | |
| 1206 otherwise to copy, modify, sublicense or distribute the Program is | |
| 1207 void, and will automatically terminate your rights under this License. | |
| 1208 However, parties who have received copies, or rights, from you under | |
| 1209 this License will not have their licenses terminated so long as such | |
| 1210 parties remain in full compliance. | |
| 1211 | |
| 1212 @item | |
| 1213 You are not required to accept this License, since you have not | |
| 1214 signed it. However, nothing else grants you permission to modify or | |
| 1215 distribute the Program or its derivative works. These actions are | |
| 1216 prohibited by law if you do not accept this License. Therefore, by | |
| 1217 modifying or distributing the Program (or any work based on the | |
| 1218 Program), you indicate your acceptance of this License to do so, and | |
| 1219 all its terms and conditions for copying, distributing or modifying | |
| 1220 the Program or works based on it. | |
| 1221 | |
| 1222 @item | |
| 1223 Each time you redistribute the Program (or any work based on the | |
| 1224 Program), the recipient automatically receives a license from the | |
| 1225 original licensor to copy, distribute or modify the Program subject to | |
| 1226 these terms and conditions. You may not impose any further | |
| 1227 restrictions on the recipients' exercise of the rights granted herein. | |
| 1228 You are not responsible for enforcing compliance by third parties to | |
| 1229 this License. | |
| 1230 | |
| 1231 @item | |
| 1232 If, as a consequence of a court judgment or allegation of patent | |
| 1233 infringement or for any other reason (not limited to patent issues), | |
| 1234 conditions are imposed on you (whether by court order, agreement or | |
| 1235 otherwise) that contradict the conditions of this License, they do not | |
| 1236 excuse you from the conditions of this License. If you cannot | |
| 1237 distribute so as to satisfy simultaneously your obligations under this | |
| 1238 License and any other pertinent obligations, then as a consequence you | |
| 1239 may not distribute the Program at all. For example, if a patent | |
| 1240 license would not permit royalty-free redistribution of the Program by | |
| 1241 all those who receive copies directly or indirectly through you, then | |
| 1242 the only way you could satisfy both it and this License would be to | |
| 1243 refrain entirely from distribution of the Program. | |
| 1244 | |
| 1245 If any portion of this section is held invalid or unenforceable under | |
| 1246 any particular circumstance, the balance of the section is intended to | |
| 1247 apply and the section as a whole is intended to apply in other | |
| 1248 circumstances. | |
| 1249 | |
| 1250 It is not the purpose of this section to induce you to infringe any | |
| 1251 patents or other property right claims or to contest validity of any | |
| 1252 such claims; this section has the sole purpose of protecting the | |
| 1253 integrity of the free software distribution system, which is | |
| 1254 implemented by public license practices. Many people have made | |
| 1255 generous contributions to the wide range of software distributed | |
| 1256 through that system in reliance on consistent application of that | |
| 1257 system; it is up to the author/donor to decide if he or she is willing | |
| 1258 to distribute software through any other system and a licensee cannot | |
| 1259 impose that choice. | |
| 1260 | |
| 1261 This section is intended to make thoroughly clear what is believed to | |
| 1262 be a consequence of the rest of this License. | |
| 1263 | |
| 1264 @item | |
| 1265 If the distribution and/or use of the Program is restricted in | |
| 1266 certain countries either by patents or by copyrighted interfaces, the | |
| 1267 original copyright holder who places the Program under this License | |
| 1268 may add an explicit geographical distribution limitation excluding | |
| 1269 those countries, so that distribution is permitted only in or among | |
| 1270 countries not thus excluded. In such case, this License incorporates | |
| 1271 the limitation as if written in the body of this License. | |
| 1272 | |
| 1273 @item | |
| 1274 The Free Software Foundation may publish revised and/or new versions | |
| 1275 of the General Public License from time to time. Such new versions will | |
| 1276 be similar in spirit to the present version, but may differ in detail to | |
| 1277 address new problems or concerns. | |
| 1278 | |
| 1279 Each version is given a distinguishing version number. If the Program | |
| 1280 specifies a version number of this License which applies to it and ``any | |
|
36168
df827c1def99
Clean up close-quote punctuation.
Richard M. Stallman <rms@gnu.org>
parents:
36153
diff
changeset
|
1281 later version,'' you have the option of following the terms and conditions |
| 24093 | 1282 either of that version or of any later version published by the Free |
| 1283 Software Foundation. If the Program does not specify a version number of | |
| 1284 this License, you may choose any version ever published by the Free Software | |
| 1285 Foundation. | |
| 1286 | |
| 1287 @item | |
| 1288 If you wish to incorporate parts of the Program into other free | |
| 1289 programs whose distribution conditions are different, write to the author | |
| 1290 to ask for permission. For software which is copyrighted by the Free | |
| 1291 Software Foundation, write to the Free Software Foundation; we sometimes | |
| 1292 make exceptions for this. Our decision will be guided by the two goals | |
| 1293 of preserving the free status of all derivatives of our free software and | |
| 1294 of promoting the sharing and reuse of software generally. | |
| 1295 | |
| 1296 @iftex | |
| 1297 @heading NO WARRANTY | |
| 1298 @end iftex | |
| 1299 @ifinfo | |
| 1300 @center NO WARRANTY | |
| 1301 @end ifinfo | |
| 1302 | |
| 1303 @item | |
| 1304 BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY | |
| 1305 FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW@. EXCEPT WHEN | |
| 1306 OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES | |
| 1307 PROVIDE THE PROGRAM ``AS IS'' WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED | |
| 1308 OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | |
| 1309 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE@. THE ENTIRE RISK AS | |
| 1310 TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU@. SHOULD THE | |
| 1311 PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, | |
| 1312 REPAIR OR CORRECTION. | |
| 1313 | |
| 1314 @item | |
| 1315 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING | |
| 1316 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR | |
| 1317 REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, | |
| 1318 INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING | |
| 1319 OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED | |
| 1320 TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY | |
| 1321 YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER | |
| 1322 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE | |
| 1323 POSSIBILITY OF SUCH DAMAGES. | |
| 1324 @end enumerate | |
| 1325 | |
| 1326 @iftex | |
| 1327 @heading END OF TERMS AND CONDITIONS | |
| 1328 @end iftex | |
| 1329 @ifinfo | |
| 1330 @center END OF TERMS AND CONDITIONS | |
| 1331 @end ifinfo | |
| 1332 | |
| 1333 @page | |
| 1334 @unnumberedsec How to Apply These Terms to Your New Programs | |
| 1335 | |
| 1336 If you develop a new program, and you want it to be of the greatest | |
| 1337 possible use to the public, the best way to achieve this is to make it | |
| 1338 free software which everyone can redistribute and change under these terms. | |
| 1339 | |
| 1340 To do so, attach the following notices to the program. It is safest | |
| 1341 to attach them to the start of each source file to most effectively | |
| 1342 convey the exclusion of warranty; and each file should have at least | |
| 1343 the ``copyright'' line and a pointer to where the full notice is found. | |
| 1344 | |
| 1345 @smallexample | |
| 1346 @var{one line to give the program's name and an idea of what it does.} | |
| 1347 Copyright (C) 19@var{yy} @var{name of author} | |
| 1348 | |
| 1349 This program is free software; you can redistribute it and/or | |
| 1350 modify it under the terms of the GNU General Public License | |
| 1351 as published by the Free Software Foundation; either version 2 | |
| 1352 of the License, or (at your option) any later version. | |
| 1353 | |
| 1354 This program is distributed in the hope that it will be useful, | |
| 1355 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 1356 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE@. See the | |
| 1357 GNU General Public License for more details. | |
| 1358 | |
| 1359 You should have received a copy of the GNU General Public License along | |
| 1360 with this program; if not, write to the Free Software Foundation, Inc., | |
| 1361 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. | |
| 1362 @end smallexample | |
| 1363 | |
| 1364 Also add information on how to contact you by electronic and paper mail. | |
| 1365 | |
| 1366 If the program is interactive, make it output a short notice like this | |
| 1367 when it starts in an interactive mode: | |
| 1368 | |
| 1369 @smallexample | |
|
32113
a0915106b092
(Top): Update version in `Antinews' menu entry.
Miles Bader <miles@gnu.org>
parents:
31356
diff
changeset
|
1370 Gnomovision version 69, Copyright (C) 20@var{yy} @var{name of author} |
| 24093 | 1371 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details |
| 1372 type `show w'. This is free software, and you are welcome | |
| 1373 to redistribute it under certain conditions; type `show c' | |
| 1374 for details. | |
| 1375 @end smallexample | |
| 1376 | |
| 1377 The hypothetical commands @samp{show w} and @samp{show c} should show | |
| 1378 the appropriate parts of the General Public License. Of course, the | |
| 1379 commands you use may be called something other than @samp{show w} and | |
| 1380 @samp{show c}; they could even be mouse-clicks or menu items---whatever | |
| 1381 suits your program. | |
| 1382 | |
| 1383 You should also get your employer (if you work as a programmer) or your | |
| 1384 school, if any, to sign a ``copyright disclaimer'' for the program, if | |
| 1385 necessary. Here is a sample; alter the names: | |
| 1386 | |
| 1387 @smallexample | |
| 1388 @group | |
| 1389 Yoyodyne, Inc., hereby disclaims all copyright | |
| 1390 interest in the program `Gnomovision' | |
| 1391 (which makes passes at compilers) written | |
| 1392 by James Hacker. | |
| 1393 | |
| 1394 @var{signature of Ty Coon}, 1 April 1989 | |
| 1395 Ty Coon, President of Vice | |
| 1396 @end group | |
| 1397 @end smallexample | |
| 1398 | |
| 1399 This General Public License does not permit incorporating your program into | |
| 1400 proprietary programs. If your program is a subroutine library, you may | |
| 1401 consider it more useful to permit linking proprietary applications with the | |
| 1402 library. If this is what you want to do, use the GNU Library General | |
| 1403 Public License instead of this License. | |
| 1404 | |
|
31309
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
1405 @include doclicense.texi |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
1406 |
|
979e66ba0c4a
Update for GFDL. Not yet checked by rms.
Dave Love <fx@gnu.org>
parents:
31144
diff
changeset
|
1407 @node Intro, Glossary, GNU Free Documentation License, Top |
| 24093 | 1408 @unnumbered Introduction |
| 1409 | |
| 1410 You are reading about GNU Emacs, the GNU incarnation of the advanced, | |
| 1411 self-documenting, customizable, extensible real-time display editor Emacs. | |
| 1412 (The `G' in `GNU' is not silent.) | |
| 1413 | |
| 1414 We say that Emacs is a @dfn{display} editor because normally the text | |
| 1415 being edited is visible on the screen and is updated automatically as you | |
| 1416 type your commands. @xref{Screen,Display}. | |
| 1417 | |
| 1418 We call it a @dfn{real-time} editor because the display is updated very | |
| 1419 frequently, usually after each character or pair of characters you | |
| 1420 type. This minimizes the amount of information you must keep in your | |
| 1421 head as you edit. @xref{Basic,Real-time,Basic Editing}. | |
| 1422 | |
| 1423 We call Emacs advanced because it provides facilities that go beyond | |
| 1424 simple insertion and deletion: controlling subprocesses; automatic | |
| 1425 indentation of programs; viewing two or more files at once; editing | |
| 1426 formatted text; and dealing in terms of characters, words, lines, | |
| 1427 sentences, paragraphs, and pages, as well as expressions and comments in | |
| 1428 several different programming languages. | |
| 1429 | |
| 1430 @dfn{Self-documenting} means that at any time you can type a special | |
| 1431 character, @kbd{Control-h}, to find out what your options are. You can | |
| 1432 also use it to find out what any command does, or to find all the commands | |
| 1433 that pertain to a topic. @xref{Help}. | |
| 1434 | |
| 1435 @dfn{Customizable} means that you can change the definitions of Emacs | |
| 1436 commands in little ways. For example, if you use a programming language in | |
| 1437 which comments start with @samp{<**} and end with @samp{**>}, you can tell | |
| 1438 the Emacs comment manipulation commands to use those strings | |
| 1439 (@pxref{Comments}). Another sort of customization is rearrangement of the | |
| 1440 command set. For example, if you prefer the four basic cursor motion | |
| 1441 commands (up, down, left and right) on keys in a diamond pattern on the | |
| 1442 keyboard, you can rebind the keys that way. @xref{Customization}. | |
| 1443 | |
| 1444 @dfn{Extensible} means that you can go beyond simple customization and | |
| 1445 write entirely new commands, programs in the Lisp language to be run by | |
| 1446 Emacs's own Lisp interpreter. Emacs is an ``on-line extensible'' | |
| 1447 system, which means that it is divided into many functions that call | |
| 1448 each other, any of which can be redefined in the middle of an editing | |
| 1449 session. Almost any part of Emacs can be replaced without making a | |
| 1450 separate copy of all of Emacs. Most of the editing commands of Emacs | |
| 38131 | 1451 are written in Lisp; the few exceptions could have been written |
| 24093 | 1452 in Lisp but are written in C for efficiency. Although only a programmer |
| 1453 can write an extension, anybody can use it afterward. If you want to | |
| 1454 learn Emacs Lisp programming, we recommend the @cite{Introduction to | |
| 1455 Emacs Lisp} by Robert J. Chassell, also published by the Free Software | |
| 1456 Foundation. | |
| 1457 | |
| 1458 When run under the X Window System, Emacs provides its own menus and | |
| 1459 convenient bindings to mouse buttons. But Emacs can provide many of the | |
| 1460 benefits of a window system on a text-only terminal. For instance, you | |
| 1461 can look at or edit several files at once, move text between files, and | |
| 1462 edit files while running shell commands. | |
| 1463 | |
| 1464 @include screen.texi | |
| 1465 @include commands.texi | |
| 1466 @include entering.texi | |
| 1467 @include basic.texi | |
| 1468 @include mini.texi | |
| 1469 @include m-x.texi | |
| 1470 @include help.texi | |
| 1471 @include mark.texi | |
| 1472 @include killing.texi | |
| 1473 @include regs.texi | |
| 1474 @include display.texi | |
| 1475 @include search.texi | |
| 1476 @include fixit.texi | |
| 1477 @include files.texi | |
| 1478 @include buffers.texi | |
| 1479 @include windows.texi | |
| 1480 @include frames.texi | |
| 1481 @include mule.texi | |
| 1482 @include major.texi | |
| 1483 @include indent.texi | |
| 1484 @include text.texi | |
| 1485 @include programs.texi | |
| 1486 @include building.texi | |
|
38199
01e8262e28af
Reorganize structure of Editing Programs,
Richard M. Stallman <rms@gnu.org>
parents:
38131
diff
changeset
|
1487 @include maintaining.texi |
| 24093 | 1488 @include abbrevs.texi |
| 1489 @include picture.texi | |
| 1490 @include sending.texi | |
| 1491 @include rmail.texi | |
| 1492 @include dired.texi | |
| 1493 @include calendar.texi | |
| 1494 @include misc.texi | |
| 1495 @include custom.texi | |
| 1496 @include trouble.texi | |
| 1497 @include cmdargs.texi | |
|
40525
b8d0024c4e37
@include xresources.texi.
Richard M. Stallman <rms@gnu.org>
parents:
40520
diff
changeset
|
1498 @include xresources.texi |
| 24093 | 1499 |
| 1500 @include anti.texi | |
| 34199 | 1501 @include macos.texi |
| 24093 | 1502 @include msdog.texi |
| 1503 @include gnu.texi | |
| 1504 @include glossary.texi | |
| 1505 @ifinfo | |
| 1506 @include ack.texi | |
| 1507 @end ifinfo | |
| 1508 | |
|
37452
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1509 @c The Option Index is produced only in the on-line version, |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1510 @c because the index entries related to command-line options |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1511 @c tend to point to the same pages and all begin with a dash. |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1512 @c This, and the need to keep the node links consistent, are |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1513 @c the reasons for the funky @iftex/@ifnottex dance below. |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1514 @c The Option Index is _not_ before Key Index, because that |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1515 @c would require changes in the glossary.texi's @node line. |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1516 @c It is not after Concept Index for similar reasons. |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1517 |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1518 @iftex |
| 24093 | 1519 @node Key Index, Command Index, Glossary, Top |
| 1520 @unnumbered Key (Character) Index | |
| 1521 @printindex ky | |
|
37452
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1522 @end iftex |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1523 |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1524 @ifnottex |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1525 @node Key Index, Option Index, Glossary, Top |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1526 @unnumbered Key (Character) Index |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1527 @printindex ky |
| 24093 | 1528 |
|
37452
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1529 @node Option Index, Command Index, Key Index, Top |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1530 @unnumbered Command-Line Options Index |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1531 @printindex op |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1532 |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1533 @node Command Index, Variable Index, Option Index, Top |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1534 @unnumbered Command and Function Index |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1535 @printindex fn |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1536 @end ifnottex |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1537 |
|
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1538 @iftex |
| 24093 | 1539 @node Command Index, Variable Index, Key Index, Top |
| 1540 @unnumbered Command and Function Index | |
| 1541 @printindex fn | |
|
37452
794af8f5baeb
Add Option Index, produced only in the on-line version of the manual.
Eli Zaretskii <eliz@gnu.org>
parents:
37247
diff
changeset
|
1542 @end iftex |
| 24093 | 1543 |
| 1544 @node Variable Index, Concept Index, Command Index, Top | |
| 1545 @unnumbered Variable Index | |
| 1546 @printindex vr | |
| 1547 | |
| 1548 @node Concept Index, Acknowledgments, Variable Index, Top | |
| 1549 @unnumbered Concept Index | |
| 1550 @printindex cp | |
| 1551 | |
| 1552 @summarycontents | |
| 1553 @contents | |
| 1554 @bye | |
| 1555 |
