1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-02-05 20:43:08 +00:00

Set VER to `22.1'.

(Basic editing): Explain how to use localized versions of the
Tutorial.  Mention that `C-h r' displays the manual.  Delete
obsolete WWW link to an Emacs 18 tutorial.
(Getting a printed manual): Point to the new locations of the
manuals on the GNU Web site.
(Emacs Lisp documentation): Explain that the Emacs Lisp manual is
available via Info (it was previously distributed separately).
(Installing Texinfo documentation): The latest version of Texinfo
is 4.8, not 4.0.
(Informational files for Emacs): COPYING is the GNU General Public
License, not the Emacs General Public License.
(Informational files for Emacs): Delete obsolete link to the
GNUinfo pages as they have been removed from the GNU Web site.
(New in Emacs 22): New node.
(Setting up a customization file): Say that most packages support
Customize nowadays.
(Colors on a TTY): Delete reference to instructions on how to
enable syntax highlighting, it is now enabled by default.
(Turning on abbrevs by default): Emacs now reads the abbrevs file
at startup automatically.
(Controlling case sensitivity): Mention `M-c' in isearch.
(Using an already running Emacs process): Emacs now creates the
socket in `/tmp/emacsUID'.  Fix typos.  Change default location of
gnuserv.  As emacsclient can now run Lisp code as well, delete a
sentence praising gnuserv for that.  Simplify description of how
the client/server operation works.
(Compiler error messages): Delete obsolete text (compile.el has
been rewritten).
(Indenting switch statements): Fix typo.
(Matching parentheses): Simplify setup instructions, mention the
menu bar item in the Options menu.
(Repeating a command as many times as possible): Mention `C-x e'.
(Going to a line by number): Mention new keymap and bindings
`M-g M-g', `M-g M-p' and `M-g M-n'.
(Turning on syntax highlighting): Now on by default.  Simplify.
(Replacing highlighted text): Use `1', not `t'.
(Problems with very large files): The maximum size is now 256MB on
32-bit machines.
(^M in the shell buffer): Mention `comint-process-echoes'.
(Emacs for Apple computers): Emacs 22 has native support for Mac
OS X.
(Translating names to IP addresses): Delete node.
(Binding keys to commands): Fix typo.
(SPC no longer completes file names): New node.
(MIME with Emacs mail packages): Delete section about the Emacs
MIME FAQ (it's not reachable anymore).
This commit is contained in:
Romain Francoise 2005-12-10 21:21:30 +00:00
parent d50d22f1f4
commit b6f2e1f5b8
2 changed files with 194 additions and 239 deletions

View File

@ -1,8 +1,60 @@
2005-12-10 Romain Francoise <romain@orebokech.com>
Update the Emacs FAQ for the 22.1 release.
* faq.texi: Set VER to `22.1'.
(Basic editing): Explain how to use localized versions of the
Tutorial. Mention that `C-h r' displays the manual. Delete
obsolete WWW link to an Emacs 18 tutorial.
(Getting a printed manual): Point to the new locations of the
manuals on the GNU Web site.
(Emacs Lisp documentation): Explain that the Emacs Lisp manual is
available via Info (it was previously distributed separately).
(Installing Texinfo documentation): The latest version of Texinfo
is 4.8, not 4.0.
(Informational files for Emacs): COPYING is the GNU General Public
License, not the Emacs General Public License.
(Informational files for Emacs): Delete obsolete link to the
GNUinfo pages as they have been removed from the GNU Web site.
(New in Emacs 22): New node.
(Setting up a customization file): Say that most packages support
Customize nowadays.
(Colors on a TTY): Delete reference to instructions on how to
enable syntax highlighting, it is now enabled by default.
(Turning on abbrevs by default): Emacs now reads the abbrevs file
at startup automatically.
(Controlling case sensitivity): Mention `M-c' in isearch.
(Using an already running Emacs process): Emacs now creates the
socket in `/tmp/emacsUID'. Fix typos. Change default location of
gnuserv. As emacsclient can now run Lisp code as well, delete a
sentence praising gnuserv for that. Simplify description of how
the client/server operation works.
(Compiler error messages): Delete obsolete text (compile.el has
been rewritten).
(Indenting switch statements): Fix typo.
(Matching parentheses): Simplify setup instructions, mention the
menu bar item in the Options menu.
(Repeating a command as many times as possible): Mention `C-x e'.
(Going to a line by number): Mention new keymap and bindings
`M-g M-g', `M-g M-p' and `M-g M-n'.
(Turning on syntax highlighting): Now on by default. Simplify.
(Replacing highlighted text): Use `1', not `t'.
(Problems with very large files): The maximum size is now 256MB on
32-bit machines.
(^M in the shell buffer): Mention `comint-process-echoes'.
(Emacs for Apple computers): Emacs 22 has native support for Mac
OS X.
(Translating names to IP addresses): Delete node.
(Binding keys to commands): Fix typo.
(SPC no longer completes file names): New node.
(MIME with Emacs mail packages): Delete section about the Emacs
MIME FAQ (it's not reachable anymore).
2005-12-10 David Koppelman <koppel@ece.lsu.edu>
* display.texi (Highlight Interactively): Include
global-hi-lock-mode. Add miscellaneous details and elaborations.
2005-12-09 Richard M. Stallman <rms@gnu.org>
* display.texi (Font Lock): Delete the Global FL menu item.
@ -120,7 +172,7 @@
2005-11-28 Jay Belanger <belanger@truman.edu>
* calc.texi: Change references of `M-#' to `C-x *' prefix.
* calc.texi: Change references of `M-#' to `C-x *' prefix.
2005-11-24 Carsten Dominik <dominik@science.uva.nl>

View File

@ -7,7 +7,7 @@
@setchapternewpage odd
@c This is used in many places
@set VER 21.3
@set VER 22.1
@copying
Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
@ -30,8 +30,8 @@ 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.]
[This version has been heavily edited since it was included in the Emacs
distribution.]
@end quotation
@end copying
@ -556,8 +556,11 @@ This chapter tells you how to get help with Emacs
@cindex Self-paced tutorial, invoking the
@cindex Help system, entering the
Type @kbd{C-h t} to invoke the self-paced tutorial. Just typing @kbd{C-h}
enters the help system.
Type @kbd{C-h t} to invoke the self-paced tutorial. Just typing
@kbd{C-h} enters the help system. Starting with Emacs 22, the tutorial
is available in many foreign languages such as French, German, Japanese,
Russian, etc. Use @kbd{M-x help-with-tutorial-spec-language @key{RET}}
to choose your language and start the tutorial.
Your system administrator may have changed @kbd{C-h} to act like
@key{DEL} to deal with local keyboards. You can use @kbd{M-x
@ -570,11 +573,6 @@ sequence listed. Each of the resulting key sequences invokes help.
Emacs help works best if it is invoked by a single key whose value
should be stored in the variable @code{help-char}.
There is also a WWW-based tutorial for Emacs 18, much of which is also
relevant for later versions of Emacs, available at
@uref{http://kufacts.cc.ukans.edu/cwis/writeups/misc/emacsguide.html}
@node Learning how to do something, Getting a printed manual, Basic editing, Getting help
@section How do I find out how to do something in Emacs?
@cindex Help for Emacs
@ -589,9 +587,9 @@ There are several methods for finding out how to do things in Emacs.
@cindex Reading the Emacs manual
@item
The complete text of the Emacs manual is available on-line via the Info
hypertext reader. Type @kbd{C-h i} to invoke Info. Typing @key{h}
immediately after entering Info will provide a short tutorial on how to
use it.
hypertext reader. Type @kbd{C-h r} to display the manual in Info mode.
Typing @key{h} immediately after entering Info will provide a short
tutorial on how to use it.
@cindex Lookup a subject in a manual
@cindex Index search in a manual
@ -668,12 +666,12 @@ file}).
If you absolutely have to print your own copy, and you don't have @TeX{},
you can get a PostScript version from
@uref{http://www.gnu.org/manual/emacs/ps/emacs.ps.gz}
@uref{http://www.gnu.org/software/emacs/manual/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}
@uref{http://www.gnu.org/software/emacs/manual/emacs.html}
@xref{Learning how to do something}, for how to view the manual on-line.
@ -688,24 +686,16 @@ An HTML version of the manual is at
Within Emacs, you can type @kbd{C-h f} to get the documentation for a
function, @kbd{C-h v} for a variable.
For more information, obtain the Emacs Lisp Reference Manual. Details
on ordering it from FSF are on the
@uref{http://www.gnu.org/order/order.html, GNU Web site}.
For more information, the Emacs Lisp Reference Manual is available
on-line, in Info format. @xref{Top, Emacs Lisp,, elisp, The
Emacs Lisp Reference Manual}.
The Emacs Lisp Reference Manual is also available on-line, in Info
format. Texinfo source for the manual (along with pregenerated Info
files) is available at
@uref{ftp://ftp.gnu.org/pub/gnu/emacs/elisp-manual-21-2.6.tar.gz}
and all mirrors of @samp{ftp.gnu.org} (for a list, @pxref{Current GNU
distributions}). @xref{Installing Texinfo documentation}, if you want
to install the Info files, or @ref{Printing a Texinfo file}, if you want
to use the Texinfo source to print the manual yourself.
You can also order a hardcopy of the manual, details on ordering it from
FSF are on the @uref{http://www.gnu.org/order/order.html, GNU Web site}.
An HTML version of the Emacs Lisp Reference Manual is available at
@uref{http://www.gnu.org/manual/elisp-manual-21-2.6/elisp.html}
@uref{http://www.gnu.org/software/emacs/elisp-manual/elisp.html}
@node Installing Texinfo documentation, Printing a Texinfo file, Emacs Lisp documentation, Getting help
@section How do I install a piece of Texinfo documentation?
@ -719,7 +709,7 @@ First, you must turn the Texinfo files into Info files. You may do this
using the stand-alone @file{makeinfo} program, available as part of the latest
Texinfo package at
@uref{ftp://ftp.gnu.org/pub/gnu/texinfo/texinfo-4.0.tar.gz}
@uref{ftp://ftp.gnu.org/pub/gnu/texinfo/texinfo-4.8.tar.gz}
and all mirrors of @samp{ftp.gnu.org} (for a list, @pxref{Current GNU
distributions}).
@ -903,7 +893,7 @@ where that is).
@table @file
@item COPYING
Emacs General Public License
GNU General Public License
@item DISTRIB
Emacs Availability Information, including the popular Free Software
@ -939,10 +929,6 @@ including ``Using Emacstool with GNU Emacs''
@end table
Latest versions of the above files also available at
@uref{ftp://ftp.gnu.org/pub/gnu/GNUinfo/}
More GNU information, including back issues of the @cite{GNU's
Bulletin}, are at
@ -1049,6 +1035,7 @@ latest version status.
* Latest version of Emacs::
* New in Emacs 20::
* New in Emacs 21::
* New in Emacs 22::
@end menu
@node Origin of the term Emacs, Latest version of Emacs, Status of Emacs, Status of Emacs
@ -1112,7 +1099,7 @@ calendar/diary, have been updated and enhanced to work with Emacs 20,
and are now included with the standard distribution.
@node New in Emacs 21, , New in Emacs 20, Status of Emacs
@node New in Emacs 21, New in Emacs 22, New in Emacs 20, Status of Emacs
@section What is different about Emacs 21?
@cindex Differences between Emacs 20 and Emacs 21
@cindex Emacs 21, new features in
@ -1134,6 +1121,39 @@ In addition, Emacs 21 supports faces on text-only terminals. This means
that you can now have colors when you run Emacs on a GNU/Linux console
and on @code{xterm} with @kbd{emacs -nw}.
@node New in Emacs 22, , New in Emacs 21, Status of Emacs
@section What is different about Emacs 22?
@cindex Differences between Emacs 21 and Emacs 22
@cindex Emacs 22, new features in
@cindex Recently introduced features
@c FIXME: Improve this node before the 22.1 release.
@cindex Default features
Font-lock mode, auto-compression mode, and file name shadow mode are now
enabled by default. It is now possible to follow links with
@kbd{mouse-1}.
@cindex Supported systems
Emacs 22 features support for GNU/Linux systems on S390 and X86-64
machines, as well as support for the Mac OS X and Cygwin operating
systems.
@cindex GTK+ Toolkit
@cindex Drag-and-drop
@cindex Mouse wheel
Emacs can now be built with GTK+ widgets, and supports drag-and-drop
operation on X. Mouse wheel support is now enabled by default.
@cindex New modes
Many new modes and packages have been included in Emacs, such as Leim,
Calc, Tramp and URL, as well as IDO, CUA, rcirc, conf-mode,
python-mode, table, tumme, SES, ruler, Flymake, Org, etc.
@cindex Documentation
@cindex Emacs Lisp Manual
In addition, Emacs 22 now includes the Emacs Lisp Reference Manual
(@pxref{Emacs Lisp documentation}) and the Emacs Lisp Intro.
@c ------------------------------------------------------------
@node Common requests, Bugs and problems, Status of Emacs, Top
@chapter Common requests
@ -1205,12 +1225,11 @@ it causes confusing non-standard behavior. Then they send questions to
@email{help-gnu-emacs@@gnu.org} asking why Emacs isn't behaving as
documented.
Beginning with version 20.1, Emacs includes the new Customize
facility, which can be invoked using @kbd{M-x customize @key{RET}}.
This allows users who are unfamiliar with Emacs Lisp to modify their
@file{.emacs} files in a relatively straightforward way, using menus
rather than Lisp code. Not all packages support Customize as of this
writing, but the number is growing fairly steadily.
Beginning with version 20.1, Emacs includes the new Customize facility,
which can be invoked using @kbd{M-x customize @key{RET}}. This allows
users who are unfamiliar with Emacs Lisp to modify their @file{.emacs}
files in a relatively straightforward way, using menus rather than Lisp
code. Most packages support Customize as of this writing.
While Customize might indeed make it easier to configure Emacs,
consider taking a bit of time to learn Emacs Lisp and modifying your
@ -1240,8 +1259,7 @@ capabilities.
The command @kbd{M-x list-colors-display} pops up a window which
exhibits all the colors Emacs knows about on the current display.
Syntax highlighting is usually turned off by default; see @ref{Turning
on syntax highlighting}, for instructions how to turn it on.
Syntax highlighting is on by default since version 22.1.
@node Debugging a customization file, Displaying the current line or column, Colors on a TTY, Common requests
@section How do I debug a @file{.emacs} file?
@ -1362,6 +1380,9 @@ Put this in your @file{.emacs} file:
(setq abbrev-mode t)))
@end lisp
Starting with Emacs 22, the standard abbrevs file is read automatically
at startup, so the first of these two forms becomes unnecessary.
@node Turning on auto-fill by default, Associating modes with files, Turning on abbrevs by default, Common requests
@section How do I turn on @code{auto-fill-mode} by default?
@cindex @code{auto-fill-mode}, activating automatically
@ -1510,6 +1531,8 @@ determines whether they are case sensitive:
Similarly, for replacing, the variable @code{case-replace} determines
whether replacements preserve case.
You can also toggle case sensitivity at will in isearch with @kbd{M-c}.
To change the case sensitivity just for one major mode, use the major
mode's hook. For example:
@ -1597,10 +1620,9 @@ or by invoking @code{server-start} from @file{.emacs}:
(if (@var{some conditions are met}) (server-start))
@end lisp
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 your system. See @code{server-socket-name}.
When this is done, Emacs creates a Unix domain socket named
@file{server} in @file{/tmp/emacs@var{userid}}. See
@code{server-socket-dir}.
To get your news reader, mail reader, etc., to invoke
@samp{emacsclient}, try setting the environment variable @code{EDITOR}
@ -1622,40 +1644,24 @@ EDITOR=emacsclient ; export EDITOR
@item
Normal use:
When @samp{emacsclient} is run, it connects to the @file{.emacs_server}
socket and passes its command line options to @samp{server}. When
@samp{server} receives these requests, it sends this information to the
the Emacs process, which at the next opportunity will visit the files
specified. (Line numbers can be specified just like with Emacs.) The
user will have to switch to the Emacs window by hand. When the user is
done editing a file, the user can type @kbd{C-x #} (or @kbd{M-x
server-edit}) to indicate this. If there is another buffer requested by
@code{emacsclient}, Emacs will switch to it; otherwise
When @samp{emacsclient} is run, it connects to the socket and passes its
command line options to Emacs, which at the next opportunity will visit
the files specified. (Line numbers can be specified just like with
Emacs.) The user will have to switch to the Emacs window by hand. When
the user is done editing a file, the user can type @kbd{C-x #} (or
@kbd{M-x server-edit}) to indicate this. If there is another buffer
requested by @code{emacsclient}, Emacs will switch to it; otherwise
@code{emacsclient} will exit, signaling the calling program to continue.
@samp{emacsclient} and @samp{server} must be running on machines which
share the same filesystem for this to work. The pathnames that
@samp{emacsclient} specifies should be correct for the filesystem that
the Emacs process sees. The Emacs process should not be suspended at
the time @samp{emacsclient} is invoked. On Unix and GNU/Linux systems,
@samp{emacsclient} should either be invoked from another X window, or
from a shell window inside Emacs itself, or from another interactive
session, e.g., by means of a @code{screen} program.
@cindex @code{gnuserv}
There is an enhanced version of @samp{emacsclient}/server called
There is an enhanced version of @samp{emacsclient} called
@samp{gnuserv}, written by @email{ange@@hplb.hpl.hp.com, Andy Norman}
(@pxref{Packages that do not come with Emacs}). @samp{gnuserv} uses
Internet domain sockets, so it can work across most network connections.
It also supports the execution of arbitrary Emacs Lisp forms and does
not require the client program to wait for completion.
The alpha version of an enhanced @samp{gnuserv} is available at
The most recent @samp{gnuserv} package is available at
@uref{ftp://ftp.wellfleet.com/netman/psmith/emacs/gnuserv-2.1alpha.tar.gz}
The version available from @uref{http://meltin.net/hacks/emacs/} is
more recent, and has been tested with Emacs 21.2.
@uref{http://meltin.net/hacks/emacs/}
@end itemize
@ -1666,23 +1672,7 @@ more recent, and has been tested with Emacs 21.2.
@cindex Regexps for recognizing compiler errors
@cindex Errors, recognizing compiler
The variable @code{compilation-error-regexp-alist} helps control how
Emacs parses your compiler output. It is a list of triplets of the form:
@code{(@var{regexp} @var{file-idx} @var{line-idx})}, where @var{regexp},
@var{file-idx} and @var{line-idx} are strings. To help determine what
the constituent elements should be, load @file{compile.el} and then type
@kbd{C-h v compilation-error-regexp-alist @key{RET}} to see the current
value. A good idea is to look at @file{compile.el} itself as the
comments included for this variable are quite useful---the regular
expressions required for your compiler's output may be very close to one
already provided. Once you have determined the proper regexps, use the
following to inform Emacs of your changes:
@lisp
(setq compilation-error-regexp-alist
(cons '(@var{regexp} @var{file-idx} @var{line-idx})
compilation-error-regexp-alist))
@end lisp
Customize the @code{compilation-error-regexp-alist} variable.
@node Indenting switch statements, Customizing C and C++ indentation, Compiler error messages, Common requests
@section How do I change the indentation for @code{switch}?
@ -1712,7 +1702,7 @@ The solution at first appears to be: set @code{c-indent-level} to 4 and
spacing of four instead of two.
The @emph{real} solution is to use @code{cc-mode} (the default mode for
C programming in Emacs 20 and later) and add the following line to yoyr
C programming in Emacs 20 and later) and add the following line to your
@file{.emacs}:
@lisp
@ -1949,28 +1939,17 @@ new paragraph. There are many packages available to deal with this
@cindex Pairs of parentheses, highlighting
@cindex Matching parentheses
As of version 19, Emacs comes with @file{paren.el}, which (when loaded)
will automatically highlight matching parentheses whenever point (i.e.,
the cursor) is located over one. To load @file{paren.el} automatically,
include the line
@lisp
(require 'paren)
@end lisp
in your @file{.emacs} file. @email{shutkoa@@ugsolutions.com, Alan Shutko}
reports that as of version 20.1, you must also call @code{show-paren-mode} in
your @file{.emacs} file:
Call @code{show-paren-mode} in your @file{.emacs} file:
@lisp
(show-paren-mode 1)
@end lisp
Customize will let you turn on @code{show-paren-mode}. Use @kbd{M-x
customize-group @key{RET} paren-showing @key{RET}}. From within
Customize, you can also go directly to the ``paren-showing'' group.
You can also enable this mode by selecting the @samp{Paren Match
Highlighting} option from the @samp{Options} menu of the Emacs menu bar
at the top of any Emacs frame.
Alternatives to paren include:
Alternatives to this mode include:
@itemize @bullet
@ -2160,7 +2139,7 @@ the command and then type @kbd{M-0 C-x e}.
Any messages your command prints in the echo area will be suppressed.
If you need to repeat a command a small number of times, you can use
@kbd{C-x z}, see @ref{Repeating commands}.
@kbd{C-x z} (@pxref{Repeating commands}) or @kbd{C-x e}.
@node Forcing the cursor to remain in the same column, Forcing Emacs to iconify itself, Repeating a command as many times as possible, Common requests
@section How do I make Emacs behave like this: when I go up or down, the cursor should stay in the same column even if the line is too short?
@ -2315,27 +2294,20 @@ effective way of doing that. Emacs automatically intercepts the compile
error messages, inserts them into a special buffer called
@code{*compilation*}, and lets you visit the locus of each message in
the source. Type @kbd{C-x `} to step through the offending lines one by
one. Click @kbd{Mouse-2} or press @key{RET} on a message text in the
one (starting with Emacs 22, you can also use @kbd{M-g M-p} and
@kbd{M-g M-n} to go to the previous and next matches directly). Click
@kbd{Mouse-2} or press @key{RET} on a message text in the
@code{*compilation*} buffer to go to the line whose number is mentioned
in that message.
But if you indeed need to go to a certain text line, type @kbd{M-x
goto-line @key{RET}}. Emacs will prompt you for the number of the line
and go to that line.
But if you indeed need to go to a certain text line, type @kbd{M-g M-g}
(which is the default binding of the @code{goto-line} function starting
with Emacs 22). Emacs will prompt you for the number of the line and go
to that line.
You can do this faster by invoking @code{goto-line} with a numeric
argument that is the line's number. For example, @kbd{C-u 286 M-x
goto-line @key{RET}} will jump to line number 286 in the current
buffer.
If you need to use this command frequently, you might consider binding
it to a key. The following snippet, if added to your @file{~/.emacs}
file, will bind the sequence @kbd{C-x g} to @code{goto-line}:
@lisp
(global-set-key "\C-xg" 'goto-line)
@end lisp
argument that is the line's number. For example, @kbd{C-u 286 M-g M-g}
will jump to line number 286 in the current buffer.
@node Modifying pull-down menus, Deleting menus and menu options, Going to a line by number, Common requests
@section How can I create or modify new pull-down menu options?
@ -2457,9 +2429,11 @@ menus}), use:
@cindex FAQ, @code{font-lock-mode}
@code{font-lock-mode} is the standard way to have Emacs perform syntax
highlighting in the current buffer. With @code{font-lock-mode} turned
on, different types of text will appear in different colors. For
instance, if you turn on @code{font-lock-mode} in a programming mode,
highlighting in the current buffer. It is enabled by default in Emacs
22.1 and later.
With @code{font-lock-mode} turned on, different types of text will
appear in different colors. For instance, in a programming mode,
variables will appear in one face, keywords in a second, and comments in
a third.
@ -2468,33 +2442,16 @@ Earlier versions of Emacs supported hilit19, a similar package. Use of
hilit19 is now considered non-standard, although @file{hilit19.el} comes
with the stock Emacs distribution. It is no longer maintained.
To turn @code{font-lock-mode} on within an existing buffer, use @kbd{M-x
font-lock-mode @key{RET}}.
To turn @code{font-lock-mode} off within an existing buffer, use
@kbd{M-x font-lock-mode @key{RET}}.
To automatically invoke @code{font-lock-mode} when a particular major
mode is invoked, set the major mode's hook. For example, to fontify all
@code{c-mode} buffers, add the following to your @file{.emacs} file:
@lisp
(add-hook 'c-mode-hook 'turn-on-font-lock)
@end lisp
To automatically invoke @code{font-lock-mode} for all major modes, you
can turn on @code{global-font-lock-mode} by including the following line
in your @file{.emacs} file:
In Emacs 21 and earlier versions, you could use the following code in
your @file{.emacs} file to turn on @code{font-lock-mode} globally:
@lisp
(global-font-lock-mode 1)
@end lisp
@noindent
This instructs Emacs to turn on font-lock mode in those buffers for
which a font-lock mode definition has been provided (in the variable
@code{font-lock-global-modes}). If you edit a file in
@code{pie-ala-mode}, and no font-lock definitions have been provided for
@code{pie-ala} files, then the above setting will have no effect on that
particular buffer.
Highlighting a buffer with @code{font-lock-mode} can take quite a while,
and cause an annoying delay in display, so several features exist to
work around this.
@ -2534,12 +2491,6 @@ Also see the documentation for the function @code{font-lock-mode},
available by typing @kbd{C-h f font-lock-mode} (@kbd{M-x
describe-function @key{RET} font-lock-mode @key{RET}}).
For more information on font-lock mode, take a look at the
@code{font-lock-mode} FAQ, maintained by
@email{jari.aalto@@ntc.nokia.com, Jari Aalto} at
@uref{ftp://cs.uta.fi/pub/ssjaaa/ema-font.gui}
To print buffers with the faces (i.e., colors and fonts) intact, use
@kbd{M-x ps-print-buffer-with-faces} or @kbd{M-x
ps-print-region-with-faces}. You will need a way to send text to a
@ -2570,7 +2521,7 @@ Use @code{delete-selection-mode}, which you can start automatically by
placing the following Lisp form in your @file{.emacs} file:
@lisp
(delete-selection-mode t)
(delete-selection-mode 1)
@end lisp
According to the documentation string for @code{delete-selection-mode}
@ -2686,41 +2637,10 @@ type @kbd{C-h C-e} to read it.
@cindex Files, maximum size
Old versions (i.e., anything before 19.29) of Emacs had problems editing
files larger than 8 megabytes. As of version 19.29, the maximum buffer
size is at least 2^27-1, or 134,217,727 bytes, or 132 MBytes. Emacs 20
can be compiled on some 64-bit systems in a way that enlarges the buffer
size up to 576,460,752,303,423,487 bytes, or 549,755,813 GBytes.
If you are using a version of Emacs older than 19.29 and cannot upgrade,
you will have to recompile. @email{lnz@@lucid.com, Leonard N. Zubkoff}
suggests putting the following two lines in @file{src/config.h} before
compiling Emacs to allow for 26-bit integers and pointers (and thus file
sizes of up to 33,554,431 bytes):
@example
#define VALBITS 26
#define GCTYPEBITS 5
@end example
@noindent
This method may result in ``ILLEGAL DATATYPE'' and other random errors on
some machines.
@email{daveg@@csvax.cs.caltech.edu, David Gillespie} explains how this
problems crops up; while his numbers are true only for pre-19.29
versions of Emacs, the theory remains the same with current versions.
@quotation
Emacs is largely written in a dialect of Lisp; Lisp is a freely-typed
language in the sense that you can put any value of any type into any
variable, or return it from a function, and so on. So each value
must carry a @dfn{tag} along with it identifying what kind of thing it
is, e.g., integer, pointer to a list, pointer to an editing buffer, and
so on. Emacs uses standard 32-bit integers for data objects, taking the
top 8 bits for the tag and the bottom 24 bits for the value. So
integers (and pointers) are somewhat restricted compared to true C
integers and pointers.
@end quotation
files larger than 8 megabytes. In versions 19.29 and later, the maximum
buffer size is at least 2^27-1, or 134,217,727 bytes, or 132 MBytes.
And in Emacs 22, the maximum buffer size has been increased to
268,435,455 bytes (or 256 MBytes) on 32-bit machines.
@node ^M in the shell buffer, Shell process exits abnormally, Problems with very large files, Bugs and problems
@section How do I get rid of @samp{^M} or echoed commands in my shell buffer?
@ -2785,9 +2705,10 @@ file:
(add-hook 'comint-output-filter-functions 'shell-strip-ctrl-m)
@end smalllisp
On a related note: If your shell is echoing your input line in the shell
buffer, you might want to try the following command in your shell
start-up file:
On a related note: if your shell is echoing your input line in the shell
buffer, you might want to customize the @code{comint-process-echoes}
variable in your shell buffers, or try the following command in your
shell start-up file:
@example
stty -icrnl -onlcr -echo susp ^Z
@ -3456,7 +3377,6 @@ To get the Xmenu stuff to work, you need to find a copy of MIT's
* Emacs for Apple computers::
* Emacs for VMS and DECwindows::
* Modes for various languages::
* Translating names to IP addresses::
@end menu
@node Finding Emacs on the Internet, Finding a package with particular functionality, Finding Emacs and related packages, Finding Emacs and related packages
@ -3665,7 +3585,7 @@ Note that while many of these programs look similar to Emacs, they often
lack certain features, such as the Emacs Lisp extension language.
@node Emacs for Windows, Emacs for OS/2, Emacs for MS-DOS, Finding Emacs and related packages
@section Where can I get Emacs for Microsoft Windows
@section Where can I get Emacs for Microsoft Windows?
@cindex FAQ for NT Emacs
@cindex Emacs for MS-Windows
@cindex Microsoft Windows, Emacs for
@ -3745,8 +3665,7 @@ Beginning with version 21.1, the Macintosh is supported in the official
Emacs distribution; see the files @file{mac/README} and
@file{mac/INSTALL} in the Emacs distribution for build instructions.
Apple's ``OS X'' is based largely on NeXTSTEP and OpenStep.
@xref{Emacs for NeXTSTEP}, for more details about that version.
Beginning with version 22.1, Emacs supports Mac OS X natively.
@node Emacs for VMS and DECwindows, Modes for various languages, Emacs for Apple computers, Finding Emacs and related packages
@section Where do I get Emacs that runs on VMS under DECwindows?
@ -3756,7 +3675,7 @@ Apple's ``OS X'' is based largely on NeXTSTEP and OpenStep.
Up-to-date information about GNU software (including Emacs) for VMS is
available at @uref{http://vms.gnu.org/}.
@node Modes for various languages, Translating names to IP addresses, Emacs for VMS and DECwindows, Finding Emacs and related packages
@node Modes for various languages, , Emacs for VMS and DECwindows, Finding Emacs and related packages
@section Where can I get modes for Lex, Yacc/Bison, Bourne shell, csh, C@t{++}, Objective-C, Pascal, Java, and Awk?
@cindex Awk, mode for
@cindex @code{awk-mode}
@ -3781,37 +3700,6 @@ Barry Warsaw's @code{cc-mode} now works for C, C@t{++}, Objective-C, and
Java code. It is distributed with Emacs, but has
@uref{http://cc-mode.sourceforge.net/, its own homepage}.
@node Translating names to IP addresses, , Modes for various languages, Finding Emacs and related packages
@section What is the IP address of XXX.YYY.ZZZ?
@cindex Translating names to IP addresses
@cindex IP addresses from names
@cindex Using BIND to translate addresses
@cindex DNS and IP addresses
If you are on a Unix machine, try using the @samp{nslookup} command,
included in the Berkeley BIND package. For example, to find the IP
address of @samp{ftp.gnu.org}, you would type @code{nslookup
ftp.gnu.org}.
Your computer should then provide the IP address of that machine.
If your site's nameserver is deficient, you can use IP addresses to FTP
files. You can get this information by e-mail:
@example
To: dns@@[134.214.84.25] (to grasp.insa-lyon.fr)
Body: ip XXX.YYY.ZZZ (or "help" for more information
and options - no quotes)
@end example
@noindent
or:
@example
To: resolve@@[147.31.254.130] (to laverne.cs.widener.edu)
Body: site XXX.YYY.ZZZ
@end example
@c ------------------------------------------------------------
@node Major packages and programs, Key bindings, Finding Emacs and related packages, Top
@chapter Major packages and programs
@ -4183,6 +4071,7 @@ jde-subscribe@@sunsite.auc.dk
* Binding combinations of modifiers and function keys::
* Meta key does not work in xterm::
* ExtendChar key does not work as Meta::
* SPC no longer completes file names::
@end menu
@node Binding keys to commands, Invalid prefix characters, Key bindings, Key bindings
@ -4200,7 +4089,7 @@ local-set-key @key{RET} @var{key} @var{cmd} @key{RET}}.
@inforef{Key Bindings, Key Bindings, emacs}, for further details.
To make the process of binding keys interactively eaiser, use the
To make the process of binding keys interactively easier, use the
following ``trick'': First bind the key interactively, then immediately
type @kbd{C-x @key{ESC} @key{ESC} C-a C-k C-g}. Now, the command needed
to bind the key is in the kill ring, and can be yanked into your
@ -4829,7 +4718,7 @@ You might have to replace @samp{Meta} with @samp{Alt}.
@end itemize
@node ExtendChar key does not work as Meta, , Meta key does not work in xterm, Key bindings
@node ExtendChar key does not work as Meta, SPC no longer completes file names, Meta key does not work in xterm, Key bindings
@section Why doesn't my @key{ExtendChar} key work as a @key{Meta} key under HP-UX 8.0 and 9.x?
@cindex @key{ExtendChar} key as @key{Meta}
@cindex @key{Meta}, using @key{ExtendChar} for
@ -4852,6 +4741,25 @@ xmodmap -e 'remove mod1 = Mode_switch'
This will disable the use of the extra keysyms systemwide, which may be
undesirable if you actually intend to use them.
@node SPC no longer completes file names, , ExtendChar key does not work as Meta, Key bindings
@section Why doesn't SPC complete file names anymore?
@cindex @kbd{SPC} file name completion
Starting with Emacs 22.1, @kbd{SPC} no longer completes file names in
the minibuffer, so that file names with embedded spaces could be typed
without the need to quote the spaces.
You can get the old behavior by binding @kbd{SPC} to
@code{minibuffer-complete-word} in the minibuffer, as follows:
@lisp
(define-key minibuffer-local-filename-completion-map (kbd "SPC")
'minibuffer-complete-word)
(define-key minibuffer-local-must-match-filename-map (kbd "SPC")
'minibuffer-complete-word)
@end lisp
@c ------------------------------------------------------------
@node Alternate character sets, Mail and news, Key bindings, Top
@chapter Alternate character sets
@ -5154,11 +5062,6 @@ best fix I've been able to come up with:
@cindex Mail packages and MIME
@cindex FAQ for MIME and Emacs
Read the Emacs MIME FAQ, maintained by @email{trey@@cs.berkeley.edu,
MacDonald Hall Jackson} at
@uref{http://bmrc.berkeley.edu/~trey/emacs/mime.html}
Version 6.x of VM supports MIME. @xref{VM}. Gnus supports MIME in mail
and news messages as of version 5.8.1 (Pterodactyl). Rmail has limited
support for single-part MIME messages beginning with Emacs 20.3.