Mercurial > emacs
diff man/faq.texi @ 90261:7beb78bc1f8e
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-97
Merge from emacs--cvs-trunk--0
Patches applied:
* emacs--cvs-trunk--0 (patch 616-696)
- Add lisp/mh-e/.arch-inventory
- Update from CVS
- Merge from gnus--rel--5.10
- Update from CVS: lisp/smerge-mode.el: Add 'tools' to file keywords.
- lisp/gnus/ChangeLog: Remove duplicate entry
* gnus--rel--5.10 (patch 147-181)
- Update from CVS
- Merge from emacs--cvs-trunk--0
- Update from CVS: lisp/mml.el (mml-preview): Doc fix.
- Update from CVS: texi/message.texi: Fix default values.
- Update from CVS: texi/gnus.texi (RSS): Addition.
author | Miles Bader <miles@gnu.org> |
---|---|
date | Mon, 16 Jan 2006 08:37:27 +0000 |
parents | 2d92f5c9d6ae e188efbb47ee |
children | 7432ca837c8d |
line wrap: on
line diff
--- a/man/faq.texi Mon Jan 16 06:59:21 2006 +0000 +++ b/man/faq.texi Mon Jan 16 08:37:27 2006 +0000 @@ -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 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 @@ @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 @@ 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 @@ @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 @@ 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 @@ 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}. - -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. +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}. + +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 @@ 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 @@ @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 @@ @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 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 @@ 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 @@ 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 @@ -1141,6 +1161,7 @@ @menu * Setting up a customization file:: +* Using Customize:: * Debugging a customization file:: * Colors on a TTY:: * Displaying the current line or column:: @@ -1191,7 +1212,7 @@ * Escape sequences in shell output:: @end menu -@node Setting up a customization file, Colors on a TTY, Common requests, Common requests +@node Setting up a customization file, Using Customize, Common requests, Common requests @section How do I set up a @file{.emacs} file properly? @cindex @file{.emacs} file, setting up @cindex @file{.emacs} file, locating @@ -1205,12 +1226,11 @@ @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 +(@pxref{Using Customize}). 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 @@ -1222,7 +1242,26 @@ be found. Visiting the file as @file{~/.emacs} from Emacs will find the correct file. -@node Colors on a TTY, Debugging a customization file, Setting up a customization file, Common requests +@node Using Customize, Colors on a TTY, Setting up a customization file, Common requests +@section How do I start using Customize? +@cindex Customize groups +@cindex Customizing variables +@cindex Customizing faces + +The main Customize entry point is @kbd{M-x customize @key{RET}}. This +command takes you to a buffer listing all the available Customize +groups. From there, you can access all customizable options and faces, +change their values, and save your changes to your init file. +@inforef{Easy Customization, Easy Customization, emacs}. + +If you know the name of the group in advance (e.g. ``shell''), use +@kbd{M-x customize-group @key{RET}}. + +If you wish to customize a single option, use @kbd{M-x customize-option +@key{RET}}. This command prompts you for the name of the option to +customize, with completion. + +@node Colors on a TTY, Debugging a customization file, Using Customize, Common requests @section How do I get colors and syntax highlighting on a TTY? @cindex Colors on a TTY @cindex Syntax highlighting on a TTY @@ -1240,8 +1279,7 @@ 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 +1400,9 @@ (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 +1551,8 @@ 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 +1640,9 @@ (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 +1664,24 @@ @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 - -@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. + +The most recent @samp{gnuserv} package is available at + +@uref{http://meltin.net/hacks/emacs/} @end itemize @@ -1666,23 +1692,7 @@ @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 +1722,7 @@ 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 +1959,17 @@ @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. - -Alternatives to paren include: +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 this mode include: @itemize @bullet @@ -2160,7 +2159,7 @@ 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 +2314,20 @@ 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 +2449,11 @@ @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 +2462,16 @@ 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 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: +To turn @code{font-lock-mode} off within an existing buffer, use +@kbd{M-x font-lock-mode @key{RET}}. + +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 +2511,6 @@ 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 @@ -2552,14 +2523,17 @@ @cindex Scrolling only one line @cindex Reducing the increment when scrolling -Place the following Lisp form in your @file{.emacs} file: +Customize the @code{scroll-conservatively} variable with @kbd{M-x +customize-variable @key{RET} scroll-conservatively @key{RET}} and set it +to a large value like, say, 10000. For an explanation of what this +means, @inforef{Scrolling, Scrolling, emacs}. + +Alternatively, use the following Lisp form in your @file{.emacs}: @lisp -(setq scroll-step 1) +(setq scroll-conservatively most-positive-fixnum) @end lisp -@inforef{Scrolling, Scrolling, emacs}. - @node Replacing highlighted text, Editing MS-DOS files, Scrolling only one line, Common requests @section How can I replace highlighted text with what I type? @cindex @code{delete-selection-mode} @@ -2570,7 +2544,7 @@ 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} @@ -2614,11 +2588,9 @@ @cindex Single space following periods @cindex Periods, one space following -@email{ulm@@vsnhd1.cern.ch, Ulrich Mueller} suggests adding the -following two lines to your @file{.emacs} file: +Add the following line to your @file{.emacs} file: @lisp -(setq sentence-end "[.?!][]\"')@}]*\\($\\|[ \t]\\)[ \t\n]*") (setq sentence-end-double-space nil) @end lisp @@ -2686,41 +2658,10 @@ @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 +2726,10 @@ (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 @@ -3228,7 +3170,7 @@ be done by setting the locale. See your OS manual for more information. The second approach involves changing the regular expression used by -dired, @code{dired-move-to-filename-regexp}. +dired, @code{directory-listing-before-filename-regexp}. @c ------------------------------------------------------------ @node Compiling and installing Emacs, Finding Emacs and related packages, Bugs and problems, Top @@ -3456,7 +3398,6 @@ * 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 +3606,7 @@ 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 +3686,7 @@ 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 +3696,7 @@ 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 +3721,6 @@ 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 @@ -3902,7 +3811,7 @@ @email{daveg@@csvax.cs.caltech.edu, Dave Gillespie} @item Latest version -2.02g (part of Emacs since version 22.1) +2.1 (part of Emacs since version 22.1) @item Distribution No separate distribution outside of Emacs. Older versions @@ -3955,10 +3864,12 @@ AUC@TeX{} is a set of sophisticated major modes for @TeX{}, LaTeX, ConTeXt, and Texinfo offering context-sensitive syntax highlighting, indentation, formatting and folding, macro completion, @TeX{} shell -functionality, and debugging. Some important supplemental packages are -described in @ref{Introduction, RefTeX, Introduction, reftex, Ref@TeX{} -User Manual}, and -@uref{http://preview-latex.sourceforge.net,preview-latex}. +functionality, and debugging. Be also sure to check out +@ref{Introduction, RefTeX, Introduction, reftex, Ref@TeX{} User Manual}. +Current versions of AUC@TeX{} include the +@uref{http://www.gnu.org/software/auctex/preview-latex,preview-latex} +package for WYSIWYG previews of various LaTeX constructs in the Emacs +source buffer. @table @b @@ -3970,7 +3881,7 @@ @email{dak@@gnu.org, David Kastrup} @item Latest version -11.54 +11.82 @item Distribution @uref{ftp://ftp.gnu.org/pub/gnu/auctex/} @@ -3979,8 +3890,8 @@ @uref{http://www.gnu.org/software/auctex/} @item Mailing list: -Subscription requests to @email{auc-tex-subscribe@@sunsite.dk}@* -Submissions to @email{auc-tex@@sunsite.dk} +Subscription requests to @email{auctex-request@@gnu.org}@* +Submissions to @email{auctex@@gnu.org} @end table @@ -4183,6 +4094,7 @@ * 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 +4112,7 @@ @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 @@ -4634,7 +4546,7 @@ However, in the specific case of @kbd{C-h} and @key{DEL}, you should toggle @code{normal-erase-is-backspace-mode} instead of calling -@code{keyboard-translate}. @inforef{DEL Does Not Delete, DEL Does Not Delete, +@code{keyboard-translate}. @inforef{DEL Does Not Delete, DEL Does Not Delete, emacs}. Keyboard translations are not the same as key bindings in keymaps. @@ -4829,7 +4741,7 @@ @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 +4764,25 @@ 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 +5085,6 @@ @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.