root/branches/2.1/info/efaq-1

Revision 3212, 49.8 kB (checked in by miyoshi, 5 years ago)

Sync up with Emacs-21.3.

Line 
1 This is ../info/efaq, produced by makeinfo version 4.2 from faq.texi.
2
3 INFO-DIR-SECTION Emacs
4 START-INFO-DIR-ENTRY
5 * Emacs FAQ: (efaq).    Frequently Asked Questions about Emacs.
6 END-INFO-DIR-ENTRY
7
8    Copyright 1994,1995,1996,1997,1998,1999,2000 Reuven M. Lerner
9 Copyright 1992,1993 Steven Byrnes
10 Copyright 1990,1991,1992 Joseph Brian Wells
11 This list of frequently asked questions about GNU Emacs with answers
12 ("FAQ") may be translated into other languages, transformed into other
13 formats (e.g. Texinfo, Info, WWW, WAIS), and updated with new
14 information.
15
16    The same conditions apply to any derivative of the FAQ as apply to
17 the FAQ itself.  Every copy of the FAQ must include this notice or an
18 approved translation, information on who is currently maintaining the
19 FAQ and how to contact them (including their e-mail address), and
20 information on where the latest version of the FAQ is archived
21 (including FTP information).
22
23    The FAQ may be copied and redistributed under these conditions,
24 except that the FAQ may not be embedded in a larger literary work
25 unless that work itself allows free copying and redistribution.
26
27    [This version has been somewhat edited from the last-posted version
28 (as of August 1999) for inclusion in the Emacs distribution.]
29
30 
31 File: efaq,  Node: Top,  Next: FAQ notation,  Prev: (dir),  Up: (dir)
32
33    This is the GNU Emacs FAQ, last updated on 4 December 2002.
34
35    The FAQ is maintained as a Texinfo document, allowing us to create
36 HTML, Info, and TeX documents from a single source file, and is slowly
37 but surely being improved.  Please bear with us as we improve on this
38 format.  If you have any suggestions or questions, please contact the
39 FAQ maintainers <emacs-faq@lerner.co.il>.
40
41 * Menu:
42
43 * FAQ notation::
44 * General questions::
45 * Getting help::
46 * Status of Emacs::
47 * Common requests::
48 * Bugs and problems::
49 * Compiling and installing Emacs::
50 * Finding Emacs and related packages::
51 * Major packages and programs::
52 * Key bindings::
53 * Alternate character sets::
54 * Mail and news::
55 * Concept index::
56
57 
58 File: efaq,  Node: FAQ notation,  Next: General questions,  Prev: Top,  Up: Top
59
60 FAQ notation
61 ************
62
63    This chapter describes notation used in the GNU Emacs FAQ, as well
64 as in the Emacs documentation.  Consult this section if this is the
65 first time you are reading the FAQ, or if you are confused by notation
66 or terms used in the FAQ.
67
68 * Menu:
69
70 * Basic keys::
71 * Extended commands::
72 * On-line manual::
73 * File-name conventions::
74 * Common acronyms::
75
76 
77 File: efaq,  Node: Basic keys,  Next: Extended commands,  Prev: FAQ notation,  Up: FAQ notation
78
79 What do these mean: `C-h', `M-C-a', <RET>, `<ESC> a', etc.?
80 ===========================================================
81
82    * `C-x': press the <x> key while holding down the <Control> key
83
84    * `M-x': press the <x> key while holding down the <Meta> key (if
85      your computer doesn't have a <Meta> key, *note No Meta key::)
86
87    * `M-C-x': press the <x> key while holding down both <Control> and
88      <Meta>
89
90    * `C-M-x': a synonym for the above
91
92    * <LFD>: Linefeed or Newline; same as `C-j'
93
94    * <RET>: <Return>, sometimes marked <Enter>; same as `C-m'
95
96    * <DEL>: <Delete>, usually *not* the same as <Backspace>; same as
97      `C-?' (see *Note Backspace invokes help::, if deleting invokes
98      Emacs help)
99
100    * <ESC>: Escape; same as `C-['
101
102    * <TAB>: Tab; same as `C-i'
103
104    * <SPC>: Space bar
105
106
107    Key sequences longer than one key (and some single-key sequences) are
108 written inside quotes or on lines by themselves, like this:
109
110        M-x frobnicate-while-foo RET
111
112 Any real spaces in such a key sequence should be ignored; only <SPC>
113 really means press the space key.
114
115    The ASCII code sent by `C-x' (except for `C-?') is the value that
116 would be sent by pressing just <x> minus 96 (or 64 for upper-case <X>)
117 and will be from 0 to 31.  On Unix and GNU/Linux terminals, the ASCII
118 code sent by `M-x' is the sum of 128 and the ASCII code that would be
119 sent by pressing just <x>.  Essentially, <Control> turns off bits 5 and
120 6 and <Meta> turns on bit 7(1).
121
122    `C-?' (aka <DEL>) is ASCII code 127.  It is a misnomer to call `C-?'
123 a "control" key, since 127 has both bits 5 and 6 turned ON.  Also, on
124 very few keyboards does `C-?' generate ASCII code 127.
125
126    *note Text Characters: (emacs)Text Characters, and *note Keys:
127 (emacs)Keys, for more information.  (*Note On-line manual::, for more
128 information about Info.)
129
130    ---------- Footnotes ----------
131
132    (1) DOS and Windows terminals don't set bit 7 when the <Meta> key is
133 pressed.
134
135 
136 File: efaq,  Node: Extended commands,  Next: On-line manual,  Prev: Basic keys,  Up: FAQ notation
137
138 What does `M-x COMMAND' mean?
139 =============================
140
141    `M-x COMMAND' means type `M-x', then type the name of the command,
142 then type <RET>.  (*Note Basic keys::, if you're not sure what `M-x'
143 and <RET> mean.)
144
145    `M-x' (by default) invokes the command `execute-extended-command'.
146 This command allows you to run any Emacs command if you can remember
147 the command's name.  If you can't remember the command's name, you can
148 type <TAB> and <SPC> for completion, <?> for a list of possibilities,
149 and `M-p' and `M-n' (or up-arrow and down-arrow on terminals that have
150 these editing keys) to see previous commands entered.  An Emacs
151 "command" is an "interactive" Emacs function.
152
153    Your system administrator may have bound other key sequences to
154 invoke `execute-extended-command'.  A function key labeled `Do' is a
155 good candidate for this, on keyboards that have such a key.
156
157    If you need to run non-interactive Emacs functions, see *Note
158 Evaluating Emacs Lisp code::.
159
160 
161 File: efaq,  Node: On-line manual,  Next: File-name conventions,  Prev: Extended commands,  Up: FAQ notation
162
163 How do I read topic XXX in the on-line manual?
164 ==============================================
165
166    When we refer you to some TOPIC in the on-line manual, you can read
167 this manual node inside Emacs (assuming nothing is broken) by typing
168 `C-h i m emacs <RET> m TOPIC <RET>'.
169
170    This invokes Info, the GNU hypertext documentation browser.  If you
171 don't already know how to use Info, type <?> from within Info.
172
173    If we refer to TOPIC:SUBTOPIC, type `C-h i m emacs <RET> m TOPIC
174 <RET> m SUBTOPIC <RET>'.
175
176    If these commands don't work as expected, your system administrator
177 may not have installed the Info files, or may have installed them
178 improperly.  In this case you should complain.
179
180    *Note Getting a printed manual::, if you would like a paper copy of
181 the Emacs manual.
182
183 
184 File: efaq,  Node: File-name conventions,  Next: Common acronyms,  Prev: On-line manual,  Up: FAQ notation
185
186 What are `etc/SERVICE', `src/config.h', and `lisp/default.el'?
187 ==============================================================
188
189    These are files that come with Emacs.  The Emacs distribution is
190 divided into subdirectories; the important ones are `etc', `lisp', and
191 `src'.
192
193    If you use Emacs, but don't know where it is kept on your system,
194 start Emacs, then type `C-h v data-directory <RET>'.  The directory
195 name displayed by this will be the full pathname of the installed `etc'
196 directory.  (This full path is recorded in the Emacs variable
197 `data-directory', and `C-h v' displays the value and the documentation
198 of a variable.)
199
200    The location of your Info directory (i.e., where on-line
201 documentation is stored) is kept in the variable
202 `Info-default-directory-list'.  Use `C-h v Info-default-directory-list
203 <RET>' to see the value of this variable, which will be a list of
204 directory names.  The last directory in that list is probably where
205 most Info files are stored.  By default, Info documentation is placed
206 in `/usr/local/info'.
207
208    Some of these files are available individually via FTP or e-mail; see
209 *Note Informational files for Emacs::.  They all are available in the
210 source distribution.  Many of the files in the `etc' directory are also
211 available via the Emacs `Help' menu, or by typing `C-h ?' (`M-x
212 help-for-help').
213
214    Your system administrator may have removed the `src' directory and
215 many files from the `etc' directory.
216
217 
218 File: efaq,  Node: Common acronyms,  Prev: File-name conventions,  Up: FAQ notation
219
220 What are FSF, LPF, OSF, GNU, RMS, FTP, and GPL?
221 ===============================================
222
223 FSF
224      Free Software Foundation
225
226 LPF
227      League for Programming Freedom
228
229 OSF
230      Open Software Foundation
231
232 GNU
233      GNU's Not Unix
234
235 RMS
236      Richard Matthew Stallman
237
238 FTP
239      File Transfer Protocol
240
241 GPL
242      GNU General Public License
243
244    Avoid confusing the FSF, the LPF, and the OSF.  The LPF opposes
245 look-and-feel copyrights and software patents.  The FSF aims to make
246 high quality free software available for everyone.  The OSF is a
247 consortium of computer vendors which develops commercial software for
248 Unix systems.
249
250    The word "free" in the title of the Free Software Foundation refers
251 to "freedom," not "zero dollars."  Anyone can charge any price for
252 GPL-covered software that they want to.  However, in practice, the
253 freedom enforced by the GPL leads to low prices, because you can always
254 get the software for less money from someone else, since everyone has
255 the right to resell or give away GPL-covered software.
256
257 
258 File: efaq,  Node: General questions,  Next: Getting help,  Prev: FAQ notation,  Up: Top
259
260 General questions
261 *****************
262
263    This chapter contains general questions having to do with Emacs, the
264 Free Software Foundation, and related organizations.
265
266 * Menu:
267
268 * The LPF::
269 * Real meaning of copyleft::
270 * Guidelines for newsgroup postings::
271 * Newsgroup archives::
272 * Reporting bugs::
273 * Unsubscribing from Emacs lists::
274 * Contacting the FSF::
275
276 
277 File: efaq,  Node: The LPF,  Next: Real meaning of copyleft,  Prev: General questions,  Up: General questions
278
279 What is the LPF?
280 ================
281
282    The LPF opposes the expanding danger of software patents and
283 look-and-feel copyrights.  To get more information, feel free to contact
284 the LPF via e-mail or otherwise.  You may also contact Joe Wells
285 <jbw@cs.bu.edu>; he will be happy to talk to you about the LPF.
286
287    You can find more information about the LPF in the file `etc/LPF'.
288 More papers describing the LPF's views are available on the Internet and
289 also from the LPF home page (http://lpf.ai.mit.edu/).
290
291 
292 File: efaq,  Node: Real meaning of copyleft,  Next: Guidelines for newsgroup postings,  Prev: The LPF,  Up: General questions
293
294 What is the real legal meaning of the GNU copyleft?
295 ===================================================
296
297    The real legal meaning of the GNU General Public License (copyleft)
298 will only be known if and when a judge rules on its validity and scope.
299 There has never been a copyright infringement case involving the GPL to
300 set any precedents.  Please take any discussion regarding this issue to
301 the newsgroup `news:gnu.misc.discuss', which was created to hold the
302 extensive flame wars on the subject.
303
304    RMS writes:
305
306      The legal meaning of the GNU copyleft is less important than the
307      spirit, which is that Emacs is a free software project and that
308      work pertaining to Emacs should also be free software.  "Free"
309      means that all users have the freedom to study, share, change and
310      improve Emacs.  To make sure everyone has this freedom, pass along
311      source code when you distribute any version of Emacs or a related
312      program, and give the recipients the same freedom that you enjoyed.
313
314 
315 File: efaq,  Node: Guidelines for newsgroup postings,  Next: Newsgroup archives,  Prev: Real meaning of copyleft,  Up: General questions
316
317 What are appropriate messages for `news:gnu.emacs.help', `news:gnu.emacs.bug', `news:comp.emacs', etc.?
318 =======================================================================================================
319
320    The file `etc/MAILINGLISTS' describes the purpose of each GNU
321 mailing list.  (*Note Informational files for Emacs::, if you want a
322 copy of the file.)  For those lists which are gatewayed with
323 newsgroups, it lists both the newsgroup name and the mailing list
324 address.
325
326    The newsgroup `news:comp.emacs' is for discussion of Emacs programs
327 in general.  This includes Emacs along with various other
328 implementations, such as XEmacs, JOVE, MicroEmacs, Freemacs, MG,
329 Unipress, CCA, and Epsilon.
330
331    Many people post Emacs questions to `news:comp.emacs' because they
332 don't receive any of the `gnu.*' newsgroups.  Arguments have been made
333 both for and against posting GNU-Emacs-specific material to
334 `news:comp.emacs'.  You have to decide for yourself.
335
336    Messages advocating "non-free" software are considered unacceptable
337 on any of the `gnu.*' newsgroups except for `news:gnu.misc.discuss',
338 which was created to hold the extensive flame-wars on the subject.
339 "Non-free" software includes any software for which the end user can't
340 freely modify the source code and exchange enhancements.  Be careful to
341 remove the `gnu.*' groups from the `Newsgroups:' line when posting a
342 followup that recommends such software.
343
344    `news:gnu.emacs.bug' is a place where bug reports appear, but avoid
345 posting bug reports to this newsgroup directly (*note Reporting bugs::).
346
347 
348 File: efaq,  Node: Newsgroup archives,  Next: Reporting bugs,  Prev: Guidelines for newsgroup postings,  Up: General questions
349
350 Where can I get old postings to `news:gnu.emacs.help' and other GNU groups?
351 ===========================================================================
352
353    The FSF has maintained archives of all of the GNU mailing lists for
354 many years, although there may be some unintentional gaps in coverage.
355 The archive is not particularly well organized or easy to retrieve
356 individual postings from, but pretty much everything is there.
357
358    The archive is at `ftp://ftp-mailing-list-archives.gnu.org'.
359
360    As of this writing, the archives are not yet working.
361
362    Web-based Usenet search services, such as DejaNews
363 (http://www.dejanews.com), also archive the `gnu.*' groups.
364
365 
366 File: efaq,  Node: Reporting bugs,  Next: Unsubscribing from Emacs lists,  Prev: Newsgroup archives,  Up: General questions
367
368 Where should I report bugs and other problems with Emacs?
369 =========================================================
370
371    The correct way to report Emacs bugs is by e-mail to
372 <bug-gnu-emacs@gnu.org>.  Anything sent here also appears in the
373 newsgroup `news:gnu.emacs.bug', but please use e-mail instead of news
374 to submit the bug report.  This ensures a reliable return address so
375 you can be contacted for further details.
376
377    Be sure to read the "Bugs" section of the Emacs manual before
378 reporting a bug to bug-gnu-emacs!  The manual describes in detail how
379 to submit a useful bug report.  (*Note On-line manual::, if you don't
380 know how to read the manual.)
381
382    RMS says:
383
384      Sending bug reports to <help-gnu-emacs@gnu.org> (which has the
385      effect of posting on `news:gnu.emacs.help') is undesirable because
386      it takes the time of an unnecessarily large group of people, most
387      of whom are just users and have no idea how to fix these problem.
388      <bug-gnu-emacs@gnu.org> reaches a much smaller group of people who
389      are more likely to know what to do and have expressed a wish to
390      receive more messages about Emacs than the others.
391
392    RMS says it is sometimes fine to post to `news:gnu.emacs.help':
393
394      If you have reported a bug and you don't hear about a possible fix,
395      then after a suitable delay (such as a week) it is okay to post on
396      `gnu.emacs.help' asking if anyone can help you.
397
398    If you are unsure whether you have found a bug, consider the
399 following non-exhaustive list, courtesy of RMS:
400
401      If Emacs crashes, that is a bug.  If Emacs gets compilation errors
402      while building, that is a bug.  If Emacs crashes while building,
403      that is a bug.  If Lisp code does not do what the documentation
404      says it does, that is a bug.
405
406 
407 File: efaq,  Node: Unsubscribing from Emacs lists,  Next: Contacting the FSF,  Prev: Reporting bugs,  Up: General questions
408
409 How do I unsubscribe from this mailing list?
410 ============================================
411
412    If you are receiving a GNU mailing list named LIST, you might be
413 able to unsubscribe from it by sending a request to the address
414 <LIST-request@gnu.org>.  However, this will not work if you are not
415 listed on the main mailing list, but instead receive the mail from a
416 distribution point.  In that case, you will have to track down at which
417 distribution point you are listed.  Inspecting the `Received' headers
418 on the mail messages may help, along with liberal use of the `EXPN' or
419 `VRFY' sendmail commands through `telnet SITE-ADDRESS smtp'.  Ask your
420 postmaster for help, if you cannot figure out these details.
421
422 
423 File: efaq,  Node: Contacting the FSF,  Prev: Unsubscribing from Emacs lists,  Up: General questions
424
425 What is the current address of the FSF?
426 =======================================
427
428 E-mail
429      gnu@gnu.org
430
431 Telephone
432      +1-617-542-5942
433
434 Fax
435      +1-617-542-2652
436
437 World Wide Web
438      `http://www.gnu.org/'
439
440 Postal address
441      Free Software Foundation
442      59 Temple Place - Suite 330
443      Boston, MA 02111-1307
444      USA
445    For details on how to order items directly from the FSF, see the GNU
446 Web site (http://www.gnu.org/order/order.html), and also the files
447 `etc/ORDERS', `ORDERS.EUROPE', and `ORDERS.JAPAN'.
448
449 
450 File: efaq,  Node: Getting help,  Next: Status of Emacs,  Prev: General questions,  Up: Top
451
452 Getting help
453 ************
454
455    This chapter tells you how to get help with Emacs
456
457 * Menu:
458
459 * Basic editing::
460 * Learning how to do something::
461 * Getting a printed manual::
462 * Emacs Lisp documentation::
463 * Installing Texinfo documentation::
464 * Printing a Texinfo file::
465 * Viewing Info files outside of Emacs::
466 * Informational files for Emacs::
467 * Help installing Emacs::
468 * Obtaining the FAQ::
469
470 
471 File: efaq,  Node: Basic editing,  Next: Learning how to do something,  Prev: Getting help,  Up: Getting help
472
473 I'm just starting Emacs; how do I do basic editing?
474 ===================================================
475
476    Type `C-h t' to invoke the self-paced tutorial.  Just typing `C-h'
477 enters the help system.
478
479    Your system administrator may have changed `C-h' to act like <DEL>
480 to deal with local keyboards.  You can use `M-x help-for-help' instead
481 to invoke help.  To discover what key (if any) invokes help on your
482 system, type `M-x where-is <RET> help-for-help <RET>'.  This will print
483 a comma-separated list of key sequences in the echo area.  Ignore the
484 last character in each key sequence listed.  Each of the resulting key
485 sequences invokes help.
486
487    Emacs help works best if it is invoked by a single key whose value
488 should be stored in the variable `help-char'.
489
490    There is also a WWW-based tutorial for Emacs 18, much of which is
491 also relevant for later versions of Emacs, available at
492
493    `http://kufacts.cc.ukans.edu/cwis/writeups/misc/emacsguide.html'
494
495 
496 File: efaq,  Node: Learning how to do something,  Next: Getting a printed manual,  Prev: Basic editing,  Up: Getting help
497
498 How do I find out how to do something in Emacs?
499 ===============================================
500
501    There are several methods for finding out how to do things in Emacs.
502
503    * The complete text of the Emacs manual is available on-line via the
504      Info hypertext reader.  Type `C-h i' to invoke Info.  Typing <h>
505      immediately after entering Info will provide a short tutorial on
506      how to use it.
507
508    * To quickly locate the section of the manual which discusses a
509      certain issue, or describes a command or a variable, type `C-h i m
510      emacs <RET> i TOPIC <RET>', where TOPIC is the name of the topic,
511      the command, or the variable which you are looking for.  If this
512      does not land you on the right place in the manual, press `,'
513      (comma) repeatedly until you find what you need.  (The `i' and `,'
514      keys invoke the index-searching functions, which look for the
515      TOPIC you type in all the indices of the Emacs manual.)
516
517    * You can list all of the commands whose names contain a certain word
518      (actually which match a regular expression) using `C-h a' (`M-x
519      command-apropos').
520
521    * The command `C-h C-f' (`Info-goto-emacs-command-node') prompts for
522      the name of a command, and then attempts to find the section in the
523      Emacs manual where that command is described.
524
525    * You can list all of the functions and variables whose names
526      contain a certain word using `M-x apropos'.
527
528    * You can list all of the functions and variables whose documentation
529      matches a regular expression or a string, using `M-x
530      apropos-documentation'.
531
532    * You can order a hardcopy of the manual from the FSF.  *Note
533      Getting a printed manual::.
534
535    * You can get a printed reference card listing commands and keys to
536      invoke them.  You can order one from the FSF for $1 (or 10 for $5),
537      or you can print your own from the `etc/refcard.tex' or
538      `etc/refcard.ps' files in the Emacs distribution.  Beginning with
539      version 21.1, the Emacs distribution comes with translations of the
540      reference card into several languages; look for files named
541      `etc/LANG-refcard.*', where LANG is a two-letter code of the
542      language.  For example, the German version of the reference card
543      is in the files `etc/de-refcard.tex' and `etc/de-refcard.ps'.
544
545    * There are many other commands in Emacs for getting help and
546      information.  To get a list of these commands, type `?' after
547      `C-h'.
548
549
550 
551 File: efaq,  Node: Getting a printed manual,  Next: Emacs Lisp documentation,  Prev: Learning how to do something,  Up: Getting help
552
553 How do I get a printed copy of the Emacs manual?
554 ================================================
555
556    You can order a printed copy of the Emacs manual from the FSF.  For
557 details see the GNU Web site (http://www.gnu.org/order/order.html) and
558 the file `etc/ORDERS'.
559
560    The full Texinfo source for the manual also comes in the `man'
561 directory of the Emacs distribution, if you're daring enough to try to
562 print out this 620-page manual yourself (*note Printing a Texinfo
563 file::).
564
565    If you absolutely have to print your own copy, and you don't have
566 TeX, you can get a PostScript version from
567
568    `http://www.gnu.org/manual/emacs/ps/emacs.ps.gz'
569
570    An HTML version of the manual is at
571
572    `www.gnu.org/manual/emacs/index.html'
573
574    *Note Learning how to do something::, for how to view the manual
575 on-line.
576
577 
578 File: efaq,  Node: Emacs Lisp documentation,  Next: Installing Texinfo documentation,  Prev: Getting a printed manual,  Up: Getting help
579
580 Where can I get documentation on Emacs Lisp?
581 ============================================
582
583    Within Emacs, you can type `C-h f' to get the documentation for a
584 function, `C-h v' for a variable.
585
586    For more information, obtain the Emacs Lisp Reference Manual.
587 Details on ordering it from FSF are on the GNU Web site
588 (http://www.gnu.org/order/order.html) and in the file `etc/ORDERS'.
589
590    The Emacs Lisp Reference Manual is also available on-line, in Info
591 format.  Texinfo source for the manual (along with pregenerated Info
592 files) is available at
593
594    `ftp://ftp.gnu.org/pub/gnu/emacs/elisp-manual-21-2.6.tar.gz'
595
596    and all mirrors of `ftp.gnu.org' (for a list, *note Current GNU
597 distributions::).  *Note Installing Texinfo documentation::, if you want
598 to install the Info files, or *Note Printing a Texinfo file::, if you
599 want to use the Texinfo source to print the manual yourself.
600
601    An HTML version of the Emacs Lisp Reference Manual is available at
602
603    `http://www.gnu.org/manual/elisp-manual-21-2.6/elisp.html'
604
605 
606 File: efaq,  Node: Installing Texinfo documentation,  Next: Printing a Texinfo file,  Prev: Emacs Lisp documentation,  Up: Getting help
607
608 How do I install a piece of Texinfo documentation?
609 ==================================================
610
611    First, you must turn the Texinfo files into Info files.  You may do
612 this using the stand-alone `makeinfo' program, available as part of the
613 latest Texinfo package at
614
615    `ftp://ftp.gnu.org/pub/gnu/texinfo/texinfo-4.0.tar.gz'
616
617    and all mirrors of `ftp.gnu.org' (for a list, *note Current GNU
618 distributions::).
619
620    For information about the Texinfo format, read the Texinfo manual
621 which comes with the Texinfo package.  This manual also comes installed
622 in Info format, so you can read it on-line; type `C-h i m texinfo
623 <RET>'.
624
625    Alternatively, you could use the Emacs command `M-x
626 texinfo-format-buffer', after visiting the Texinfo source file of the
627 manual you want to convert.
628
629    Neither `texinfo-format-buffer' nor `makeinfo' installs the
630 resulting Info files in Emacs's Info tree.  To install Info files,
631 perform these steps:
632
633   1. Move the files to the `info' directory in the installed Emacs
634      distribution.  *Note File-name conventions::, if you don't know
635      where that is.
636
637   2. Run the `install-info' command, which is part of the Texinfo
638      distribution, to update the main Info directory menu, like this:
639
640            install-info --info-dir=DIR-PATH DIR-PATH/FILE
641
642      where DIR-PATH is the full path to the directory where you copied
643      the produced Info file(s), and FILE is the name of the Info file
644      you produced and want to install.
645
646      If you don't have the `install-info' command installed, you can
647      edit the file `info/dir' in the installed Emacs distribution, and
648      add a line for the top level node in the Info package that you are
649      installing.  Follow the examples already in this file.  The format
650      is:
651
652           * Topic: (relative-pathname).  Short description of topic.
653
654
655    If you want to install Info files and you don't have the necessary
656 privileges, you have several options:
657
658    * Info files don't actually need to be installed before being used.
659      You can feed a file name to the `Info-goto-node' command (invoked
660      by pressing <g> in Info mode) by typing the name of the file in
661      parentheses.  This goes to the node named "Top" in that file.  For
662      example, to view a Info file named `INFO-FILE' in your home
663      directory, you can type this:
664
665           C-h i g (~/INFO-FILE) <RET>
666
667    * You can create your own Info directory.  You can tell Emacs where
668      that Info directory is by adding its pathname to the value of the
669      variable `Info-default-directory-list'.  For example, to use a
670      private Info directory which is a subdirectory of your home
671      directory named `Info', you could put this in your `.emacs' file:
672
673           (setq Info-default-directory-list
674                 (cons "~/Info" Info-default-directory-list))
675
676      You will need a top-level Info file named `dir' in this directory
677      which has everything the system `dir' file has in it, except it
678      should list only entries for Info files in that directory.  You
679      might not need it if all files in this directory were referenced
680      by other `dir' files.  The node lists from all `dir' files in
681      `Info-default-directory-list' are merged by the Info system.
682
683
684 
685 File: efaq,  Node: Printing a Texinfo file,  Next: Viewing Info files outside of Emacs,  Prev: Installing Texinfo documentation,  Up: Getting help
686
687 How do I print a Texinfo file?
688 ==============================
689
690    You can't get nicely printed output from Info files; you must still
691 have the original Texinfo source file for the manual you want to print.
692
693    Assuming you have TeX installed on your system, follow these steps:
694
695   1. Make sure the first line of the Texinfo file looks like this:
696
697           \input texinfo
698
699      You may need to change `texinfo' to the full pathname of the
700      `texinfo.tex' file, which comes with Emacs as `man/texinfo.tex'
701      (or copy or link it into the current directory).
702
703   2. Type `texi2dvi TEXINFO-SOURCE', where TEXINFO-SOURCE is the name
704      of the Texinfo source file for which you want to produce a printed
705      copy.
706
707      The `texi2dvi' script is part of the GNU Texinfo distribution
708      (*note Installing Texinfo documentation::).
709
710   3. Print the DVI file `TEXINFO-SOURCE.dvi' in the normal way for
711      printing DVI files at your site.  For example, if you have a
712      PostScript printer, run the `dvips' program to print the DVI file
713      on that printer.
714
715
716    To get more general instructions, retrieve the latest Texinfo package
717 (*note Installing Texinfo documentation::).
718
719 
720 File: efaq,  Node: Viewing Info files outside of Emacs,  Next: Informational files for Emacs,  Prev: Printing a Texinfo file,  Up: Getting help
721
722 Can I view Info files without using Emacs?
723 ==========================================
724
725    Yes.  Here are some alternative programs:
726
727    * `info', a stand-alone version of the Info program, comes as part of
728      the Texinfo package.  *Note Installing Texinfo documentation::, for
729      details.
730
731    * Xinfo, a stand-alone version of the Info program that runs under X
732      Window system.  You can get it at
733      `ftp://ftp.gnu.org/pub/gnu/xinfo/xinfo-1.01.01.tar.gz' and all
734      mirrors of `ftp.gnu.org' (see *Note Current GNU distributions::,
735      for a list of mirrors).
736
737    * Tkinfo, an Info viewer that runs under X Window system and uses
738      Tcl/Tk.  You can get Tkinfo at
739      `http://math-www.uni-paderborn.de/~axel/tkinfo/'.
740
741
742 
743 File: efaq,  Node: Informational files for Emacs,  Next: Help installing Emacs,  Prev: Viewing Info files outside of Emacs,  Up: Getting help
744
745 What informational files are available for Emacs?
746 =================================================
747
748    This isn't a frequently asked question, but it should be!  A variety
749 of informational files about Emacs and relevant aspects of the GNU
750 project are available for you to read.
751
752    The following files are available in the `etc' directory of the
753 Emacs distribution (see *Note File-name conventions::, if you're not
754 sure where that is).
755
756 `COPYING'
757      Emacs General Public License
758
759 `DISTRIB'
760      Emacs Availability Information, including the popular "Free
761      Software Foundation Order Form"
762
763 `FTP'
764      How to get GNU Software by Internet FTP or by UUCP
765
766 `GNU'
767      The GNU Manifesto
768
769 `INTERVIEW'
770      Richard Stallman discusses his public-domain UNIX-compatible
771      software system with BYTE editors
772
773 `LPF'
774      Why you should join the League for Programming Freedom
775
776 `MACHINES'
777      Status of Emacs on Various Machines and Systems
778
779 `MAILINGLISTS'
780      GNU Project Electronic Mailing Lists
781
782 `NEWS'
783      Emacs news, a history of recent user-visible changes
784
785 `SERVICE'
786      GNU Service Directory
787
788 `SUN-SUPPORT'
789      including "Using Emacstool with GNU Emacs"
790
791    Latest versions of the above files also available at
792
793    `ftp://ftp.gnu.org/pub/gnu/GNUinfo/'
794
795    More GNU information, including back issues of the `GNU's Bulletin',
796 are at
797
798    `http://www.gnu.org/bulletins/bulletins.html' and
799
800    `http://www.cs.pdx.edu/~trent/gnu/gnu.html'
801
802 
803 File: efaq,  Node: Help installing Emacs,  Next: Obtaining the FAQ,  Prev: Informational files for Emacs,  Up: Getting help
804
805 Where can I get help in installing Emacs?
806 =========================================
807
808    *Note Installing Emacs::, for some basic installation hints, and see
809 *Note Problems building Emacs::, or *Note Linking with -lX11 fails::,
810 if you have problems with the installation.
811
812    The file `etc/SERVICE' (see *Note File-name conventions::, if you're
813 not sure where that is) lists companies and individuals willing to sell
814 you help in installing or using Emacs.  An up-to-date version this file
815 is available on `ftp.gnu.org' (*note Informational files for Emacs::).
816
817 
818 File: efaq,  Node: Obtaining the FAQ,  Prev: Help installing Emacs,  Up: Getting help
819
820 Where can I get the latest version of this FAQ?
821 ===============================================
822
823    The Emacs FAQ is available in several ways:
824
825    * Inside of Emacs itself.  You can get it from selecting the `Emacs
826      FAQ' option from the `Help' menu of the Emacs menu bar at the top
827      of any Emacs frame, or by typing `C-h F' (`M-x view-emacs-FAQ').
828
829    * Via USENET.  If you can read news, the FAQ should be available in
830      your news spool, in both the `news:gnu.emacs.help' and
831      `news:comp.emacs' newsgroups.  Every news reader should allow you
832      to read any news article that is still in the news spool, even if
833      you have read the article before.  You may need to read the
834      instructions for your news reader to discover how to do this.  In
835      `rn', this command will do this for you at the article selection
836      level:
837
838           ?GNU Emacs Frequently Asked Questions?rc:m
839
840      In Gnus, you should type `C-u C-x C-s' from the `*Summary*' buffer
841      or `C-u <SPC>' from the `*Newsgroup*' buffer to view all articles
842      in a newsgroup.
843
844      If the FAQ articles have expired and have been deleted from your
845      news spool, it might (or might not) do some good to complain to
846      your news administrator, because the most recent FAQ should not
847      expire for a while.
848
849    * Via HTTP or FTP.  You can always fetch the latest FAQ from
850
851      `http://www.lerner.co.il/emacs/' and
852
853      `ftp://ftp.lerner.co.il/pub/emacs/'
854
855    * In the Emacs distribution.  Since Emacs 18.56, the FAQ at the time
856      of release has been part of the Emacs distribution as either
857      `etc/FAQ' or `man/faq.texi' (*note File-name conventions::).
858
859    * Via the World Wide Web.  A hypertext version is available at
860
861      `http://www.lerner.co.il/emacs/'
862
863    * Via anonymous ftp and e-mail from `rtfm.mit.edu' (and its mirror in
864      Europe), the main repository for FAQs and other items posted to
865      news.answers.  The Emacs FAQs are available at
866
867      `ftp://rtfm.mit.edu/pub/usenet/comp.emacs/' and
868
869      `ftp://ftp.uni-paderborn.de/pub/doc/FAQ/comp/emacs/'
870
871      If you do not have access to anonymous FTP, you can access the
872      archives using the `rtfm.mit.edu' mail server.  The Emacs FAQ can
873      be retrieved by sending mail to <mail-server@rtfm.mit.edu> with a
874      blank subject and containing
875
876           send usenet/news.answers/GNU-Emacs-FAQ/diffs
877           send usenet/news.answers/GNU-Emacs-FAQ/part1
878           send usenet/news.answers/GNU-Emacs-FAQ/part2
879           send usenet/news.answers/GNU-Emacs-FAQ/part3
880           send usenet/news.answers/GNU-Emacs-FAQ/part4
881           send usenet/news.answers/GNU-Emacs-FAQ/part5
882
883      For more information, send email to <mail-server@rtfm.mit.edu>
884      with "help" and "index" in the body on separate lines.
885
886    * As the very last resort, you can e-mail a request to
887      <emacs-faq@lerner.co.il>.  Don't do this unless you have made a
888      good-faith effort to obtain the FAQ list via one of the methods
889      listed above.
890
891
892 
893 File: efaq,  Node: Status of Emacs,  Next: Common requests,  Prev: Getting help,  Up: Top
894
895 Status of Emacs
896 ***************
897
898    This chapter gives you basic information about Emacs, including its
899 latest version status.
900
901 * Menu:
902
903 * Origin of the term Emacs::
904 * Latest version of Emacs::
905 * New in Emacs 20::
906 * New in Emacs 21::
907
908 
909 File: efaq,  Node: Origin of the term Emacs,  Next: Latest version of Emacs,  Prev: Status of Emacs,  Up: Status of Emacs
910
911 Where does the name "Emacs" come from?
912 ======================================
913
914    Emacs originally was an acronym for Editor MACroS.  RMS says he
915 "picked the name Emacs because <E> was not in use as an abbreviation on
916 ITS at the time."  The first Emacs was a set of macros written in 1976
917 at MIT by RMS for the editor TECO (Text Editor and COrrector,
918 originally Tape Editor and COrrector) under ITS on a PDP-10.  RMS had
919 already extended TECO with a "real-time" full-screen mode with
920 reprogrammable keys.  Emacs was started by Guy Steele
921 <gls@east.sun.com> as a project to unify the many divergent TECO
922 command sets and key bindings at MIT, and completed by RMS.
923
924    Many people have said that TECO code looks a lot like line noise; you
925 can read more at `news:alt.lang.teco'.  Someone has written a TECO
926 implementation in Emacs Lisp (to find it, see *Note Packages that do
927 not come with Emacs::); it would be an interesting project to run the
928 original TECO Emacs inside of Emacs.
929
930    For some not-so-serious alternative reasons for Emacs to have that
931 name, check out the file `etc/JOKES' (*note File-name conventions::).
932
933 
934 File: efaq,  Node: Latest version of Emacs,  Next: New in Emacs 20,  Prev: Origin of the term Emacs,  Up: Status of Emacs
935
936 What is the latest version of Emacs?
937 ====================================
938
939    Emacs 21.2 is the current version as of this writing.
940
941 
942 File: efaq,  Node: New in Emacs 20,  Next: New in Emacs 21,  Prev: Latest version of Emacs,  Up: Status of Emacs
943
944 What is different about Emacs 20?
945 =================================
946
947    To find out what has changed in recent versions, type `C-h n' (`M-x
948 view-emacs-news').  The oldest changes are at the bottom of the file,
949 so you might want to read it starting there, rather than at the top.
950
951    The differences between Emacs versions 18 and 19 was rather dramatic;
952 the introduction of frames, faces, and colors on windowing systems was
953 obvious to even the most casual user.
954
955    There are differences between Emacs versions 19 and 20 as well, but
956 many are more subtle or harder to find.  Among the changes are the
957 inclusion of MULE code for languages that use non-Latin characters and
958 for mixing several languages in the same document; the "Customize"
959 facility for modifying variables without having to use Lisp; and
960 automatic conversion of files from Macintosh, Microsoft, and Unix
961 platforms.
962
963    A number of older Lisp packages, such as Gnus, Supercite and the
964 calendar/diary, have been updated and enhanced to work with Emacs 20,
965 and are now included with the standard distribution.
966
967 
968 File: efaq,  Node: New in Emacs 21,  Prev: New in Emacs 20,  Up: Status of Emacs
969
970 What is different about Emacs 21?
971 =================================
972
973    Emacs 21 features a thorough rewrite of the display engine.  The new
974 display engine supports variable-size fonts, images, and can play sounds
975 on platforms which support that.  As a result, the visual appearence of
976 Emacs, when it runs on a windowed display, is much more reminiscent of
977 modern GUI programs, and includes 3D widgets (used for the mode line and
978 the scroll bars), a configurable and extensible toolbar, tooltips
979 (a.k.a. balloon help), and other niceties.
980
981    In addition, Emacs 21 supports faces on text-only terminals.  This
982 means that you can now have colors when you run Emacs on a GNU/Linux
983 console and on `xterm' with `emacs -nw'.
984
985 
986 File: efaq,  Node: Common requests,  Next: Bugs and problems,  Prev: Status of Emacs,  Up: Top
987
988 Common requests
989 ***************
990
991 * Menu:
992
993 * Setting up a customization file::
994 * Debugging a customization file::
995 * Colors on a TTY::
996 * Displaying the current line or column::
997 * Displaying the current file name in the titlebar::
998 * Turning on abbrevs by default::
999 * Turning on auto-fill by default::
1000 * Associating modes with files::
1001 * Working with unprintable characters::
1002 * Highlighting a region::
1003 * Controlling case sensitivity::
1004 * Wrapping words automatically::
1005 * Spell-checkers::
1006 * Checking TeX and *roff documents::
1007 * Changing load-path::
1008 * Using an already running Emacs process::
1009 * Compiler error messages::
1010 * Indenting switch statements::
1011 * Customizing C and C++ indentation::
1012 * Horizontal scrolling::
1013 * Overwrite mode::
1014 * Turning off beeping::
1015 * Turning the volume down::
1016 * Automatic indentation::
1017 * Matching parentheses::
1018 * Hiding #ifdef lines::
1019 * Repeating commands::
1020 * Valid X resources::
1021 * Evaluating Emacs Lisp code::
1022 * Changing the length of a Tab::
1023 * Inserting > at the beginning of each line::
1024 * Underlining paragraphs::
1025 * Repeating a command as many times as possible::
1026 * Forcing the cursor to remain in the same column::
1027 * Forcing Emacs to iconify itself::
1028 * Using regular expressions::
1029 * Replacing text across multiple files::
1030 * Documentation for etags::
1031 * Disabling backups::
1032 * Disabling auto-save-mode::
1033 * Going to a line by number::
1034 * Modifying pull-down menus::
1035 * Deleting menus and menu options::
1036 * Turning on syntax highlighting::
1037 * Scrolling only one line::
1038 * Replacing highlighted text::
1039 * Editing MS-DOS files::
1040 * Filling paragraphs with a single space::
1041 * Escape sequences in shell output::
1042
1043 
1044 File: efaq,  Node: Setting up a customization file,  Next: Colors on a TTY,  Prev: Common requests,  Up: Common requests
1045
1046 How do I set up a `.emacs' file properly?
1047 =========================================
1048
1049    *note Init File: (emacs)Init File
1050
1051    In general, new Emacs users should not have `.emacs' files, because
1052 it causes confusing non-standard behavior.  Then they send questions to
1053 <help-gnu-emacs@gnu.org> asking why Emacs isn't behaving as documented.
1054
1055    Beginning with version 20.1, Emacs includes the new Customize
1056 facility, which can be invoked using `M-x customize <RET>'.  This
1057 allows users who are unfamiliar with Emacs Lisp to modify their
1058 `.emacs' files in a relatively straightforward way, using menus rather
1059 than Lisp code.  Not all packages support Customize as of this writing,
1060 but the number is growing fairly steadily.
1061
1062    While Customize might indeed make it easier to configure Emacs,
1063 consider taking a bit of time to learn Emacs Lisp and modifying your
1064 `.emacs' directly.  Simple configuration options are described rather
1065 completely in *note Init File: (emacs)Init File, for users interested
1066 in performing frequently requested, basic tasks.
1067
1068 
1069 File: efaq,  Node: Colors on a TTY,  Next: Debugging a customization file,  Prev: Setting up a customization file,  Up: Common requests
1070
1071 How do I get colors and syntax highlighting on a TTY?
1072 =====================================================
1073
1074    In Emacs 21.1 and later, colors and faces are supported in
1075 non-windowed mode, i.e. on Unix and GNU/Linux text-only terminals and
1076 consoles, and when invoked as `emacs -nw' on X and MS-Windows.  (Colors
1077 and faces were supported in the MS-DOS port since Emacs 19.29.)  Emacs
1078 automatically detects color support at startup and uses it if
1079 available.  If you think that your terminal supports colors, but Emacs
1080 won't use them, check the `termcap' entry for your display type for
1081 color-related capabilities.
1082
1083    The command `M-x list-colors-display' pops up a window which
1084 exhibits all the colors Emacs knows about on the current display.
1085
1086    Syntax highlighting is usually turned off by default; see *Note
1087 Turning on syntax highlighting::, for instructions how to turn it on.
1088
1089 
1090 File: efaq,  Node: Debugging a customization file,  Next: Displaying the current line or column,  Prev: Colors on a TTY,  Up: Common requests
1091
1092 How do I debug a `.emacs' file?
1093 ===============================
1094
1095    Start Emacs with the `-debug-init' command-line option.  This
1096 enables the Emacs Lisp debugger before evaluating your `.emacs' file,
1097 and places you in the debugger if something goes wrong.  The top line
1098 in the `trace-back' buffer will be the error message, and the second or
1099 third line of that buffer will display the Lisp code from your `.emacs'
1100 file that caused the problem.
1101
1102    You can also evaluate an individual function or argument to a
1103 function in your `.emacs' file by moving the cursor to the end of the
1104 function or argument and typing `C-x C-e' (`M-x eval-last-sexp').
1105
1106    Use `C-h v' (`M-x describe-variable') to check the value of
1107 variables which you are trying to set or use.
1108
1109 
1110 File: efaq,  Node: Displaying the current line or column,  Next: Displaying the current file name in the titlebar,  Prev: Debugging a customization file,  Up: Common requests
1111
1112 How do I make Emacs display the current line (or column) number?
1113 ================================================================
1114
1115    To have Emacs automatically display the current line number of the
1116 point in the mode line, do `M-x line-number-mode'.  You can also put the
1117 form
1118
1119      (setq line-number-mode t)
1120
1121 in your `.emacs' file to achieve this whenever you start Emacs.  (Line
1122 number display is on by default, unless your site-specific
1123 initialization disables it.) Note that Emacs will not display the line
1124 number if the buffer's size in bytes is larger than the value of the
1125 variable `line-number-display-limit'.
1126
1127    As of Emacs 20, you can similarly display the current column with
1128 `M-x column-number-mode', or by putting the form
1129
1130      (setq column-number-mode t)
1131
1132 in your `.emacs' file.
1133
1134    The `"%c"' format specifier in the variable `mode-line-format' will
1135 insert the current column's value into the mode line.  See the
1136 documentation for `mode-line-format' (using `C-h v mode-line-format
1137 <RET>') for more information on how to set and use this variable.
1138
1139    Users of all Emacs versions can display the current column using the
1140 `column' package written by Per Abrahamsen <abraham@dina.kvl.dk>.
1141 *Note Packages that do not come with Emacs::, for instructions on how
1142 to get it.
1143
1144    None of the `vi' emulation modes provide the "set number" capability
1145 of `vi' (as far as we know).
1146
1147 
1148 File: efaq,  Node: Displaying the current file name in the titlebar,  Next: Turning on abbrevs by default,  Prev: Displaying the current line or column,  Up: Common requests
1149
1150 How can I modify the titlebar to contain the current file name?
1151 ===============================================================
1152
1153    The contents of an Emacs frame's titlebar is controlled by the
1154 variable `frame-title-format', which has the same structure as the
1155 variable `mode-line-format'.  (Use `C-h v' or `M-x describe-variable'
1156 to get information about one or both of these variables.)
1157
1158    By default, the titlebar for a frame does contain the name of the
1159 buffer currently being visited, except if there is a single frame.  In
1160 such a case, the titlebar contains Emacs invocation name and the name
1161 of the machine at which Emacs was invoked.  This is done by setting
1162 `frame-title-format' to the default value of
1163
1164      (multiple-frames "%b" ("" invocation-name "@" system-name))
1165
1166    To modify the behavior such that frame titlebars contain the buffer's
1167 name regardless of the number of existing frames, include the following
1168 in your `.emacs':
1169
1170      (setq frame-title-format "%b")
1171
1172 
1173 File: efaq,  Node: Turning on abbrevs by default,  Next: Turning on auto-fill by default,  Prev: Displaying the current file name in the titlebar,  Up: Common requests
1174
1175 How do I turn on abbrevs by default just in mode MYMODE?
1176 ========================================================
1177
1178    Put this in your `.emacs' file:
1179