X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=info%2Fxemacs.info-4;h=af09a71d1d1042b89edf91baf41b6268430777db;hp=53fc1cd68c136e475eea2d89bb4dc2868b611000;hb=79d2db7d65205bc85d471590726d0cf3af5598e0;hpb=de1ec4b272dfa3f9ef2c9ae28a9ba67170d24da5 diff --git a/info/xemacs.info-4 b/info/xemacs.info-4 index 53fc1cd..af09a71 100644 --- a/info/xemacs.info-4 +++ b/info/xemacs.info-4 @@ -1,4 +1,4 @@ -This is ../info/xemacs.info, produced by makeinfo version 4.0 from +This is ../info/xemacs.info, produced by makeinfo version 4.6 from xemacs/xemacs.texi. INFO-DIR-SECTION XEmacs Editor @@ -30,1166 +30,3340 @@ versions, except that the sections entitled "The GNU Manifesto", translation approved by the author instead of in the original English.  -File: xemacs.info, Node: Position Info, Next: Arguments, Prev: Continuation Lines, Up: Basic - -Cursor Position Information -=========================== - - If you are accustomed to other display editors, you may be surprised -that Emacs does not always display the page number or line number of -point in the mode line. In Emacs, this information is only rarely -needed, and a number of commands are available to compute and print it. -Since text is stored in a way that makes it difficult to compute the -information, it is not displayed all the time. - -`M-x what-page' - Print page number of point, and line number within page. - -`M-x what-line' - Print line number of point in the buffer. - -`M-x line-number-mode' - Toggle automatic display of current line number. - -`M-=' - Print number of lines and characters in the current region - (`count-lines-region'). *Note Mark::, for information about the - region. - -`C-x =' - Print character code of character after point, character position - of point, and column of point (`what-cursor-position'). - - There are several commands for printing line numbers: - - * `M-x what-line' counts lines from the beginning of the file and - prints the line number point is on. The first line of the file is - line number 1. You can use these numbers as arguments to `M-x - goto-line'. - - * `M-x what-page' counts pages from the beginning of the file, and - counts lines within the page, printing both of them. *Note - Pages::, for the command `C-x l', which counts the lines in the - current page. - - * `M-=' (`count-lines-region') prints the number of lines in the - region (*note Mark::). *Note Pages::, for the command `C-x l' - which counts the lines in the - - The command `C-x =' (`what-cursor-position') can be used to find out -the column that the cursor is in, and other miscellaneous information -about point. It prints a line in the echo area that looks like this: - - Char: c (0143, 99, 0x63) point=18862 of 24800(76%) column 53 - -(In fact, this is the output produced when point is before `column 53' -in the example.) - - The four values after `Char:' describe the character that follows -point, first by showing it and then by giving its character code in -octal, decimal and hex. - - `point=' is followed by the position of point expressed as a -character count. The front of the buffer counts as position 1, one -character later as 2, and so on. The next, larger number is the total -number of characters in the buffer. Afterward in parentheses comes the -position expressed as a percentage of the total size. - - `column' is followed by the horizontal position of point, in columns -from the left edge of the window. - - If the buffer has been narrowed, making some of the text at the -beginning and the end temporarily invisible, `C-x =' prints additional -text describing the current visible range. For example, it might say: - - Char: c (0143, 99, 0x63) point=19674 of 24575(80%) <19591 - 19703> column 69 - -where the two extra numbers give the smallest and largest character -position that point is allowed to assume. The characters between those -two positions are the visible ones. *Note Narrowing::. - - If point is at the end of the buffer (or the end of the visible -part), `C-x =' omits any description of the character after point. The -output looks like - - point=563026 of 563025(100%) column 0 - - -File: xemacs.info, Node: Arguments, Prev: Position Info, Up: Basic - -Numeric Arguments -================= - - In mathematics and computer usage, the word "argument" means "data -provided to a function or operation." Any Emacs command can be given a -"numeric argument" (also called a "prefix argument"). Some commands -interpret the argument as a repetition count. For example, giving an -argument of ten to the key `C-f' (the command `forward-char', move -forward one character) moves forward ten characters. With these -commands, no argument is equivalent to an argument of one. Negative -arguments are allowed. Often they tell a command to move or act in -the opposite direction. - - If your keyboard has a key (labelled with a diamond on -Sun-type keyboards and labelled `Alt' on some other keyboards), the -easiest way to specify a numeric argument is to type digits and/or a -minus sign while holding down the key. For example, - M-5 C-n - -would move down five lines. The characters `Meta-1', `Meta-2', and so -on, as well as `Meta--', do this because they are keys bound to -commands (`digit-argument' and `negative-argument') that are defined to -contribute to an argument for the next command. Digits and `-' -modified with Control, or Control and Meta, also specify numeric -arguments. - - Another way of specifying an argument is to use the `C-u' -(`universal-argument') command followed by the digits of the argument. -With `C-u', you can type the argument digits without holding down -modifier keys; `C-u' works on all terminals. To type a negative -argument, type a minus sign after `C-u'. Just a minus sign without -digits normally means -1. - - `C-u' followed by a character which is neither a digit nor a minus -sign has the special meaning of "multiply by four". It multiplies the -argument for the next command by four. `C-u' twice multiplies it by -sixteen. Thus, `C-u C-u C-f' moves forward sixteen characters. This -is a good way to move forward "fast", since it moves about 1/5 of a line -in the usual size frame. Other useful combinations are `C-u C-n', `C-u -C-u C-n' (move down a good fraction of a frame), `C-u C-u C-o' (make "a -lot" of blank lines), and `C-u C-k' (kill four lines). - - Some commands care only about whether there is an argument and not -about its value. For example, the command `M-q' (`fill-paragraph') with -no argument fills text; with an argument, it justifies the text as well. -(*Note Filling::, for more information on `M-q'.) Just `C-u' is a -handy way of providing an argument for such commands. - - Some commands use the value of the argument as a repeat count, but do -something peculiar when there is no argument. For example, the command -`C-k' (`kill-line') with argument N kills N lines, including their -terminating newlines. But `C-k' with no argument is special: it kills -the text up to the next newline, or, if point is right at the end of -the line, it kills the newline itself. Thus, two `C-k' commands with -no arguments can kill a non-blank line, just like `C-k' with an -argument of one. (*Note Killing::, for more information on `C-k'.) - - A few commands treat a plain `C-u' differently from an ordinary -argument. A few others may treat an argument of just a minus sign -differently from an argument of -1. These unusual cases are described -when they come up; they are always for reasons of convenience of use of -the individual command. - - You can use a numeric argument to insert multiple copies of a -character. This is straightforward unless the character is a digit; for -example, `C-u 6 4 a' inserts 64 copies of the character `a'. But this -does not work for inserting digits; `C-u 6 4 1' specifies an argument -of 641, rather than inserting anything. To separate the digit to -insert from the argument, type another `C-u'; for example, `C-u 6 4 C-u -1' does insert 64 copies of the character `1'. - - We use the term "prefix argument" as well as "numeric argument" to -emphasize that you type the argument before the command, and to -distinguish these arguments from minibuffer arguments that come after -the command. - - -File: xemacs.info, Node: Undo, Next: Minibuffer, Prev: Basic, Up: Top - -Undoing Changes -*************** - - Emacs allows you to undo all changes you make to the text of a -buffer, up to a certain amount of change (8000 characters). Each -buffer records changes individually, and the undo command always -applies to the current buffer. Usually each editing command makes a -separate entry in the undo records, but some commands such as -`query-replace' make many entries, and very simple commands such as -self-inserting characters are often grouped to make undoing less -tedious. - -`C-x u' - Undo one batch of changes (usually, one command's worth) (`undo'). - -`C-_' - The same. - - The command `C-x u' or `C-_' allows you to undo changes. The first -time you give this command, it undoes the last change. Point moves to -the text affected by the undo, so you can see what was undone. - - Consecutive repetitions of the `C-_' or `C-x u' commands undo -earlier and earlier changes, back to the limit of what has been -recorded. If all recorded changes have already been undone, the undo -command prints an error message and does nothing. - - Any command other than an undo command breaks the sequence of undo -commands. Starting at this moment, the previous undo commands are -considered ordinary changes that can themselves be undone. Thus, you -can redo changes you have undone by typing `C-f' or any other command -that have no important effect, and then using more undo commands. - - If you notice that a buffer has been modified accidentally, the -easiest way to recover is to type `C-_' repeatedly until the stars -disappear from the front of the mode line. When that happens, all the -modifications you made have been canceled. If you do not remember -whether you changed the buffer deliberately, type `C-_' once. When you -see Emacs undo the last change you made, you probably remember why you -made it. If the change was an accident, leave it undone. If it was -deliberate, redo the change as described in the preceding paragraph. - - Whenever an undo command makes the stars disappear from the mode -line, the buffer contents is the same as it was when the file was last -read in or saved. - - Not all buffers record undo information. Buffers whose names start -with spaces don't; these buffers are used internally by Emacs and its -extensions to hold text that users don't normally look at or edit. -Minibuffers, help buffers, and documentation buffers also don't record -undo information. - - Emacs can remember at most 8000 or so characters of deleted or -modified text in any one buffer for reinsertion by the undo command. -There is also a limit on the number of individual insert, delete, or -change actions that Emacs can remember. - - There are two keys to run the `undo' command, `C-x u' and `C-_', -because on some keyboards, it is not obvious how to type `C-_'. `C-x u' -is an alternative you can type in the same fashion on any terminal. - - -File: xemacs.info, Node: Minibuffer, Next: M-x, Prev: Undo, Up: Top - -The Minibuffer -************** - - The "minibuffer" is the facility used by XEmacs commands to read -arguments more complicated than a single number. Minibuffer arguments -can be file names, buffer names, Lisp function names, XEmacs command -names, Lisp expressions, and many other things, depending on the command -reading the argument. You can use the usual XEmacs editing commands in -the minibuffer to edit the argument text. - - When the minibuffer is in use, it appears in the echo area, and the -cursor moves there. The beginning of the minibuffer line displays a -"prompt" which says what kind of input you should supply and how it -will be used. Often this prompt is derived from the name of the command -that the argument is for. The prompt normally ends with a colon. - - Sometimes a "default argument" appears in parentheses after the -colon; it, too, is part of the prompt. The default is used as the -argument value if you enter an empty argument (e.g., by just typing -). For example, commands that read buffer names always show a -default, which is the name of the buffer that will be used if you type -just . - - The simplest way to enter a minibuffer argument is to type the text -you want, terminated by which exits the minibuffer. You can -cancel the command that wants the argument, and get out of the -minibuffer, by typing `C-g'. - - Since the minibuffer uses the screen space of the echo area, it can -conflict with other ways XEmacs customarily uses the echo area. Here is -how XEmacs handles such conflicts: - - * If a command gets an error while you are in the minibuffer, this - does not cancel the minibuffer. However, the echo area is needed - for the error message and therefore the minibuffer itself is - hidden for a while. It comes back after a few seconds, or as soon - as you type anything. - - * If in the minibuffer you use a command whose purpose is to print a - message in the echo area, such as `C-x =', the message is printed - normally, and the minibuffer is hidden for a while. It comes back - after a few seconds, or as soon as you type anything. - - * Echoing of keystrokes does not take place while the minibuffer is - in use. - -* Menu: - -* File: Minibuffer File. Entering file names with the minibuffer. -* Edit: Minibuffer Edit. How to edit in the minibuffer. -* Completion:: An abbreviation facility for minibuffer input. -* Minibuffer History:: Reusing recent minibuffer arguments. -* Repetition:: Re-executing commands that used the minibuffer. - - -File: xemacs.info, Node: Minibuffer File, Next: Minibuffer Edit, Prev: Minibuffer, Up: Minibuffer - -Minibuffers for File Names -========================== - - Sometimes the minibuffer starts out with text in it. For example, -when you are supposed to give a file name, the minibuffer starts out -containing the "default directory", which ends with a slash. This is -to inform you which directory the file will be found in if you do not -specify a directory. - - For example, the minibuffer might start out with these contents: - - Find File: /u2/emacs/src/ - -where `Find File: ' is the prompt. Typing `buffer.c' specifies the -file `/u2/emacs/src/buffer.c'. To find files in nearby directories, -use `..'; thus, if you type `../lisp/simple.el', you will get the file -named `/u2/emacs/lisp/simple.el'. Alternatively, you can kill with -`M-' the directory names you don't want (*note Words::). - - If you don't want any of the default, you can kill it with `C-a -C-k'. But you don't need to kill the default; you can simply ignore it. -Insert an absolute file name, one starting with a slash or a tilde, -after the default directory. For example, to specify the file -`/etc/termcap', just insert that name, giving these minibuffer contents: - - Find File: /u2/emacs/src//etc/termcap - -XEmacs gives a special meaning to a double slash (which is not normally -a useful thing to write): it means, "ignore everything before the -second slash in the pair." Thus, `/u2/emacs/src/' is ignored in the -example above, and you get the file `/etc/termcap'. - - If you set `insert-default-directory' to `nil', the default -directory is not inserted in the minibuffer. This way, the minibuffer -starts out empty. But the name you type, if relative, is still -interpreted with respect to the same default directory. - - -File: xemacs.info, Node: Minibuffer Edit, Next: Completion, Prev: Minibuffer File, Up: Minibuffer - -Editing in the Minibuffer -========================= - - The minibuffer is an XEmacs buffer (albeit a peculiar one), and the -usual XEmacs commands are available for editing the text of an argument -you are entering. - - Since in the minibuffer is defined to exit the minibuffer, you -can't use it to insert a newline in the minibuffer. To do that, type -`C-o' or `C-q C-j'. (Recall that a newline is really the character -control-J.) - - The minibuffer has its own window which always has space on the -screen but acts as if it were not there when the minibuffer is not in -use. When the minibuffer is in use, its window is just like the -others; you can switch to another window with `C-x o', edit text in -other windows and perhaps even visit more files, before returning to the -minibuffer to submit the argument. You can kill text in another window, -return to the minibuffer window, and then yank the text to use it in the -argument. *Note Windows::. - - There are some restrictions on the use of the minibuffer window, -however. You cannot switch buffers in it--the minibuffer and its -window are permanently attached. Also, you cannot split or kill the -minibuffer window. But you can make it taller in the normal fashion with -`C-x ^'. If you enable Resize-Minibuffer mode, then the minibuffer -window expands vertically as necessary to hold the text that you put in -the minibuffer. Use `M-x resize-minibuffer-mode' to enable or disable -this minor mode (*note Minor Modes::). - - If while in the minibuffer you issue a command that displays help -text of any sort in another window, you can use the `C-M-v' command -while in the minibuffer to scroll the help text. This lasts until you -exit the minibuffer. This feature is especially useful if a completing -minibuffer gives you a list of possible completions. *Note Other -Window::. - - If the variable `minibuffer-confirm-incomplete' is `t', you are -asked for confirmation if there is no known completion for the text you -typed. For example, if you attempted to visit a non-existent file, the -minibuffer might read: - Find File: chocolate_bar.c [no completions, confirm] - If you press `Return' again, that confirms the filename. Otherwise, -you can continue editing it. - - XEmacs supports recursive use of the minibuffer. However, it is easy -to do this by accident (because of autorepeating keyboards, for example) -and get confused. Therefore, most XEmacs commands that use the -minibuffer refuse to operate if the minibuffer window is selected. If -the minibuffer is active but you have switched to a different window, -recursive use of the minibuffer is allowed--if you know enough to try -to do this, you probably will not get confused. - - If you set the variable `enable-recursive-minibuffers' to a -non-`nil', recursive use of the minibuffer is always allowed. - - -File: xemacs.info, Node: Completion, Next: Minibuffer History, Prev: Minibuffer Edit, Up: Minibuffer +File: xemacs.info, Node: Glossary, Next: Manifesto, Prev: Intro, Up: Top + +Glossary +******** + +Abbrev + An abbrev is a text string which expands into a different text + string when present in the buffer. For example, you might define + a short word as an abbrev for a long phrase that you want to insert + frequently. *Note Abbrevs::. + +Aborting + Aborting means getting out of a recursive edit (q.v.). You can use + the commands `C-]' and `M-x top-level' for this. *Note Quitting::. + +Auto Fill mode + Auto Fill mode is a minor mode in which text you insert is + automatically broken into lines of fixed width. *Note Filling::. + +Auto Saving + Auto saving means that Emacs automatically stores the contents of + an Emacs buffer in a specially-named file so the information will + not be lost if the buffer is lost due to a system error or user + error. *Note Auto Save::. + +Backup File + A backup file records the contents that a file had before the + current editing session. Emacs creates backup files automatically + to help you track down or cancel changes you later regret. *Note + Backup::. + +Balance Parentheses + Emacs can balance parentheses manually or automatically. Manual + balancing is done by the commands to move over balanced expressions + (*note Lists::). Automatic balancing is done by blinking the + parenthesis that matches one just inserted (*note Matching Parens: + Matching.). + +Bind + To bind a key is to change its binding (q.v.). *Note Rebinding::. + +Binding + A key gets its meaning in Emacs by having a binding which is a + command (q.v.), a Lisp function that is run when the key is typed. + *Note Binding: Commands. Customization often involves rebinding a + character to a different command function. The bindings of all + keys are recorded in the keymaps (q.v.). *Note Keymaps::. + +Blank Lines + Blank lines are lines that contain only whitespace. Emacs has + several commands for operating on the blank lines in a buffer. + +Buffer + The buffer is the basic editing unit; one buffer corresponds to one + piece of text being edited. You can have several buffers, but at + any time you are editing only one, the `selected' buffer, though + several buffers can be visible when you are using multiple + windows. *Note Buffers::. + +Buffer Selection History + Emacs keeps a buffer selection history which records how recently + each Emacs buffer was selected. Emacs uses this list when + choosing a buffer to select. *Note Buffers::. + +C- + `C' in the name of a character is an abbreviation for Control. + *Note C-: Keystrokes. + +C-M- + `C-M-' in the name of a character is an abbreviation for + Control-Meta. *Note C-M-: Keystrokes. + +Case Conversion + Case conversion means changing text from upper case to lower case + or vice versa. *Note Case::, for the commands for case conversion. + +Characters + Characters form the contents of an Emacs buffer; also, Emacs + commands are invoked by keys (q.v.), which are sequences of one or + more characters. *Note Keystrokes::. + +Command + A command is a Lisp function specially defined to be able to serve + as a key binding in Emacs. When you type a key (q.v.), Emacs + looks up its binding (q.v.) in the relevant keymaps (q.v.) to find + the command to run. *Note Commands::. + +Command Name + A command name is the name of a Lisp symbol which is a command + (*note Commands::). You can invoke any command by its name using + `M-x' (*note M-x::). + +Comments + A comment is text in a program which is intended only for the + people reading the program, and is marked specially so that it + will be ignored when the program is loaded or compiled. Emacs + offers special commands for creating, aligning, and killing + comments. *Note Comments::. + +Compilation + Compilation is the process of creating an executable program from + source code. Emacs has commands for compiling files of Emacs Lisp + code (*note Lisp Libraries::) and programs in C and other languages + (*note Compilation::). + +Complete Key + A complete key is a character or sequence of characters which, + when typed by the user, fully specifies one action to be performed + by Emacs. For example, `X' and `Control-f' and `Control-x m' are + keys. Keys derive their meanings from being bound (q.v.) to + commands (q.v.). Thus, `X' is conventionally bound to a command + to insert `X' in the buffer; `C-x m' is conventionally bound to a + command to begin composing a mail message. *Note Keystrokes::. Completion -========== - - For certain kinds of arguments, you can use "completion" to enter -the argument value. Completion means that you type part of the -argument, then XEmacs visibly fills in the rest, or as much as can be -determined from the part you have typed. - - When completion is available, certain keys--, , and ---are rebound to complete the text present in the minibuffer into -a longer string that it stands for, by matching it against a set of -"completion alternatives" provided by the command reading the argument. -`?' is defined to display a list of possible completions of what you -have inserted. - - For example, when `M-x' uses the minibuffer to read the name of a -command, it provides a list of all available XEmacs command names to -complete against. The completion keys match the text in the minibuffer -against all the command names, find any additional name characters -implied by the ones already present in the minibuffer, and add those -characters to the ones you have given. This is what makes it possible -to type `M-x inse b ' instead of `M-x insert-buffer ' -(for example). - - Case is normally significant in completion because it is significant -in most of the names that you can complete (buffer names, file names and -command names). Thus, `fo' does not complete to `Foo'. When you are -completing a name in which case does not matter, case may be ignored -for completion's sake if specified by program. - - When a completion list is displayed, the completions will highlight -as you move the mouse over them. Clicking the middle mouse button on -any highlighted completion will "select" it just as if you had typed it -in and hit . - -* Menu: - -* Example: Completion Example. -* Commands: Completion Commands. -* Strict Completion:: -* Options: Completion Options. + When Emacs automatically fills an abbreviation for a name into the + entire name, that process is called completion. Completion is + done for minibuffer (q.v.) arguments when the set of possible + valid inputs is known; for example, on command names, buffer + names, and file names. Completion occurs when you type , + , or . *Note Completion::. + +Continuation Line + When a line of text is longer than the width of the frame, it + takes up more than one screen line when displayed. We say that the + text line is continued, and all screen lines used for it after the + first are called continuation lines. *Note Continuation: Basic. + +Control-Character + ASCII characters with octal codes 0 through 037, and also code + 0177, do not have graphic images assigned to them. These are the + control characters. Any control character can be typed by holding + down the key and typing some other character; some have + special keys on the keyboard. , , , , and + are all control characters. *Note Keystrokes::. + +Copyleft + A copyleft is a notice giving the public legal permission to + redistribute a program or other work of art. Copylefts are used + by leftists to enrich the public just as copyrights are used by + rightists to gain power over the public. + +Current Buffer + The current buffer in Emacs is the Emacs buffer on which most + editing commands operate. You can select any Emacs buffer as the + current one. *Note Buffers::. + +Current Line + The line point is on (*note Point::). + +Current Paragraph + The paragraph that point is in. If point is between paragraphs, + the current paragraph is the one that follows point. *Note + Paragraphs::. + +Current Defun + The defun (q.v.) that point is in. If point is between defuns, the + current defun is the one that follows point. *Note Defuns::. + +Cursor + The cursor is the rectangle on the screen which indicates the + position called point (q.v.) at which insertion and deletion takes + place. The cursor is on or under the character that follows + point. Often people speak of `the cursor' when, strictly + speaking, they mean `point'. *Note Cursor: Basic. + +Customization + Customization is making minor changes in the way Emacs works. It + is often done by setting variables (*note Variables::) or by + rebinding keys (*note Keymaps::). + +Default Argument + The default for an argument is the value that is used if you do not + specify one. When Emacs prompts you in the minibuffer for an + argument, the default argument is used if you just type . + *Note Minibuffer::. + +Default Directory + When you specify a file name that does not start with `/' or `~', + it is interpreted relative to the current buffer's default + directory. *Note Default Directory: Minibuffer File. + +Defun + A defun is a list at the top level of parenthesis or bracket + structure in a program. It is so named because most such lists in + Lisp programs are calls to the Lisp function `defun'. *Note + Defuns::. + + + The character runs the command that deletes one character of + text. *Note DEL: Basic. + +Deletion + Deleting text means erasing it without saving it. Emacs deletes + text only when it is expected not to be worth saving (all + whitespace, or only one character). The alternative is killing + (q.v.). *Note Deletion: Killing. + +Deletion of Files + Deleting a file means removing it from the file system. *Note + Misc File Ops::. + +Deletion of Messages + Deleting a message means flagging it to be eliminated from your + mail file. Until the mail file is expunged, you can undo this by + undeleting the message. + +Deletion of Frames + When working under the multi-frame X-based version of XEmacs, you + can delete individual frames using the Close menu item from the + File menu. + +Deletion of Windows + When you delete a subwindow of an Emacs frame, you eliminate it + from the frame. Other windows expand to use up the space. The + deleted window can never come back, but no actual text is lost. + *Note Windows::. + +Directory + Files in the Unix file system are grouped into file directories. + *Note Directories: ListDir. + +Dired + Dired is the Emacs facility that displays the contents of a file + directory and allows you to "edit the directory", performing + operations on the files in the directory. *Note Dired::. + +Disabled Command + A disabled command is one that you may not run without special + confirmation. Commands are usually disabled because they are + confusing for beginning users. *Note Disabling::. + +Dribble File + A file into which Emacs writes all the characters that the user + types on the keyboard. Dribble files are used to make a record for + debugging Emacs bugs. Emacs does not make a dribble file unless + you tell it to. *Note Bugs::. + +Echo Area + The area at the bottom of the Emacs frame which is used for + echoing the arguments to commands, for asking questions, and for + printing brief messages (including error messages). *Note Echo + Area::. + +Echoing + Echoing refers to acknowledging the receipt of commands by + displaying them (in the echo area). Emacs never echoes + single-character keys; longer keys echo only if you pause while + typing them. + +Error + An error occurs when an Emacs command cannot execute in the current + circumstances. When an error occurs, execution of the command + stops (unless the command has been programmed to do otherwise) and + Emacs reports the error by printing an error message (q.v.). + Type-ahead is discarded. Then Emacs is ready to read another + editing command. + +Error Messages + Error messages are single lines of output printed by Emacs when the + user asks for something impossible to do (such as killing text + forward when point is at the end of the buffer). They appear in + the echo area, accompanied by a beep. + + + is a character used as a prefix for typing Meta characters on + keyboards lacking a key. Unlike the key (which, + like the key, is held down while another character is + typed), the key is pressed and released, and applies to the + next character typed. + +Fill Prefix + The fill prefix is a string that Emacs enters at the beginning of + each line when it performs filling. It is not regarded as part of + the text to be filled. *Note Filling::. + +Filling + Filling text means moving text from line to line so that all the + lines are approximately the same length. *Note Filling::. + +Frame + When running Emacs on a TTY terminal, "frame" means the terminal's + screen. When running Emacs under X, you can have multiple frames, + each corresponding to a top-level X window and each looking like + the screen on a TTY. Each frame contains one or more + non-overlapping Emacs windows (possibly with associated + scrollbars, under X), an echo area, and (under X) possibly a + menubar, toolbar, and/or gutter. + +Global + Global means `independent of the current environment; in effect + throughout Emacs'. It is the opposite of local (q.v.). Examples + of the use of `global' appear below. + +Global Abbrev + A global definition of an abbrev (q.v.) is effective in all major + modes that do not have local (q.v.) definitions for the same + abbrev. *Note Abbrevs::. + +Global Keymap + The global keymap (q.v.) contains key bindings that are in effect + unless local key bindings in a major mode's local keymap (q.v.) + override them.*Note Keymaps::. + +Global Substitution + Global substitution means replacing each occurrence of one string + by another string through a large amount of text. *Note Replace::. + +Global Variable + The global value of a variable (q.v.) takes effect in all buffers + that do not have their own local (q.v.) values for the variable. + *Note Variables::. + +Graphic Character + Graphic characters are those assigned pictorial images rather than + just names. All the non-Meta (q.v.) characters except for the + Control (q.v.) character are graphic characters. These include + letters, digits, punctuation, and spaces; they do not include + or . In Emacs, typing a graphic character inserts that + character (in ordinary editing modes). *Note Basic Editing: Basic. + +Grinding + Grinding means adjusting the indentation in a program to fit the + nesting structure. *Note Grinding: Indentation. + +Hardcopy + Hardcopy means printed output. Emacs has commands for making + printed listings of text in Emacs buffers. *Note Hardcopy::. + + + You can type at any time to ask what options you have, or + to ask what any command does. is really `Control-h'. + *Note Help::. + +Inbox + An inbox is a file in which mail is delivered by the operating + system. Some mail handlers transfers mail from inboxes to mail + files (q.v.) in which the mail is then stored permanently or until + explicitly deleted. + +Indentation + Indentation means blank space at the beginning of a line. Most + programming languages have conventions for using indentation to + illuminate the structure of the program, and Emacs has special + features to help you set up the correct indentation. *Note + Indentation::. + +Insertion + Insertion means copying text into the buffer, either from the + keyboard or from some other place in Emacs. + +Justification + Justification means adding extra spaces to lines of text to make + them come exactly to a specified width. *Note Justification: + Filling. + +Keyboard Macros + Keyboard macros are a way of defining new Emacs commands from + sequences of existing ones, with no need to write a Lisp program. + *Note Keyboard Macros::. + +Key + A key is a sequence of characters that, when input to Emacs, + specify or begin to specify a single action for Emacs to perform. + That is, the sequence is considered a single unit. If the key is + enough to specify one action, it is a complete key (q.v.); if it + is less than enough, it is a prefix key (q.v.). *Note + Keystrokes::. + +Keymap + The keymap is the data structure that records the bindings (q.v.) + of keys to the commands that they run. For example, the keymap + binds the character `C-n' to the command function `next-line'. + *Note Keymaps::. + +Kill Ring + The kill ring is the place where all text you have killed recently + is saved. You can re-insert any of the killed text still in the + ring; this is called yanking (q.v.). *Note Yanking::. + +Killing + Killing means erasing text and saving it on the kill ring so it + can be yanked (q.v.) later. Some other systems call this + "cutting." Most Emacs commands to erase text do killing, as + opposed to deletion (q.v.). *Note Killing::. + +Killing Jobs + Killing a job (such as, an invocation of Emacs) means making it + cease to exist. Any data within it, if not saved in a file, is + lost. *Note Exiting::. + +List + A list is, approximately, a text string beginning with an open + parenthesis and ending with the matching close parenthesis. In C + mode and other non-Lisp modes, groupings surrounded by other kinds + of matched delimiters appropriate to the language, such as braces, + are also considered lists. Emacs has special commands for many + operations on lists. *Note Lists::. + +Local + Local means `in effect only in a particular context'; the relevant + kind of context is a particular function execution, a particular + buffer, or a particular major mode. Local is the opposite of + `global' (q.v.). Specific uses of `local' in Emacs terminology + appear below. + +Local Abbrev + A local abbrev definition is effective only if a particular major + mode is selected. In that major mode, it overrides any global + definition for the same abbrev. *Note Abbrevs::. + +Local Keymap + A local keymap is used in a particular major mode; the key bindings + (q.v.) in the current local keymap override global bindings of the + same keys. *Note Keymaps::. + +Local Variable + A local value of a variable (q.v.) applies to only one buffer. + *Note Locals::. + +M- + `M-' in the name of a character is an abbreviation for , one + of the modifier keys that can accompany any character. *Note + Keystrokes::. + +M-C- + `M-C-' in the name of a character is an abbreviation for + Control-Meta; it means the same thing as `C-M-'. If your terminal + lacks a real key, you type a Control-Meta character by + typing and then typing the corresponding Control character. + *Note C-M-: Keystrokes. + +M-x + `M-x' is the key which is used to call an Emacs command by name. + You use it to call commands that are not bound to keys. *Note + M-x::. + +Mail + Mail means messages sent from one user to another through the + computer system, to be read at the recipient's convenience. Emacs + has commands for composing and sending mail, and for reading and + editing the mail you have received. *Note Sending Mail::. + +Major Mode + The major modes are a mutually exclusive set of options each of + which configures Emacs for editing a certain sort of text. + Ideally, each programming language has its own major mode. *Note + Major Modes::. + +Mark + The mark points to a position in the text. It specifies one end + of the region (q.v.), point being the other end. Many commands + operate on the whole region, that is, all the text from point to + the mark. *Note Mark::. + +Mark Ring + The mark ring is used to hold several recent previous locations of + the mark, just in case you want to move back to them. *Note Mark + Ring::. + +Message + See `mail'. + +Meta + Meta is the name of a modifier bit which a command character may + have. It is present in a character if the character is typed with + the key held down. Such characters are given names that + start with `Meta-'. For example, `Meta-<' is typed by holding down + and at the same time typing `<' (which itself is done, on + most terminals, by holding down and typing `,'). *Note + Meta: Keystrokes. + +Meta Character + A Meta character is one whose character code includes the Meta bit. + +Minibuffer + The minibuffer is the window that Emacs displays inside the echo + area (q.v.) when it prompts you for arguments to commands. *Note + Minibuffer::. + +Minor Mode + A minor mode is an optional feature of Emacs which can be switched + on or off independent of the major mode. Each minor mode has a + command to turn it on or off. *Note Minor Modes::. + +Mode Line + The mode line is the line at the bottom of each text window (q.v.), + which gives status information on the buffer displayed in that + window. *Note Mode Line::. + +Modified Buffer + A buffer (q.v.) is modified if its text has been changed since the + last time the buffer was saved (or since it was created, if it has + never been saved). *Note Saving::. + +Moving Text + Moving text means erasing it from one place and inserting it in + another. This is done by killing (q.v.) and then yanking (q.v.). + *Note Killing::. + +Named Mark + A named mark is a register (q.v.) in its role of recording a + location in text so that you can move point to that location. + *Note Registers::. + +Narrowing + Narrowing means creating a restriction (q.v.) that limits editing + in the current buffer to only a part of the text in the buffer. + Text outside that part is inaccessible to the user until the + boundaries are widened again, but it is still there, and saving + the file saves the invisible text. *Note Narrowing::. + +Newline + characters in the buffer terminate lines of text and are + called newlines. *Note Newline: Keystrokes. + +Numeric Argument + A numeric argument is a number, specified before a command, to + change the effect of the command. Often the numeric argument + serves as a repeat count. *Note Arguments::. + +Option + An option is a variable (q.v.) that allows you to customize Emacs + by giving it a new value. *Note Variables::. + +Overwrite Mode + Overwrite mode is a minor mode. When it is enabled, ordinary text + characters replace the existing text after point rather than + pushing it to the right. *Note Minor Modes::. + +Page + A page is a unit of text, delimited by formfeed characters (ASCII + Control-L, code 014) coming at the beginning of a line. Some Emacs + commands are provided for moving over and operating on pages. + *Note Pages::. + +Paragraphs + Paragraphs are the medium-size unit of English text. There are + special Emacs commands for moving over and operating on paragraphs. + *Note Paragraphs::. + +Parsing + We say that Emacs parses words or expressions in the text being + edited. Really, all it knows how to do is find the other end of a + word or expression. *Note Syntax::. + +Point + Point is the place in the buffer at which insertion and deletion + occur. Point is considered to be between two characters, not at + one character. The terminal's cursor (q.v.) indicates the + location of point. *Note Point: Basic. + +Prefix Key + A prefix key is a key (q.v.) whose sole function is to introduce a + set of multi-character keys. `Control-x' is an example of a prefix + key; any two-character sequence starting with `C-x' is also a + legitimate key. *Note Keystrokes::. + +Prompt + A prompt is text printed to ask the user for input. Printing a + prompt is called prompting. Emacs prompts always appear in the + echo area (q.v.). One kind of prompting happens when the + minibuffer is used to read an argument (*note Minibuffer::); the + echoing which happens when you pause in the middle of typing a + multi-character key is also a kind of prompting (*note Echo + Area::). + +Quitting + Quitting means cancelling a partially typed command or a running + command, using `C-g'. *Note Quitting::. + +Quoting + Quoting means depriving a character of its usual special + significance. In Emacs this is usually done with `Control-q'. + What constitutes special significance depends on the context and + on convention. For example, an "ordinary" character as an Emacs + command inserts itself; so in this context, a special character is + any character that does not normally insert itself (such as , + for example), and quoting it makes it insert itself as if it were + not special. Not all contexts allow quoting. *Note Quoting: + Basic. + +Read-only Buffer + A read-only buffer is one whose text you are not allowed to change. + Normally Emacs makes buffers read-only when they contain text which + has a special significance to Emacs, such as Dired buffers. + Visiting a file that is write-protected also makes a read-only + buffer. *Note Buffers::. + +Recursive Editing Level + A recursive editing level is a state in which part of the + execution of a command involves asking the user to edit some text. + This text may or may not be the same as the text to which the + command was applied. The mode line indicates recursive editing + levels with square brackets (`[' and `]'). *Note Recursive Edit::. + +Redisplay + Redisplay is the process of correcting the image on the screen to + correspond to changes that have been made in the text being edited. + *Note Redisplay: Frame. + +Regexp + See `regular expression'. + +Region + The region is the text between point (q.v.) and the mark (q.v.). + Many commands operate on the text of the region. *Note Region: + Mark. + +Registers + Registers are named slots in which text or buffer positions or + rectangles can be saved for later use. *Note Registers::. + +Regular Expression + A regular expression is a pattern that can match various text + strings; for example, `l[0-9]+' matches `l' followed by one or more + digits. *Note Regexps::. + +Replacement + See `global substitution'. + +Restriction + A buffer's restriction is the amount of text, at the beginning or + the end of the buffer, that is temporarily invisible and + inaccessible. Giving a buffer a nonzero amount of restriction is + called narrowing (q.v.). *Note Narrowing::. + + + is the character than runs the command to insert a newline + into the text. It is also used to terminate most arguments read + in the minibuffer (q.v.). *Note Return: Keystrokes. + +Saving + Saving a buffer means copying its text into the file that was + visited (q.v.) in that buffer. To actually change a file you have + edited in Emacs, you have to save it. *Note Saving::. + +Scrolling + Scrolling means shifting the text in the Emacs window to make a + different part of the buffer visible. *Note Scrolling: Display. + +Searching + Searching means moving point to the next occurrence of a specified + string. *Note Search::. + +Selecting + Selecting a buffer means making it the current (q.v.) buffer. + *Note Selecting: Buffers. + +Self-documentation + Self-documentation is the feature of Emacs which can tell you what + any command does, or can give you a list of all commands related + to a topic you specify. You ask for self-documentation with the + help character, `C-h'. *Note Help::. + +Sentences + Emacs has commands for moving by or killing by sentences. *Note + Sentences::. + +Sexp + An sexp (short for `s-expression,' itself short for `symbolic + expression') is the basic syntactic unit of Lisp in its textual + form: either a list, or Lisp atom. Many Emacs commands operate on + sexps. The term `sexp' is generalized to languages other than + Lisp to mean a syntactically recognizable expression. *Note + Sexps: Lists. + +Simultaneous Editing + Simultaneous editing means two users modifying the same file at + once. If simultaneous editing is not detected, you may lose your + work. Emacs detects all cases of simultaneous editing and warns + the user to investigate them. *Note Simultaneous Editing: + Interlocking. + +String + A string is a kind of Lisp data object which contains a sequence of + characters. Many Emacs variables are intended to have strings as + values. The Lisp syntax for a string consists of the characters in + the string with a `"' before and another `"' after. Write a `"' + that is part of the string as `\"' and a `\' that is part of the + string as `\\'. You can include all other characters, including + newline, just by writing them inside the string. You can also + include escape sequences as in C, such as `\n' for newline or + `\241' using an octal character code. + +String Substitution + See `global substitution'. + +Syntax Table + The syntax table tells Emacs which characters are part of a word, + which characters balance each other like parentheses, etc. *Note + Syntax::. + +Tag Table + A tag table is a file that serves as an index to the function + definitions in one or more other files. *Note Tags::. + +Termscript File + A termscript file contains a record of all characters Emacs sent to + the terminal. It is used for tracking down bugs in Emacs + redisplay. Emacs does not make a termscript file unless + explicitly instructed to do so. *Note Bugs::. + +Text + Text has two meanings (*note Text::): + + * Data consisting of a sequence of characters, as opposed to + binary numbers, images, graphics commands, executable + programs, and the like. The contents of an Emacs buffer are + always text in this sense. + + * Data consisting of written human language, as opposed to + programs, or something that follows the stylistic conventions + of human language. + +Top Level + Top level is the normal state of Emacs, in which you are editing + the text of the file you have visited. You are at top level + whenever you are not in a recursive editing level (q.v.) or the + minibuffer (q.v.), and not in the middle of a command. You can + get back to top level by aborting (q.v.) and quitting (q.v.). + *Note Quitting::. + +Transposition + Transposing two units of text means putting each one into the place + formerly occupied by the other. There are Emacs commands to + transpose two adjacent characters, words, sexps (q.v.), or lines + (*note Transpose::). + +Truncation + Truncating text lines in the display means leaving out any text on + a line that does not fit within the right margin of the window + displaying it. See also `continuation line'. *Note Truncation: + Basic. + +Undoing + Undoing means making your previous editing go in reverse, bringing + back the text that existed earlier in the editing session. *Note + Undo::. + +Variable + A variable is Lisp object that can store an arbitrary value. + Emacs uses some variables for internal purposes, and has others + (known as `options' (q.v.)) you can set to control the behavior of + Emacs. The variables used in Emacs that you are likely to be + interested in are listed in the Variables Index of this manual. + *Note Variables::, for information on variables. + +Visiting + Visiting a file means loading its contents into a buffer (q.v.) + where they can be edited. *Note Visiting::. + +Whitespace + Whitespace is any run of consecutive formatting characters (spaces, + tabs, newlines, and backspaces). + +Widening + Widening is removing any restriction (q.v.) on the current buffer; + it is the opposite of narrowing (q.v.). *Note Narrowing::. + +Window + Emacs divides the frame into one or more windows, each of which can + display the contents of one buffer (q.v.) at any time. *Note + Frame::, for basic information on how Emacs uses the frame. *Note + Windows::, for commands to control the use of windows. Note that if + you are running Emacs under X, terminology can be confusing: Each + Emacs frame occupies a separate X window and can, in turn, be + divided into different subwindows. + +Word Abbrev + Synonymous with `abbrev'. + +Word Search + Word search is searching for a sequence of words, considering the + punctuation between them as insignificant. *Note Word Search::. + +Yanking + Yanking means reinserting text previously killed. It can be used + to undo a mistaken kill, or for copying or moving text. Some other + systems call this "pasting". *Note Yanking::.  -File: xemacs.info, Node: Completion Example, Next: Completion Commands, Prev: Completion, Up: Completion - -Completion Example ------------------- - - A concrete example may help here. If you type `M-x au ', the - looks for alternatives (in this case, command names) that start -with `au'. There are several, including `auto-fill-mode' and -`auto-save-mode'--but they are all the same as far as `auto', so the -`au' in the minibuffer changes to `auto'. - - If you type again immediately, there are multiple -possibilities for the very next character--it could be any of `c-'--so -no more characters are added; instead, displays a list of all -possible completions in another window. - - If you go on to type `-f ', this sees `auto-f'. The only -command name starting this way is `auto-fill-mode', so completion fills -in the rest of that. You now have `auto-fill-mode' in the minibuffer -after typing just `au f '. Note that has this effect -because in the minibuffer it is bound to the command -`minibuffer-complete' when completion is available. - - -File: xemacs.info, Node: Completion Commands, Next: Strict Completion, Prev: Completion Example, Up: Completion - -Completion Commands -------------------- - - Here is a list of the completion commands defined in the minibuffer -when completion is available. - -`' - Complete the text in the minibuffer as much as possible - (`minibuffer-complete'). - -`' - Complete the minibuffer text, but don't go beyond one word - (`minibuffer-complete-word'). - -`' - Submit the text in the minibuffer as the argument, possibly - completing first as described below - (`minibuffer-complete-and-exit'). - -`?' - Print a list of all possible completions of the text in the - minibuffer (`minibuffer-list-completions'). - -`' - Select the highlighted text under the mouse as a minibuffer - response. When the minibuffer is being used to prompt the user - for a completion, any valid completions which are visible on the - screen will be highlighted when the mouse moves over them. - Clicking will select the highlighted completion and exit - the minibuffer. (`minibuf-select-highlighted-completion'). - - completes much like , but never goes beyond the next -hyphen or space. If you have `auto-f' in the minibuffer and type -, it finds that the completion is `auto-fill-mode', but it stops -completing after `fill-'. This gives `auto-fill-'. Another at -this point completes all the way to `auto-fill-mode'. in the -minibuffer when completion is available runs the command -`minibuffer-complete-word'. - - Here are some commands you can use to choose a completion from a -window that displays a list of completions: - -`button2up' - Clicking mouse button 2 on a completion in the list of possible - completions chooses that completion (`mouse-choose-completion'). - You normally use this command while point is in the minibuffer; - but you must click in the list of completions, not in the - minibuffer itself. - -`' -`M-v' - Typing or `M-v', while in the minibuffer, selects the - window showing the completion list buffer - (`switch-to-completions'). This paves the way for using the - commands below. (Selecting that window in the usual ways has the - same effect, but this way is more convenient.) - -`' - Typing _in the completion list buffer_ chooses the - completion that point is in or next to (`choose-completion'). To - use this command, you must first switch windows to the window that - shows the list of completions. - -`' -`' -`C-f' - Typing the right-arrow key , or `C-f' _in the - completion list buffer_ moves point to the following completion - (`next-list-mode-item'). - -`' -`C-b' - Typing the left-arrow key or `C-b' _in the completion list - buffer_ moves point toward the beginning of the buffer, to the - previous completion (`previous-list-mode-item'). - - -File: xemacs.info, Node: Strict Completion, Next: Completion Options, Prev: Completion Commands, Up: Completion - -Strict Completion ------------------ - - There are three different ways that can work in completing -minibuffers, depending on how the argument will be used. - - * "Strict" completion is used when it is meaningless to give any - argument except one of the known alternatives. For example, when - `C-x k' reads the name of a buffer to kill, it is meaningless to - give anything but the name of an existing buffer. In strict - completion, refuses to exit if the text in the minibuffer - does not complete to an exact match. - - * "Cautious" completion is similar to strict completion, except that - exits only if the text was an exact match already, not - needing completion. If the text is not an exact match, does - not exit, but it does complete the text. If it completes to an - exact match, a second will exit. - - Cautious completion is used for reading file names for files that - must already exist. - - * "Permissive" completion is used when any string whatever is - meaningful, and the list of completion alternatives is just a - guide. For example, when `C-x C-f' reads the name of a file to - visit, any file name is allowed, in case you want to create a - file. In permissive completion, takes the text in the - minibuffer exactly as given, without completing it. - - The completion commands display a list of all possible completions in -a window whenever there is more than one possibility for the very next -character. Also, typing `?' explicitly requests such a list. If the -list of completions is long, you can scroll it with `C-M-v' (*note -Other Window::). +File: xemacs.info, Node: Manifesto, Next: Key Index, Prev: Glossary, Up: Top + +The GNU Manifesto +***************** + +What's GNU? GNU's Not Unix! +============================ + +GNU, which stands for GNU's Not Unix, is the name for the complete +Unix-compatible software system which I am writing so that I can give it +away free to everyone who can use it. Several other volunteers are +helping me. Contributions of time, money, programs, and equipment are +greatly needed. + + So far we have an Emacs text editor with Lisp for writing editor +commands, a source level debugger, a yacc-compatible parser generator, +a linker, and around 35 utilities. A shell (command interpreter) is +nearly completed. A new portable optimizing C compiler has compiled +itself and may be released this year. An initial kernel exists, but +many more features are needed to emulate Unix. When the kernel and +compiler are finished, it will be possible to distribute a GNU system +suitable for program development. We will use TeX as our text +formatter, but an nroff is being worked on. We will use the free, +portable X window system as well. After this we will add a portable +Common Lisp, an Empire game, a spreadsheet, and hundreds of other +things, plus online documentation. We hope to supply, eventually, +everything useful that normally comes with a Unix system, and more. + + GNU will be able to run Unix programs, but will not be identical to +Unix. We will make all improvements that are convenient, based on our +experience with other operating systems. In particular, we plan to +have longer filenames, file version numbers, a crashproof file system, +filename completion perhaps, terminal-independent display support, and +perhaps eventually a Lisp-based window system through which several +Lisp programs and ordinary Unix programs can share a screen. Both C +and Lisp will be available as system programming languages. We will +try to support UUCP, MIT Chaosnet, and Internet protocols for +communication. + + GNU is aimed initially at machines in the 68000/16000 class with +virtual memory, because they are the easiest machines to make it run +on. The extra effort to make it run on smaller machines will be left +to someone who wants to use it on them. + + To avoid horrible confusion, please pronounce the `G' in the word +`GNU' when it is the name of this project. + +Why I Must Write GNU +==================== + +I consider that the golden rule requires that if I like a program I must +share it with other people who like it. Software sellers want to divide +the users and conquer them, making each user agree not to share with +others. I refuse to break solidarity with other users in this way. I +cannot in good conscience sign a nondisclosure agreement or a software +license agreement. For years I worked within the Artificial +Intelligence Lab to resist such tendencies and other inhospitalities, +but eventually they had gone too far: I could not remain in an +institution where such things are done for me against my will. + + So that I can continue to use computers without dishonor, I have +decided to put together a sufficient body of free software so that I +will be able to get along without any software that is not free. I +have resigned from the AI lab to deny MIT any legal excuse to prevent +me from giving GNU away. + +Why GNU Will Be Compatible With Unix +==================================== + +Unix is not my ideal system, but it is not too bad. The essential +features of Unix seem to be good ones, and I think I can fill in what +Unix lacks without spoiling them. And a system compatible with Unix +would be convenient for many other people to adopt. + +How GNU Will Be Available +========================= - -File: xemacs.info, Node: Completion Options, Prev: Strict Completion, Up: Completion - -Completion Options ------------------- - - When completion is done on file names, certain file names are usually -ignored. The variable `completion-ignored-extensions' contains a list -of strings; a file whose name ends in any of those strings is ignored -as a possible completion. The standard value of this variable has -several elements including `".o"', `".elc"', `".dvi"' and `"~"'. The -effect is that, for example, `foo' can complete to `foo.c' even though -`foo.o' exists as well. However, if _all_ the possible completions end -in "ignored" strings, then they are not ignored. Ignored extensions do -not apply to lists of completions--those always mention all possible -completions. - - If a completion command finds the next character is undetermined, it -automatically displays a list of all possible completions. If the -variable `completion-auto-help' is set to `nil', this does not happen, -and you must type `?' to display the possible completions. - - If the variable `minibuffer-confirm-incomplete' is set to `t', then -in contexts where `completing-read' allows answers that are not valid -completions, an extra must be typed to confirm the response. -This is helpful for catching typos. - - Icomplete mode presents a constantly-updated display that tells you -what completions are available for the text you've entered so far. The -command to enable or disable this minor mode is `M-x icomplete-mode'. +GNU is not in the public domain. Everyone will be permitted to modify +and redistribute GNU, but no distributor will be allowed to restrict its +further redistribution. That is to say, proprietary modifications will +not be allowed. I want to make sure that all versions of GNU remain +free. + +Why Many Other Programmers Want to Help +======================================= + +I have found many other programmers who are excited about GNU and want +to help. + + Many programmers are unhappy about the commercialization of system +software. It may enable them to make more money, but it requires them +to feel in conflict with other programmers in general rather than feel +as comrades. The fundamental act of friendship among programmers is the +sharing of programs; marketing arrangements now typically used +essentially forbid programmers to treat others as friends. The +purchaser of software must choose between friendship and obeying the +law. Naturally, many decide that friendship is more important. But +those who believe in law often do not feel at ease with either choice. +They become cynical and think that programming is just a way of making +money. + + By working on and using GNU rather than proprietary programs, we can +be hospitable to everyone and obey the law. In addition, GNU serves as +an example to inspire and a banner to rally others to join us in +sharing. This can give us a feeling of harmony which is impossible if +we use software that is not free. For about half the programmers I +talk to, this is an important happiness that money cannot replace. + +How You Can Contribute +====================== + +I am asking computer manufacturers for donations of machines and money. +I'm asking individuals for donations of programs and work. + + One consequence you can expect if you donate machines is that GNU +will run on them at an early date. The machines should be complete, +ready-to-use systems, approved for use in a residential area, and not +in need of sophisticated cooling or power. + + I have found very many programmers eager to contribute part-time +work for GNU. For most projects, such part-time distributed work would +be very hard to coordinate; the independently-written parts would not +work together. But for the particular task of replacing Unix, this +problem is absent. A complete Unix system contains hundreds of utility +programs, each of which is documented separately. Most interface +specifications are fixed by Unix compatibility. If each contributor +can write a compatible replacement for a single Unix utility, and make +it work properly in place of the original on a Unix system, then these +utilities will work right when put together. Even allowing for Murphy +to create a few unexpected problems, assembling these components will +be a feasible task. (The kernel will require closer communication and +will be worked on by a small, tight group.) + + If I get donations of money, I may be able to hire a few people full +or part time. The salary won't be high by programmers' standards, but +I'm looking for people for whom building community spirit is as +important as making money. I view this as a way of enabling dedicated +people to devote their full energies to working on GNU by sparing them +the need to make a living in another way. + +Why All Computer Users Will Benefit +=================================== + +Once GNU is written, everyone will be able to obtain good system +software free, just like air. + + This means much more than just saving everyone the price of a Unix +license. It means that much wasteful duplication of system programming +effort will be avoided. This effort can go instead into advancing the +state of the art. + + Complete system sources will be available to everyone. As a result, +a user who needs changes in the system will always be free to make them +himself, or hire any available programmer or company to make them for +him. Users will no longer be at the mercy of one programmer or company +which owns the sources and is in sole position to make changes. + + Schools will be able to provide a much more educational environment +by encouraging all students to study and improve the system code. +Harvard's computer lab used to have the policy that no program could be +installed on the system if its sources were not on public display, and +upheld it by actually refusing to install certain programs. I was very +much inspired by this. + + Finally, the overhead of considering who owns the system software +and what one is or is not entitled to do with it will be lifted. + + Arrangements to make people pay for using a program, including +licensing of copies, always incur a tremendous cost to society through +the cumbersome mechanisms necessary to figure out how much (that is, +which programs) a person must pay for. And only a police state can +force everyone to obey them. Consider a space station where air must +be manufactured at great cost: charging each breather per liter of air +may be fair, but wearing the metered gas mask all day and all night is +intolerable even if everyone can afford to pay the air bill. And the +TV cameras everywhere to see if you ever take the mask off are +outrageous. It's better to support the air plant with a head tax and +chuck the masks. + + Copying all or parts of a program is as natural to a programmer as +breathing, and as productive. It ought to be as free. + +Some Easily Rebutted Objections to GNU's Goals +============================================== + + "Nobody will use it if it is free, because that means they can't + rely on any support." + + "You have to charge for the program to pay for providing the + support." + + If people would rather pay for GNU plus service than get GNU free +without service, a company to provide just service to people who have +obtained GNU free ought to be profitable. + + We must distinguish between support in the form of real programming +work and mere handholding. The former is something one cannot rely on +from a software vendor. If your problem is not shared by enough +people, the vendor will tell you to get lost. + + If your business needs to be able to rely on support, the only way +is to have all the necessary sources and tools. Then you can hire any +available person to fix your problem; you are not at the mercy of any +individual. With Unix, the price of sources puts this out of +consideration for most businesses. With GNU this will be easy. It is +still possible for there to be no available competent person, but this +problem cannot be blamed on distribution arrangements. GNU does not +eliminate all the world's problems, only some of them. + + Meanwhile, the users who know nothing about computers need +handholding: doing things for them which they could easily do +themselves but don't know how. + + Such services could be provided by companies that sell just +hand-holding and repair service. If it is true that users would rather +spend money and get a product with service, they will also be willing +to buy the service having got the product free. The service companies +will compete in quality and price; users will not be tied to any +particular one. Meanwhile, those of us who don't need the service +should be able to use the program without paying for the service. + + "You cannot reach many people without advertising, and you must + charge for the program to support that." + + "It's no use advertising a program people can get free." + + There are various forms of free or very cheap publicity that can be +used to inform numbers of computer users about something like GNU. But +it may be true that one can reach more microcomputer users with +advertising. If this is really so, a business which advertises the +service of copying and mailing GNU for a fee ought to be successful +enough to pay for its advertising and more. This way, only the users +who benefit from the advertising pay for it. + + On the other hand, if many people get GNU from their friends, and +such companies don't succeed, this will show that advertising was not +really necessary to spread GNU. Why is it that free market advocates +don't want to let the free market decide this? + + "My company needs a proprietary operating system to get a + competitive edge." + + GNU will remove operating system software from the realm of +competition. You will not be able to get an edge in this area, but +neither will your competitors be able to get an edge over you. You and +they will compete in other areas, while benefitting mutually in this +one. If your business is selling an operating system, you will not +like GNU, but that's tough on you. If your business is something else, +GNU can save you from being pushed into the expensive business of +selling operating systems. + + I would like to see GNU development supported by gifts from many +manufacturers and users, reducing the cost to each. + + "Don't programmers deserve a reward for their creativity?" + + If anything deserves a reward, it is social contribution. +Creativity can be a social contribution, but only in so far as society +is free to use the results. If programmers deserve to be rewarded for +creating innovative programs, by the same token they deserve to be +punished if they restrict the use of these programs. + + "Shouldn't a programmer be able to ask for a reward for his + creativity?" + + There is nothing wrong with wanting pay for work, or seeking to +maximize one's income, as long as one does not use means that are +destructive. But the means customary in the field of software today +are based on destruction. + + Extracting money from users of a program by restricting their use of +it is destructive because the restrictions reduce the amount and the +ways that the program can be used. This reduces the amount of wealth +that humanity derives from the program. When there is a deliberate +choice to restrict, the harmful consequences are deliberate destruction. + + The reason a good citizen does not use such destructive means to +become wealthier is that, if everyone did so, we would all become +poorer from the mutual destructiveness. This is Kantian ethics; or, +the Golden Rule. Since I do not like the consequences that result if +everyone hoards information, I am required to consider it wrong for one +to do so. Specifically, the desire to be rewarded for one's creativity +does not justify depriving the world in general of all or part of that +creativity. + + "Won't programmers starve?" + + I could answer that nobody is forced to be a programmer. Most of us +cannot manage to get any money for standing on the street and making +faces. But we are not, as a result, condemned to spend our lives +standing on the street making faces, and starving. We do something +else. + + But that is the wrong answer because it accepts the questioner's +implicit assumption: that without ownership of software, programmers +cannot possibly be paid a cent. Supposedly it is all or nothing. + + The real reason programmers will not starve is that it will still be +possible for them to get paid for programming; just not paid as much as +now. + + Restricting copying is not the only basis for business in software. +It is the most common basis because it brings in the most money. If it +were prohibited, or rejected by the customer, software business would +move to other bases of organization which are now used less often. +There are always numerous ways to organize any kind of business. + + Probably programming will not be as lucrative on the new basis as it +is now. But that is not an argument against the change. It is not +considered an injustice that sales clerks make the salaries that they +now do. If programmers made the same, that would not be an injustice +either. (In practice they would still make considerably more than +that.) + + "Don't people have a right to control how their creativity is + used?" + + "Control over the use of one's ideas" really constitutes control over +other people's lives; and it is usually used to make their lives more +difficult. + + People who have studied the issue of intellectual property rights +carefully (such as lawyers) say that there is no intrinsic right to +intellectual property. The kinds of supposed intellectual property +rights that the government recognizes were created by specific acts of +legislation for specific purposes. + + For example, the patent system was established to encourage +inventors to disclose the details of their inventions. Its purpose was +to help society rather than to help inventors. At the time, the life +span of 17 years for a patent was short compared with the rate of +advance of the state of the art. Since patents are an issue only among +manufacturers, for whom the cost and effort of a license agreement are +small compared with setting up production, the patents often do not do +much harm. They do not obstruct most individuals who use patented +products. + + The idea of copyright did not exist in ancient times, when authors +frequently copied other authors at length in works of non-fiction. This +practice was useful, and is the only way many authors' works have +survived even in part. The copyright system was created expressly for +the purpose of encouraging authorship. In the domain for which it was +invented--books, which could be copied economically only on a printing +press--it did little harm, and did not obstruct most of the individuals +who read the books. + + All intellectual property rights are just licenses granted by society +because it was thought, rightly or wrongly, that society as a whole +would benefit by granting them. But in any particular situation, we +have to ask: are we really better off granting such license? What kind +of act are we licensing a person to do? + + The case of programs today is very different from that of books a +hundred years ago. The fact that the easiest way to copy a program is +from one neighbor to another, the fact that a program has both source +code and object code which are distinct, and the fact that a program is +used rather than read and enjoyed, combine to create a situation in +which a person who enforces a copyright is harming society as a whole +both materially and spiritually; in which a person should not do so +regardless of whether the law enables him to. + + "Competition makes things get done better." + + The paradigm of competition is a race: by rewarding the winner, we +encourage everyone to run faster. When capitalism really works this +way, it does a good job; but its defenders are wrong in assuming it +always works this way. If the runners forget why the reward is offered +and become intent on winning, no matter how, they may find other +strategies--such as, attacking other runners. If the runners get into +a fist fight, they will all finish late. + + Proprietary and secret software is the moral equivalent of runners +in a fist fight. Sad to say, the only referee we've got does not seem +to object to fights; he just regulates them ("For every ten yards you +run, you can fire one shot"). He really ought to break them up, and +penalize runners for even trying to fight. + + "Won't everyone stop programming without a monetary incentive?" + + Actually, many people will program with absolutely no monetary +incentive. Programming has an irresistible fascination for some +people, usually the people who are best at it. There is no shortage of +professional musicians who keep at it even though they have no hope of +making a living that way. + + But really this question, though commonly asked, is not appropriate +to the situation. Pay for programmers will not disappear, only become +less. So the right question is, will anyone program with a reduced +monetary incentive? My experience shows that they will. + + For more than ten years, many of the world's best programmers worked +at the Artificial Intelligence Lab for far less money than they could +have had anywhere else. They got many kinds of non-monetary rewards: +fame and appreciation, for example. And creativity is also fun, a +reward in itself. + + Then most of them left when offered a chance to do the same +interesting work for a lot of money. + + What the facts show is that people will program for reasons other +than riches; but if given a chance to make a lot of money as well, they +will come to expect and demand it. Low-paying organizations do poorly +in competition with high-paying ones, but they do not have to do badly +if the high-paying ones are banned. + + "We need the programmers desperately. If they demand that we stop + helping our neighbors, we have to obey." + + You're never so desperate that you have to obey this sort of demand. +Remember: millions for defense, but not a cent for tribute! + + "Programmers need to make a living somehow." + + In the short run, this is true. However, there are plenty of ways +that programmers could make a living without selling the right to use a +program. This way is customary now because it brings programmers and +businessmen the most money, not because it is the only way to make a +living. It is easy to find other ways if you want to find them. Here +are a number of examples. + + A manufacturer introducing a new computer will pay for the porting of +operating systems onto the new hardware. + + The sale of teaching, hand-holding, and maintenance services could +also employ programmers. + + People with new ideas could distribute programs as freeware and ask +for donations from satisfied users or sell hand-holding services. I +have met people who are already working this way successfully. + + Users with related needs can form users' groups and pay dues. A +group would contract with programming companies to write programs that +the group's members would like to use. + + All sorts of development can be funded with a Software Tax: + + Suppose everyone who buys a computer has to pay a certain percent + of the price as a software tax. The government gives this to an + agency like the NSF to spend on software development. + + But if the computer buyer makes a donation to software development + himself, he can take a credit against the tax. He can donate to + the project of his own choosing--often, chosen because he hopes to + use the results when + + it is done. He can take a credit for any amount of donation up to + the total tax he had to pay. + + The total tax rate could be decided by a vote of the payers of the + tax, weighted according to the amount they will be taxed on. + + The consequences: + + * The computer-using community supports software development. + + * This community decides what level of support is needed. + + * Users who care which projects their share is spent on can + choose this for themselves. - -File: xemacs.info, Node: Minibuffer History, Next: Repetition, Prev: Completion, Up: Minibuffer - -Minibuffer History -================== - - Every argument that you enter with the minibuffer is saved on a -"minibuffer history list" so that you can use it again later in another -argument. Special commands load the text of an earlier argument in the -minibuffer. They discard the old minibuffer contents, so you can think -of them as moving through the history of previous arguments. - -`' -`M-p' - Move to the next earlier argument string saved in the minibuffer - history (`previous-history-element'). - -`' -`M-n' - Move to the next later argument string saved in the minibuffer - history (`next-history-element'). - -`M-r REGEXP ' - Move to an earlier saved argument in the minibuffer history that - has a match for REGEXP (`previous-matching-history-element'). - -`M-s REGEXP ' - Move to a later saved argument in the minibuffer history that has a - match for REGEXP (`next-matching-history-element'). - - The simplest way to reuse the saved arguments in the history list is -to move through the history list one element at a time. While in the -minibuffer, use `M-p' or up-arrow (`previous-history-element') to "move -to" the next earlier minibuffer input, and use `M-n' or down-arrow -(`next-history-element') to "move to" the next later input. - - The previous input that you fetch from the history entirely replaces -the contents of the minibuffer. To use it as the argument, exit the -minibuffer as usual with . You can also edit the text before you -reuse it; this does not change the history element that you "moved" to, -but your new argument does go at the end of the history list in its own -right. - - For many minibuffer arguments there is a "default" value. In some -cases, the minibuffer history commands know the default value. Then you -can insert the default value into the minibuffer as text by using `M-n' -to move "into the future" in the history. - - There are also commands to search forward or backward through the -history; they search for history elements that match a regular -expression that you specify with the minibuffer. `M-r' -(`previous-matching-history-element') searches older elements in the -history, while `M-s' (`next-matching-history-element') searches newer -elements. By special dispensation, these commands can use the -minibuffer to read their arguments even though you are already in the -minibuffer when you issue them. As with incremental searching, an -uppercase letter in the regular expression makes the search -case-sensitive (*note Search Case::). - - All uses of the minibuffer record your input on a history list, but -there are separate history lists for different kinds of arguments. For -example, there is a list for file names, used by all the commands that -read file names. - - There are several other very specific history lists, including one -for command names read by `M-x', one for buffer names, one for arguments -of commands like `query-replace', and one for compilation commands read -by `compile'. Finally, there is one "miscellaneous" history list that -most minibuffer arguments use. + In the long run, making programs free is a step toward the +post-scarcity world, where nobody will have to work very hard just to +make a living. People will be free to devote themselves to activities +that are fun, such as programming, after spending the necessary ten +hours a week on required tasks such as legislation, family counseling, +robot repair, and asteroid prospecting. There will be no need to be +able to make a living from programming. - -File: xemacs.info, Node: Repetition, Prev: Minibuffer History, Up: Minibuffer - -Repeating Minibuffer Commands -============================= - - Every command that uses the minibuffer at least once is recorded on a -special history list, together with the values of its arguments, so that -you can repeat the entire command. In particular, every use of `M-x' -is recorded there, since `M-x' uses the minibuffer to read the command -name. - -`C-x ' - Re-execute a recent minibuffer command (`repeat-complex-command'). - -`M-p' - Within `C-x ', move to previous recorded command - (`previous-history-element'). - -`M-n' - Within `C-x ', move to the next (more recent) recorded - command (`next-history-element'). - -`M-x list-command-history' - Display the entire command history, showing all the commands `C-x - ' can repeat, most recent first. - - `C-x ' is used to re-execute a recent minibuffer-using -command. With no argument, it repeats the last such command. A -numeric argument specifies which command to repeat; one means the last -one, and larger numbers specify earlier ones. - - `C-x ' works by turning the previous command into a Lisp -expression and then entering a minibuffer initialized with the text for -that expression. If you type just , the command is repeated as -before. You can also change the command by editing the Lisp -expression. Whatever expression you finally submit is what will be -executed. The repeated command is added to the front of the command -history unless it is identical to the most recently executed command -already there. - - Even if you don't understand Lisp syntax, it will probably be obvious -which command is displayed for repetition. If you do not change the -text, you can be sure the command will repeat exactly as before. - - If you are in the minibuffer for `C-x ' and the command -shown to you is not the one you want to repeat, you can move around the -list of previous commands using `M-n' and `M-p'. `M-p' replaces the -contents of the minibuffer with the next earlier recorded command, and -`M-n' replaces it with the next later command. After finding the -desired previous command, you can edit its expression and then resubmit -it by typing . Any editing you have done on the command to be -repeated is lost if you use `M-n' or `M-p'. - - `M-n' and `M-p' are specially defined within `C-x ' to -run the commands `previous-history-element' and `next-history-element'. - - The list of previous commands using the minibuffer is stored as a -Lisp list in the variable `command-history'. Each element of the list -is a Lisp expression which describes one command and its arguments. -Lisp programs can reexecute a command by feeding the corresponding -`command-history' element to `eval'. + We have already greatly reduced the amount of work that the whole +society must do for its actual productivity, but only a little of this +has translated itself into leisure for workers because much +nonproductive activity is required to accompany productive activity. +The main causes of this are bureaucracy and isometric struggles against +competition. Free software will greatly reduce these drains in the +area of software production. We must do this, in order for technical +gains in productivity to translate into less work for us.  -File: xemacs.info, Node: M-x, Next: Help, Prev: Minibuffer, Up: Top - -Running Commands by Name -************************ - - The Emacs commands that are used often or that must be quick to type -are bound to keys--short sequences of characters--for convenient use. -Other Emacs commands that are used more rarely are not bound to keys; -to run them, you must refer to them by name. - - A command name consists, by convention, of one or more words, -separated by hyphens: for example, `auto-fill-mode' or `manual-entry'. -The use of English words makes the command name easier to remember than -a key made up of obscure characters, even though it results in more -characters to type. You can run any command by name, even if it can be -run by keys as well. +File: xemacs.info, Node: Key Index, Next: Command Index, Prev: Manifesto, Up: Top - To run a command by name, start with `M-x', then type the command -name, and finish with . `M-x' uses the minibuffer to read the -command name. exits the minibuffer and runs the command. +Key (Character) Index +********************* - Emacs uses the minibuffer for reading input for many different -purposes; on this occasion, the string `M-x' is displayed at the -beginning of the minibuffer as a "prompt" to remind you that your input -should be the name of a command to be run. *Note Minibuffer::, for -full information on the features of the minibuffer. - - You can use completion to enter a command name. For example, to -invoke the command `forward-char', type: - - M-x forward-char - or - M-x fo c - -After you type in `M-x fo TAB' emacs will give you a possible list of -completions from which you can choose. Note that `forward-char' is the -same command that you invoke with the key `C-f'. You can call any -command (interactively callable function) defined in Emacs by its name -using `M-x' regardless of whether or not any keys are bound to it. - - If you type `C-g' while Emacs reads the command name, you cancel the -`M-x' command and get out of the minibuffer, ending up at top level. - - To pass a numeric argument to a command you are invoking with `M-x', -specify the numeric argument before the `M-x'. `M-x' passes the -argument along to the function that it calls. The argument value -appears in the prompt while the command name is being read. - - You can use the command `M-x interactive' to specify a way of -parsing arguments for interactive use of a function. For example, -write: - - (defun foo (arg) "Doc string" (interactive "p") ...use arg...) - - to make `arg' be the prefix argument when `foo' is called as a -command. The call to `interactive' is actually a declaration rather -than a function; it tells `call-interactively' how to read arguments to -pass to the function. When actually called, `interactive' returns -`nil'. - - The argument of INTERACTIVE is usually a string containing a code -letter followed by a prompt. Some code letters do not use I/O to get -the argument and do not need prompts. To prompt for multiple arguments, -you must provide a code letter, its prompt, a newline, and another code -letter, and so forth. If the argument is not a string, it is evaluated -to get a list of arguments to pass to the function. If you do not -provide an argument to `interactive', no arguments are passed when -calling interactively. - - Available code letters are: - -`a' - Function name: symbol with a function definition - -`b' - Name of existing buffer - -`B' - Name of buffer, possibly nonexistent - -`c' - Character - -`C' - Command name: symbol with interactive function definition - -`d' - Value of point as number (does not do I/O) - -`D' - Directory name - -`e' - Last mouse event - -`f' - Existing file name - -`F' - Possibly nonexistent file name - -`k' - Key sequence (string) - -`m' - Value of mark as number (does not do I/O) - -`n' - Number read using minibuffer - -`N' - Prefix arg converted to number, or if none, do like code `n' - -`p' - Prefix arg converted to number (does not do I/O) - -`P' - Prefix arg in raw form (does not do I/O) - -`r' - Region: point and mark as two numeric arguments, smallest first - (does not do I/O) - -`s' - Any string - -`S' - Any symbol - -`v' - Variable name: symbol that is `user-variable-p' - -`x' - Lisp expression read but not evaluated - -`X' - Lisp expression read and evaluated - - In addition, if the string begins with `*', an error is signaled if -the buffer is read-only. This happens before reading any arguments. -If the string begins with `@', the window the mouse is over is selected -before anything else is done. You may use both `@' and `*'; they are -processed in the order that they appear. - - Normally, when describing a command that is run by name, we omit the - that is needed to terminate the name. Thus we may refer to `M-x -auto-fill-mode' rather than `M-x auto-fill-mode' . We mention the - only when it is necessary to emphasize its presence, for example, -when describing a sequence of input that contains a command name and -arguments that follow it. +* Menu: - `M-x' is defined to run the command `execute-extended-command', -which is responsible for reading the name of another command and -invoking it. +* ! (query-replace): Query Replace. +* " (TeX mode): TeX Editing. +* , (query-replace): Query Replace. +* . (Calendar mode): Specified Dates. +* . (query-replace): Query Replace. +* ? (Calendar mode): General Calendar. +* ^ (query-replace): Query Replace. +* a (Calendar mode): Holidays. +* BS: Inserting Text. +* button1: Intro to Keystrokes. +* button1up: Intro to Keystrokes. +* button2: Intro to Keystrokes. +* button2up: Intro to Keystrokes. +* button3: Intro to Keystrokes. +* button3up: Intro to Keystrokes. +* C-<: Setting Mark. +* C->: Setting Mark. +* C-@ (Calendar mode): Mark and Region. +* C-\: Select Input Method. +* C-] <1>: Quitting. +* C-]: Recursive Edit. +* C-_: Undo. +* C-a: Moving Point. +* C-a (Calendar mode): Move to Beginning or End. +* C-b: Moving Point. +* C-b (Calendar mode): Calendar Unit Motion. +* C-c: Key Sequences. +* C-c ' (Picture mode): Insert in Picture. +* C-c . (Picture mode): Insert in Picture. +* C-c / (Picture mode): Insert in Picture. +* C-c ; (Fortran mode): Fortran Comments. +* C-c < (Picture mode): Insert in Picture. +* C-c > (Picture mode): Insert in Picture. +* C-c \ (Picture mode): Insert in Picture. +* C-c ^ (Picture mode): Insert in Picture. +* C-c ` (Picture mode): Insert in Picture. +* C-c C-\ (Shell mode): Shell Mode. +* C-c C-b (Outline mode): Outline Motion. +* C-c C-b (Picture mode): Insert in Picture. +* C-c C-b (TeX mode): TeX Print. +* C-c C-c (Edit Abbrevs): Editing Abbrevs. +* C-c C-c (Edit Tab Stops): Tab Stops. +* C-c C-c (Mail mode): Mail Mode. +* C-c C-c (Occur mode): Other Repeating Search. +* C-c C-c (Shell mode): Shell Mode. +* C-c C-d (Outline mode): Outline Visibility. +* C-c C-d (Picture mode): Basic Picture. +* C-c C-d (Shell mode): Shell Mode. +* C-c C-f (LaTeX mode): TeX Editing. +* C-c C-f (Outline mode): Outline Motion. +* C-c C-f (Picture mode): Insert in Picture. +* C-c C-f C-c (Mail mode): Mail Mode. +* C-c C-f C-s (Mail mode): Mail Mode. +* C-c C-f C-t (Mail mode): Mail Mode. +* C-c C-h (Outline mode): Outline Visibility. +* C-c C-i (Outline mode): Outline Visibility. +* C-c C-j (Term mode): Term Mode. +* C-c C-k (Picture mode): Rectangles in Picture. +* C-c C-k (Term mode): Term Mode. +* C-c C-k (TeX mode): TeX Print. +* C-c C-l (Calendar mode): General Calendar. +* C-c C-l (TeX mode): TeX Print. +* C-c C-n (Fortran mode): Fortran Motion. +* C-c C-n (Outline mode): Outline Motion. +* C-c C-o (Shell mode): Shell Mode. +* C-c C-p (Fortran mode): Fortran Motion. +* C-c C-p (Outline mode): Outline Motion. +* C-c C-p (TeX mode): TeX Print. +* C-c C-q (Mail mode): Mail Mode. +* C-c C-q (Term mode): Paging in Term. +* C-c C-q (TeX mode): TeX Print. +* C-c C-r (Fortran mode): Fortran Columns. +* C-c C-r (Shell mode): Shell Mode. +* C-c C-r (TeX mode): TeX Print. +* C-c C-s (Mail mode): Mail Mode. +* C-c C-u (Outline mode): Outline Motion. +* C-c C-u (Shell mode): Shell Mode. +* C-c C-w (Fortran mode): Fortran Columns. +* C-c C-w (Mail mode): Mail Mode. +* C-c C-w (Picture mode): Rectangles in Picture. +* C-c C-w (Shell mode): Shell Mode. +* C-c C-x (Picture mode): Rectangles in Picture. +* C-c C-y (Mail mode): Mail Mode. +* C-c C-y (Picture mode): Rectangles in Picture. +* C-c C-y (Shell mode): Shell Mode. +* C-c C-z (Shell mode): Shell Mode. +* C-c TAB (Picture mode): Tabs in Picture. +* C-c { (TeX mode): TeX Editing. +* C-c } (TeX mode): TeX Editing. +* C-d: Killing. +* C-d (Shell mode): Shell Mode. +* C-e: Moving Point. +* C-e (Calendar mode): Move to Beginning or End. +* C-END: Moving Point. +* C-f: Moving Point. +* C-f (Calendar mode): Calendar Unit Motion. +* C-g <1>: Quitting. +* C-g: Minibuffer. +* C-g (isearch-mode): Incremental Search. +* C-h <1>: Help. +* C-h: Key Sequences. +* C-h A: Apropos. +* C-h b: Misc Help. +* C-h c: Key Help. +* C-h C-\: Select Input Method. +* C-h C-c: Misc Help. +* C-h C-d: Misc Help. +* C-h C-f: Misc Help. +* C-h C-h: Help. +* C-h C-k: Misc Help. +* C-h C-w: Misc Help. +* C-h f: Documentation. +* C-h F: Misc Help. +* C-h f: Name Help. +* C-h h: Mule Intro. +* C-h I: Select Input Method. +* C-h i: Misc Help. +* C-h k: Key Help. +* C-h L: Language Environments. +* C-h l: Misc Help. +* C-h m: Misc Help. +* C-h n: Misc Help. +* C-h p: Library Keywords. +* C-h s: Syntax Change. +* C-h t <1>: Misc Help. +* C-h t: Basic. +* C-h v <1>: Examining. +* C-h v <2>: Documentation. +* C-h v: Name Help. +* C-h w: Name Help. +* C-HOME: Moving Point. +* C-k: Killing. +* C-l <1>: Scrolling. +* C-l: Moving Point. +* C-l (query-replace): Query Replace. +* C-LEFT: Moving Point. +* C-M-@ <1>: Lists. +* C-M-@: Marking Objects. +* C-M-\ <1>: Multi-line Indent. +* C-M-\: Indentation Commands. +* C-M-a: Defuns. +* C-M-a (Fortran mode): Fortran Motion. +* C-M-b: Lists. +* C-M-c: Recursive Edit. +* C-M-d: Lists. +* C-M-e: Defuns. +* C-M-e (Fortran mode): Fortran Motion. +* C-M-f: Lists. +* C-M-h <1>: Defuns. +* C-M-h: Marking Objects. +* C-M-h (Fortran mode): Fortran Motion. +* C-M-k <1>: Lists. +* C-M-k: Killing. +* C-M-n: Lists. +* C-M-o: Indentation Commands. +* C-M-p: Lists. +* C-M-q: Multi-line Indent. +* C-M-q (Fortran mode): ForIndent Commands. +* C-M-t <1>: Lists. +* C-M-t: Transpose. +* C-M-u: Lists. +* C-M-v <1>: Other Window. +* C-M-v: Minibuffer Edit. +* C-M-w: Appending Kills. +* C-M-x <1>: External Lisp. +* C-M-x: Lisp Eval. +* C-n: Moving Point. +* C-n (Calendar mode): Calendar Unit Motion. +* C-o: Blank Lines. +* C-p: Moving Point. +* C-p (Calendar mode): Calendar Unit Motion. +* C-q: Inserting Text. +* C-q (isearch-mode): Incremental Search. +* C-r: Incremental Search. +* C-r (isearch-mode): Incremental Search. +* C-r (query-replace): Query Replace. +* C-RIGHT: Moving Point. +* C-s: Incremental Search. +* C-s (isearch-mode): Incremental Search. +* C-SPC: Setting Mark. +* C-SPC (Calendar mode): Mark and Region. +* C-t <1>: Transpose. +* C-t: Moving Point. +* C-u: Arguments. +* C-u - C-x ;: Comments. +* C-u C-@: Mark Ring. +* C-u C-SPC: Mark Ring. +* C-u C-x v v: Editing with VC. +* C-u TAB: Multi-line Indent. +* C-v <1>: Scrolling. +* C-v: Moving Point. +* C-v (Calendar mode): Scroll Calendar. +* C-w: Killing. +* C-w (isearch-mode): Incremental Search. +* C-w (query-replace): Query Replace. +* C-x: Key Sequences. +* C-x $: Selective Display. +* C-x (: Basic Kbd Macro. +* C-x ): Basic Kbd Macro. +* C-x .: Fill Prefix. +* C-x 0: Change Window. +* C-x 1: Change Window. +* C-x 2: Split Window. +* C-x 3: Split Window. +* C-x 4: Pop Up Window. +* C-x 4 .: Find Tag. +* C-x 4 b: Select Buffer. +* C-x 4 d: Dired Enter. +* C-x 4 f: Visiting. +* C-x 4 m: Sending Mail. +* C-x 5 b: Select Buffer. +* C-x 5 C-f: Visiting. +* C-x ;: Comments. +* C-x <: Horizontal Scrolling. +* C-x < (Calendar mode): Scroll Calendar. +* C-x C: Coding Systems. +* C-x =: Position Info. +* C-x >: Horizontal Scrolling. +* C-x > (Calendar mode): Scroll Calendar. +* C-x [: Pages. +* C-x [ (Calendar mode): Calendar Unit Motion. +* C-x ]: Pages. +* C-x ] (Calendar mode): Calendar Unit Motion. +* C-x ^: Change Window. +* C-x `: Compilation. +* C-x a g: Defining Abbrevs. +* C-x a i g: Defining Abbrevs. +* C-x a i l: Defining Abbrevs. +* C-x a l: Defining Abbrevs. +* C-x b: Select Buffer. +* C-x C-b: List Buffers. +* C-x C-c: Exiting. +* C-x C-d: ListDir. +* C-x C-e: Lisp Eval. +* C-x C-l: Case. +* C-x C-o <1>: Killing. +* C-x C-o: Blank Lines. +* C-x C-p <1>: Pages. +* C-x C-p: Marking Objects. +* C-x C-q: Misc Buffer. +* C-x C-q (version control): Editing with VC. +* C-x C-s: Saving. +* C-x C-t: Transpose. +* C-x C-u: Case. +* C-x C-v: Visiting. +* C-x C-w: Saving. +* C-x C-x: Setting Mark. +* C-x C-x (Calendar mode): Mark and Region. +* C-x d: Dired Enter. +* C-x DEL <1>: Sentences. +* C-x DEL <2>: Kill Errors. +* C-x DEL: Killing. +* C-x e: Basic Kbd Macro. +* C-x ESC ESC: Repetition. +* C-x f: Fill Commands. +* C-x h: Marking Objects. +* C-x k: Kill Buffer. +* C-x l: Pages. +* C-x m: Sending Mail. +* C-x n n: Narrowing. +* C-x n w: Narrowing. +* C-x o: Other Window. +* C-x q: Kbd Macro Query. +* C-x r +: RegNumbers. +* C-x r b: Bookmarks. +* C-x r g: RegText. +* C-x r i: RegText. +* C-x r j: RegPos. +* C-x r l: Bookmarks. +* C-x r m: Bookmarks. +* C-x r n: RegNumbers. +* C-x r r: RegRect. +* C-x r s: RegText. +* C-x r SPC: RegPos. +* C-x r w: RegConfig. +* C-x RET: Mule Intro. +* C-x RET c: Specify Coding. +* C-x RET C-\: Select Input Method. +* C-x RET f: Specify Coding. +* C-x RET k: Specify Coding. +* C-x RET p: Specify Coding. +* C-x RET t: Specify Coding. +* C-x s: Saving. +* C-x TAB: Indentation Commands. +* C-x u: Undo. +* C-x v =: Old Versions. +* C-x v a: Change Logs and VC. +* C-x v c: Editing with VC. +* C-x v d: VC Status. +* C-x v h: Version Headers. +* C-x v i: Editing with VC. +* C-x v l: VC Status. +* C-x v r: Making Snapshots. +* C-x v s: Making Snapshots. +* C-x v u: Editing with VC. +* C-x v ~: Old Versions. +* C-x }: Change Window. +* C-y: Kill Ring. +* C-y (isearch-mode): Incremental Search. +* C-z: Exiting. +* control key: Intro to Keystrokes. +* d (Calendar mode): Diary Commands. +* DEL <1>: Program Modes. +* DEL <2>: Major Modes. +* DEL <3>: Kill Errors. +* DEL: Killing. +* DEL (isearch-mode): Incremental Search. +* DEL (query-replace): Query Replace. +* DOWN: Moving Point. +* END: Moving Point. +* ESC <1>: Meta Key. +* ESC: Key Sequences. +* ESC (query-replace): Query Replace. +* F1: Help. +* g CHAR (Calendar mode): From Other Calendar. +* g d (Calendar mode): Specified Dates. +* g m l (Calendar mode): Mayan Calendar. +* h (Calendar mode): Holidays. +* Help: Help. +* HOME: Moving Point. +* hyper key <1>: Super and Hyper Keys. +* hyper key <2>: Representing Keystrokes. +* hyper key: Intro to Keystrokes. +* i a (Calendar mode): Special Diary Entries. +* i b (Calendar mode): Special Diary Entries. +* i c (Calendar mode): Special Diary Entries. +* i d (Calendar mode): Adding to Diary. +* i m (Calendar mode): Adding to Diary. +* i w (Calendar mode): Adding to Diary. +* i y (Calendar mode): Adding to Diary. +* LEFT: Moving Point. +* LFD <1>: Basic Indent. +* LFD <2>: Major Modes. +* LFD: String Key Sequences. +* LFD (TeX mode): TeX Editing. +* m (Calendar mode): Diary Commands. +* M (Calendar mode): Lunar Phases. +* M-!: Single Shell. +* M-$: Spelling. +* M-%: Query Replace. +* M-': Expanding Abbrevs. +* M-(: Balanced Editing. +* M-): Balanced Editing. +* M-,: Tags Search. +* M--: Arguments. +* M-- M-c: Fixing Case. +* M-- M-l: Fixing Case. +* M-- M-u: Fixing Case. +* M-.: Find Tag. +* M-/: Dynamic Abbrevs. +* M-1: Arguments. +* M-:: Lisp Eval. +* M-;: Comments. +* M-<: Moving Point. +* M-< (Calendar mode): Move to Beginning or End. +* M-=: Position Info. +* M-= (Calendar mode): Mark and Region. +* M->: Moving Point. +* M-> (Calendar mode): Move to Beginning or End. +* M-?: Nroff Mode. +* M-@ <1>: Words. +* M-@: Marking Objects. +* M-\ <1>: Indentation Commands. +* M-\: Killing. +* M-^ <1>: Indentation Commands. +* M-^: Killing. +* M-a: Sentences. +* M-a (Calendar mode): Move to Beginning or End. +* M-b: Words. +* M-c: Case. +* M-C-r: Regexp Search. +* M-C-s: Regexp Search. +* M-d <1>: Words. +* M-d: Killing. +* M-DEL <1>: Words. +* M-DEL <2>: Kill Errors. +* M-DEL: Killing. +* M-e: Sentences. +* M-e (Calendar mode): Move to Beginning or End. +* M-f: Words. +* M-g: Fill Commands. +* M-h <1>: Paragraphs. +* M-h: Marking Objects. +* M-i: Tab Stops. +* M-k <1>: Sentences. +* M-k: Killing. +* M-l: Case. +* M-LFD: Comments. +* M-LFD (Fortran mode): ForIndent Commands. +* M-m: Indentation Commands. +* M-n <1>: Nroff Mode. +* M-n: Repetition. +* M-n (isearch-mode): Incremental Search. +* M-n (minibuffer history): Minibuffer History. +* M-n (Shell mode): Shell Mode. +* M-p <1>: Nroff Mode. +* M-p: Repetition. +* M-p (isearch-mode): Incremental Search. +* M-p (minibuffer history): Minibuffer History. +* M-p (Shell mode): Shell Mode. +* M-q: Fill Commands. +* M-r: Moving Point. +* M-r (minibuffer history): Minibuffer History. +* M-s: Fill Commands. +* M-s (minibuffer history): Minibuffer History. +* M-SPC: Killing. +* M-t <1>: Words. +* M-t: Transpose. +* M-TAB <1>: Tabs in Picture. +* M-TAB: Lisp Completion. +* M-TAB (customization buffer): Changing an Option. +* M-TAB (isearch-mode): Incremental Search. +* M-u: Case. +* M-v <1>: Scrolling. +* M-v: Moving Point. +* M-v (Calendar mode): Scroll Calendar. +* M-w: Kill Ring. +* M-x: M-x. +* M-y: Earlier Kills. +* M-z: Killing. +* M-{: Paragraphs. +* M-{ (Calendar mode): Calendar Unit Motion. +* M-|: Single Shell. +* M-}: Paragraphs. +* M-} (Calendar mode): Calendar Unit Motion. +* M-~: Saving. +* META: Meta Key. +* meta key: Intro to Keystrokes. +* next: Scrolling. +* o (Calendar mode): Specified Dates. +* p (Calendar mode): To Other Calendar. +* p d (Calendar mode): General Calendar. +* pgdn: Scrolling. +* PGDN: Moving Point. +* pgup: Scrolling. +* PGUP: Moving Point. +* prior: Scrolling. +* q (Calendar mode): General Calendar. +* RET: Inserting Text. +* RET (isearch-mode): Incremental Search. +* RET (Shell mode): Shell Mode. +* RIGHT: Moving Point. +* s (Calendar mode): Diary Commands. +* S (Calendar mode): Sunrise/Sunset. +* S-TAB (customization buffer): Changing an Option. +* shift key: Intro to Keystrokes. +* SPC: Completion Commands. +* SPC (Calendar mode): General Calendar. +* SPC (query-replace): Query Replace. +* super key <1>: Super and Hyper Keys. +* super key <2>: Representing Keystrokes. +* super key: Intro to Keystrokes. +* t (Calendar mode): LaTeX Calendar. +* TAB <1>: Basic Indent. +* TAB <2>: Text Mode. +* TAB <3>: Indentation. +* TAB <4>: Major Modes. +* TAB <5>: Completion Example. +* TAB: String Key Sequences. +* TAB (customization buffer): Changing an Option. +* TAB (Shell mode): Shell Mode. +* u (Calendar mode) <1>: Diary Commands. +* u (Calendar mode): Holidays. +* UP: Moving Point. +* x (Calendar mode): Holidays.  -File: xemacs.info, Node: Help, Next: Mark, Prev: M-x, Up: Top +File: xemacs.info, Node: Command Index, Next: Variable Index, Prev: Key Index, Up: Top -Help -**** - - XEmacs provides extensive help features accessible through a single -character, `C-h'. `C-h' is a prefix key that is used only for -documentation-printing commands. The characters that you can type after -`C-h' are called "help options". One help option is `C-h'; that is how -you ask for help about using `C-h'. To cancel, type `C-g'. The -function key is equivalent to `C-h'. - - `C-h C-h' (`help-for-help') displays a list of the possible help -options, and then asks you to type the desired option. It prompts with -the string: - - A B C F I K L M N P S T V W C-c C-d C-f C-i C-k C-n C-w; ? for more help: - -You should type one of those characters. - - Typing a third `C-h' displays a description of what the options mean; -Emacs still waits for you to type an option. To cancel, type `C-g'. - - Most help buffers use a special major mode, Help mode, which lets you -scroll conveniently with and or . +Command and Function Index +************************** * Menu: -* Help Summary:: Brief list of all Help commands. -* Key Help:: Asking what a key does in XEmacs. -* Name Help:: Asking about a command, variable or function name. -* Apropos:: Asking what pertains to a given topic. -* Library Keywords:: Finding Lisp libraries by keywords (topics). -* Help Mode:: Special features of Help mode and Help buffers. -* Misc Help:: Other help commands. +* abbrev-mode <1>: Minor Modes. +* abbrev-mode: Abbrevs. +* abbrev-prefix-mark: Expanding Abbrevs. +* abort-recursive-edit <1>: Quitting. +* abort-recursive-edit: Recursive Edit. +* add-change-log-entry: Change Log. +* add-global-abbrev: Defining Abbrevs. +* add-menu: Menu Customization. +* add-menu-item: Menu Customization. +* add-mode-abbrev: Defining Abbrevs. +* add-name-to-file: Misc File Ops. +* american-calendar: Date Formats. +* append-next-kill: Appending Kills. +* append-to-buffer: Accumulating Text. +* append-to-file <1>: Misc File Ops. +* append-to-file: Accumulating Text. +* apropos: Apropos. +* apropos-documentation: Apropos. +* apropos-value: Apropos. +* ask-user-about-lock: Interlocking. +* auto-fill-mode <1>: Minor Modes. +* auto-fill-mode: Auto Fill. +* auto-save-mode: Auto Save Control. +* back-to-indentation: Indentation Commands. +* backward-char: Moving Point. +* backward-delete-char-untabify: Program Modes. +* backward-kill-sentence <1>: Sentences. +* backward-kill-sentence <2>: Kill Errors. +* backward-kill-sentence: Killing. +* backward-kill-word <1>: Words. +* backward-kill-word <2>: Kill Errors. +* backward-kill-word: Killing. +* backward-list: Lists. +* backward-or-forward-delete-char: Inserting Text. +* backward-page: Pages. +* backward-paragraph: Paragraphs. +* backward-sentence: Sentences. +* backward-sexp: Lists. +* backward-text-line: Nroff Mode. +* backward-up-list: Lists. +* backward-word: Words. +* batch-byte-compile: Compiling Libraries. +* beginning-of-buffer: Moving Point. +* beginning-of-defun: Defuns. +* beginning-of-fortran-subprogram: Fortran Motion. +* beginning-of-line: Moving Point. +* bookmark-delete: Bookmarks. +* bookmark-insert: Bookmarks. +* bookmark-insert-location: Bookmarks. +* bookmark-jump: Bookmarks. +* bookmark-load: Bookmarks. +* bookmark-save: Bookmarks. +* bookmark-set: Bookmarks. +* bookmark-write: Bookmarks. +* buffer-menu: Several Buffers. +* byte-compile-and-load-file: Compiling Libraries. +* byte-compile-buffer: Compiling Libraries. +* byte-compile-file: Compiling Libraries. +* byte-recompile-directory: Compiling Libraries. +* c-indent-line: Basic Indent. +* calendar: Calendar/Diary. +* calendar-backward-day: Calendar Unit Motion. +* calendar-backward-month: Calendar Unit Motion. +* calendar-backward-week: Calendar Unit Motion. +* calendar-beginning-of-month: Move to Beginning or End. +* calendar-beginning-of-week: Move to Beginning or End. +* calendar-beginning-of-year: Move to Beginning or End. +* calendar-count-days-region: Mark and Region. +* calendar-cursor-holidays: Holidays. +* calendar-end-of-month: Move to Beginning or End. +* calendar-end-of-week: Move to Beginning or End. +* calendar-end-of-year: Move to Beginning or End. +* calendar-exchange-point-and-mark: Mark and Region. +* calendar-forward-day: Calendar Unit Motion. +* calendar-forward-month: Calendar Unit Motion. +* calendar-forward-week: Calendar Unit Motion. +* calendar-forward-year: Calendar Unit Motion. +* calendar-goto-astro-day-number: From Other Calendar. +* calendar-goto-chinese-date: From Other Calendar. +* calendar-goto-coptic-date: From Other Calendar. +* calendar-goto-date: Specified Dates. +* calendar-goto-ethiopic-date: From Other Calendar. +* calendar-goto-french-date: From Other Calendar. +* calendar-goto-hebrew-date: From Other Calendar. +* calendar-goto-islamic-date: From Other Calendar. +* calendar-goto-iso-date: From Other Calendar. +* calendar-goto-julian-date: From Other Calendar. +* calendar-goto-mayan-long-count-date: Mayan Calendar. +* calendar-goto-persian-date: From Other Calendar. +* calendar-goto-today: Specified Dates. +* calendar-mark-today: Calendar Customizing. +* calendar-next-calendar-round-date: Mayan Calendar. +* calendar-next-haab-date: Mayan Calendar. +* calendar-next-tzolkin-date: Mayan Calendar. +* calendar-other-month: Specified Dates. +* calendar-phases-of-moon: Lunar Phases. +* calendar-previous-haab-date: Mayan Calendar. +* calendar-previous-tzolkin-date: Mayan Calendar. +* calendar-print-astro-day-number: To Other Calendar. +* calendar-print-chinese-date: To Other Calendar. +* calendar-print-coptic-date: To Other Calendar. +* calendar-print-day-of-year: General Calendar. +* calendar-print-ethiopic-date: To Other Calendar. +* calendar-print-french-date: To Other Calendar. +* calendar-print-hebrew-date: To Other Calendar. +* calendar-print-islamic-date: To Other Calendar. +* calendar-print-iso-date: To Other Calendar. +* calendar-print-julian-date: To Other Calendar. +* calendar-print-mayan-date: To Other Calendar. +* calendar-print-persian-date: To Other Calendar. +* calendar-set-mark: Mark and Region. +* calendar-star-date: Calendar Customizing. +* calendar-sunrise-sunset: Sunrise/Sunset. +* calendar-unmark <1>: Diary Commands. +* calendar-unmark: Holidays. +* call-last-kbd-macro: Basic Kbd Macro. +* cancel-debug-on-entry: Lisp Debug. +* capitalize-word <1>: Case. +* capitalize-word: Fixing Case. +* center-line: Fill Commands. +* choose-completion: Completion Commands. +* clear-rectangle: Rectangles. +* comint-delchar-or-maybe-eof: Shell Mode. +* comint-dynamic-complete: Shell Mode. +* comint-next-input: Shell Mode. +* comint-previous-input: Shell Mode. +* command-apropos: Apropos. +* compare-windows <1>: Other Window. +* compare-windows: Comparing Files. +* compile: Compilation. +* compile-defun: Defuns. +* convert-mocklisp-buffer: Mocklisp. +* conx: CONX. +* conx-buffer: CONX. +* conx-init: CONX. +* conx-load: CONX. +* conx-region: CONX. +* conx-save: CONX. +* copy-file: Misc File Ops. +* copy-last-shell-input: Shell Mode. +* copy-rectangle-to-register: RegRect. +* copy-region-as-kill: Kill Ring. +* copy-to-buffer: Accumulating Text. +* copy-to-register: RegText. +* count-lines-page: Pages. +* count-lines-region: Position Info. +* count-matches: Other Repeating Search. +* count-text-lines: Nroff Mode. +* customize: Easy Customization. +* customize-apropos: Specific Customization. +* customize-browse: Customization Groups. +* customize-customized: Specific Customization. +* customize-face: Specific Customization. +* customize-group: Specific Customization. +* customize-option: Specific Customization. +* customize-saved: Specific Customization. +* dabbrev-expand: Dynamic Abbrevs. +* debug: Lisp Debug. +* debug-on-entry: Lisp Debug. +* default-value: Locals. +* define-abbrevs: Saving Abbrevs. +* define-key <1>: Programmatic Rebinding. +* define-key: Interactive Rebinding. +* delete-backward-char <1>: Kill Errors. +* delete-backward-char: Killing. +* delete-blank-lines <1>: Killing. +* delete-blank-lines: Blank Lines. +* delete-char <1>: Basic Picture. +* delete-char: Killing. +* delete-file: Misc File Ops. +* delete-horizontal-space <1>: Indentation Commands. +* delete-horizontal-space: Killing. +* delete-indentation <1>: Indentation Commands. +* delete-indentation: Killing. +* delete-matching-lines: Other Repeating Search. +* delete-menu-item: Menu Customization. +* delete-non-matching-lines: Other Repeating Search. +* delete-other-windows: Change Window. +* delete-rectangle: Rectangles. +* delete-window: Change Window. +* describe-bindings: Misc Help. +* describe-calendar-mode: General Calendar. +* describe-coding-system: Coding Systems. +* describe-copying: Misc Help. +* describe-distribution: Misc Help. +* describe-function <1>: Documentation. +* describe-function: Name Help. +* describe-input-method: Select Input Method. +* describe-key: Key Help. +* describe-key-briefly: Key Help. +* describe-language-environment: Language Environments. +* describe-mode: Misc Help. +* describe-no-warranty: Misc Help. +* describe-syntax: Syntax Change. +* describe-variable <1>: Examining. +* describe-variable <2>: Documentation. +* describe-variable: Name Help. +* diary: Diary Commands. +* diary-anniversary <1>: Sexp Diary Entries. +* diary-anniversary: Special Diary Entries. +* diary-astro-day-number: Sexp Diary Entries. +* diary-block: Special Diary Entries. +* diary-cyclic <1>: Sexp Diary Entries. +* diary-cyclic: Special Diary Entries. +* diary-day-of-year: Sexp Diary Entries. +* diary-float: Special Diary Entries. +* diary-french-date: Sexp Diary Entries. +* diary-hebrew-date: Sexp Diary Entries. +* diary-islamic-date: Sexp Diary Entries. +* diary-iso-date: Sexp Diary Entries. +* diary-julian-date: Sexp Diary Entries. +* diary-mail-entries: Diary Commands. +* diary-mayan-date: Sexp Diary Entries. +* diary-omer: Sexp Diary Entries. +* diary-parasha: Sexp Diary Entries. +* diary-phases-of-moon: Sexp Diary Entries. +* diary-rosh-hodesh: Sexp Diary Entries. +* diary-sabbath-candles: Sexp Diary Entries. +* diary-sunrise-sunset: Sexp Diary Entries. +* diary-yahrzeit: Sexp Diary Entries. +* diff: Comparing Files. +* diff-backup: Comparing Files. +* digit-argument: Arguments. +* dired: Dired Enter. +* dired-other-window <1>: Pop Up Window. +* dired-other-window: Dired Enter. +* disable-command: Disabling. +* disable-menu-item: Menu Customization. +* disassemble: Compiling Libraries. +* display-time: Mode Line. +* dissociated-press: Dissociated Press. +* do-auto-save: Auto Save Control. +* doctor: Total Frustration. +* down-list: Lists. +* downcase-region: Case. +* downcase-word <1>: Case. +* downcase-word: Fixing Case. +* edit-abbrevs: Editing Abbrevs. +* edit-abbrevs-redefine: Editing Abbrevs. +* edit-options: Edit Options. +* edit-picture: Picture. +* edit-tab-stops <1>: Text Mode. +* edit-tab-stops: Tab Stops. +* edit-tab-stops-note-changes: Tab Stops. +* edt-emulation-off: Emulation. +* edt-emulation-on: Emulation. +* electric-nroff-mode: Nroff Mode. +* emacs-lisp-mode: Lisp Eval. +* emacs-version: Bugs. +* enable-command: Disabling. +* enable-menu-item: Menu Customization. +* end-kbd-macro: Basic Kbd Macro. +* end-of-buffer: Moving Point. +* end-of-defun: Defuns. +* end-of-fortran-subprogram: Fortran Motion. +* end-of-line: Moving Point. +* enlarge-window: Change Window. +* enlarge-window-horizontally: Change Window. +* european-calendar: Date Formats. +* eval-current-buffer: Lisp Eval. +* eval-defun: Lisp Eval. +* eval-expression: Lisp Eval. +* eval-last-sexp: Lisp Eval. +* eval-region: Lisp Eval. +* exchange-point-and-mark: Setting Mark. +* execute-extended-command: M-x. +* exit-calendar: General Calendar. +* exit-recursive-edit: Recursive Edit. +* expand-abbrev: Expanding Abbrevs. +* expand-region-abbrevs: Expanding Abbrevs. +* fancy-diary-display: Fancy Diary Display. +* fill-individual-paragraphs: Fill Prefix. +* fill-paragraph: Fill Commands. +* fill-region: Fill Commands. +* fill-region-as-paragraph: Fill Commands. +* find-alternate-file: Visiting. +* find-file: Visiting. +* find-file-other-frame <1>: Visiting. +* find-file-other-frame: XEmacs under X. +* find-file-other-window <1>: Pop Up Window. +* find-file-other-window: Visiting. +* find-tag: Find Tag. +* find-tag-other-window <1>: Find Tag. +* find-tag-other-window: Pop Up Window. +* find-this-file: Visiting. +* find-this-file-other-window: Visiting. +* finder-by-keyword: Library Keywords. +* fortran-column-ruler: Fortran Columns. +* fortran-comment-region: Fortran Comments. +* fortran-indent-line: ForIndent Commands. +* fortran-indent-subprogram: ForIndent Commands. +* fortran-mode: Fortran. +* fortran-next-statement: Fortran Motion. +* fortran-previous-statement: Fortran Motion. +* fortran-split-line: ForIndent Commands. +* fortran-window-create: Fortran Columns. +* forward-char: Moving Point. +* forward-list: Lists. +* forward-page: Pages. +* forward-paragraph: Paragraphs. +* forward-sentence: Sentences. +* forward-sexp: Lists. +* forward-text-line: Nroff Mode. +* forward-word: Words. +* frame-configuration-to-register: RegConfig. +* global-set-key <1>: Programmatic Rebinding. +* global-set-key: Interactive Rebinding. +* goto-char: Moving Point. +* goto-line: Moving Point. +* hanoi: Amusements. +* help-command: Help. +* help-for-help: Help. +* help-with-tutorial <1>: Misc Help. +* help-with-tutorial: Basic. +* hide-body: Outline Visibility. +* hide-entry: Outline Visibility. +* hide-leaves: Outline Visibility. +* hide-subtree: Outline Visibility. +* holidays: Holidays. +* include-other-diary-files: Included Diary Files. +* increment-register: RegNumbers. +* indent-c-exp: Multi-line Indent. +* indent-for-comment: Comments. +* indent-new-comment-line: Comments. +* indent-region <1>: Multi-line Indent. +* indent-region: Indentation Commands. +* indent-relative: Indentation Commands. +* indent-rigidly: Indentation Commands. +* indent-sexp: Multi-line Indent. +* indented-text-mode: Text Mode. +* info: Misc Help. +* Info-elisp-ref: Misc Help. +* Info-goto-emacs-command-node: Misc Help. +* insert-abbrevs: Saving Abbrevs. +* insert-anniversary-diary-entry: Special Diary Entries. +* insert-block-diary-entry: Special Diary Entries. +* insert-cyclic-diary-entry: Special Diary Entries. +* insert-diary-entry: Adding to Diary. +* insert-file: Misc File Ops. +* insert-hebrew-diary-entry: Hebrew/Islamic Entries. +* insert-islamic-diary-entry: Hebrew/Islamic Entries. +* insert-kbd-macro: Save Kbd Macro. +* insert-monthly-diary-entry: Adding to Diary. +* insert-monthly-hebrew-diary-entry: Hebrew/Islamic Entries. +* insert-monthly-islamic-diary-entry: Hebrew/Islamic Entries. +* insert-parentheses: Balanced Editing. +* insert-register: RegText. +* insert-weekly-diary-entry: Adding to Diary. +* insert-yearly-diary-entry: Adding to Diary. +* insert-yearly-hebrew-diary-entry: Hebrew/Islamic Entries. +* insert-yearly-islamic-diary-entry: Hebrew/Islamic Entries. +* interactive: M-x. +* interrupt-shell-subjob: Shell Mode. +* inverse-add-global-abbrev: Defining Abbrevs. +* inverse-add-mode-abbrev: Defining Abbrevs. +* invert-face: Faces. +* isearch-abort: Incremental Search. +* isearch-backward: Incremental Search. +* isearch-backward-regexp: Regexp Search. +* isearch-complete: Incremental Search. +* isearch-delete-char: Incremental Search. +* isearch-exit: Incremental Search. +* isearch-forward: Incremental Search. +* isearch-forward-regexp: Regexp Search. +* isearch-quote-char: Incremental Search. +* isearch-repeat-backward: Incremental Search. +* isearch-repeat-forward: Incremental Search. +* isearch-ring-advance: Incremental Search. +* isearch-ring-retreat: Incremental Search. +* isearch-yank-line: Incremental Search. +* isearch-yank-word: Incremental Search. +* jump-to-register <1>: Split Window. +* jump-to-register: RegPos. +* just-one-space: Killing. +* kbd-macro-query: Kbd Macro Query. +* kill-all-abbrevs: Defining Abbrevs. +* kill-buffer: Kill Buffer. +* kill-comment: Comments. +* kill-compilation: Compilation. +* kill-line: Killing. +* kill-local-variable: Locals. +* kill-output-from-shell: Shell Mode. +* kill-rectangle: Rectangles. +* kill-region: Killing. +* kill-sentence <1>: Sentences. +* kill-sentence: Killing. +* kill-sexp <1>: Lists. +* kill-sexp: Killing. +* kill-some-buffers: Kill Buffer. +* kill-word <1>: Words. +* kill-word: Killing. +* latex-mode: TeX Mode. +* LaTeX-mode: TeX Mode. +* lisp-complete-symbol: Lisp Completion. +* lisp-indent-line: Basic Indent. +* lisp-interaction-mode: Lisp Interaction. +* lisp-mode: External Lisp. +* lisp-send-defun: External Lisp. +* list-abbrevs: Editing Abbrevs. +* list-bookmarks: Bookmarks. +* list-buffers: List Buffers. +* list-calendar-holidays: Holidays. +* list-coding-systems: Coding Systems. +* list-command-history: Repetition. +* list-directory: ListDir. +* list-hebrew-diary-entries: Hebrew/Islamic Entries. +* list-holidays: Holidays. +* list-input-methods: Select Input Method. +* list-islamic-diary-entries: Hebrew/Islamic Entries. +* list-matching-lines: Other Repeating Search. +* list-options: Edit Options. +* list-tags: List Tags. +* list-yahrzeit-dates: From Other Calendar. +* load: Loading. +* load-default-sounds: Audible Bell. +* load-file: Loading. +* load-library <1>: Loading. +* load-library: Startup Paths. +* load-sound-file: Audible Bell. +* local-set-key: Interactive Rebinding. +* local-unset-key: Interactive Rebinding. +* locate-library: Loading. +* lpr-buffer: Hardcopy. +* lpr-region: Hardcopy. +* mail: Sending Mail. +* mail-cc: Mail Mode. +* mail-fill-yanked-message: Mail Mode. +* mail-interactive-insert-alias: Mail Headers. +* mail-other-window <1>: Sending Mail. +* mail-other-window: Pop Up Window. +* mail-send: Mail Mode. +* mail-send-and-exit: Mail Mode. +* mail-signature: Mail Mode. +* mail-subject: Mail Mode. +* mail-to: Mail Mode. +* mail-yank-original: Mail Mode. +* make-directory: File Names. +* make-face-bold: Faces. +* make-face-bold-italic: Faces. +* make-face-italic: Faces. +* make-face-larger: Faces. +* make-face-smaller: Faces. +* make-face-unbold: Faces. +* make-face-unitalic: Faces. +* make-frame: XEmacs under X. +* make-local-variable: Locals. +* make-obsolete: Compiling Libraries. +* make-symbolic-link: Misc File Ops. +* make-variable-buffer-local: Locals. +* manual-entry: Documentation. +* mark-beginning-of-buffer: Setting Mark. +* mark-calendar-holidays: Holidays. +* mark-defun <1>: Defuns. +* mark-defun: Marking Objects. +* mark-diary-entries: Diary Commands. +* mark-end-of-buffer: Setting Mark. +* mark-fortran-subprogram: Fortran Motion. +* mark-hebrew-diary-entries: Hebrew/Islamic Entries. +* mark-included-diary-files: Included Diary Files. +* mark-islamic-diary-entries: Hebrew/Islamic Entries. +* mark-page <1>: Pages. +* mark-page: Marking Objects. +* mark-paragraph <1>: Paragraphs. +* mark-paragraph: Marking Objects. +* mark-sexp <1>: Lists. +* mark-sexp: Marking Objects. +* mark-whole-buffer: Marking Objects. +* mark-word <1>: Words. +* mark-word: Marking Objects. +* minibuffer-complete: Completion Example. +* minibuffer-complete-word: Completion Commands. +* modify-syntax-entry: Syntax Change. +* mouse-choose-completion: Completion Commands. +* mouse-del-char: Additional Mouse Operations. +* mouse-delete-window: Additional Mouse Operations. +* mouse-keep-one-window: Additional Mouse Operations. +* mouse-kill-line: Additional Mouse Operations. +* mouse-line-length: Additional Mouse Operations. +* mouse-scroll: Additional Mouse Operations. +* mouse-select: Additional Mouse Operations. +* mouse-select-and-split: Additional Mouse Operations. +* mouse-set-mark: Additional Mouse Operations. +* mouse-set-point: Additional Mouse Operations. +* mouse-track: Additional Mouse Operations. +* mouse-track-adjust: Additional Mouse Operations. +* mouse-track-and-copy-to-cutbuffer: Additional Mouse Operations. +* mouse-track-delete-and-insert: Additional Mouse Operations. +* move-over-close-and-reindent: Balanced Editing. +* move-to-window-line: Moving Point. +* name-last-kbd-macro: Save Kbd Macro. +* narrow-to-region: Narrowing. +* negative-argument: Arguments. +* newline: Inserting Text. +* newline-and-indent: Basic Indent. +* next-complex-command: Repetition. +* next-error: Compilation. +* next-history-element: Minibuffer History. +* next-line: Moving Point. +* next-list-mode-item: Completion Commands. +* next-matching-history-element: Minibuffer History. +* not-modified: Saving. +* nroff-mode: Nroff Mode. +* number-to-register: RegNumbers. +* occur: Other Repeating Search. +* open-dribble-file: Bugs. +* open-line: Blank Lines. +* open-rectangle: Rectangles. +* open-termscript: Bugs. +* other-window: Other Window. +* other-window-any-frame: Other Window. +* outline-backward-same-level: Outline Motion. +* outline-forward-same-level: Outline Motion. +* outline-next-visible-heading: Outline Motion. +* outline-previous-visible-heading: Outline Motion. +* outline-up-heading: Outline Motion. +* overwrite-mode: Minor Modes. +* phases-of-moon: Lunar Phases. +* picture-backward-clear-column: Basic Picture. +* picture-backward-column: Basic Picture. +* picture-clear-column: Basic Picture. +* picture-clear-line: Basic Picture. +* picture-clear-rectangle: Rectangles in Picture. +* picture-clear-rectangle-to-register: Rectangles in Picture. +* picture-forward-column: Basic Picture. +* picture-motion: Insert in Picture. +* picture-motion-reverse: Insert in Picture. +* picture-move-down: Basic Picture. +* picture-move-up: Basic Picture. +* picture-movement-down: Insert in Picture. +* picture-movement-left: Insert in Picture. +* picture-movement-ne: Insert in Picture. +* picture-movement-nw: Insert in Picture. +* picture-movement-right: Insert in Picture. +* picture-movement-se: Insert in Picture. +* picture-movement-sw: Insert in Picture. +* picture-movement-up: Insert in Picture. +* picture-newline: Basic Picture. +* picture-open-line: Basic Picture. +* picture-set-tab-stops: Tabs in Picture. +* picture-tab: Tabs in Picture. +* picture-tab-search: Tabs in Picture. +* picture-yank-rectangle: Rectangles in Picture. +* picture-yank-rectangle-from-register: Rectangles in Picture. +* plain-TeX-mode: TeX Mode. +* plain-tex-mode: TeX Mode. +* play-sound: Audible Bell. +* point-to-register: RegPos. +* prefer-coding-system: Recognize Coding. +* prepend-to-buffer: Accumulating Text. +* previous-complex-command: Repetition. +* previous-history-element: Minibuffer History. +* previous-line: Moving Point. +* previous-list-mode-item: Completion Commands. +* previous-matching-history-element: Minibuffer History. +* print-buffer: Hardcopy. +* print-diary-entries <1>: Diary Customizing. +* print-diary-entries: Diary Commands. +* print-region: Hardcopy. +* quail-set-keyboard-layout: Select Input Method. +* query-replace: Query Replace. +* query-replace-regexp: Query Replace. +* quietly-read-abbrev-file: Saving Abbrevs. +* quit-shell-subjob: Shell Mode. +* quoted-insert: Inserting Text. +* re-search-backward: Regexp Search. +* re-search-forward: Regexp Search. +* read-abbrev-file: Saving Abbrevs. +* read-key-sequence: Representing Keystrokes. +* recenter <1>: Scrolling. +* recenter: Moving Point. +* recover-file: Recover. +* redraw-calendar: General Calendar. +* relabel-menu-item: Menu Customization. +* remove-directory: File Names. +* rename-buffer: Misc Buffer. +* rename-file: Misc File Ops. +* repeat-complex-command: Repetition. +* replace-regexp: Unconditional Replace. +* replace-string: Unconditional Replace. +* revert-buffer: Reverting. +* run-lisp: External Lisp. +* save-buffer: Saving. +* save-buffers-kill-emacs: Exiting. +* save-some-buffers: Saving. +* scroll-calendar-left: Scroll Calendar. +* scroll-calendar-left-three-months: Scroll Calendar. +* scroll-calendar-right: Scroll Calendar. +* scroll-calendar-right-three-months: Scroll Calendar. +* scroll-down: Scrolling. +* scroll-left: Horizontal Scrolling. +* scroll-other-window <1>: General Calendar. +* scroll-other-window: Other Window. +* scroll-right: Horizontal Scrolling. +* scroll-up: Scrolling. +* search-backward: Non-Incremental Search. +* search-forward: Non-Incremental Search. +* select-input-method: Select Input Method. +* self-insert: Inserting Text. +* send-shell-input: Shell Mode. +* set-buffer-file-coding-system: Specify Coding. +* set-buffer-process-coding-system: Specify Coding. +* set-comment-column: Comments. +* set-default-file-modes: Interlocking. +* set-face-background: Faces. +* set-face-background-pixmap: Faces. +* set-face-font: Faces. +* set-face-foreground: Faces. +* set-face-underline-p: Faces. +* set-fill-column: Fill Commands. +* set-fill-prefix: Fill Prefix. +* set-gnu-bindings: Emulation. +* set-goal-column: Moving Point. +* set-gosmacs-bindings: Emulation. +* set-keyboard-coding-system: Specify Coding. +* set-language-environment: Language Environments. +* set-mark-command: Setting Mark. +* set-selective-display: Selective Display. +* set-terminal-coding-system: Specify Coding. +* set-variable: Examining. +* set-visited-file-name: Saving. +* setq-default: Locals. +* shell: Interactive Shell. +* shell-command: Single Shell. +* shell-command-on-region: Single Shell. +* shell-send-eof: Shell Mode. +* show-all: Outline Visibility. +* show-all-diary-entries: Diary Commands. +* show-branches: Outline Visibility. +* show-children: Outline Visibility. +* show-entry: Outline Visibility. +* show-output-from-shell: Shell Mode. +* show-subtree: Outline Visibility. +* simple-diary-display: Fancy Diary Display. +* sort-columns: Sorting. +* sort-diary-entries: Fancy Diary Display. +* sort-fields: Sorting. +* sort-lines: Sorting. +* sort-numeric-fields: Sorting. +* sort-pages: Sorting. +* sort-paragraphs: Sorting. +* spell-buffer: Spelling. +* spell-region: Spelling. +* spell-string: Spelling. +* spell-word: Spelling. +* split-line: Indentation Commands. +* split-window-horizontally: Split Window. +* split-window-vertically: Split Window. +* start-kbd-macro: Basic Kbd Macro. +* stop-shell-subjob: Shell Mode. +* substitute-key-definition: Interactive Rebinding. +* sunrise-sunset: Sunrise/Sunset. +* suspend-emacs: Exiting. +* switch-to-buffer: Select Buffer. +* switch-to-buffer-other-frame <1>: Select Buffer. +* switch-to-buffer-other-frame: XEmacs under X. +* switch-to-buffer-other-window <1>: Pop Up Window. +* switch-to-buffer-other-window: Select Buffer. +* switch-to-completions: Completion Commands. +* switch-to-other-buffer: Select Buffer. +* tab-to-tab-stop <1>: Text Mode. +* tab-to-tab-stop: Tab Stops. +* tabify: Just Spaces. +* tags-apropos: List Tags. +* tags-loop-continue: Tags Search. +* tags-query-replace: Tags Search. +* tags-search: Tags Search. +* term: Terminal emulator. +* term-line-mode: Term Mode. +* term-pager-toggle: Paging in Term. +* tex-buffer: TeX Print. +* tex-close-latex-block: TeX Editing. +* tex-insert-braces: TeX Editing. +* tex-insert-quote: TeX Editing. +* tex-kill-job: TeX Print. +* tex-mode: TeX Mode. +* TeX-mode: TeX Mode. +* tex-print: TeX Print. +* tex-recenter-output-buffer: TeX Print. +* tex-region: TeX Print. +* tex-show-print-queue: TeX Print. +* tex-terminate-paragraph: TeX Editing. +* text-mode: Text Mode. +* toggle-input-method: Select Input Method. +* toggle-read-only: Misc Buffer. +* top-level <1>: Quitting. +* top-level: Recursive Edit. +* transpose-chars <1>: Transpose. +* transpose-chars: Moving Point. +* transpose-lines: Transpose. +* transpose-sexps <1>: Lists. +* transpose-sexps: Transpose. +* transpose-words <1>: Words. +* transpose-words: Transpose. +* undo: Undo. +* unexpand-abbrev: Expanding Abbrevs. +* universal-argument: Arguments. +* universal-coding-system-argument: Specify Coding. +* untabify: Just Spaces. +* up-list: TeX Editing. +* upcase-region: Case. +* upcase-word <1>: Case. +* upcase-word: Fixing Case. +* validate-tex-buffer: TeX Editing. +* vc-cancel-version: Editing with VC. +* vc-create-snapshot: Making Snapshots. +* vc-diff: Old Versions. +* vc-directory: VC Status. +* vc-insert-headers: Version Headers. +* vc-next-action: Editing with VC. +* vc-print-log: VC Status. +* vc-register: Editing with VC. +* vc-rename-file: Renaming and VC. +* vc-retrieve-snapshot: Making Snapshots. +* vc-revert-buffer: Editing with VC. +* vc-update-change-log: Change Logs and VC. +* vc-version-other-window: Old Versions. +* view-buffer: Misc Buffer. +* view-diary-entries: Diary Commands. +* view-emacs-news: Misc Help. +* view-file: Misc File Ops. +* view-hello-file: Mule Intro. +* view-lossage: Misc Help. +* view-register: Registers. +* visit-tags-table: Select Tags Table. +* what-cursor-position: Position Info. +* what-line: Position Info. +* what-page: Position Info. +* where-is: Name Help. +* widen: Narrowing. +* widget-backward: Changing an Option. +* widget-complete: Changing an Option. +* widget-forward: Changing an Option. +* window-configuration-to-register <1>: Split Window. +* window-configuration-to-register: RegConfig. +* word-search-backward: Word Search. +* word-search-forward: Word Search. +* write-abbrev-file: Saving Abbrevs. +* write-file: Saving. +* x-copy-primary-selection: X Selection Commands. +* x-create-frame: X Resources. +* x-delete-primary-selection: X Selection Commands. +* x-insert-selection: X Selection Commands. +* x-kill-primary-selection: X Selection Commands. +* x-mouse-kill: X Selection Commands. +* x-own-secondary-selection: X Selection Commands. +* x-own-selection: X Selection Commands. +* x-set-point-and-insert-selection: X Selection Commands. +* xemacs-local-faq: Misc Help. +* Yank: Kill Ring. +* yank-pop: Earlier Kills. +* yank-rectangle: Rectangles. +* yow: Amusements. +* zap-to-char: Killing. +* zmacs-activate-region: Active Regions. +* zmacs-deactivate-region: Active Regions.  -File: xemacs.info, Node: Help Summary, Next: Key Help, Prev: Help, Up: Help - -Help Summary -============ - - Here is a summary of the defined help commands. - -`C-h a REGEXP ' - Display a list of functions and variables whose names match REGEXP - (`hyper-apropos'). - -`C-h A REGEXP' - Show all commands whose names contain matches for REGEXP - (`command-apropos'). - -`C-h b' - Display a table of all key bindings currently in effect, with local - bindings of the current major mode first, followed by all global - bindings (`describe-bindings'). - -`C-h c KEY' - Print the name of the command that KEY runs - (`describe-key-briefly'). Here `c' stands for `character'. For - more extensive information on KEY, use `C-h k'. - -`C-h d FUNCTION ' -`C-h f FUNCTION ' - Display documentation on the Lisp function named FUNCTION - (`describe-function'). Since commands are Lisp functions, a - command name may be used. - -`C-h i' - Run Info, the program for browsing documentation files (`info'). - The complete XEmacs manual is available online in Info. - -`C-h k KEY' - Display the name and documentation of the command that KEY runs - (`describe-key'). - -`C-h l' - Display a description of the last 100 characters you typed - (`view-lossage'). - -`C-h m' - Display documentation of the current major mode (`describe-mode'). +File: xemacs.info, Node: Variable Index, Next: Concept Index, Prev: Command Index, Up: Top -`C-h n' -`C-h C-n' - Display documentation of XEmacs changes, most recent first - (`view-emacs-news'). - -`C-h p' - Find packages by topic keyword (`finder-by-keyword'). - -`C-h C-p' - Display a table of all mouse bindings currently in effect now, with - local bindings of the current major mode first, followed by all - global bindings (`describe-pointer'). - -`C-h s' - Display current contents of the syntax table, plus an explanation - of what they mean (`describe-syntax'). *Note Syntax::. - -`C-h t' - Enter the XEmacs interactive tutorial (`help-with-tutorial'). - -`C-h v VAR ' - Display the documentation of the Lisp variable VAR - (`describe-variable'). - -`C-h w COMMAND ' - Print which keys run the command named COMMAND (`where-is'). - -`C-h B ' - Display info on how to deal with Beta versions of XEmacs - (`describe-beta'). - -`C-h C GROUP ' - Select customization buffer for GROUP (`customize'). - -`C-h F ' - View the local copy of the XEmacs FAQ (`xemacs-local-faq'). - -`C-h C-i FILE ' - Read Info file FILE with Info browser (`Info-query'). +Variable Index +************** -`C-h C-c COMMAND ' - Look up an Emacs command COMMAND in the Emacs manual in the Info - system (`Info-goto-emacs-command-node'). +* Menu: -`C-h C-f FUNCTION ' - Look up an Emacs Lisp function FUNCTION in the Elisp manual in the - Info system (`Info-elisp-ref'). +* abbrev-all-caps: Expanding Abbrevs. +* abbrev-file-name: Saving Abbrevs. +* abbrev-mode: Abbrevs. +* after-load-alist: Loading. +* after-save-hook: Saving. +* all-christian-calendar-holidays: Holiday Customizing. +* all-hebrew-calendar-holidays: Holiday Customizing. +* all-islamic-calendar-holidays: Holiday Customizing. +* appt-audible: Appt Customizing. +* appt-display-duration: Appt Customizing. +* appt-display-mode-line: Appt Customizing. +* appt-message-warning-time: Appt Customizing. +* appt-msg-window: Appt Customizing. +* appt-visible: Appt Customizing. +* apropos-do-all: Apropos. +* auto-fill-inhibit-regexp: Fill Commands. +* auto-lower-frame: XEmacs under X. +* auto-mode-alist: Choosing Modes. +* auto-raise-frame: XEmacs under X. +* auto-save-default: Auto Save Control. +* auto-save-interval: Auto Save Control. +* auto-save-timeout: Auto Save Control. +* auto-save-visited-file-name: Auto Save Files. +* backup-by-copying: Backup Copying. +* backup-by-copying-when-linked: Backup Copying. +* backup-by-copying-when-mismatch: Backup Copying. +* bell-volume: Audible Bell. +* blink-matching-paren: Matching. +* blink-matching-paren-distance: Matching. +* bookmark-save-flag: Bookmarks. +* bookmark-search-size: Bookmarks. +* buffer-file-coding-system: Recognize Coding. +* buffer-file-name: Visiting. +* buffer-file-truename: Visiting. +* buffer-read-only: Misc Buffer. +* buffer-tag-table: Find Tag. +* c-argdecl-indent: C Indent. +* c-auto-newline: C Indent. +* c-brace-imaginary-offset: C Indent. +* c-brace-offset: C Indent. +* c-continued-statement-offset: C Indent. +* c-indent-level: C Indent. +* c-label-offset: C Indent. +* c-mode-hook: Program Modes. +* c-mode-map: Keymaps. +* c-tab-always-indent: C Indent. +* calendar-date-display-form: Date Display Format. +* calendar-daylight-savings-ends: Daylight Savings. +* calendar-daylight-savings-ends-time: Daylight Savings. +* calendar-daylight-savings-starts: Daylight Savings. +* calendar-daylight-time-offset: Daylight Savings. +* calendar-daylight-time-zone-name: Sunrise/Sunset. +* calendar-holiday-marker: Calendar Customizing. +* calendar-holidays: Holiday Customizing. +* calendar-latitude: Sunrise/Sunset. +* calendar-load-hook: Calendar Customizing. +* calendar-location-name: Sunrise/Sunset. +* calendar-longitude: Sunrise/Sunset. +* calendar-standard-time-zone-name: Sunrise/Sunset. +* calendar-time-display-form: Time Display Format. +* calendar-time-zone: Sunrise/Sunset. +* calendar-today-marker: Calendar Customizing. +* calendar-week-start-day: Move to Beginning or End. +* case-fold-search <1>: Replacement and Case. +* case-fold-search: Search Case. +* case-replace: Replacement and Case. +* christian-holidays: Holiday Customizing. +* coding: Recognize Coding. +* command-history: Repetition. +* command-line-args: Command Switches. +* comment-column: Comments. +* comment-end: Comments. +* comment-indent-hook: Comments. +* comment-line-start: Fortran Comments. +* comment-line-start-skip: Fortran Comments. +* comment-multi-line: Comments. +* comment-start: Comments. +* comment-start-skip: Comments. +* compare-ignore-case: Comparing Files. +* compile-command: Compilation. +* completion-auto-help: Completion Options. +* completion-ignored-extensions: Completion Options. +* create-frame-hook: XEmacs under X. +* ctl-arrow: Display Vars. +* ctl-x-map: Keymaps. +* current-input-method: Select Input Method. +* data-directory: Startup Paths. +* data-directory-list: Startup Paths. +* debug-on-error: Lisp Debug. +* debug-on-quit: Lisp Debug. +* default-buffer-file-coding-system: Specify Coding. +* default-directory: File Names. +* default-directory-alist: File Names. +* default-frame-alist: XEmacs under X. +* default-frame-plist: XEmacs under X. +* default-input-method: Select Input Method. +* default-major-mode: Choosing Modes. +* delete-auto-save-files: Auto Save Files. +* delete-old-versions: Backup Deletion. +* describe-function-show-arglist: Name Help. +* diary-date-forms: Diary Customizing. +* diary-display-hook: Fancy Diary Display. +* diary-entry-marker: Calendar Customizing. +* diary-file: Format of Diary File. +* diary-list-include-blanks: Fancy Diary Display. +* diary-mail-days: Diary Commands. +* diff-switches: Comparing Files. +* dired-kept-versions: Dired Deletion. +* dired-listing-switches: Dired Enter. +* display-buffer-function: Pop Up Window. +* doc-directory: Startup Paths. +* echo-keystrokes: Display Vars. +* emacs-lisp-mode-hook: Program Modes. +* emacs-roots: Startup Paths. +* EMACSDATA: Startup Paths. +* EMACSLOADPATH: Startup Paths. +* EMACSPATH: Startup Paths. +* enable-local-variables: File Variables. +* enable-recursive-minibuffers: Minibuffer Edit. +* esc-map: Keymaps. +* european-calendar-style: Date Formats. +* exec-directory: Startup Paths. +* exec-path: Startup Paths. +* explicit-shell-file-name: Interactive Shell. +* face-frob-from-locale-first: Faces. +* file-coding-system-alist: Recognize Coding. +* file-name-coding-system: Specify Coding. +* fill-column: Fill Commands. +* fill-prefix: Fill Prefix. +* find-file-compare-truenames: Visiting. +* find-file-hooks: Visiting. +* find-file-not-found-hooks: Visiting. +* find-file-run-dired: Visiting. +* find-file-use-truenames: Visiting. +* fortran-check-all-num-for-matching-do: ForIndent Vars. +* fortran-comment-indent-char: Fortran Comments. +* fortran-comment-indent-style: Fortran Comments. +* fortran-comment-line-column: Fortran Comments. +* fortran-comment-region: Fortran Comments. +* fortran-continuation-char: ForIndent Conv. +* fortran-continuation-indent: ForIndent Vars. +* fortran-do-indent: ForIndent Vars. +* fortran-electric-line-number: ForIndent Num. +* fortran-if-indent: ForIndent Vars. +* fortran-line-number-indent: ForIndent Num. +* fortran-minimum-statement-indent: ForIndent Vars. +* frame-icon-title-format <1>: Command Switches. +* frame-icon-title-format: XEmacs under X. +* frame-title-format <1>: Command Switches. +* frame-title-format: XEmacs under X. +* general-holidays: Holiday Customizing. +* global-map: Keymaps. +* hebrew-holidays: Holiday Customizing. +* help-map: Keymaps. +* holidays-in-diary-buffer: Diary Customizing. +* indent-tabs-mode: Just Spaces. +* Info-directory-list: Startup Paths. +* INFOPATH: Startup Paths. +* initial-calendar-window-hook: Calendar Customizing. +* initial-major-mode: Entering Emacs. +* input-method-highlight-flag: Input Methods. +* input-method-verbose-flag: Input Methods. +* input-ring-size: Interactive Shell. +* insert-default-directory <1>: File Names. +* insert-default-directory: Minibuffer File. +* isearch-mode-map: Keymaps. +* islamic-holidays: Holiday Customizing. +* kept-new-versions: Backup Deletion. +* kept-old-versions: Backup Deletion. +* keyboard-translate-table: Intro to Keystrokes. +* kill-ring-max: Earlier Kills. +* LaTeX-mode-hook: TeX Print. +* lisp-body-indention: Lisp Indent. +* lisp-directory: Startup Paths. +* lisp-indent-offset: Lisp Indent. +* lisp-interaction-mode-hook: Program Modes. +* lisp-mode-hook: Program Modes. +* lisp-mode-map: Keymaps. +* list-diary-entries-hook: Included Diary Files. +* list-directory-brief-switches: ListDir. +* list-directory-verbose-switches: ListDir. +* load-path <1>: Loading. +* load-path: Startup Paths. +* local-holidays: Holiday Customizing. +* lpr-switches: Hardcopy. +* mail-abbrev-mailrc-file: Mail Headers. +* mail-abbrev-mode-regexp: Mail Headers. +* mail-alias-separator-string: Mail Headers. +* mail-archive-file-name: Mail Headers. +* mail-header-separator: Mail Format. +* mail-mode-hook: Mail Mode. +* make-backup-files: Backup. +* make-tags-files-invisible: Find Tag. +* mark-diary-entries-hook: Included Diary Files. +* mark-diary-entries-in-calendar: Calendar Customizing. +* mark-holidays-in-calendar: Calendar Customizing. +* mark-ring: Mark Ring. +* mark-ring-max: Mark Ring. +* meta-flag: Meta Key. +* minibuffer-confirm-incomplete <1>: Completion Options. +* minibuffer-confirm-incomplete: Minibuffer Edit. +* minibuffer-local-completion-map: Keymaps. +* minibuffer-local-map: Keymaps. +* minibuffer-local-must-match-map: Keymaps. +* minibuffer-local-ns-map: Keymaps. +* mode-line-inverse-video: Mode Line. +* modeline-pointer-glyph: Mouse Selection. +* muddle-mode-hook: Program Modes. +* next-line-add-newlines: Moving Point. +* next-screen-context-lines: Scrolling. +* no-redraw-on-reenter: Display Vars. +* nongregorian-diary-listing-hook: Hebrew/Islamic Entries. +* nongregorian-diary-marking-hook: Hebrew/Islamic Entries. +* nontext-pointer-glyph: Mouse Selection. +* nroff-mode-hook: Nroff Mode. +* number-of-diary-entries: Diary Customizing. +* other-holidays: Holiday Customizing. +* outline-mode-hook: Outline Mode. +* outline-regexp: Outline Format. +* page-delimiter: Pages. +* paragraph-separate: Paragraphs. +* paragraph-start: Paragraphs. +* parse-sexp-ignore-comments: Syntax Entry. +* PATH: Startup Paths. +* picture-mode-hook: Picture. +* picture-tab-chars: Tabs in Picture. +* plain-TeX-mode-hook: TeX Print. +* print-diary-entries-hook: Diary Customizing. +* repeat-complex-command-map: Keymaps. +* require-final-newline: Saving. +* save-abbrevs: Saving Abbrevs. +* scheme-mode-hook: Program Modes. +* scroll-conservatively: Scrolling. +* scroll-step: Scrolling. +* search-slow-speed: Incremental Search. +* search-slow-window-lines: Incremental Search. +* selective-display-ellipses <1>: Outline Visibility. +* selective-display-ellipses: Display Vars. +* sentence-end: Sentences. +* shell-cd-regexp: Interactive Shell. +* shell-file-name: Single Shell. +* shell-popd-regexp: Interactive Shell. +* shell-prompt-pattern: Shell Mode. +* shell-pushd-regexp: Interactive Shell. +* sound-alist: Audible Bell. +* tab-stop-list: Tab Stops. +* tab-width: Display Vars. +* tag-mark-stack-max: Find Tag. +* tag-table-alist <1>: Find Tag. +* tag-table-alist: Select Tags Table. +* tags-always-build-completion-table: Select Tags Table. +* tags-build-completion-table: Find Tag. +* tags-file-name <1>: Find Tag. +* tags-file-name: Select Tags Table. +* term-file-prefix: Terminal Init. +* term-setup-hook: Terminal Init. +* TeX-mode-hook: TeX Print. +* text-mode-hook: Text Mode. +* text-pointer-glyph: Mouse Selection. +* today-invisible-calendar-hook: Calendar Customizing. +* today-visible-calendar-hook: Calendar Customizing. +* track-eol: Moving Point. +* truncate-lines: Continuation Lines. +* truncate-partial-width-windows: Split Window. +* vc-command-messages: Variables for Check-in/out. +* vc-comment-alist: Version Headers. +* vc-default-back-end: Editing with VC. +* vc-header-alist: Version Headers. +* vc-initial-comment: Editing with VC. +* vc-keep-workfiles: Editing with VC. +* vc-log-mode-hook: Log Entries. +* vc-make-backup-files: Editing with VC. +* vc-mistrust-permissions: Variables for Check-in/out. +* vc-path: Variables for Check-in/out. +* vc-static-header-alist: Version Headers. +* vc-suppress-confirm: Variables for Check-in/out. +* version-control: Backup Names. +* view-calendar-holidays-initially: Calendar Customizing. +* view-diary-entries-initially: Calendar Customizing. +* window-min-height: Change Window. +* window-min-width: Change Window. +* write-file-hooks: Saving. +* x-frame-defaults: XEmacs under X. +* zmacs-region-stays: Active Regions. +* zmacs-regions: Active Regions.  -File: xemacs.info, Node: Key Help, Next: Name Help, Prev: Help Summary, Up: Help - -Documentation for a Key -======================= +File: xemacs.info, Node: Concept Index, Next: Frame, Prev: Variable Index, Up: Top - The most basic `C-h' options are `C-h c' (`describe-key-briefly') -and `C-h k' (`describe-key'). `C-h c KEY' prints in the echo area the -name of the command that KEY is bound to. For example, `C-h c C-f' -prints `forward-char'. Since command names are chosen to describe what -the commands do, this is a good way to get a very brief description of -what KEY does. +Concept Index +************* - `C-h k KEY' is similar to `C-h c' but gives more information. It -displays the documentation string of the function KEY is bound to as -well as its name. KEY is a string or vector of events. When called -interactively, KEY may also be a menu selection. This information does -not usually fit into the echo area, so a window is used for the display. - - `C-h c' and `C-h k' work for any sort of key sequences, including -function keys and mouse events. +* Menu: - -File: xemacs.info, Node: Name Help, Next: Apropos, Prev: Key Help, Up: Help - -Help by Command or Variable Name -================================ - - `C-h f' (`describe-function') reads the name of a Lisp function -using the minibuffer, then displays that function's documentation -string in a window. Since commands are Lisp functions, you can use the -argument FUNCTION to get the documentation of a command that you know -by name. For example, - - C-h f auto-fill-mode - -displays the documentation for `auto-fill-mode'. Using `C-h f' is the -only way to see the documentation of a command that is not bound to any -key, that is, a command you would normally call using `M-x'. If the -variable `describe-function-show-arglist' is `t', `describe-function' -shows its arglist if the FUNCTION is not an autoload function. - - `C-h f' is also useful for Lisp functions that you are planning to -use in a Lisp program. For example, if you have just written the -expression `(make-vector len)' and want to make sure you are using -`make-vector' properly, type `C-h f make-vector '. Because `C-h -f' allows all function names, not just command names, you may find that -some of your favorite abbreviations that work in `M-x' don't work in -`C-h f'. An abbreviation may be unique among command names, yet fail -to be unique when other function names are allowed. - - The function name for `C-h f' to describe has a default which is -used if you type leaving the minibuffer empty. The default is -the function called by the innermost Lisp expression in the buffer -around point, _provided_ that is a valid, defined Lisp function name. -For example, if point is located following the text `(make-vector (car -x)', the innermost list containing point is the one that starts with -`(make-vector', so the default is to describe the function -`make-vector'. - - `C-h f' is often useful just to verify that you have the right -spelling for the function name. If `C-h f' mentions a name from the -buffer as the default, that name must be defined as a Lisp function. If -that is all you want to know, just type `C-g' to cancel the `C-h f' -command, then go on editing. - - `C-h w COMMAND ' (`where-is') tells you what keys are bound to -COMMAND. It prints a list of the keys in the echo area. Alternatively, -it informs you that a command is not bound to any keys, which implies -that you must use `M-x' to call the command. - - `C-h v' (`describe-variable') is like `C-h f' but describes Lisp -variables instead of Lisp functions. Its default is the Lisp symbol -around or before point, if that is the name of a known Lisp variable. -*Note Variables::. +* $ in regexp: Regexps. +* ( in regexp: Regexps. +* ) in regexp: Regexps. +* * in regexp: Regexps. +* *? in regexp: Regexps. +* + in regexp: Regexps. +* +? in regexp: Regexps. +* . in regexp: Regexps. +* .mailrc file: Mail Headers. +* // in file name: Minibuffer File. +* ? in regexp: Regexps. +* ?? in regexp: Regexps. +* [ in regexp: Regexps. +* \ in regexp: Regexps. +* \' in regexp: Regexps. +* \(?: in regexp: Regexps. +* \< in regexp: Regexps. +* \= in regexp: Regexps. +* \> in regexp: Regexps. +* \` in regexp: Regexps. +* \B in regexp: Regexps. +* \b in regexp: Regexps. +* \S in regexp: Regexps. +* \s in regexp: Regexps. +* \W in regexp: Regexps. +* \w in regexp: Regexps. +* \{n,m\} in regexp: Regexps. +* ] in regexp: Regexps. +* ^ in regexp: Regexps. +* Abbrev mode: Minor Modes. +* abbrevs: Abbrevs. +* aborting: Quitting. +* accumulating text: Accumulating Text. +* active fields (customization buffer): Customization Groups. +* active regions: Active Regions. +* adding menu items: Menu Customization. +* adding menus: Menu Customization. +* againformation: Dissociated Press. +* Apps menu <1>: Apps Menu. +* Apps menu: Pull-down Menus. +* apropos: Apropos. +* architecture-specific directories: Startup Paths. +* arguments (from shell): Command Switches. +* arrow keys: Moving Point. +* ASCII: Intro to Keystrokes. +* Asm mode: Asm Mode. +* astronomical day numbers: Calendar Systems. +* audible bell, changing: Audible Bell. +* Auto Delete Selection menu item: Options Menu. +* Auto Fill mode <1>: Minor Modes. +* Auto Fill mode <2>: Comments. +* Auto Fill mode: Auto Fill. +* Auto-Save mode: Auto Save. +* autoload: Loading. +* automatic package install: Automatically. +* available packages: Available Packages. +* backup file: Backup. +* batch mode: Command Switches. +* beginning of line in regexp: Regexps. +* bell, changing: Audible Bell. +* binary packages: Package Terminology. +* binding: Commands. +* blank lines <1>: Comments. +* blank lines: Blank Lines. +* body lines (Outline mode): Outline Format. +* bold font: Face Customization. +* bookmarks: Bookmarks. +* boredom: Amusements. +* buffer: Frame. +* buffer menu: Several Buffers. +* buffers: Buffers. +* Buffers menu <1>: Buffers Menu. +* Buffers menu: Pull-down Menus. +* Buffers Menu Length... menu item: Options Menu. +* Buffers Sub-Menus menu item: Options Menu. +* buggestion: Dissociated Press. +* bugs: Bugs. +* building packages: Building Packages. +* byte code: Compiling Libraries. +* C: Programs. +* C mode: Program Modes. +* C++ class browser, tags: Tags. +* calendar: Calendar/Diary. +* calendar and LaTeX: LaTeX Calendar. +* calendar, first day of week: Move to Beginning or End. +* candle lighting times: Sexp Diary Entries. +* case conversion <1>: Case. +* case conversion: Fixing Case. +* Case Sensitive Search menu item: Options Menu. +* CCL programs: Mule and Fonts. +* centering: Fill Commands. +* change log: Change Log. +* changing buffers: Select Buffer. +* changing menu items: Menu Customization. +* character set: Intro to Keystrokes. +* character set (in regexp): Regexps. +* checking in files: Concepts of VC. +* checking out files: Concepts of VC. +* Chinese: Mule. +* Chinese calendar: Calendar Systems. +* choosing packages <1>: Which Packages. +* choosing packages: Installing Packages. +* class browser, C++: Tags. +* Clear menu item: Edit Menu. +* clipboard selections: X Clipboard Selection. +* coding systems: Coding Systems. +* command <1>: Key Bindings. +* command: Commands. +* command history: Repetition. +* command line arguments: Command Switches. +* command name: Key Bindings. +* comments: Comments. +* comparing files: Comparing Files. +* compilation errors: Compilation. +* compiling files: Compilation. +* completion: Completion. +* completion (symbol names): Lisp Completion. +* continuation line: Continuation Lines. +* Control-Meta: Lists. +* Coptic calendar: Calendar Systems. +* Copy menu item: Edit Menu. +* copying files: Misc File Ops. +* copying text <1>: Accumulating Text. +* copying text: Yanking. +* core distribution: Installing Packages. +* crashes: Auto Save. +* creating directories: File Names. +* creating files: Visiting. +* current buffer: Buffers. +* current stack frame: Lisp Debug. +* cursor <1>: Inserting Text. +* cursor: Point. +* cursor motion: Moving Point. +* customization <1>: Customization. +* customization <2>: Lisp Indent. +* customization: Commands. +* customization buffer: Easy Customization. +* customization groups: Customization Groups. +* customizing faces: Face Customization. +* cut buffers: X Selection Commands. +* Cut menu item: Edit Menu. +* cutting: Killing. +* Cyrillic: Mule. +* day of year: General Calendar. +* daylight savings time: Daylight Savings. +* debugger: Lisp Debug. +* default argument: Minibuffer. +* defuns: Defuns. +* Delete Frame menu item: File Menu. +* deleting blank lines: Blank Lines. +* deleting characters and lines: Erasing. +* deleting menu items: Menu Customization. +* deleting packages: Removing Packages. +* deletion <1>: Killing. +* deletion: Inserting Text. +* deletion (of files) <1>: Misc File Ops. +* deletion (of files): Dired. +* diary: Diary. +* diary buffer: Fancy Diary Display. +* diary file: Format of Diary File. +* ding: Audible Bell. +* directories: Startup Paths. +* directory hierarchies: Startup Paths. +* directory listing: ListDir. +* Dired: Dired. +* disabled command: Disabling. +* disabling menu items: Menu Customization. +* Distribution: License. +* doctor: Total Frustration. +* double slash in file name: Minibuffer File. +* drastic changes: Reverting. +* dribble file: Bugs. +* early package hierarchies: Startup Paths. +* Ebrowse: Tags. +* echo area: Echo Area. +* Edit menu <1>: Edit Menu. +* Edit menu: Pull-down Menus. +* editable fields (customization buffer): Customization Groups. +* editing level, recursive <1>: Quitting. +* editing level, recursive: Recursive Edit. +* EDT: Emulation. +* Eliza: Total Frustration. +* Emacs initialization file: Init File. +* Emacs-Lisp mode: Lisp Eval. +* enabling menu items: Menu Customization. +* encoding of characters: Mule. +* End Macro Recording menu item: Edit Menu. +* entering XEmacs: Entering Emacs. +* environment: Single Shell. +* erasing characters and lines: Erasing. +* error log: Compilation. +* etags program: Create Tags Table. +* Ethiopic calendar: Calendar Systems. +* Execute Last Macro menu item: Edit Menu. +* Exit Emacs menu item: File Menu. +* exiting <1>: Recursive Edit. +* exiting: Exiting. +* expansion (of abbrevs): Abbrevs. +* expression: Lists. +* file dates: Interlocking. +* file directory: ListDir. +* File menu <1>: File Menu. +* File menu: Pull-down Menus. +* file names: File Names. +* file protection: Interlocking. +* files <1>: Visiting. +* files <2>: Files. +* files: Basic Files. +* files, remote: Files. +* fill prefix: Fill Prefix. +* filling: Filling. +* font encoding: Mule and Fonts. +* Font menu item: Options Menu. +* font registry: Mule and Fonts. +* fonts: Mule and Fonts. +* fonts and faces: Face Customization. +* formfeed: Pages. +* Fortran mode: Fortran. +* frame: Frame. +* French Revolutionary calendar: Calendar Systems. +* function <1>: Key Bindings. +* function: Commands. +* General Public License: License. +* getting help with keys: Basic Help. +* global keymap: Keymaps. +* global substitution: Replace. +* graphic characters: Inserting Text. +* Greek: Mule. +* Gregorian calendar: Other Calendars. +* grinding: Grinding. +* hardcopy: Hardcopy. +* header (TeX mode): TeX Print. +* headers (of mail message): Mail Headers. +* heading lines (Outline mode): Outline Format. +* Hebrew calendar: Calendar Systems. +* help: Help. +* Help menu <1>: Help Menu. +* Help menu: Pull-down Menus. +* hierarchies: Startup Paths. +* history of commands: Repetition. +* history of minibuffer input: Minibuffer History. +* holiday forms: Holiday Customizing. +* holidays: Holidays. +* horizontal scrolling: Horizontal Scrolling. +* Icomplete mode: Completion Options. +* ignoriginal: Dissociated Press. +* indentation <1>: Comments. +* indentation <2>: Grinding. +* indentation: Indentation. +* inferior process: Compilation. +* Info: Misc Help. +* init file: Init File. +* input methods: Input Methods. +* Insert File... menu item: File Menu. +* inserting blank lines: Blank Lines. +* insertion: Inserting Text. +* install: Installing Packages. +* installing packages: Installing Packages. +* international scripts: Mule. +* interval operator (in regexps): Etags Regexps. +* invisible lines: Outline Mode. +* IPA: Mule. +* Islamic calendar: Calendar Systems. +* ISO commercial calendar: Calendar Systems. +* italic font: Face Customization. +* Japanese: Mule. +* Julian calendar: Calendar Systems. +* Julian day numbers: Calendar Systems. +* justification: Fill Commands. +* key rebinding, permanent: Init File. +* key rebinding, this session: Rebinding. +* keyboard macros: Keyboard Macros. +* keycode: Super and Hyper Keys. +* keymap <1>: Keymaps. +* keymap: Commands. +* keystroke: Intro to Keystrokes. +* keysym: Intro to Keystrokes. +* keysyms: Super and Hyper Keys. +* Kill Buffer menu item: File Menu. +* kill ring: Yanking. +* killing: Killing. +* killing characters and lines: Erasing. +* killing Emacs: Exiting. +* Korean: Mule. +* language environments: Language Environments. +* last package hierarchies: Startup Paths. +* late package hierarchies: Startup Paths. +* LaTeX: TeX Mode. +* leaving Emacs: Exiting. +* libraries: Lisp Libraries. +* license to copy XEmacs: License. +* line number: Position Info. +* line wrapping: Continuation Lines. +* Lisp: Programs. +* Lisp mode: Program Modes. +* list: Lists. +* loading libraries: Loading. +* loading Lisp code: Lisp Libraries. +* local keymap: Keymaps. +* local variables: Locals. +* local variables in files: File Variables. +* local.rules: Local.rules File. +* locking and version control: Concepts of VC. +* log entry: Editing with VC. +* mail <1>: Reading Mail. +* mail: Sending Mail. +* major modes: Major Modes. +* make: Compilation. +* manual package install: Manually. +* manuals, on-line: Misc Help. +* mark: Mark. +* mark ring <1>: Mark and Region. +* mark ring: Mark Ring. +* Markov chain: Dissociated Press. +* master file: Concepts of VC. +* matching parentheses: Matching. +* Mayan calendar: Calendar Systems. +* Mayan calendar round: Mayan Calendar. +* Mayan haab calendar: Mayan Calendar. +* Mayan long count: Mayan Calendar. +* Mayan tzolkin calendar: Mayan Calendar. +* menus <1>: Change Window. +* menus: Pull-down Menus. +* message <1>: Reading Mail. +* message: Sending Mail. +* Meta: Words. +* minibuffer <1>: Keymaps. +* minibuffer <2>: M-x. +* minibuffer: Minibuffer. +* minibuffer history: Minibuffer History. +* minor modes: Minor Modes. +* mistakes, correcting <1>: Fixit. +* mistakes, correcting: Undo. +* mocklisp: Mocklisp. +* mode hook: Program Modes. +* mode line <1>: Minor Modes. +* mode line: Mode Line. +* mode, Term: Term Mode. +* modified (buffer): Visiting. +* modifier key: Intro to Keystrokes. +* modifier mapping: Super and Hyper Keys. +* moon, phases of: Lunar Phases. +* mouse operations: Additional Mouse Operations. +* mouse selection: Mouse Selection. +* movement: Moving Point. +* moving inside the calendar: Calendar Motion. +* moving point: Moving Point. +* moving text: Yanking. +* moving the cursor: Moving Point. +* MULE: Mule. +* multi-frame XEmacs: XEmacs under X. +* multibyte characters: Mule. +* named configurations (RCS): Snapshot Caveats. +* narrowing: Narrowing. +* New Frame menu item: File Menu. +* newline: Inserting Text. +* non-incremental search: Non-Incremental Search. +* nroff: Nroff Mode. +* numeric arguments: Arguments. +* omer count: Sexp Diary Entries. +* on-line manuals: Misc Help. +* Open File, New Frame... menu item: File Menu. +* Open File... menu item: File Menu. +* option <1>: Examining. +* option: Variables. +* Options menu <1>: Options Menu. +* Options menu: Pull-down Menus. +* other editors: Emulation. +* outlines: Outline Mode. +* outragedy: Dissociated Press. +* Overstrike menu item: Options Menu. +* Overwrite mode: Minor Modes. +* package building: Building Packages. +* package distributions: Package Terminology. +* package hierarchies: Startup Paths. +* package path: Startup Paths. +* package tools: Automatically. +* packages <1>: Available Packages. +* packages: Packages. +* page number: Position Info. +* pages: Pages. +* paragraphs: Paragraphs. +* parasha, weekly: Sexp Diary Entries. +* Paren Highlighting menu item: Options Menu. +* parentheses: Matching. +* Paste menu item: Edit Menu. +* pasting: Yanking. +* path: Startup Paths. +* paths: Startup Paths. +* per-buffer variables: Locals. +* Persian calendar: Calendar Systems. +* phases of the moon: Lunar Phases. +* pictures: Picture. +* point <1>: Inserting Text. +* point: Point. +* pointer face: Mouse Selection. +* pointer shapes: Mouse Selection. +* prefix key sequence: Key Sequences. +* presidentagon: Dissociated Press. +* primary selections: X Selection Commands. +* Print Buffer menu item: File Menu. +* prompt: Minibuffer. +* properbose: Dissociated Press. +* Pull-down Menus <1>: Change Window. +* Pull-down Menus: Pull-down Menus. +* query replace: Query Replace. +* quitting: Quitting. +* quitting (in search): Incremental Search. +* quitting Emacs: Exiting. +* quoting: Inserting Text. +* random sentences: CONX. +* RCS: Concepts of VC. +* Read Only menu item: Options Menu. +* read-only buffer: Misc Buffer. +* rebinding keys, permanently: Init File. +* rebinding keys, this session: Rebinding. +* rectangle <1>: Rectangles in Picture. +* rectangle: RegRect. +* rectangles: Rectangles. +* recursive editing level <1>: Quitting. +* recursive editing level: Recursive Edit. +* redefining keys: Key Bindings Using Strings. +* regexp: Regexp Search. +* regexp alternative: Regexps. +* regexp grouping: Regexps. +* region <1>: Case. +* region: Mark. +* registered file: Concepts of VC. +* registers: Registers. +* regular expression: Regexp Search. +* regular packages: Package Terminology. +* remote files: Files. +* removing directories: File Names. +* removing packages: Removing Packages. +* replacement: Replace. +* restriction: Narrowing. +* Revert Buffer menu item: File Menu. +* root of a hierarchy: Startup Paths. +* rosh hodesh: Sexp Diary Entries. +* Russian: Mule. +* Save Buffer As ... menu item: File Menu. +* Save Buffer menu item: File Menu. +* Save Options: Options Menu. +* saving: Visiting. +* saving option value: Changing an Option. +* SCCS: Concepts of VC. +* Scheme mode: Program Modes. +* scrolling: Scrolling. +* scrolling in the calendar: Scroll Calendar. +* searching: Search. +* selected buffer: Buffers. +* selected window: Basic Window. +* selective display: Outline Mode. +* self-documentation: Help. +* sentences: Sentences. +* setting option value: Changing an Option. +* setting variables: Examining. +* sexp: Lists. +* sexp diary entries: Sexp Diary Entries. +* shell commands: Shell. +* Shell mode: Shell Mode. +* shift modifier: Representing Keystrokes. +* shrinking XEmacs frame: Exiting. +* simultaneous editing: Interlocking. +* single-file packages: Package Terminology. +* site-specific directories: Startup Paths. +* Size menu item: Options Menu. +* slashes repeated in file name: Minibuffer File. +* snapshots and version control: Snapshots. +* sorting: Sorting. +* sorting diary entries: Fancy Diary Display. +* source packages: Package Terminology. +* spelling: Spelling. +* Split Frame: File Menu. +* Start Macro Recording menu item: Edit Menu. +* starting XEmacs: Entering Emacs. +* startup paths: Startup Paths. +* string substitution: Replace. +* subshell: Shell. +* subtree (Outline mode): Outline Visibility. +* sumo package install: Sumo. +* sunrise and sunset: Sunrise/Sunset. +* suspending: Exiting. +* switching buffers: Select Buffer. +* Syntax Highlighting menu item: Options Menu. +* syntax table <1>: Syntax. +* syntax table: Words. +* tags table: Tags. +* tags, C++: Tags. +* Teach Extended Commands menu item: Options Menu. +* techniquitous: Dissociated Press. +* television: Appending Kills. +* Term mode: Term Mode. +* termscript file: Bugs. +* TeX: TeX Mode. +* text: Text. +* Text mode: Text Mode. +* Tools menu <1>: Tools Menu. +* Tools menu: Pull-down Menus. +* top level: Mode Line. +* transposition <1>: Lists. +* transposition <2>: Words. +* transposition: Transpose. +* truncation: Continuation Lines. +* typos: Fixit. +* Un-split (Keep Others): File Menu. +* Un-split (Keep This): File Menu. +* undo: Undo. +* Undo menu item: Edit Menu. +* variable: Variables. +* variables: Commands. +* version control: Version Control. +* version-specific directories: Startup Paths. +* vi: Emulation. +* viewing: Misc File Ops. +* Viper: Emulation. +* visiting: Visiting. +* visiting files: Visiting. +* weeks, which day they start on: Move to Beginning or End. +* Weight menu item: Options Menu. +* which packages: Which Packages. +* widening: Narrowing. +* window: Frame. +* windows: Windows. +* Windows menu: Change Window. +* word search: Word Search. +* words <1>: Case. +* words <2>: Words. +* words: Fixing Case. +* work file: Concepts of VC. +* wrapping: Continuation Lines. +* X resources: X Resources. +* yahrzeits <1>: Sexp Diary Entries. +* yahrzeits: From Other Calendar. +* yanking: Yanking. +* | in regexp: Regexps. - -File: xemacs.info, Node: Apropos, Next: Library Keywords, Prev: Name Help, Up: Help - -Apropos -======= - -`C-h A' - Show only symbols that are names of commands (`command-apropos'). - -`M-x apropos REGEXP' - Show all symbols whose names contain matches for REGEXP. - - A more sophisticated sort of question to ask is, "What are the -commands for working with files?" To ask this question, type `C-h a -file ', which displays a list of all command names that contain -`file', including `copy-file', `find-file', and so on. With each -command name appears a brief description of how to use the command, and -what keys you can currently invoke it with. For example, it would say -that you can invoke `find-file' by typing `C-x C-f'. The `A' in `C-h -A' stands for `Apropos'; `C-h A' runs the command `command-apropos'. -This command normally checks only commands (interactive functions); if -you specify a prefix argument, it checks noninteractive functions as -well. - - Because `C-h A' looks only for functions whose names contain the -string you specify, you must use ingenuity in choosing the string. If -you are looking for commands for killing backwards and `C-h a -kill-backwards ' doesn't reveal any, don't give up. Try just -`kill', or just `backwards', or just `back'. Be persistent. Pretend -you are playing Adventure. Also note that you can use a regular -expression as the argument, for more flexibility (*note Regexps::). - - Here is a set of arguments to give to `C-h a' that covers many -classes of XEmacs commands, since there are strong conventions for -naming the standard XEmacs commands. By giving you a feel for the -naming conventions, this set should also serve to aid you in developing -a technique for picking `apropos' strings. - - char, line, word, sentence, paragraph, region, page, sexp, list, - defun, rect, buffer, frame, window, face, file, dir, register, - mode, beginning, end, forward, backward, next, previous, up, down, - search, goto, kill, delete, mark, insert, yank, fill, indent, - case, change, set, what, list, find, view, describe, default. - - To list all Lisp symbols that contain a match for a regexp, not just -the ones that are defined as commands, use the command `M-x apropos' -instead of `C-h A'. This command does not check key bindings by -default; specify a numeric argument if you want it to check them. - - The `apropos-documentation' command is like `apropos' except that it -searches documentation strings for matches for the specified regular -expression. - - The `apropos-value' command is like `apropos' except that it -searches symbols' values for matches for the specified regular -expression. This command does not check function definitions or -property lists by default; specify a numeric argument if you want it to -check them. - - If the variable `apropos-do-all' is non-`nil', the commands above -all behave as if they had been given a prefix argument. - - If you want more information about a function definition, variable or -symbol property listed in the Apropos buffer, you can click on it with -`Mouse-2' or move there and type .