-temporarily invisible. Three diagonal dots in the last column (instead
-of the curved arrow inform you that truncation is in effect.
-
- To turn off continuation for a particular buffer, set the variable
-`truncate-lines' to non-`nil' in that buffer. Truncation instead of
-continuation also happens whenever horizontal scrolling is in use, and
-optionally whenever side-by-side windows are in use (*note Windows::).
-Altering the value of `truncate-lines' makes it local to the current
-buffer; until that time, the default value is in effect. The default
-is initially `nil'. *Note Locals::.
-
-\1f
-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-='
- Print number of lines and characters in the current region
- (`count-lines-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::).
-
- The command `C-x =' (`what-cursor-position') provides information
-about point and about the column the cursor is in. It prints a line in
-the echo area that looks like this:
-
- Char: x (0170) point=65986 of 563027(12%) column 44
-
-(In fact, this is the output produced when point is before `column 44'
-in the example.)
-
- The two values after `Char:' describe the character following point,
-first by showing it and second by giving its octal character code.
-
- `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: x (0170) point=65986 of 563025(12%) <65102 - 68533> column 44
-
-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
-
-\1f
-File: xemacs.info, Node: Arguments, Prev: Position Info, Up: Basic
-
-Numeric Arguments
-=================
-
- Any Emacs command can be given a "numeric 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
-backwards.
-
- If your keyboard has a <META> 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 <META> key. For example,
- M-5 C-n
-
-moves 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.
-
- 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 shift
-keys. To type a negative argument, start with a minus sign. Just a
-minus sign normally means -1. `C-u' works on all terminals.
-
- `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 will be
-described when they come up; they are always to make the individual
-command more convenient to use.
-
-\1f
-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.
-
-\1f
-File: xemacs.info, Node: Minibuffer, Next: M-x, Prev: Undo, Up: Top
-
-The Minibuffer
-**************
-
- Emacs commands use the "minibuffer" to read arguments more
-complicated than a single number. Minibuffer arguments can be file
-names, buffer names, Lisp function names, Emacs command names, Lisp
-expressions, and many other things, depending on the command reading the
-argument. To edit the argument in the minibuffer, you can use Emacs
-editing commands.
-
- 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" indicating what kind of input you should supply and how it
-will be used. The prompt is often derived from the name of the command
-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
-<RET>). 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 <RET>.
-
- The simplest way to give a minibuffer argument is to type the text
-you want, terminated by <RET> to exit the minibuffer. To get out of
-the minibuffer and cancel the command that it was for, type `C-g'.
-
- Since the minibuffer uses the screen space of the echo area, it can
-conflict with other ways Emacs customarily uses the echo area. Here is
-how Emacs 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 you use a command in the minibuffer whose purpose is to print a
- message in the echo area (for example `C-x =') the message is
- displayed 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.
-* Repetition:: Re-executing commands that used the minibuffer.
-
-\1f
-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
-informs you in which directory the file will be looked for if you do
-not specify a different one. For example, the minibuffer might start
-out with:
-
- 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', the file that you visit
-will be the one named
-`/u2/emacs/lisp/simple.el'. Alternatively, you can use `M-<DEL>' to
-kill directory names you don't want (*note Words::).
-
- You can also type an absolute file name, one starting with a slash
-or a tilde, ignoring the default directory. For example, to find the
-file `/etc/termcap', just type the name, giving:
-
- Find File: /u2/emacs/src//etc/termcap
-
-Two slashes in a row are not normally meaningful in Unix file names, but
-they are allowed in XEmacs. They mean, "ignore everything before the
-second slash in the pair." Thus, `/u2/emacs/src/' is ignored, 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.
-
-\1f
-File: xemacs.info, Node: Minibuffer Edit, Next: Completion, Prev: Minibuffer File, Up: Minibuffer
-
-Editing in the Minibuffer
-=========================
-
- The minibuffer is an Emacs buffer (albeit a peculiar one), and the
-usual Emacs commands are available for editing the text of an argument
-you are entering.
-
- Since <RET> in the minibuffer is defined to exit the minibuffer, you
-must use `C-o' or `C-q <LFD>' to insert a newline into the minibuffer.
-(Recall that a newline is really the <LFD> character.)
-
- 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. The minibuffer 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, however, some restrictions on the use of the minibuffer
-window. You cannot switch buffers in it--the minibuffer and its window
-are permanently attached. You also cannot split or kill the minibuffer
-window, but you can make it taller with `C-x ^'.
-
- If you are in the minibuffer and issue a command that displays help
-text in another window, that window will be scrolled if you type
-`M-C-v' while in the minibuffer until you exit the minibuffer. This
-feature is helpful if a completing minibuffer gives you a long list of
-possible completions.
-
- 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.
-
- Emacs 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 Emacs 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 be
-non-`nil', recursive use of the minibuffer is always allowed.