# HG changeset patch # User Dave Love # Date 916345730 0 # Node ID 96a0e2b175a75e9ff3bf30389b1e25abdf8debb2 # Parent 633699bb2aae65f434b983420292f15a5f0bf62f Merge previous edits. diff -r 633699bb2aae -r 96a0e2b175a7 etc/FAQ --- a/etc/FAQ Thu Jan 14 20:25:55 1999 +0000 +++ b/etc/FAQ Thu Jan 14 20:28:50 1999 +0000 @@ -4,6 +4,9 @@ about GNU Emacs 20 with answers. Some of the answers are not valid for GNU Emacs 18 or 19. +[This version has been somewhat edited from the last-posted version +(as of January 1999) for inclusion in the Emacs distribution.] + The FAQ is posted (in five parts) to reduce the noise level in the gnu.emacs.help newsgroup (which is also the help-gnu-emacs mailing list) which results from the repetition of frequently asked questions, wrong @@ -131,7 +134,7 @@ 67: How can I force Emacs to scroll only one line when I move past the bottom of the screen? 68: How can I replace highlighted text with what I type? -69: How can I edit MS-DOS files using Emacs? +69: How can I edit MS-DOS-style text files using Emacs? 70: How can I tell Emacs to fill paragraphs with a single space after each period? @@ -168,7 +171,7 @@ 93: What is the difference between Emacs and XEmacs (formerly "Lucid Emacs")? 94: Where can I get Emacs for my PC running MS-DOS? -95: Where can I get Emacs for Microsoft Windows, Windows '95, or Windows +95: Where can I get Emacs for Microsoft Windows, Windows 9x, or Windows NT? 96: Where can I get Emacs for my PC running OS/2? 97: Where can I get Emacs for my Atari ST? @@ -264,9 +267,9 @@ To search for a question numbered XXX, type "M-C-s ^XXX:", followed by a C-r if that doesn't work. Type RET to end the search. -If you have w3-mode installed (see question 111), you can visit ftp and -HTTP uniform resource locators (URLs) by placing the cursor on the URL and -typing M-x w3-follow-url-at-point. +If you have a web browser and the browse-url package configured for +it, you can visit ftp and HTTP uniform resource locators (URLs) by +placing the cursor on the URL and typing M-x browse-url-at-point. The FAQ is posted in five parts; if you are missing a section or would prefer to read the FAQ in a single file, see question 22. @@ -471,7 +474,7 @@ postings from, but pretty much everything is there. The latest archives are available at - ftp://ftp.gnu.org/pub/gnu/MailingListArchives/current + ftp://gnudist.gnu.org/pub/gnu/MailingListArchives/current Web-based Usenet search services, such as DejaNews, also archive the gnu.* groups. You can reach DejaNews at @@ -629,9 +632,9 @@ format. Texinfo source for the manual (along with pregenerated Info files) is available at - ftp://ftp.gnu.org/pub/gnu/elisp-manual-20-2.5.tar.gz - - and all mirrors of ftp.gnu.org (See question 92 for a list). See + ftp://gnudist.gnu.org/pub/gnu/elisp-manual-20-2.5.tar.gz + + and all mirrors of gnudist.gnu.org (See question 92 for a list). See question 17 if you want to install the Info files, or question 18 if you want to use the Texinfo source to print the manual yourself. @@ -646,9 +649,9 @@ using the stand-alone "makeinfo" program, available as part of the latest Texinfo package at - ftp://ftp.gnu.org/pub/gnu/texinfo-3.12.tar.gz - - and all mirrors of ftp.gnu.org (see question 92 for a list). + ftp://gnudist.gnu.org/pub/gnu/texinfo-3.12.tar.gz + + and all mirrors of gnudist.gnu.org (see question 92 for a list). For information about the Texinfo format, read the Texinfo manual which comes with Emacs. This manual also comes installed in Info format, so @@ -666,6 +669,11 @@ * Topic: (relative-pathname). Short description of topic. + If (as it should have done) the Texinfo file used the @direntry + command, you can run the "install-info" command from the current + Texinfo distribution to do this automatically -- see the example in + the top-level Makefile in the Emacs source. + If you want to install Info files and you don't have the necessary privileges, you have several options: @@ -720,7 +728,8 @@ your site. To get more general instructions, retrieve the latest Texinfo package - mentioned in question 17. + mentioned in question 17. The "texi2dvi" command from it will perform + the above steps 1 to 4 for you. 19: Can I view Info files without using Emacs? @@ -732,9 +741,9 @@ * Xinfo, a stand-alone version of the Info program that runs under X Windows. You can get it at - ftp://ftp.gnu.org/pub/gnu/xinfo-1.01.01.tar.gz - - and all mirrors of ftp.gnu.org (See question 92 for a list). + ftp://gnudist.gnu.org/pub/gnu/xinfo-1.01.01.tar.gz + + and all mirrors of gnudist.gnu.org (See question 92 for a list). * Tkinfo, an Info viewer that runs under X Windows and uses Tcl/Tk. You can get Tkinfo at @@ -762,12 +771,14 @@ MACHINES -- Status of Emacs on Various Machines and Systems MAILINGLISTS -- GNU Project Electronic Mailing Lists NEWS -- Emacs news, a history of user-visible changes + PROBLEMS -- Known problems with building and running Emacs in various + situations, often with workarounds. SERVICE -- GNU Service Directory SUN-SUPPORT -- including "Using Emacstool with GNU Emacs" - Latest versions of the above files also available at - - ftp://ftp.gnu.org/pub/gnu/GNUinfo/ + Latest versions of some of the above files are also available at + + ftp://gnudist.gnu.org/pub/gnu/GNUinfo/ More GNU information, including back issues of the "GNU's Bulletin", are at @@ -781,7 +792,7 @@ The file etc/SERVICE (see question 4 if you're not sure where that is) lists companies and individuals willing to sell you help in installing or - using Emacs. An up-to-date version this file is available on ftp.gnu.org + using Emacs. An up-to-date version this file is available on gnudist.gnu.org (see question 20). 22: Where can I get the latest version of this document (the FAQ list)? @@ -880,7 +891,7 @@ 24: What is the latest version of Emacs? - Emacs 20.3 is the current version as of this writing. + Emacs 20.4 is the current version as of this writing. 25: What is different about Emacs 20? @@ -899,9 +910,7 @@ automatic conversion of files from Macintosh, Microsoft, and Unix platforms. - A number of older Lisp packages, such as Gnus, Supercite and the - calendar/diary, have been updated and enhanced to work with Emacs 20, and - are now included with the standard distribution. + Many Lisp packages have been updated and enhanced for Emacs 20. Common Things People Want To Do @@ -916,10 +925,11 @@ documented. :-) Emacs 20 includes the new "customize" facility, which can be invoked - using M-x customize RET. This allows users who are unfamiliar with Emacs - Lisp to modify their .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. + using M-x customize RET or via the Help menu. This allows users who are + unfamiliar with Emacs Lisp to modify their .emacs files in a relatively + straightforward way, using menus rather than Lisp code. While all the + packages included with Emacs (are meant to) support Customize now, + packages from other sources may not. While Customize might indeed make it easier to configure Emacs, consider taking a bit of time to learn Emacs Lisp and modifying your .emacs @@ -938,28 +948,26 @@ You can also evaluate an individual function or argument to a function in your .emacs file by moving the cursor to the end of the function or - argument and typing "C-x C-e" (M-x eval-last-sexp). + argument and typing "C-x C-e" (M-x eval-last-sexp). "C-M-x" (M-x + eval-defun) is particularly useful for re-evaluating "defvar" and + "customize" forms. Use "C-h v" (M-x describe-variable) to check the value of variables which you are trying to set or use. 28: How do I make Emacs display the current line (or column) number? - To have Emacs automatically display the current line number of the point - in the mode line, do "M-x line-number-mode". You can also put the form - - (setq line-number-mode t) - - in your .emacs file to achieve this whenever you start Emacs. Note that - Emacs will not display the line number if the buffer is larger than the - value of the variable line-number-display-limit. + To toggle having Emacs automatically display the current line number of the + point in the mode line, do "M-x line-number-mode". (This option is on by + default.) Note that Emacs will not display the line number if the buffer is + larger than the value of the variable line-number-display-limit. As of Emacs 20, you can similarly display the current column with "M-x - column-number-mode", or by putting the form + column-number-mode", by putting the form (setq column-number-mode t) - in your .emacs file. + in your .emacs file or by using Customize. The "%c" format specifier in the variable mode-line-format will insert the current column's value into the mode line. See the documentation for @@ -971,7 +979,8 @@ instructions on how to get it. None of the vi emulation modes provide the "set number" capability of vi - (as far as we know). + (as far as we know) but Kyle Jones's setnu.el package implements such a + feature. 29: How can I modify the titlebar to contain the current filename? @@ -1003,9 +1012,8 @@ (file-error nil)) (add-hook 'XXX-mode-hook - (function - (lambda () - (setq abbrev-mode t)))) + (lambda () + (setq abbrev-mode t))) 31: How do I turn on auto-fill mode by default? @@ -1018,6 +1026,9 @@ (add-hook 'text-mode-hook 'turn-on-auto-fill) + You can also do this via the Help -> Options menu, which runs the command + toggle-text-mode-auto-fill. + If you want auto-fill mode on in all major modes, do this: (setq-default auto-fill-function 'do-auto-fill) @@ -1027,7 +1038,7 @@ If you want to use XXX mode for all files which end with the extension ".YYY", this will do it for you: - (setq auto-mode-alist (cons '("\\.YYY\\'" . XXX-mode) auto-mode-alist)) + (add-to-list 'auto-mode-alist '("\\.YYY\\'" . XXX-mode)) Otherwise put this somewhere in the first line of any file you want to edit in XXX mode (in the second line, if the first line begins with @@ -1085,7 +1096,8 @@ (transient-mark-mode t) - in your .emacs file. (Also see question 66.) + in your .emacs file, using Customize or via the Help->Options menu. + (Also see question 66.) 35: How do I control Emacs's case-sensitivity when searching/replacing? @@ -1095,16 +1107,18 @@ (setq case-fold-search nil) ; make searches case sensitive (setq case-fold-search t) ; make searches case insensitive - Similarly, for replacing the variable case-replace determines whether + To change this or similar variables during an Emacs session, use + M-x set-variable. + + Similarly, for replacing, the variable case-replace determines whether replacements preserve case. To change the case sensitivity just for one major mode, use the major mode's hook. For example: (add-hook 'XXX-mode-hook - (function - (lambda () - (setq case-fold-search nil)))) + (lambda () + (setq case-fold-search nil))) 36: How do I make Emacs wrap words for me? @@ -1195,7 +1209,7 @@ The alpha version of an enhanced version of gnuserv is available at - ftp://ftp.wellfleet.com/netman/psmith/emacs/gnuserv-2.1alpha.tar.gz + ftp://ftp.splode.com/pub/users/friedman/packages/fgnuserv-1.0.tar.gz 41: How do I make Emacs recognize my compiler's funny error messages? @@ -1215,11 +1229,10 @@ already provided. Once you have determined the proper regexps, use the following to inform Emacs of your changes: - (setq compilation-error-regexp-alist - (cons '(REGEXP FILE-IDX LINE-IDX) - compilation-error-regexp-alist)) - -42: How do I indent switch statements like this? + (add-to-list 'compilation-error-regexp-alist + '(REGEXP FILE-IDX LINE-IDX)) + +42: How do I indent C switch statements like this? Many people want to indent their switch statements like this: @@ -1271,7 +1284,7 @@ off, so exiting from overwrite-mode is as easy as another M-x overwrite-mode. - On some workstations, the "Insert" key toggles overwrite-mode on and off. + On some systems the "Insert" key toggles overwrite-mode on and off. 45: How do I stop Emacs from beeping on a terminal? @@ -1289,6 +1302,9 @@ (setq visible-bell t) + There is also a way to turn off _all_ effects of a bell, by defining + a custom `ring-bell-function' that does nothing. + 46: How do I turn down the bell volume in Emacs running under X Windows? You can adjust the bell volume and duration for all programs with the @@ -1306,8 +1322,8 @@ 47: How do I tell Emacs to automatically indent a new line to the indentation of the previous line? - Such behavior is automatic in Emacs 20. From the NEWS file for Emacs - 20.2: + Such behavior is automatic in text mode in Emacs 20. From the NEWS file + for Emacs 20.2: ** In Text mode, now only blank lines separate paragraphs. This makes it possible to get the full benefit of Adaptive Fill mode in Text mode, @@ -1344,12 +1360,13 @@ (require 'paren) - in your .emacs file. Alan Shutko reports that - as of version 20.1, you must also call show-paren-mode in your .emacs - file: + in your .emacs file. As of version 20.1, you must instead call + show-paren-mode in your .emacs file: (show-paren-mode 1) + and the "require" is redundant. + The "customize" facility will let you turn on show-paren-mode. Use M-x customize-group RET paren-showing RET. From within customize, you can also go directly to the "paren-showing" group. @@ -1367,7 +1384,9 @@ * Here is some Emacs Lisp that will make the % key show the matching parenthesis, like in vi. In addition, if the cursor isn't over a - parenthesis, it simply inserts a % like normal. + parenthesis, it simply inserts a % like normal. (`Parenthesis' actually + includes and character with `open' or `close' syntax, which usually means + "()[]{}".) ;; By an unknown contributor @@ -1390,20 +1409,19 @@ (`.' is the redo command in vi. It redoes the last insertion/deletion.) - The next version of - - No, not really, because Emacs doesn't have a special insertion mode. - - You can type "C-x ESC ESC" (repeat-complex-command) to reinvoke commands - that used the minibuffer to get arguments. In repeat-complex-command you - can type M-p and M-n to scan through all the different complex commands - you've typed. + In Emacs 20.3 and later, use the C-x z ("repeat") command to repeat `simple + commands'. + + Otherwise you can type "C-x ESC ESC" (repeat-complex-command) to reinvoke + commands that used the minibuffer to get arguments. In + repeat-complex-command you can type M-p and M-n to scan through all the + different complex commands you've typed. To repeat a set of commands, use keyboard macros. (See "Keyboard Macros" in the on-line manual.) - If you're really desperate for the `.' command, use VIPER, which comes - with Emacs, and which appears to support it. (See question 107.) + VIPER, which comes with Emacs, emulates vi, including `.'. (See question + 107.) 51: What are the valid X resource settings (i.e., stuff in .Xdefaults)? @@ -1463,7 +1481,9 @@ To do this to a region, use "string-rectangle" ("C-x r t"). Set the mark (`C-SPC') at the beginning of the first line you want to prefix, move the cursor to last line to be prefixed, and type "C-x r t > RET". To do this - for the whole buffer, type "C-x h C-x r t > RET". + for the whole buffer, type "C-x h C-x r t > RET". In Emacs 20.3 and + later, this will affect only the current region if Transient Mark mode is + on (see NEWS via C-h N). If you are trying to prefix a yanked mail message with '>', you might want to set the variable mail-yank-prefix. Better yet, get the Supercite @@ -1525,7 +1545,8 @@ 61: Where is the documentation for "etags"? - The "etags" man page should be in the same place as the "emacs" man page. + "etags" is documented in the Tags node of the Emacs manual. The "etags" + man page should be in the same place as the "emacs" man page. Quick command-line switch descriptions are also available. For example, "etags -H". @@ -1549,7 +1570,7 @@ If you're tired of seeing backup files whenever you do an "ls" at the Unix shell, try GNU ls with the "-B" option. GNU ls is part of the GNU - fileutils package, available at mirrors of ftp.gnu.org (see question 92). + fileutils package, available at mirrors of gnudist.gnu.org (see question 92). To disable or change how backups are made, see "Backup Names" in the on-line manual. @@ -1638,7 +1659,12 @@ More detailed information -- and more examples of how to create and modify menu options -- are in the Emacs Lisp Reference Manual, under - "Keymaps." (See question 16 for information on this manual.) + "Menu Keymaps." (See question 16 for information on this manual.) + + Note that Emacs 20.3 introduced a better (`extended') format for menu + items, described in the NEWS file and the Lisp Manual. The "easymenu" + package provides support for defining menus conveniently with some + portability amongst Emacs versions. 65: How do I delete menus and menu options? @@ -1669,22 +1695,24 @@ font-lock-mode RET". To automatically invoke font-lock mode when a particular major mode is - invoked, set the major mode's hook. For example, to fontify all c-mode - buffers, add the following to your .emacs file: + invoked, set the major mode's hook or define font-lock-global-modes as a + list with the mode name as an element. For example, to fontify all + c-mode buffers, add the following to your .emacs file: (add-hook 'c-mode-hook 'turn-on-font-lock) To automatically invoke font-lock mode for all major modes, you can turn on global-font-lock mode by including the following line in your .emacs - file: + file (or use Custom): (global-font-lock-mode 1) 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 - font-lock-global-modes). If you edit a file in pie-ala-mode, and no - font-lock definitions have been provided for pie-ala files, then the - above setting will have no effect on that particular buffer. + font-lock-global-modes or via the variable font-lock-defaults-alist). If + you edit a file in pie-ala-mode, and no font-lock definitions have been + provided for pie-ala files, then the above setting will have no effect on + that particular buffer. Highlighting with font-lock mode can take quite a while, and thus different levels of decoration are available, from slight to gaudy. To @@ -1713,10 +1741,10 @@ typing C-h f font-lock-mode ("M-x describe-function RET font-lock-mode RET"). - For more information on font-lock mode, take a look at the font-lock mode - FAQ, maintained by Jari Aalto at - - ftp://cs.uta.fi/pub/ssjaaa/ema-font.gui + For more information on font-lock mode, particularly adding new patterns, + see the Lisp Reference Manual and the commentary in the source + font-lock.el, which you can find in Emacs 20 (if it is installed) using, + say, M-x find-function font-lock-mode. To print buffers with the faces (i.e., colors and fonts) intact, use "M-x ps-print-buffer-with-faces" or "M-x ps-print-region-with-faces". @@ -1746,17 +1774,23 @@ This mode also allows you to delete (not kill) the highlighted region by pressing DEL. -69: How can I edit MS-DOS files using Emacs? +69: How can I edit MS-DOS-style text files using Emacs? As of Emacs 20, detection and handling of MS-DOS (and Windows) files is - performed transparently. You can open MS-DOS files on a Unix system, edit - it, and save it without having to worry about the file format. + performed transparently. You can open an MS-DOS file on a Unix system + (and vice versa), edit it, and save it without having to worry about the + file format. To save it with a different end-of-line convention use + C-x RET c to specify a new coding system such as undecided-unix. When editing an MS-DOS style file, a backslash (\) will appear in the mode line. - If you are running an earlier version of Emacs, get crypt++ from the - Emacs Lisp Archive (see question 90). Among other things, crypt++ + You can avoid translation of the end-of-line conventions either by + visiting a file using M-x find-file-literally or by setting the variable + inhibit-eol-conversion to t. + + If you are running an earlier version of Emacs, get crypt++ from + ftp://ftp.cs.umb.edu/pub/misc/crypt++.el. Among other things, crypt++ transparently modifies MS-DOS files as they are loaded and saved, allowing you to ignore the different conventions that Unix and MS-DOS have for delineating the end of a line. @@ -1770,6 +1804,8 @@ (setq sentence-end "[.?!][]\"')}]*\\($\\|[ \t]\\)[ \t\n]*") (setq sentence-end-double-space nil) + See "Sentences" in the online manual. + Bugs/Problems @@ -1808,7 +1844,11 @@ 72: How do I get rid of ^M or echoed commands in my shell buffer? Try typing "M-x shell-strip-ctrl-m RET" while in shell-mode to make them - go away. If that doesn't work, you have several options: + go away. You might add this function to comint-output-filter-functions: + + (add-hook 'comint-output-filter-functions 'shell-strip-ctrl-m) + + If that doesn't work, you have several options: For tcsh, put this in your .cshrc (or .tcshrc) file: @@ -1861,15 +1901,11 @@ can cause a failure and don't know a general solution for working around the problem in this case. - The "make clean" command will remove "env" and other vital programs, so - be careful when using it. - It has been reported that this sometimes happened when Emacs was started as an X client from an xterm window (i.e., had a controlling tty) but the xterm was later terminated. - See also PROBLEMS (in the top-level directory when you unpack the Emacs - source) for other possible causes of this message. + See also etc/PROBLEMS for other possible causes of this message. 74: Where is the termcap/terminfo entry for terminal type "emacs"? @@ -2121,29 +2157,29 @@ from scratch. You will need: * Emacs sources. See question 92 for a list of ftp sites that make them - available. On ftp.gnu.org, the main GNU distribution site, sources are + available. On gnudist.gnu.org, the main GNU distribution site, sources are available at - ftp://ftp.gnu.org/pub/gnu/emacs-20.3.tar.gz + ftp://gnudist.gnu.org/pub/gnu/emacs-20.4.tar.gz The above will obviously change as new versions of Emacs come out. For - instance, when Emacs 20.4 is released, it will most probably be + instance, when Emacs 20.5 is released, it will most probably be available at - ftp://ftp.gnu.org/pub/gnu/emacs-20.4.tar.gz + ftp://gnudist.gnu.org/pub/gnu/emacs-20.5.tar.gz Again, you should use one of the mirror sites in question 92 (and - adjust the URL accordingly) so as to reduce load on ftp.gnu.org. + adjust the URL accordingly) so as to reduce load on gnudist.gnu.org. * Gzip, the GNU compression utility. You can get gzip via anonymous ftp - at mirrors of ftp.gnu.org sites; it should compile and install without + at mirrors of gnudist.gnu.org sites; it should compile and install without much trouble on most systems. Once you have retrieved the Emacs sources, you will probably be able to uncompress them with the command - gunzip --verbose emacs-20.3.tar.gz - - changing the Emacs version (20.3), as necessary. Once gunzip has - finished doing its job, a file by the name of "emacs-20.3.tar" should + gunzip --verbose emacs-20.4.tar.gz + + changing the Emacs version (20.4), as necessary. Once gunzip has + finished doing its job, a file by the name of "emacs-20.4.tar" should be in your build directory. * Tar, the "tape archiving" program, which moves multiple files into and @@ -2152,27 +2188,27 @@ before you can build Emacs. Typically, the extraction command would look like - tar -xvvf emacs-20.3.tar + tar -xvvf emacs-20.4.tar The `x' indicates that we want to extract files from this tarfile, the two `v's force verbose output, and the `f' tells tar to use a disk file, rather than one on tape. - If you're using GNU tar (available at mirrors of ftp.gnu.org), you can + If you're using GNU tar (available at mirrors of gnudist.gnu.org), you can combine this step and the previous one by using the command - tar -zxvvf emacs-20.3.tar.gz + tar -zxvvf emacs-20.4.tar.gz The additional `z' at the beginning of the options list tells GNU tar to uncompress the file with gunzip before extracting the tarfile's components. At this point, the Emacs sources (all 25+ megabytes of them) should be - sitting in a directory called "emacs-20.3". On most common Unix and + sitting in a directory called "emacs-20.4". On most common Unix and Unix-like systems, you should be able to compile Emacs (with X Windows support) with the following commands: - cd emacs-20.3 [ change directory to emacs-20.3 ] + cd emacs-20.4 [ change directory to emacs-20.4 ] ./configure [ configure Emacs for your particular system ] make [ use Makefile to build components, then Emacs ] @@ -2180,7 +2216,9 @@ build has gone well. (See question 86 if you weren't successful.) To install Emacs in its default directories of /usr/local/bin (binaries), - /usr/local/share/emacs/20.xx (Lisp code and support files), and + /usr/local/share/emacs/20.xx (Lisp code and support files), + /usr/local/libexec/CONFIGURATION/emacs/VERSION (executable files to be + run by Emacs rather than users), /usr/local/man/man1 (man pages) and /usr/local/info (Info documentation), become the super-user and type make install @@ -2196,7 +2234,7 @@ Follow the instructions in question 84. Emacs places nearly everything in version-specific directories (e.g., - /usr/local/share/emacs/20.3), so the only files that can be overwritten + /usr/local/share/emacs/20.4), so the only files that can be overwritten when installing a new release are /usr/local/bin/emacs and the Emacs Info documentation in /usr/local/info. Back up these files before you install a new release, and you shouldn't have too much trouble. @@ -2263,11 +2301,12 @@ lists all functions and variables containing the string "wordstar". It is also possible that the package is on your system, but has not been - loaded. To see which packages are available for loading, look through - your computer's lisp directory (see question 4). The Lisp source to most - most packages contains a short description of how they should be loaded, - invoked, and configured -- so before you use or modify a Lisp package, - see if the author has provided any hints in the source code. + loaded. To see which packages are available for loading, look through your + computer's lisp directory (see question 4) or use the Finder (C-h p) to + search under keywords. The Lisp source to most packages contains a + short description of how they should be loaded, invoked, and configured -- + so before you use or modify a Lisp package, see if the author has provided + any hints in the source code. If a package does not come with Emacs, check the Lisp Code Directory, maintained by Dave Brennan . The directory is contained @@ -2282,7 +2321,7 @@ lisp-dir-apropos RET ange-ftp RET" produces this output: GNU Emacs Lisp Code Directory Apropos -- "ange-ftp" - "~/" refers to archive.cis.ohio-state.edu:pub/gnu/emacs/elisp-archive/ + "~/" refers to ftp.cs.ohio-state.edu:pub/gnu/emacs/elisp-archive/ ange-ftp (4.18) 15-Jul-1992 Andy Norman, @@ -2319,7 +2358,7 @@ You can access the Emacs Lisp Archive at the following sites: - ftp://archive.cis.ohio-state.edu/pub/gnu/emacs/elisp-archive/ + ftp://ftp.cs.ohio-state.edu/pub/gnu/emacs/elisp-archive/ ftp://calypso-2.oit.unc.edu/pub/gnu/elisp-archive/ ftp://faui43.informatik.uni-erlangen.de/pub/gnu/elisp-archive/ ftp://ftp.cs.umn.edu/pub/elisp-archive/ @@ -2344,6 +2383,12 @@ them. You should also use binary mode whenever you retrieve any files with names ending in ".elc". + Note that the archive is apparently not being maintained at the time of + writing; a volunteer to take on the task would be welcome. + + Packages which have been posted to gnu.emacs.sources should be locatable + via a service like Dejanews. + 91: How do I submit code to the Emacs Lisp Archive? Guidelines and procedures for submission to the archive can be found in @@ -2354,12 +2399,14 @@ The lispdir.el package has a function named submit-lcd-entry which will help you with this. + See question 90 regarding non-maintenance of the archive. + 92: Where can I get other up-to-date GNU stuff? The most up-to-date official GNU software is normally kept on - ftp.gnu.org and is available at - - ftp://ftp.gnu.org/pub/gnu + gnudist.gnu.org and is available at + + ftp://gnudist.gnu.org/pub/gnu Read the files etc/DISTRIB and etc/FTP for more information. @@ -2411,7 +2458,7 @@ ftp://vixen.cso.uiuc.edu/gnu, ftp://wuarchive.wustl.edu/systems/gnu - The directory at ftp.uu.net is a mirror of ftp.gnu.org except that files + The directory at ftp.uu.net is a mirror of gnudist.gnu.org except that files larger than one megabyte are split into multiple parts. If you have trouble transferring large files, you should try that site. A file normally named "XXX" is split into files XXX-split/part[0-9][0-9], and @@ -2422,46 +2469,35 @@ 93: What is the difference between Emacs and XEmacs (formerly "Lucid Emacs")? - First of all, they're both GNU Emacs. XEmacs is just as much a later - version of GNU Emacs as the FSF-distributed version. This FAQ refers to - the latest version to be distributed by the FSF as "Emacs," partly - because the XEmacs maintainers now refer to their product using the - "XEmacs" name, and partly because there isn't any accurate way to - differentiate between the two without getting mired in paragraphs of - legalese and history. + XEmacs is a modified version of GNU Emacs. + + This FAQ refers to the latest version to be distributed by the FSF + as "Emacs," partly because the XEmacs maintainers now refer to their + product using the "XEmacs" name, and partly because there isn't any + accurate way to differentiate between the two without getting mired + in paragraphs of legalese and history. XEmacs, which began life as Lucid Emacs, is based on an early version of Emacs 19 and Epoch, an X-aware version of Emacs 18. Emacs (i.e., the version distributed by the FSF) has a larger installed - base, while XEmacs can do some clever tricks with X Windows, such as - putting arbitrary graphics in a buffer. Emacs and XEmacs each come with - Lisp packages that are lacking in the other; RMS says that the FSF would - include more packages that come with XEmacs, but that the XEmacs - maintainers don't always keep track of the authors of contributed code, - which makes it impossible for the FSF to have certain legal papers - signed. (Without these legal papers, the FSF will not distribute Lisp - packages with Emacs.) - - Many XEmacs features have found their way into recent versions of Emacs, - and more features can be expected in the future, but there are still many - differences between the two. - - The latest version of XEmacs as of this writing is 20.4; you can get it - at - - ftp://ftp.xemacs.org/pub/xemacs/xemacs-20.4.tar.gz - - More information about XEmacs, including a list of frequently asked - questions (FAQ), is available at - - http://www.xemacs.org/ + base and now always contains the MULE multilingual facilities. XEmacs + can do some clever tricks with X Windows, such as putting arbitrary + graphics in a buffer; similar facilities have been implemented for Emacs, + which will be integrated after version 20.4. Emacs and XEmacs each come + with some Lisp packages that are lacking or more up-to-date in the other; + RMS says that the FSF would include more packages that come with XEmacs, + but that the XEmacs maintainers don't always keep track of the authors of + contributed code, which makes it impossible for the FSF to have certain + legal papers signed. (Without these legal papers, the FSF will not + distribute Lisp packages with Emacs.) The two versions have some + significant differences at the Lisp programming level. 94: Where can I get Emacs for my PC running MS-DOS? A pre-built binary distribution of Emacs is available from the Simtel - archives. This version apparently works under MS-DOS and Windows (3.x, - 95, and NT) and supports long file names. More information is availble + archives. This version works under MS-DOS and Windows (3.x, 9x, and NT) and + supports long file names under Windows 9x. More information is available from: ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/emacs.README @@ -2480,7 +2516,7 @@ Compiler: djgpp version 1.12 maint 1 or later. Djgpp 2.0 or later is recommended, since 1.x is being phased out. Djgpp 2 supports - long filenames under Windows 95. + long filenames under Windows 9x. You can get the latest release of djgpp by retrieving all of the files in @@ -2504,8 +2540,8 @@ ftp://ftp.simtel.net/pub/simtelnet/gnu/gnuish - The files INSTALL and PROBLEMS in the top-level directory of the Emacs - source contains some additional information regarding Emacs under MS-DOS. + The files INSTALL and etc/PROBLEMS in the Emacs source contains some + additional information regarding Emacs under MS-DOS. For a list of other MS-DOS implementations of Emacs (and Emacs look-alikes), consult the list of "Emacs implementations and literature," @@ -2514,17 +2550,35 @@ ftp://rtfm.mit.edu/pub/usenet/comp.emacs/ Note that while many of these programs look similar to Emacs, they often - lack certain features, such as the Emacs Lisp extension language. - -95: Where can I get Emacs for Microsoft Windows, Windows '95, or Windows + lack certain features, particularly as the Emacs Lisp extension language. + +95: Where can I get Emacs for Microsoft Windows, Windows 9x, or Windows NT? - For information on Emacs for Windows 95 and NT, read the FAQ produced by - Geoff Voelker , available at + GNU Emacs has been fully ported to Windows NT and Windows 95/98. + If you have MSVC 4.0 or greater, then you can compile GNU Emacs + directly from the source distribution. First read the file + nt/README, and then the file nt/INSTALL, for step by step + instructions on how to compile and install GNU Emacs on your system. + + You can also download precompiled distributions of GNU Emacs from: + + ftp://ftp.cs.washington.edu/pub/ntemacs + + If you need the gunzip and tar utilities for unpacking distributions, + you can download precompiled versions from: + + ftp://ftp.cs.washington.edu/pub/ntemacs/utilities + + For more information on configuring your favorite package to run with + GNU Emacs on Windows NT/95/98, see the following FAQ: http://www.cs.washington.edu/homes/voelker/ntemacs.html - - For Windows 3.1, see question 94. + ftp://ftp.cs.washington.edu/pub/ntemacs/docs/ntemacs.html + + If you are running Windows 3.11, and if you compile GNU Emacs for MSDOS + with the tools listed in the previous question, it will run under + Microsoft Windows in a DOS box. 96: Where can I get Emacs for my PC running OS/2? @@ -2559,6 +2613,26 @@ 100: Where can I get Emacs for my Apple computer? + + There used to be a boycott of Apple because of its "look and feel" + lawsuit. The lawsuit failed, and the boycott is over. + Currently the GNU project treats Apple like other computer companies. + + Since the Mac operating system is very different from Unix and GNU, + support for it would be a big job. And this job would be tangential + to the GNU project's goals. Meanwhile, we don't have the resources + to do all we want to do on supporting Emacs for GNU-like systems. + So if we had to do work on support for the Macintosh, that would + directly harm the GNU project. + + Of course, the same is true for MSDOS and Windows NT. We decided to + incorporate support for those systems because the code was very modular, + because volunteers not only wrote all the code but also investigate + all the bugs reported on those systems, and because we hoped that we + will be able to raise funds for GNU using these versions, and in this + way these ports will make up for the effort that they took. (We still + hope so, but it has not happened yet.) + An unofficial port of GNU Emacs 18.59 to the Macintosh is available at a number of ftp sites, the home being @@ -2597,9 +2671,9 @@ If you are on a Unix machine, try using the "nslookup" command, included in the Berkeley BIND package. For example, to find the IP address of - "ftp.gnu.org", you would type - - nslookup ftp.gnu.org + "gnudist.gnu.org", you would type + + nslookup gnudist.gnu.org Your computer should then provide the IP address of that computer. @@ -2655,7 +2729,7 @@ Author: Dave Gillespie Latest version: 2.02f Anonymous FTP: - ftp://ftp.gnu.org/pub/gnu/calc-2.02f.tar.gz + ftp://gnudist.gnu.org/pub/gnu/calc-2.02f.tar.gz NOTE: Unlike Wolfram Research, Dave has never threatened to sue anyone for having a program with a similar command language to Calc. :-) @@ -2674,7 +2748,7 @@ Author: Aamod Sane Latest version: 4.3 Anonymous FTP: - ftp://archive.cis.ohio-state.edu/pub/gnu/emacs/elisp-archive/modes/vip-mode.tar.Z + ftp://ftp.cs.ohio-state.edu/pub/gnu/emacs/elisp-archive/modes/vip-mode.tar.Z 108: AUC TeX -- enhanced LaTeX mode with debugging facilities @@ -2743,7 +2817,7 @@ Authors: Patrick J. LoPresti and Jin S. Choi Maintainer: Len Budney - Latest version: 3.4 + Latest version: 3.5b6 Anonymous FTP: http://www.nb.net/~lbudney/linux/software/mailcrypt/mailcrypt-3.5b6.tar.gz World Wide Web: @@ -2784,15 +2858,15 @@ is in the kill ring, and can be yanked into your .emacs file. If the key binding is global, no changes to the command are required. For example, - (global-set-key (quote [f1]) (quote help-for-help)) + (global-set-key [f1] 'help-for-help) can be placed directly into the .emacs file. If the key binding is local, the command is used in conjunction with the "add-hook" command. For example, in tex-mode, a local binding might be (add-hook 'tex-mode-hook - (function (lambda () - (local-set-key (quote [f1]) (quote help-for-help)))) + (lambda () + (local-set-key [f1] 'help-for-help))) NOTE: * Control characters in key sequences, in the form yanked from the kill ring are given in their graphic form -- i.e., CTRL is shown @@ -2812,6 +2886,15 @@ (global-set-key [f10] [?\C-x?\e?\e?\C-a?\C-k?\C-g]) ;; or (global-set-key [f10] "\C-x\e\e\C-a\C-k\C-g") + * The "kbd" macro is convenient for converting a key description in + the form used in documentation or printed by C-h c (except that + function key symbols must be enclosed in angle brackets). For + example: + + (global-set-key (kbd "") 'help-for-help) + (global-set-key (kbd "C-h") 'help-for-help) + (local-set-key (kbd "DEL") 'scroll-down) + 117: Why does Emacs say "Key sequence XXX uses invalid prefix characters"? Usually, one of two things has happened. In one case, the control @@ -2847,8 +2930,8 @@ (global-set-key [do] 'execute-extended-command)) )))) - For information on what Emacs does every time it is started, see the - lisp/startup.el file. + For information on what Emacs does every time it is started, see + "Starting Up Emacs" in the Lisp Reference Manual. 119: How do I use function keys under X Windows? @@ -3117,6 +3200,10 @@ (global-set-key [H-M-right] 'forward-word) + In recent Emacs versions this may also be written as: + + (global-set-key [(hyper meta right)] 'forward-word) + NOTE: * Not all modifiers are permitted in all situations. Hyper, Super, and Alt are available only under X (provided there are such keys). Non-ASCII keys and mouse events (e.g. "C-=" and @@ -3183,42 +3270,14 @@ 134: How do I make Emacs display 8-bit characters? - Emacs 19 has built-in support for 8-bit characters. Here is an excerpt - from the "European Display" page of the on-line manual: - - Some European languages use accented letters and other special symbols. - The ISO 8859 Latin-1 character set defines character codes for many - European languages in the range 160 to 255. - - Emacs can display those characters according to Latin-1, provided the - terminal or font in use supports them. The "M-x - standard-display-european" command toggles European character display - mode. With a numeric argument, "M-x standard-display-european" enables - European character display if and only if the argument is positive. - - Some operating systems let you specify the language you are using by - setting a locale. Emacs handles one common special case of this: if - your locale name for character types contains the string "8859-1" or - "88591", Emacs automatically enables European character display mode - when it starts up. + Emacs 19 introduced built-in support for 8-bit characters. Emacs 20 can + operate similarly in Unibyte mode or else in Multibyte mode. See the + "International" node in the online manual, specifically "Single-Byte + European Support". 135: How do I input 8-bit characters? - Again, from the "European Display" page of the on-line manual: - - If you enter non-ASCII ISO Latin-1 characters often, you might find ISO - Accents mode convenient. When this minor mode is enabled, the - characters ``', `'', `"', `^', `/' and `~' modify the following letter - by adding the corresponding diacritical mark to it, if possible. To - enable or disable ISO Accents mode, use the command "M-x - iso-accents-mode". This command affects only the current buffer. - - To enter one of those six special characters, type the character, - followed by a space. Some of those characters have a corresponding - "dead key" accent character in the ISO Latin-1 character set; to enter - that character, type the corresponding ASCII character twice. For - example, `''' enters the Latin-1 character acute-accent (character code - 0264). + Again, see the "International" node of the on-line manual. 136: Where can I get an Emacs that handles kanji, Chinese, or other character sets? @@ -3281,6 +3340,8 @@ The output file will be in Unix mail format, which can be read directly by VM, but not always by Rmail. See question 141. + For Gnus, see the `Archived Messages node of the Gnus manual. + If you use mh-e, add an "FCC:" or "BCC:" field to your components file. It does not work to put "set record filename" in the .mailrc file. @@ -3381,6 +3442,9 @@ Version 6.x of VM supports MIME. See question 104. + MIME support has been added in the development version of Gnus which will + be included with a future version of Emacs. + 147: How do I make Emacs automatically start my mail/news reader? To start Emacs in Gnus: @@ -3430,39 +3494,20 @@ _^Hu_^Hn_^Hd_^He_^Hr_^Hl_^Hi_^Hn_^Hi_^Hn_^Hg - Per Abrahamsen suggests using the following code, - which uses the underline face to turn such text into true underlining: - - (defun gnus-article-prepare-overstrike () - ;; Prepare article for overstrike commands. - (save-excursion - (set-buffer gnus-article-buffer) - (let ((buffer-read-only nil)) - (goto-char (point-min)) - (while (search-forward "\b" nil t) - (let ((next (following-char)) - (previous (char-after (- (point) 2)))) - (cond ((eq next previous) - (delete-region (- (point) 2) (point)) - (put-text-property (point) (1+ (point)) - 'face 'bold)) - ((eq next ?_) - (delete-region (1- (point)) (1+ (point))) - (put-text-property (1- (point)) (point) - 'face 'underline)) - ((eq previous ?_) - (delete-region (- (point) 2) (point)) - (put-text-property (point) (1+ (point)) - 'face 'underline)))))))) - - (add-hook 'gnus-article-prepare-hook 'gnus-article-prepare-overstrike) + Use Gnus' "Overstrike" function from the Article -> Washing menu (or type + "W o"). You can do this for all articles with: + + (add-hook 'gnus-article-prepare-hook 'gnus-article-treat-overstrike) If you prefer to do away with underlining altogether, you can destructively remove it with M-x ununderline-region; do this automatically via (add-hook 'gnus-article-prepare-hook - '(lambda () (ununderline-region (point-min) (point-max)))) + (lambda () (ununderline-region (point-min) (point-max)))) + + See the Gnus manual for more information about this and similar methods + for treating article contents. 151: How do I save all the items of a multi-part posting in Gnus? @@ -3537,11 +3582,12 @@ 158: Where can I find out more about Gnus? - Look for the Gnus FAQ, available at - - http://www.miranova.com/~steve/gnus-faq.html + Visit http://www.gnus.org/, which has a pointer to the current Gnus FAQ and + more information. The relevant newsgroup is gnu.emacs.gnus. ------------------------------------------------------------ +Modified, with permission, for the Emacs 20.4 distribution by Dave Love. + Copyright 1994-1998 Reuven M. Lerner Copyright 1992-1993 Steven Byrnes Copyright 1990-1992 Joseph Brian Wells