# HG changeset patch # User Romain Francoise # Date 1134249690 0 # Node ID b6000aca72917803c9130821413dcb83583d9405 # Parent c91001adb56126a63307eeb19e03598f72dc4e7a 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). diff -r c91001adb561 -r b6000aca7291 man/ChangeLog --- a/man/ChangeLog Sat Dec 10 17:20:10 2005 +0000 +++ b/man/ChangeLog Sat Dec 10 21:21:30 2005 +0000 @@ -1,8 +1,60 @@ +2005-12-10 Romain Francoise + + 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 * display.texi (Highlight Interactively): Include global-hi-lock-mode. Add miscellaneous details and elaborations. - + 2005-12-09 Richard M. Stallman * display.texi (Font Lock): Delete the Global FL menu item. @@ -120,7 +172,7 @@ 2005-11-28 Jay Belanger - * 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 diff -r c91001adb561 -r b6000aca7291 man/faq.texi --- a/man/faq.texi Sat Dec 10 17:20:10 2005 +0000 +++ b/man/faq.texi Sat Dec 10 21:21:30 2005 +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 @@ -1205,12 +1225,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, +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 @@ 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 @@ (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 @@ 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 @@ (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 @@ @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 +1672,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 +1702,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 +1939,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 +2139,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 +2294,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 +2429,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 +2442,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 +2491,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 @@ -2570,7 +2521,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} @@ -2686,41 +2637,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 +2705,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 @@ -3456,7 +3377,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 +3585,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 +3665,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 +3675,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 +3700,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 @@ -4183,6 +4071,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 +4089,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 @@ -4829,7 +4718,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 +4741,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 +5062,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.