-\input texinfo @c -*-texinfo-*- -*- coding: latin-1 -*-
+\input texinfo @c -*- coding: latin-1; mode: texinfo; -*-
@c %**start of header
@setfilename ../info/efaq
@settitle GNU Emacs FAQ
@setchapternewpage odd
@c This is used in many places
-@set VER 21.1
-
-@c The @ifinfo stuff only appears in the Info version
-@ifinfo
-@dircategory Emacs
-@direntry
-* Emacs FAQ: (efaq). Frequently Asked Questions about Emacs.
-@end direntry
+@set VER 21.3
+@copying
+Copyright 2001, 2002 Free Software Foundation, Inc.
Copyright 1994,1995,1996,1997,1998,1999,2000 Reuven M. Lerner@*
Copyright 1992,1993 Steven Byrnes@*
Copyright 1990,1991,1992 Joseph Brian Wells@*
+@quotation
This list of frequently asked questions about GNU Emacs with answers
("FAQ") may be translated into other languages, transformed into other
formats (e.g. Texinfo, Info, WWW, WAIS), and updated with new information.
[This version has been somewhat edited from the last-posted version
(as of August 1999) for inclusion in the Emacs distribution.]
+@end quotation
+@end copying
-@end ifinfo
+@dircategory Emacs
+@direntry
+* Emacs FAQ: (efaq). Frequently Asked Questions about Emacs.
+@end direntry
@c The @titlepage stuff only appears in the printed version
@titlepage
@c The following two commands start the copyright page.
@page
@vskip 0pt plus 1filll
-Copyright @copyright{} 1994,1995,1996,1997,1998,1999,2000 Reuven M. Lerner@*
-Copyright @copyright{} 1992,1993 Steven Byrnes@*
-Copyright @copyright{} 1990,1991,1992 Joseph Brian Wells@*
-
-This list of frequently asked questions about GNU Emacs with answers
-("FAQ") may be translated into other languages, transformed into other
-formats (e.g. Texinfo, Info, WWW, WAIS), and updated with new information.
-
-The same conditions apply to any derivative of the FAQ as apply to the FAQ
-itself. Every copy of the FAQ must include this notice or an approved
-translation, information on who is currently maintaining the FAQ and how to
-contact them (including their e-mail address), and information on where the
-latest version of the FAQ is archived (including FTP information).
-
-The FAQ may be copied and redistributed under these conditions, except that
-the FAQ may not be embedded in a larger literary work unless that work
-itself allows free copying and redistribution.
-
-[This version has been somewhat edited from the last-posted version
-(as of August 1999) for inclusion in the Emacs distribution.]
+@insertcopying
@end titlepage
@node Top, FAQ notation, (dir), (dir)
@end menu
@node Basic keys, Extended commands, FAQ notation, FAQ notation
-@section What do these mean: @kbd{C-h}, @kbd{M-C-a}, @key{RET}, @kbd{@key{ESC} a}, etc.?
+@section What do these mean: @kbd{C-h}, @kbd{C-M-a}, @key{RET}, @kbd{@key{ESC} a}, etc.?
@cindex Basic keys
@cindex Control key, notation for
@cindex @key{Meta} key, notation for
@cindex Control-Meta characters, notation for
@cindex @kbd{C-h}, definition of
-@cindex @kbd{M-C-h}, definition of
+@cindex @kbd{C-M-h}, definition of
@cindex @key{DEL}, definition of
@cindex @key{ESC}, definition of
@cindex @key{LFD}, definition of
@node Newsgroup archives, Reporting bugs, Guidelines for newsgroup postings, General questions
@section Where can I get old postings to @uref{news:gnu.emacs.help} and other GNU groups?
-@cindex Archived postings from @uref{news:gnu.emacs.help}
+@cindex Archived postings from @code{gnu.emacs.help}
@cindex Usenet archives for GNU groups
@cindex Old Usenet postings for GNU groups
@node Getting a printed manual, Emacs Lisp documentation, Learning how to do something, Getting help
@section How do I get a printed copy of the Emacs manual?
@cindex Printed Emacs manual, obtaining
-@cindex Manual, obtaining a printed copy of
-@cindex Emacs manual, obtaining a printed copy of
+@cindex Manual, obtaining a printed or HTML copy of
+@cindex Emacs manual, obtaining a printed or HTML copy of
You can order a printed copy of the Emacs manual from the FSF. For
details see the @uref{http://www.gnu.org/order/order.html, GNU Web site}
@uref{http://www.gnu.org/manual/emacs/ps/emacs.ps.gz}
+@cindex HTML version of Emacs manual, obtaining
An HTML version of the manual is at
@uref{www.gnu.org/manual/emacs/index.html}
@cindex Toolbar support
Emacs 21 features a thorough rewrite of the display engine. The new
display engine supports variable-size fonts, images, and can play sounds
-on platforms which support that. As a result, the visual appearence of
+on platforms which support that. As a result, the visual appearance of
Emacs, when it runs on a windowed display, is much more reminiscent of
modern GUI programs, and includes 3D widgets (used for the mode line and
the scroll bars), a configurable and extensible toolbar, tooltips
@cindex Syntax highlighting on a TTY
@cindex Console, colors
-As of Emacs 21.1, colors and faces are supported in non-windowed mode,
+In Emacs 21.1 and later, colors and faces are supported in non-windowed mode,
i.e.@: on Unix and GNU/Linux text-only terminals and consoles, and when
invoked as @samp{emacs -nw} on X and MS-Windows. (Colors and faces were
supported in the MS-DOS port since Emacs 19.29.) Emacs automatically
Using @code{isearch-forward-regexp}:
-@kbd{M-C-s [^ @key{TAB} @key{LFD} C-q @key{RET} C-q C-l @key{SPC} -~]}
+@kbd{C-M-s [^ @key{TAB} @key{LFD} C-q @key{RET} C-q C-l @key{SPC} -~]}
To delete all unprintable characters, simply use replace-regexp:
(if (@var{some conditions are met}) (server-start))
@end lisp
-When this is done, Emacs starts a subprocess running a program called
-@samp{emacsserver}. @samp{emacsserver} creates a Unix domain socket.
+When this is done, Emacs creates a Unix domain socket.
The socket is either named @file{.emacs_server}, in the user's home directory,
or @file{esrv-@var{userid}-@var{systemname}}, in the @file{/tmp}
-directory, depending on how @samp{emacsserver} was compiled.
+directory, depending on your system. See @var{server-socket-name}.
To get your news reader, mail reader, etc., to invoke
@samp{emacsclient}, try setting the environment variable @code{EDITOR}
the matching parenthesis.
@item
-@kbd{M-C-f} (@code{forward-sexp}) and @kbd{M-C-b} (@code{backward-sexp})
+@kbd{C-M-f} (@code{forward-sexp}) and @kbd{C-M-b} (@code{backward-sexp})
will skip over one set of balanced parentheses, so you can see which
parentheses match. (You can train it to skip over balanced brackets
and braces at the same time by modifying the syntax table.)
will be inserted in the buffer.
@item
-In @code{emacs-lisp-mode}, typing @kbd{M-C-x} evaluates a top-level form
+In @code{emacs-lisp-mode}, typing @kbd{C-M-x} evaluates a top-level form
before or around point.
@item
@node Scrolling only one line, Replacing highlighted text, Turning on syntax highlighting, Common requests
@section How can I force Emacs to scroll only one line when I move past the bottom of the screen?
@cindex Scrolling only one line
-@cindex Reducing the increment when scrollng
+@cindex Reducing the increment when scrolling
Place the following Lisp form in your @file{.emacs} file:
@section How can I replace highlighted text with what I type?
@cindex @code{delete-selection-mode}
@cindex Replacing highlighted text
-@cindex Highlighing and replacing text
+@cindex Highlighting and replacing text
Use @code{delete-selection-mode}, which you can start automatically by
placing the following Lisp form in your @file{.emacs} file:
@end lisp
@node Escape sequences in shell output, , Filling paragraphs with a single space, Common requests
-@section Why do I get these strange escape sequences when I run
-@code{ls} from the Shell mode?
+@section Why these strange escape sequences from @code{ls} from the Shell mode?
@cindex Escape sequences in @code{ls} output
@cindex @code{ls} in Shell mode
@cindex Snail mail, ordering Emacs via
@cindex Postal service, ordering Emacs via
@cindex Distribution, retrieving Emacs
-@cindex Internet, retreiving from
+@cindex Internet, retrieving from
Look in the files @file{etc/DISTRIB} and @file{etc/FTP} for information
on nearby archive sites and @file{etc/ORDERS} for mail orders. If you
and more features can be expected in the future, but there are still many
differences between the two.
-The latest stable version of XEmacs as of this writing is 21.1; you can
+The latest stable branch of XEmacs as of this writing is 21.1; you can
get it at
-@uref{ftp://ftp.xemacs.org/pub/xemacs/current/xemacs-21.1.13.tar.gz}
+@uref{ftp://ftp.xemacs.org/pub/xemacs/xemacs-21.1.14.tar.gz}
More information about XEmacs, including a list of frequently asked
questions (FAQ), is available at
Windows 9X, Windows ME, and Windows 2000. More information is available
from
-@uref{ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/emacs.README}
+@uref{http://www.simtel.net/pub/djgpp/v2gnu/emacs.README}
The binary itself is available in the files @file{em*.zip} in the
directory
-@uref{ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/}
+@uref{http://www.simtel.net/pub/djgpp/v2gnu/}
If you prefer to compile Emacs for yourself, you can do so with the
current distribution directly. You will need a 386 (or
You can get the latest release of DJGPP by retrieving all of
the files in
-@uref{ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2*}
+@uref{http://www.simtel.net/pub/gnu/djgpp/v2*}
@item Unpacking program
The easiest way is to use @code{djtar} which comes with DJGPP v2.x,
@item make, mv, sed, and rm
All of these utilities are available at
-@uref{ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu}
+@uref{http://www.simtel.net/pub/gnu/djgpp/v2gnu}
16-bit utilities can be found in GNUish, at
-@uref{ftp://ftp.simtel.net/pub/simtelnet/gnu/gnuish}
+@uref{http://www.simtel.net/pub/gnuish/}
@noindent
(@code{mv} and @code{rm} are in the Fileutils package, @code{sed} and
4.3
@item Distribution
-@uref{ftp://archive.cis.ohio-state.edu/pub/emacs-lisp/modes/vip-mode.tar.Z}
+@uref{ftp://archive.cis.ohio-state.edu/pub/emacs-lisp/old-archive/modes/vip-mode.tar.Z}
@end table
2.00
@item Distribution
-@uref{http://www.netcom.com/~simmonmt/bbdb/index.html}
+@uref{http://bbdb.sf.net/}
@item Mailing lists
Subscription requests to @email{info-bbdb-request@@xemacs.org}@*
@section Why does the @key{Backspace} key invoke help?
@cindex Backspace key invokes help
@cindex Help invoked by Backspace
+@cindex DEL key does not delete
The @key{Backspace} key (on most keyboards) generates ASCII code 8.
@kbd{C-h} sends the same code. In Emacs by default @kbd{C-h} invokes
In this case, the @key{Backspace} key should be made to behave like
@key{Delete}. There are several methods.
+@itemize @minus
@item
-Some terminals (e.g., VT3## terminals) allow the character generated
-by the @key{Backspace} key to be changed from a setup menu.
+Some terminals (e.g., VT3## terminals) and terminal emulators (e.g.,
+TeraTerm) allow the character generated by the @key{Backspace} key to be
+changed from a setup menu.
@item
-You may be able to get a keyboard that is completely programmable.
+You may be able to get a keyboard that is completely programmable, or a
+terminal emulator that supports remapping of any key to any other key.
@item
-Under X or on a dumb terminal, it is possible to swap the
-@key{Backspace} and @key{Delete} keys inside Emacs:
+With Emacs 21.1 and later, you can control the effect of the
+@key{Backspace} and @key{Delete} keys, on both dumb terminals and a
+windowed displays, by customizing the option
+@code{normal-erase-is-backspace-mode}, or by invoking @kbd{M-x
+normal-erase-is-backspace}. See the documentation of these symbols
+(@pxref{Emacs Lisp documentation}) for more info.
+
+@item
+It is possible to swap the @key{Backspace} and @key{DEL} keys inside
+Emacs:
@lisp
(keyboard-translate ?\C-h ?\C-?)
@end lisp
-@xref{Swapping keys}, for further details of "keyboard-translate".
+@noindent
+This is the recommended method of forcing @key{Backspace} to act as
+@key{DEL}, because it works even in modes which bind @key{DEL} to
+something other than @code{delete-backward-char}.
+
+Similarly, you could remap @key{DEL} to act as @kbd{C-d}, which by
+default deletes forward:
+
+@lisp
+(keyboard-translate ?\C-? ?\C-d)
+@end lisp
+
+@xref{Swapping keys}, for further details about @code{keyboard-translate}.
@item
Another approach is to switch key bindings and put help on @kbd{C-x h}
(global-set-key "\C-xh" 'help-command)
@end lisp
+@noindent
+This method is not recommended, though: it only solves the problem for
+those modes which bind @key{DEL} to @code{delete-backward-char}. Modes
+which bind @key{DEL} to something else, such as @code{view-mode}, will
+not work as you expect when you press the @key{Backspace} key. For this
+reason, we recommend the @code{keyboard-translate} method, shown
+above.
+
Other popular key bindings for help are @kbd{M-?} and @kbd{C-x ?}.
+@end itemize
Don't try to bind @key{DEL} to @code{help-command}, because there are
many modes that have local bindings of @key{DEL} that will interfere.
@key{Delete} key to a command which deletes the character at point, to
make Emacs more consistent with keyboard operation on these systems.
+For more information about troubleshooting this problem, see @ref{DEL
+Does Not Delete, , If @key{DEL} Fails to Delete, emacs, The GNU Emacs
+Manual}.
+
@node stty and Backspace key, Swapping keys, Backspace invokes help, Key bindings
@section Why doesn't Emacs look at the @file{stty} settings for @key{Backspace} vs. @key{Delete}?
@cindex @file{stty} and Emacs
For X11: Make sure it really is a @key{Meta} key. Use @code{xev} to
find out what keysym your @key{Meta} key generates. It should be either
@code{Meta_L} or @code{Meta_R}. If it isn't, use @file{xmodmap} to fix
-the situation.
+the situation. If @key{Meta} does generate @code{Meta_L} or
+@code{Meta_R}, but @kbd{M-x} produces a non-ASCII character, put this in
+your @file{~/.Xdefaults} file:
+
+@example
+ XTerm*eightBitInput: false
+ XTerm*eightBitOutput: true
+@end example
@item
Make sure the @code{pty} the @code{xterm} is using is passing 8 bit
format, use the command @kbd{M-x unrmail}: it will prompt you for the
input and output file names.
+@pindex b2m
+Alternatively, you could use the @code{b2m} program supplied with
+Emacs. @code{b2m} is a filter, and is used like this:
+
+@example
+ b2m < @var{babyl-file} > @var{mbox-file}
+@end example
+
+@noindent
+where @var{babyl-file} is the name of the BABYL file, and
+@var{mbox-file} is the name of the file where the converted mail will
+be written.
+
@node Replying to the sender of a message, MIME with Emacs mail packages, Recovering mail files when Rmail munges them, Mail and news
@section How can I force Rmail to reply to the sender of a message, but not the other recipients?
@cindex Replying only to the sender of a message