|
|
1.1 ! root 1: This is Info file ../info/emacs, produced by Makeinfo-1.49 from the ! 2: input file emacs.texi. ! 3: ! 4: This file documents the GNU Emacs editor. ! 5: ! 6: Copyright (C) 1985, 1986, 1988, 1992 Richard M. Stallman. ! 7: ! 8: Permission is granted to make and distribute verbatim copies of this ! 9: manual provided the copyright notice and this permission notice are ! 10: preserved on all copies. ! 11: ! 12: Permission is granted to copy and distribute modified versions of ! 13: this manual under the conditions for verbatim copying, provided also ! 14: that the sections entitled "The GNU Manifesto", "Distribution" and "GNU ! 15: General Public License" are included exactly as in the original, and ! 16: provided that the entire resulting derived work is distributed under the ! 17: terms of a permission notice identical to this one. ! 18: ! 19: Permission is granted to copy and distribute translations of this ! 20: manual into another language, under the above conditions for modified ! 21: versions, except that the sections entitled "The GNU Manifesto", ! 22: "Distribution" and "GNU General Public License" may be included in a ! 23: translation approved by the author instead of in the original English. ! 24: ! 25: ! 26: File: emacs, Node: Glossary, Next: Key Index, Prev: Intro, Up: Top ! 27: ! 28: Glossary ! 29: ******** ! 30: ! 31: Abbrev ! 32: An abbrev is a text string which expands into a different text ! 33: string when present in the buffer. For example, you might define ! 34: a short word as an abbrev for a long phrase that you want to insert ! 35: frequently. *Note Abbrevs::. ! 36: ! 37: Aborting ! 38: Aborting means getting out of a recursive edit (q.v.). The ! 39: commands `C-]' and `M-x top-level' are used for this. *Note ! 40: Quitting::. ! 41: ! 42: Auto Fill mode ! 43: Auto Fill mode is a minor mode in which text that you insert is ! 44: automatically broken into lines of fixed width. *Note Filling::. ! 45: ! 46: Auto Saving ! 47: Auto saving is when Emacs automatically stores the contents of an ! 48: Emacs buffer in a specially-named file so that the information will ! 49: not be lost if the buffer is lost due to a system error or user ! 50: error. *Note Auto Save::. ! 51: ! 52: Backup File ! 53: A backup file records the contents that a file had before the ! 54: current editing session. Emacs makes backup files automatically ! 55: to help you track down or cancel changes you later regret making. ! 56: *Note Backup::. ! 57: ! 58: Balance Parentheses ! 59: Emacs can balance parentheses manually or automatically. Manual ! 60: balancing is done by the commands to move over balanced expressions ! 61: (*note Lists::.). Automatic balancing is done by blinking the ! 62: parenthesis that matches one just inserted (*note Matching Parens: ! 63: Matching.). ! 64: ! 65: Bind ! 66: To bind a key is to change its binding (q.v.). *Note Rebinding::. ! 67: ! 68: Binding ! 69: A key gets its meaning in Emacs by having a binding which is a ! 70: command (q.v.), a Lisp function that is run when the key is typed. ! 71: *Note Binding: Commands. Customization often involves rebinding a ! 72: character to a different command function. The bindings of all ! 73: keys are recorded in the keymaps (q.v.). *Note Keymaps::. ! 74: ! 75: Blank Lines ! 76: Blank lines are lines that contain only whitespace. Emacs has ! 77: several commands for operating on the blank lines in the buffer. ! 78: ! 79: Buffer ! 80: The buffer is the basic editing unit; one buffer corresponds to one ! 81: piece of text being edited. You can have several buffers, but at ! 82: any time you are editing only one, the `selected' buffer, though ! 83: several can be visible when you are using multiple windows. *Note ! 84: Buffers::. ! 85: ! 86: Buffer Selection History ! 87: Emacs keeps a buffer selection history which records how recently ! 88: each Emacs buffer has been selected. This is used for choosing a ! 89: buffer to select. *Note Buffers::. ! 90: ! 91: C- ! 92: `C' in the name of a character is an abbreviation for Control. ! 93: *Note C-: Characters. ! 94: ! 95: C-M- ! 96: `C-M-' in the name of a character is an abbreviation for ! 97: Control-Meta. *Note C-M-: Characters. ! 98: ! 99: Case Conversion ! 100: Case conversion means changing text from upper case to lower case ! 101: or vice versa. *Note Case::, for the commands for case conversion. ! 102: ! 103: Characters ! 104: Characters form the contents of an Emacs buffer; also, Emacs ! 105: commands are invoked by keys (q.v.), which are sequences of one or ! 106: more characters. *Note Characters::. ! 107: ! 108: Command ! 109: A command is a Lisp function specially defined to be able to serve ! 110: as a key binding in Emacs. When you type a key (q.v.), its binding ! 111: (q.v.) is looked up in the relevant keymaps (q.v.) to find the ! 112: command to run. *Note Commands::. ! 113: ! 114: Command Name ! 115: A command name is the name of a Lisp symbol which is a command ! 116: (*note Commands::.). You can invoke any command by its name using ! 117: `M-x' (*note M-x::.). ! 118: ! 119: Comments ! 120: A comment is text in a program which is intended only for humans ! 121: reading the program, and is marked specially so that it will be ! 122: ignored when the program is loaded or compiled. Emacs offers ! 123: special commands for creating, aligning and killing comments. ! 124: *Note Comments::. ! 125: ! 126: Compilation ! 127: Compilation is the process of creating an executable program from ! 128: source code. Emacs has commands for compiling files of Emacs Lisp ! 129: code (*note Lisp Libraries::.) and programs in C and other ! 130: languages (*note Compilation::.). ! 131: ! 132: Complete Key ! 133: A complete key is a character or sequence of characters which, ! 134: when typed by the user, fully specifies one action to be performed ! 135: by Emacs. For example, `X' and `Control-f' and `Control-x m' are ! 136: keys. Keys derive their meanings from being bound (q.v.) to ! 137: commands (q.v.). Thus, `X' is conventionally bound to a command to ! 138: insert `X' in the buffer; `C-x m' is conventionally bound to a ! 139: command to begin composing a mail message. *Note Keys::. ! 140: ! 141: Completion ! 142: Completion is what Emacs does when it automatically fills out an ! 143: abbreviation for a name into the entire name. Completion is done ! 144: for minibuffer (q.v.) arguments when the set of possible valid ! 145: inputs is known; for example, on command names, buffer names, and ! 146: file names. Completion occurs when TAB, SPC or RET is typed. ! 147: *Note Completion::. ! 148: ! 149: Continuation Line ! 150: When a line of text is longer than the width of the screen, it ! 151: takes up more than one screen line when displayed. We say that the ! 152: text line is continued, and all screen lines used for it after the ! 153: first are called continuation lines. *Note Continuation: Basic. ! 154: ! 155: Control-Character ! 156: ASCII characters with octal codes 0 through 037, and also code ! 157: 0177, do not have graphic images assigned to them. These are the ! 158: control characters. Any control character can be typed by holding ! 159: down the CTRL key and typing some other character; some have ! 160: special keys on the keyboard. RET, TAB, ESC, LFD and DEL are all ! 161: control characters. *Note Characters::. ! 162: ! 163: Copyleft ! 164: A copyleft is a notice giving the public legal permission to ! 165: redistribute a program or other work of art. Copylefts are used ! 166: by leftists to enrich the public just as copyrights are used by ! 167: rightists to gain power over the public. ! 168: ! 169: Current Buffer ! 170: The current buffer in Emacs is the Emacs buffer on which most ! 171: editing commands operate. You can select any Emacs buffer as the ! 172: current one. *Note Buffers::. ! 173: ! 174: Current Line ! 175: The line point is on (*note Point::.). ! 176: ! 177: Current Paragraph ! 178: The paragraph that point is in. If point is between paragraphs, ! 179: the current paragraph is the one that follows point. *Note ! 180: Paragraphs::. ! 181: ! 182: Current Defun ! 183: The defun (q.v.) that point is in. If point is between defuns, the ! 184: current defun is the one that follows point. *Note Defuns::. ! 185: ! 186: Cursor ! 187: The cursor is the rectangle on the screen which indicates the ! 188: position called point (q.v.) at which insertion and deletion takes ! 189: place. The cursor is on or under the character that follows point. ! 190: Often people speak of `the cursor' when, strictly speaking, they ! 191: mean `point'. *Note Cursor: Basic. ! 192: ! 193: Customization ! 194: Customization is making minor changes in the way Emacs works. It ! 195: is often done by setting variables (*note Variables::.) or by ! 196: rebinding keys (*note Keymaps::.). ! 197: ! 198: Default Argument ! 199: The default for an argument is the value that will be assumed if ! 200: you do not specify one. When the minibuffer is used to read an ! 201: argument, the default argument is used if you just type RET. *Note ! 202: Minibuffer::. ! 203: ! 204: Default Directory ! 205: When you specify a file name that does not start with `/' or `~', ! 206: it is interpreted relative to the current buffer's default ! 207: directory. *Note Default Directory: Minibuffer File. ! 208: ! 209: Defun ! 210: A defun is a list at the top level of parenthesis or bracket ! 211: structure in a program. It is so named because most such lists in ! 212: Lisp programs are calls to the Lisp function `defun'. *Note ! 213: Defuns::. ! 214: ! 215: DEL ! 216: DEL is a character that runs the command to delete one character of ! 217: text. *Note DEL: Basic. ! 218: ! 219: Deletion ! 220: Deletion means erasing text without saving it. Emacs deletes text ! 221: only when it is expected not to be worth saving (all whitespace, or ! 222: only one character). The alternative is killing (q.v.). *Note ! 223: Deletion: Killing. ! 224: ! 225: Deletion of Files ! 226: Deleting a file means erasing it from the file system. *Note Misc ! 227: File Ops::. ! 228: ! 229: Deletion of Messages ! 230: Deleting a message means flagging it to be eliminated from your ! 231: mail file. This can be undone by undeletion until the mail file ! 232: is expunged. *Note Rmail Deletion::. ! 233: ! 234: Deletion of Windows ! 235: Deleting a window means eliminating it from the screen. Other ! 236: windows expand to use up the space. The deleted window can never ! 237: come back, but no actual text is thereby lost. *Note Windows::. ! 238: ! 239: Directory ! 240: Files in the Unix file system are grouped into file directories. ! 241: *Note Directories: ListDir. ! 242: ! 243: Dired ! 244: Dired is the Emacs facility that displays the contents of a file ! 245: directory and allows you to "edit the directory", performing ! 246: operations on the files in the directory. *Note Dired::. ! 247: ! 248: Disabled Command ! 249: A disabled command is one that you may not run without special ! 250: confirmation. The usual reason for disabling a command is that it ! 251: is confusing for beginning users. *Note Disabling::. ! 252: ! 253: Dribble File ! 254: A file into which Emacs writes all the characters that the user ! 255: types on the keyboard. Dribble files are used to make a record for ! 256: debugging Emacs bugs. Emacs does not make a dribble file unless ! 257: you tell it to. *Note Bugs::. ! 258: ! 259: Echo Area ! 260: The echo area is the bottom line of the screen, used for echoing ! 261: the arguments to commands, for asking questions, and printing brief ! 262: messages (including error messages). *Note Echo Area::. ! 263: ! 264: Echoing ! 265: Echoing is acknowledging the receipt of commands by displaying them ! 266: (in the echo area). Emacs never echoes single-character keys; ! 267: longer keys echo only if you pause while typing them. ! 268: ! 269: Error ! 270: An error occurs when an Emacs command cannot execute in the current ! 271: circumstances. When an error occurs, execution of the command ! 272: stops (unless the command has been programmed to do otherwise) and ! 273: Emacs reports the error by printing an error message (q.v.). ! 274: Type-ahead is discarded. Then Emacs is ready to read another ! 275: editing command. ! 276: ! 277: Error Messages ! 278: Error messages are single lines of output printed by Emacs when the ! 279: user asks for something impossible to do (such as, killing text ! 280: forward when point is at the end of the buffer). They appear in ! 281: the echo area, accompanied by a beep. ! 282: ! 283: ESC ! 284: ESC is a character, used to end incremental searches and as a ! 285: prefix for typing Meta characters on keyboards lacking a META key. ! 286: Unlike the META key (which, like the SHIFT key, is held down ! 287: while another character is typed), the ESC key is pressed once and ! 288: applies to the next character typed. ! 289: ! 290: Fill Prefix ! 291: The fill prefix is a string that should be expected at the ! 292: beginning of each line when filling is done. It is not regarded ! 293: as part of the text to be filled. *Note Filling::. ! 294: ! 295: Filling ! 296: Filling text means moving text from line to line so that all the ! 297: lines are approximately the same length. *Note Filling::. ! 298: ! 299: Global ! 300: Global means `independent of the current environment; in effect ! 301: throughout Emacs'. It is the opposite of local (q.v.). Particular ! 302: examples of the use of `global' appear below. ! 303: ! 304: Global Abbrev ! 305: A global definition of an abbrev (q.v.) is effective in all major ! 306: modes that do not have local (q.v.) definitions for the same ! 307: abbrev. *Note Abbrevs::. ! 308: ! 309: Global Keymap ! 310: The global keymap (q.v.) contains key bindings that are in effect ! 311: except when overridden by local key bindings in a major mode's ! 312: local keymap (q.v.). *Note Keymaps::. ! 313: ! 314: Global Substitution ! 315: Global substitution means replacing each occurrence of one string ! 316: by another string through a large amount of text. *Note Replace::. ! 317: ! 318: Global Variable ! 319: The global value of a variable (q.v.) takes effect in all buffers ! 320: that do not have their own local (q.v.) values for the variable. ! 321: *Note Variables::. ! 322: ! 323: Graphic Character ! 324: Graphic characters are those assigned pictorial images rather than ! 325: just names. All the non-Meta (q.v.) characters except for the ! 326: Control (q.v.) characters are graphic characters. These include ! 327: letters, digits, punctuation, and spaces; they do not include RET ! 328: or ESC. In Emacs, typing a graphic character inserts that ! 329: character (in ordinary editing modes). *Note Basic Editing: Basic. ! 330: ! 331: Grinding ! 332: Grinding means adjusting the indentation in a program to fit the ! 333: nesting structure. *Note Grinding: Indentation. ! 334: ! 335: Hardcopy ! 336: Hardcopy means printed output. Emacs has commands for making ! 337: printed listings of text in Emacs buffers. *Note Hardcopy::. ! 338: ! 339: HELP ! 340: You can type HELP at any time to ask what options you have, or to ! 341: ask what any command does. HELP is really `Control-h'. *Note ! 342: Help::. ! 343: ! 344: Inbox ! 345: An inbox is a file in which mail is delivered by the operating ! 346: system. Rmail transfers mail from inboxes to mail files (q.v.) in ! 347: which the mail is then stored permanently or until explicitly ! 348: deleted. *Note Rmail Inbox::. ! 349: ! 350: Indentation ! 351: Indentation means blank space at the beginning of a line. Most ! 352: programming languages have conventions for using indentation to ! 353: illuminate the structure of the program, and Emacs has special ! 354: features to help you set up the correct indentation. *Note ! 355: Indentation::. ! 356: ! 357: Insertion ! 358: Insertion means copying text into the buffer, either from the ! 359: keyboard or from some other place in Emacs. ! 360: ! 361: Justification ! 362: Justification means adding extra spaces to lines of text to make ! 363: them come exactly to a specified width. *Note Justification: ! 364: Filling. ! 365: ! 366: Keyboard Macros ! 367: Keyboard macros are a way of defining new Emacs commands from ! 368: sequences of existing ones, with no need to write a Lisp program. ! 369: *Note Keyboard Macros::. ! 370: ! 371: Key ! 372: A key is a sequence of characters that, when input to Emacs, ! 373: specify or begin to specify a single action for Emacs to perform. ! 374: That is, the sequence is not more than a single unit. If the key ! 375: is enough to specify one action, it is a complete key (q.v.); if ! 376: it is less than enough, it is a prefix key (q.v.). *Note Keys::. ! 377: ! 378: Keymap ! 379: The keymap is the data structure that records the bindings (q.v.) ! 380: of keys to the commands that they run. For example, the keymap ! 381: binds the character `C-n' to the command function `next-line'. ! 382: *Note Keymaps::. ! 383: ! 384: Kill Ring ! 385: The kill ring is where all text you have killed recently is saved. ! 386: You can reinsert any of the killed text still in the ring; this is ! 387: called yanking (q.v.). *Note Yanking::. ! 388: ! 389: Killing ! 390: Killing means erasing text and saving it on the kill ring so it ! 391: can be yanked (q.v.) later. Some other systems call this ! 392: "cutting". Most Emacs commands to erase text do killing, as ! 393: opposed to deletion (q.v.). *Note Killing::. ! 394: ! 395: Killing Jobs ! 396: Killing a job (such as, an invocation of Emacs) means making it ! 397: cease to exist. Any data within it, if not saved in a file, is ! 398: lost. *Note Exiting::. ! 399: ! 400: List ! 401: A list is, approximately, a text string beginning with an open ! 402: parenthesis and ending with the matching close parenthesis. In C ! 403: mode and other non-Lisp modes, groupings surrounded by other kinds ! 404: of matched delimiters appropriate to the language, such as braces, ! 405: are also considered lists. Emacs has special commands for many ! 406: operations on lists. *Note Lists::. ! 407: ! 408: Local ! 409: Local means `in effect only in a particular context'; the relevant ! 410: kind of context is a particular function execution, a particular ! 411: buffer, or a particular major mode. It is the opposite of `global' ! 412: (q.v.). Specific uses of `local' in Emacs terminology appear ! 413: below. ! 414: ! 415: Local Abbrev ! 416: A local abbrev definition is effective only if a particular major ! 417: mode is selected. In that major mode, it overrides any global ! 418: definition for the same abbrev. *Note Abbrevs::. ! 419: ! 420: Local Keymap ! 421: A local keymap is used in a particular major mode; the key bindings ! 422: (q.v.) in the current local keymap override global bindings of the ! 423: same keys. *Note Keymaps::. ! 424: ! 425: Local Variable ! 426: A local value of a variable (q.v.) applies to only one buffer. ! 427: *Note Locals::. ! 428: ! 429: M- ! 430: `M-' in the name of a character is an abbreviation for META, one ! 431: of the modifier keys that can accompany any character. *Note ! 432: Characters::. ! 433: ! 434: M-C- ! 435: `M-C-' in the name of a character is an abbreviation for ! 436: Control-Meta; it means the same thing as `C-M-'. If your terminal ! 437: lacks a real META key, you type a Control-Meta character by typing ! 438: ESC and then typing the corresponding Control character. *Note ! 439: C-M-: Characters. ! 440: ! 441: M-x ! 442: `M-x' is the key which is used to call an Emacs command by name. ! 443: This is how commands that are not bound to keys are called. *Note ! 444: M-x::. ! 445: ! 446: Mail ! 447: Mail means messages sent from one user to another through the ! 448: computer system, to be read at the recipient's convenience. Emacs ! 449: has commands for composing and sending mail, and for reading and ! 450: editing the mail you have received. *Note Sending Mail::. *Note ! 451: Rmail::, for how to read mail. ! 452: ! 453: Mail File ! 454: A mail file is a file which is edited using Rmail and in which ! 455: Rmail stores mail. *Note Rmail::. ! 456: ! 457: Major Mode ! 458: The major modes are a mutually exclusive set of options each of ! 459: which configures Emacs for editing a certain sort of text. ! 460: Ideally, each programming language has its own major mode. *Note ! 461: Major Modes::. ! 462: ! 463: Mark ! 464: The mark points to a position in the text. It specifies one end of ! 465: the region (q.v.), point being the other end. Many commands ! 466: operate on all the text from point to the mark. *Note Mark::. ! 467: ! 468: Mark Ring ! 469: The mark ring is used to hold several recent previous locations of ! 470: the mark, just in case you want to move back to them. *Note Mark ! 471: Ring::. ! 472: ! 473: Message ! 474: See `mail'. ! 475: ! 476: Meta ! 477: Meta is the name of a modifier bit which a command character may ! 478: have. It is present in a character if the character is typed with ! 479: the META key held down. Such characters are given names that start ! 480: with `Meta-'. For example, `Meta-<' is typed by holding down META ! 481: and at the same time typing `<' (which itself is done, on most ! 482: terminals, by holding down SHIFT and typing `,'). *Note Meta: ! 483: Characters. ! 484: ! 485: Meta Character ! 486: A Meta character is one whose character code includes the Meta bit. ! 487: ! 488: Minibuffer ! 489: The minibuffer is the window that appears when necessary inside the ! 490: echo area (q.v.), used for reading arguments to commands. *Note ! 491: Minibuffer::. ! 492: ! 493: Minor Mode ! 494: A minor mode is an optional feature of Emacs which can be switched ! 495: on or off independently of all other features. Each minor mode ! 496: has a command to turn it on or off. *Note Minor Modes::. ! 497: ! 498: Mode Line ! 499: The mode line is the line at the bottom of each text window (q.v.), ! 500: which gives status information on the buffer displayed in that ! 501: window. *Note Mode Line::. ! 502: ! 503: Modified Buffer ! 504: A buffer (q.v.) is modified if its text has been changed since the ! 505: last time the buffer was saved (or since when it was created, if it ! 506: has never been saved). *Note Saving::. ! 507: ! 508: Moving Text ! 509: Moving text means erasing it from one place and inserting it in ! 510: another. This is done by killing (q.v.) and then yanking (q.v.). ! 511: *Note Killing::. ! 512: ! 513: Named Mark ! 514: A named mark is a register (q.v.) in its role of recording a ! 515: location in text so that you can move point to that location. ! 516: *Note Registers::. ! 517: ! 518: Narrowing ! 519: Narrowing means creating a restriction (q.v.) that limits editing ! 520: in the current buffer to only a part of the text in the buffer. ! 521: Text outside that part is inaccessible to the user until the ! 522: boundaries are widened again, but it is still there, and saving ! 523: the file saves it all. *Note Narrowing::. ! 524: ! 525: Newline ! 526: LFD characters in the buffer terminate lines of text and are ! 527: called newlines. *Note Newline: Characters. ! 528: ! 529: Numeric Argument ! 530: A numeric argument is a number, specified before a command, to ! 531: change the effect of the command. Often the numeric argument ! 532: serves as a repeat count. *Note Arguments::. ! 533: ! 534: Option ! 535: An option is a variable (q.v.) that exists so that you can ! 536: customize Emacs by giving it a new value. *Note Variables::. ! 537: ! 538: Overwrite Mode ! 539: Overwrite mode is a minor mode. When it is enabled, ordinary text ! 540: characters replace the existing text after point rather than ! 541: pushing it to the right. *Note Minor Modes::. ! 542: ! 543: Page ! 544: A page is a unit of text, delimited by formfeed characters (ASCII ! 545: Control-L, code 014) coming at the beginning of a line. Some Emacs ! 546: commands are provided for moving over and operating on pages. ! 547: *Note Pages::. ! 548: ! 549: Paragraphs ! 550: Paragraphs are the medium-size unit of English text. There are ! 551: special Emacs commands for moving over and operating on paragraphs. ! 552: *Note Paragraphs::. ! 553: ! 554: Parsing ! 555: We say that Emacs parses words or expressions in the text being ! 556: edited. Really, all it knows how to do is find the other end of a ! 557: word or expression. *Note Syntax::. ! 558: ! 559: Point ! 560: Point is the place in the buffer at which insertion and deletion ! 561: occur. Point is considered to be between two characters, not at ! 562: one character. The terminal's cursor (q.v.) indicates the ! 563: location of point. *Note Point: Basic. ! 564: ! 565: Prefix Key ! 566: A prefix key is a key (q.v.) whose sole function is to introduce a ! 567: set of multi-character keys. `Control-x' is an example of prefix ! 568: key; thus, any two-character sequence starting with `C-x' is also ! 569: a legitimate key. *Note Keys::. ! 570: ! 571: Primary Mail File ! 572: Your primary mail file is the file named `RMAIL' in your home ! 573: directory, where all mail that you receive is stored by Rmail ! 574: unless you make arrangements to do otherwise. *Note Rmail::. ! 575: ! 576: Prompt ! 577: A prompt is text printed to ask the user for input. Printing a ! 578: prompt is called prompting. Emacs prompts always appear in the ! 579: echo area (q.v.). One kind of prompting happens when the ! 580: minibuffer is used to read an argument (*note Minibuffer::.); the ! 581: echoing which happens when you pause in the middle of typing a ! 582: multicharacter key is also a kind of prompting (*note Echo ! 583: Area::.). ! 584: ! 585: Quitting ! 586: Quitting means cancelling a partially typed command or a running ! 587: command, using `C-g'. *Note Quitting::. ! 588: ! 589: Quoting ! 590: Quoting means depriving a character of its usual special ! 591: significance. In Emacs this is usually done with `Control-q'. ! 592: What constitutes special significance depends on the context and ! 593: on convention. For example, an "ordinary" character as an Emacs ! 594: command inserts itself; so in this context, a special character is ! 595: any character that does not normally insert itself (such as DEL, ! 596: for example), and quoting it makes it insert itself as if it were ! 597: not special. Not all contexts allow quoting. *Note Quoting: ! 598: Basic. ! 599: ! 600: Read-only Buffer ! 601: A read-only buffer is one whose text you are not allowed to change. ! 602: Normally Emacs makes buffers read-only when they contain text which ! 603: has a special significance to Emacs; for example, Dired buffers. ! 604: Visiting a file that is write protected also makes a read-only ! 605: buffer. *Note Buffers::. ! 606: ! 607: Recursive Editing Level ! 608: A recursive editing level is a state in which part of the ! 609: execution of a command involves asking the user to edit some text. ! 610: This text may or may not be the same as the text to which the ! 611: command was applied. The mode line indicates recursive editing ! 612: levels with square brackets (`[' and `]'). *Note Recursive Edit::. ! 613: ! 614: Redisplay ! 615: Redisplay is the process of correcting the image on the screen to ! 616: correspond to changes that have been made in the text being edited. ! 617: *Note Redisplay: Screen. ! 618: ! 619: Regexp ! 620: See `regular expression'. ! 621: ! 622: Region ! 623: The region is the text between point (q.v.) and the mark (q.v.). ! 624: Many commands operate on the text of the region. *Note Region: ! 625: Mark. ! 626: ! 627: Registers ! 628: Registers are named slots in which text or buffer positions or ! 629: rectangles can be saved for later use. *Note Registers::. ! 630: ! 631: Regular Expression ! 632: A regular expression is a pattern that can match various text ! 633: strings; for example, `l[0-9]+' matches `l' followed by one or more ! 634: digits. *Note Regexps::. ! 635: ! 636: Replacement ! 637: See `global substitution'. ! 638: ! 639: Restriction ! 640: A buffer's restriction is the amount of text, at the beginning or ! 641: the end of the buffer, that is temporarily invisible and ! 642: inaccessible. Giving a buffer a nonzero amount of restriction is ! 643: called narrowing (q.v.). *Note Narrowing::. ! 644: ! 645: RET ! 646: RET is a character that in Emacs runs the command to insert a ! 647: newline into the text. It is also used to terminate most arguments ! 648: read in the minibuffer (q.v.). *Note Return: Characters. ! 649: ! 650: Saving ! 651: Saving a buffer means copying its text into the file that was ! 652: visited (q.v.) in that buffer. This is the way text in files ! 653: actually gets changed by your Emacs editing. *Note Saving::. ! 654: ! 655: Scrolling ! 656: Scrolling means shifting the text in the Emacs window so as to see ! 657: a different part of the buffer. *Note Scrolling: Display. ! 658: ! 659: Searching ! 660: Searching means moving point to the next occurrence of a specified ! 661: string. *Note Search::. ! 662: ! 663: Selecting ! 664: Selecting a buffer means making it the current (q.v.) buffer. ! 665: *Note Selecting: Buffers. ! 666: ! 667: Self-documentation ! 668: Self-documentation is the feature of Emacs which can tell you what ! 669: any command does, or give you a list of all commands related to a ! 670: topic you specify. You ask for self-documentation with the help ! 671: character, `C-h'. *Note Help::. ! 672: ! 673: Sentences ! 674: Emacs has commands for moving by or killing by sentences. *Note ! 675: Sentences::. ! 676: ! 677: Sexp ! 678: A sexp (short for `s-expression') is the basic syntactic unit of ! 679: Lisp in its textual form: either a list, or Lisp atom. Many Emacs ! 680: commands operate on sexps. The term `sexp' is generalized to ! 681: languages other than Lisp, to mean a syntactically recognizable ! 682: expression. *Note Sexps: Lists. ! 683: ! 684: Simultaneous Editing ! 685: Simultaneous editing means two users modifying the same file at ! 686: once. Simultaneous editing if not detected can cause one user to ! 687: lose his work. Emacs detects all cases of simultaneous editing ! 688: and warns the user to investigate them. *Note Simultaneous ! 689: Editing: Interlocking. ! 690: ! 691: String ! 692: A string is a kind of Lisp data object which contains a sequence of ! 693: characters. Many Emacs variables are intended to have strings as ! 694: values. The Lisp syntax for a string consists of the characters in ! 695: the string with a `"' before and another `"' after. A `"' that is ! 696: part of the string must be written as `\"' and a `\' that is part ! 697: of the string must be written as `\\'. All other characters, ! 698: including newline, can be included just by writing them inside the ! 699: string; however, escape sequences as in C, such as `\n' for ! 700: newline or `\241' using an octal character code, are allowed as ! 701: well. ! 702: ! 703: String Substitution ! 704: See `global substitution'. ! 705: ! 706: Syntax Table ! 707: The syntax table tells Emacs which characters are part of a word, ! 708: which characters balance each other like parentheses, etc. *Note ! 709: Syntax::. ! 710: ! 711: Tag Table ! 712: A tag table is a file that serves as an index to the function ! 713: definitions in one or more other files. *Note Tags::. ! 714: ! 715: Termscript File ! 716: A termscript file contains a record of all characters sent by ! 717: Emacs to the terminal. It is used for tracking down bugs in Emacs ! 718: redisplay. Emacs does not make a termscript file unless you tell ! 719: it to. *Note Bugs::. ! 720: ! 721: Text ! 722: Two meanings (*note Text::.): ! 723: ! 724: * Data consisting of a sequence of characters, as opposed to ! 725: binary numbers, images, graphics commands, executable ! 726: programs, and the like. The contents of an Emacs buffer are ! 727: always text in this sense. ! 728: ! 729: * Data consisting of written human language, as opposed to ! 730: programs, or following the stylistic conventions of human ! 731: language. ! 732: ! 733: Top Level ! 734: Top level is the normal state of Emacs, in which you are editing ! 735: the text of the file you have visited. You are at top level ! 736: whenever you are not in a recursive editing level (q.v.) or the ! 737: minibuffer (q.v.), and not in the middle of a command. You can ! 738: get back to top level by aborting (q.v.) and quitting (q.v.). ! 739: *Note Quitting::. ! 740: ! 741: Transposition ! 742: Transposing two units of text means putting each one into the place ! 743: formerly occupied by the other. There are Emacs commands to ! 744: transpose two adjacent characters, words, sexps (q.v.) or lines ! 745: (*note Transpose::.). ! 746: ! 747: Truncation ! 748: Truncating text lines in the display means leaving out any text on ! 749: a line that does not fit within the right margin of the window ! 750: displaying it. See also `continuation line'. *Note Truncation: ! 751: Basic. ! 752: ! 753: Undoing ! 754: Undoing means making your previous editing go in reverse, bringing ! 755: back the text that existed earlier in the editing session. *Note ! 756: Undo::. ! 757: ! 758: Variable ! 759: A variable is an object in Lisp that can store an arbitrary value. ! 760: Emacs uses some variables for internal purposes, and has others ! 761: (known as `options' (q.v.)) just so that you can set their values ! 762: to control the behavior of Emacs. The variables used in Emacs ! 763: that you are likely to be interested in are listed in the ! 764: Variables Index in this manual. *Note Variables::, for ! 765: information on variables. ! 766: ! 767: Visiting ! 768: Visiting a file means loading its contents into a buffer (q.v.) ! 769: where they can be edited. *Note Visiting::. ! 770: ! 771: Whitespace ! 772: Whitespace is any run of consecutive formatting characters (space, ! 773: tab, newline, and backspace). ! 774: ! 775: Widening ! 776: Widening is removing any restriction (q.v.) on the current buffer; ! 777: it is the opposite of narrowing (q.v.). *Note Narrowing::. ! 778: ! 779: Window ! 780: Emacs divides the screen into one or more windows, each of which ! 781: can display the contents of one buffer (q.v.) at any time. *Note ! 782: Screen::, for basic information on how Emacs uses the screen. ! 783: *Note Windows::, for commands to control the use of windows. ! 784: ! 785: Word Abbrev ! 786: Synonymous with `abbrev'. ! 787: ! 788: Word Search ! 789: Word search is searching for a sequence of words, considering the ! 790: punctuation between them as insignificant. *Note Word Search::. ! 791: ! 792: Yanking ! 793: Yanking means reinserting text previously killed. It can be used ! 794: to undo a mistaken kill, or for copying or moving text. Some other ! 795: systems call this "pasting". *Note Yanking::. ! 796: ! 797:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.