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