root/branches/2.1/info/efaq-3

Revision 3212, 48.9 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: Spontaneous entry into isearch-mode,  Next: Problems talking to certain hosts,  Prev: Termcap/Terminfo entries for Emacs,  Up: Bugs and problems
32
33 Why does Emacs spontaneously start displaying "I-search:" and beeping?
34 ======================================================================
35
36    Your terminal (or something between your terminal and the computer)
37 is sending `C-s' and `C-q' for flow control, and Emacs is receiving
38 these characters and interpreting them as commands.  (The `C-s'
39 character normally invokes the `isearch-forward' command.)  For
40 possible solutions, see *Note Handling C-s and C-q with flow control::.
41
42 
43 File: efaq,  Node: Problems talking to certain hosts,  Next: Errors with init files,  Prev: Spontaneous entry into isearch-mode,  Up: Bugs and problems
44
45 Why can't Emacs talk to certain hosts (or certain hostnames)?
46 =============================================================
47
48    The problem may be that Emacs is linked with a wimpier version of
49 `gethostbyname' than the rest of the programs on the machine.  This is
50 often manifested as a message on startup of "X server not responding.
51 Check your `DISPLAY' environment variable." or a message of "Unknown
52 host" from `open-network-stream'.
53
54    On a Sun, this may be because Emacs had to be linked with the static
55 C library.  The version of `gethostbyname' in the static C library may
56 only look in `/etc/hosts' and the NIS (YP) maps, while the version in
57 the dynamic C library may be smart enough to check DNS in addition to
58 or instead of NIS.  On a Motorola Delta running System V R3.6, the
59 version of `gethostbyname' in the standard library works, but the one
60 that works with NIS doesn't (the one you get with -linet).  Other
61 operating systems have similar problems.
62
63    Try these options:
64
65    * Explicitly add the host you want to communicate with to
66      `/etc/hosts'.
67
68    * Relink Emacs with this line in `src/config.h':
69
70           #define LIBS_SYSTEM -lresolv
71
72    * Replace `gethostbyname' and friends in `libc.a' with more useful
73      versions such as the ones in `libresolv.a'.  Then relink Emacs.
74
75    * If you are actually running NIS, make sure that `ypbind' is
76      properly told to do DNS lookups with the correct command line
77      switch.
78
79
80 
81 File: efaq,  Node: Errors with init files,  Next: Emacs ignores X resources,  Prev: Problems talking to certain hosts,  Up: Bugs and problems
82
83 Why does Emacs say "Error in init file"?
84 ========================================
85
86    An error occurred while loading either your `.emacs' file or the
87 system-wide file `lisp/default.el'.  Emacs 21.1 and later pops the
88 `*Messages*' buffer, and puts there some additional information about
89 the error, to provide some hints for debugging.
90
91    For information on how to debug your `.emacs' file, see *Note
92 Debugging a customization file::.
93
94    It may be the case that you need to load some package first, or use a
95 hook that will be evaluated after the package is loaded.  A common case
96 of this is explained in *Note Terminal setup code works after Emacs has
97 begun::.
98
99 
100 File: efaq,  Node: Emacs ignores X resources,  Next: Emacs ignores frame parameters,  Prev: Errors with init files,  Up: Bugs and problems
101
102 Why does Emacs ignore my X resources (my .Xdefaults file)?
103 ==========================================================
104
105    As of version 19, Emacs searches for X resources in the files
106 specified by the following environment variables:
107
108    * `XFILESEARCHPATH'
109
110    * `XUSERFILESEARCHPATH'
111
112    * `XAPPLRESDIR'
113
114
115    This emulates the functionality provided by programs written using
116 the Xt toolkit.
117
118    `XFILESEARCHPATH' and `XUSERFILESEARCHPATH' should be a list of file
119 names separated by colons.  `XAPPLRESDIR' should be a list of directory
120 names separated by colons.
121
122    Emacs searches for X resources:
123
124   1. specified on the command line, with the `-xrm RESOURCESTRING'
125      option,
126
127   2. then in the value of the `XENVIRONMENT' environment variable,
128
129         - or if that is unset, in the file named
130           `~/.Xdefaults-HOSTNAME' if it exists (where HOSTNAME is the
131           name of the machine Emacs is running on),
132
133
134   3. then in the screen-specific and server-wide resource properties
135      provided by the server,
136
137         - or if those properties are unset, in the file named
138           `~/.Xdefaults' if it exists,
139
140
141   4. then in the files listed in `XUSERFILESEARCHPATH',
142
143         - or in files named `LANG/Emacs' in directories listed in
144           `XAPPLRESDIR' (where LANG is the value of the `LANG'
145           environment variable), if the `LANG' environment variable is
146           set,
147
148         - or in files named Emacs in the directories listed in
149           `XAPPLRESDIR'
150
151         - or in `~/LANG/Emacs' (if the `LANG' environment variable is
152           set),
153
154         - or in `~/Emacs',
155
156
157   5. then in the files listed in  `XFILESEARCHPATH'.
158
159
160 
161 File: efaq,  Node: Emacs ignores frame parameters,  Next: Emacs takes a long time to visit files,  Prev: Emacs ignores X resources,  Up: Bugs and problems
162
163 Why don't my customizations of the frame parameters work?
164 =========================================================
165
166    This probably happens because you have set the frame parameters in
167 the variable `initial-frame-alist'.  That variable holds parameters
168 used only for the first frame created when Emacs starts.  To customize
169 the parameters of all frames, change the variable `default-frame-alist'
170 instead.
171
172    These two variables exist because many users customize the initial
173 frame in a special way.  For example, you could determine the position
174 and size of the initial frame, but would like to control the geometry
175 of the other frames by individually positioning each one of them.
176
177 
178 File: efaq,  Node: Emacs takes a long time to visit files,  Next: Editing files with $ in the name,  Prev: Emacs ignores frame parameters,  Up: Bugs and problems
179
180 Why does Emacs take 20 seconds to visit a file?
181 ===============================================
182
183    Old versions of Emacs (i.e., versions before Emacs 20.x) often
184 encountered this when the master lock file, `!!!SuperLock!!!', has been
185 left in the lock directory somehow.  Delete it.
186
187    Mark Meuer <meuer@geom.umn.edu> says that NeXT NFS has a bug where
188 an exclusive create succeeds but returns an error status.  This can
189 cause the same problem.  Since Emacs's file locking doesn't work over
190 NFS anyway, the best solution is to recompile Emacs with
191 `CLASH_DETECTION' undefined.
192
193 
194 File: efaq,  Node: Editing files with $ in the name,  Next: Shell mode loses the current directory,  Prev: Emacs takes a long time to visit files,  Up: Bugs and problems
195
196 How do I edit a file with a `$' in its name?
197 ============================================
198
199    When entering a file name in the minibuffer, Emacs will attempt to
200 expand a `$' followed by a word as an environment variable.  To suppress
201 this behavior, type `$$' instead.
202
203 
204 File: efaq,  Node: Shell mode loses the current directory,  Next: Security risks with Emacs,  Prev: Editing files with $ in the name,  Up: Bugs and problems
205
206 Why does shell mode lose track of the shell's current directory?
207 ================================================================
208
209    Emacs has no way of knowing when the shell actually changes its
210 directory.  This is an intrinsic limitation of Unix.  So it tries to
211 guess by recognizing `cd' commands.  If you type `cd' followed by a
212 directory name with a variable reference (`cd $HOME/bin') or with a
213 shell metacharacter (`cd ../lib*'), Emacs will fail to correctly guess
214 the shell's new current directory.  A huge variety of fixes and
215 enhancements to shell mode for this problem have been written to handle
216 this problem.  Check the Lisp Code Directory (*note Finding a package
217 with particular functionality::).
218
219    You can tell Emacs the shell's current directory with the command
220 `M-x dirs'.
221
222 
223 File: efaq,  Node: Security risks with Emacs,  Next: Dired claims that no file is on this line,  Prev: Shell mode loses the current directory,  Up: Bugs and problems
224
225 Are there any security risks in Emacs?
226 ======================================
227
228    * The `movemail' incident.  (No, this is not a risk.)
229
230      In his book `The Cuckoo's Egg', Cliff Stoll describes this in
231      chapter 4.  The site at LBL had installed the `/etc/movemail'
232      program setuid root.  (As of version 19, `movemail' is in your
233      architecture-specific directory; type `C-h v exec-directory <RET>'
234      to see what it is.)  Since `movemail' had not been designed for
235      this situation, a security hole was created and users could get
236      root privileges.
237
238      `movemail' has since been changed so that this security hole will
239      not exist, even if it is installed setuid root.  However,
240      `movemail' no longer needs to be installed setuid root, which
241      should eliminate this particular risk.
242
243      We have heard unverified reports that the 1988 Internet worm took
244      advantage of this configuration problem.
245
246    * The `file-local-variable' feature.  (Yes, a risk, but easy to
247      change.)
248
249      There is an Emacs feature that allows the setting of local values
250      for variables when editing a file by including specially formatted
251      text near the end of the file.  This feature also includes the
252      ability to have arbitrary Emacs Lisp code evaluated when the file
253      is visited.  Obviously, there is a potential for Trojan horses to
254      exploit this feature.
255
256      Emacs 18 allowed this feature by default; users could disable it by
257      setting the variable `inhibit-local-variables' to a non-nil value.
258
259      As of Emacs 19, Emacs has a list of local variables that create a
260      security risk.  If a file tries to set one of them, it asks the
261      user to confirm whether the variables should be set.  You can also
262      tell Emacs whether to allow the evaluation of Emacs Lisp code
263      found at the bottom of files by setting the variable
264      `enable-local-eval'.
265
266      For more information, *note File Variables: (emacs)File Variables.
267
268    * Synthetic X events.  (Yes, a risk; use `MIT-MAGIC-COOKIE-1' or
269      better.)
270
271      Emacs accepts synthetic X events generated by the `SendEvent'
272      request as though they were regular events.  As a result, if you
273      are using the trivial host-based authentication, other users who
274      can open X connections to your X workstation can make your Emacs
275      process do anything, including run other processes with your
276      privileges.
277
278      The only fix for this is to prevent other users from being able to
279      open X connections.  The standard way to prevent this is to use a
280      real authentication mechanism, such as `MIT-MAGIC-COOKIE-1'.  If
281      using the `xauth' program has any effect, then you are probably
282      using `MIT-MAGIC-COOKIE-1'.  Your site may be using a superior
283      authentication method; ask your system administrator.
284
285      If real authentication is not a possibility, you may be satisfied
286      by just allowing hosts access for brief intervals while you start
287      your X programs, then removing the access.  This reduces the risk
288      somewhat by narrowing the time window when hostile users would
289      have access, but _does not eliminate the risk_.
290
291      On most computers running Unix and X, you enable and disable
292      access using the `xhost' command.  To allow all hosts access to
293      your X server, use
294
295           xhost +
296
297      at the shell prompt, which (on an HP machine, at least) produces
298      the following message:
299
300           access control disabled, clients can connect from any host
301
302      To deny all hosts access to your X server (except those explicitly
303      allowed by name), use
304
305           xhost -
306
307      On the test HP computer, this command generated the following
308      message:
309
310           access control enabled, only authorized clients can connect
311
312
313 
314 File: efaq,  Node: Dired claims that no file is on this line,  Prev: Security risks with Emacs,  Up: Bugs and problems
315
316 Dired says, "no file on this line" when I try to do something.
317 ==============================================================
318
319    Chances are you're using a localized version of Unix that doesn't
320 use US date format in dired listings.  You can check this by looking at
321 dired listings or by typing `ls -l' to a shell and looking at the dates
322 that come out.
323
324    Dired uses a regular expression to find the beginning of a file name.
325 In a long Unix-style directory listing (`ls -l'), the file name starts
326 after the date.  The regexp has thus been written to look for the date,
327 the format of which can vary on non-US systems.
328
329    There are two approaches to solving this.  The first one involves
330 setting things up so that `ls -l' outputs US date format.  This can be
331 done by setting the locale.  See your OS manual for more information.
332
333    The second approach involves changing the regular expression used by
334 dired, `dired-move-to-filename-regexp'.
335
336 
337 File: efaq,  Node: Compiling and installing Emacs,  Next: Finding Emacs and related packages,  Prev: Bugs and problems,  Up: Top
338
339 Compiling and installing Emacs
340 ******************************
341
342 * Menu:
343
344 * Installing Emacs::
345 * Updating Emacs::
346 * Problems building Emacs::
347 * Linking with -lX11 fails::
348
349 
350 File: efaq,  Node: Installing Emacs,  Next: Updating Emacs,  Prev: Compiling and installing Emacs,  Up: Compiling and installing Emacs
351
352 How do I install Emacs?
353 =======================
354
355    This answer is meant for users of Unix and Unix-like systems.  Users
356 of other operating systems should see the series of questions beginning
357 with *Note Emacs for MS-DOS::, which describe where to get non-Unix
358 source and binaries, and how to install Emacs on those systems.
359
360    For Unix and Unix-like systems, the easiest way is often to compile
361 it from scratch.  You will need:
362
363    * Emacs sources.  *Note Current GNU distributions::, for a list of
364      ftp sites that make them available.  On `ftp.gnu.org', the main GNU
365      distribution site, sources are available as
366
367      `ftp://ftp.gnu.org/pub/gnu/emacs/emacs-21.2.tar.gz'
368
369      The above will obviously change as new versions of Emacs come out.
370      For instance, when Emacs 21.42 is released, it will most probably
371      be available as
372
373      `ftp://ftp.gnu.org/pub/gnu/emacs/emacs-21.42.tar.gz'
374
375      Again, you should use one of the GNU mirror sites (see *Note
376      Current GNU distributions::, and adjust the URL accordingly) so as
377      to reduce load on `ftp.gnu.org'.
378
379    * `gzip', the GNU compression utility.  You can get `gzip' via
380      anonymous ftp at mirrors of `ftp.gnu.org' sites; it should compile
381      and install without much trouble on most systems.  Once you have
382      retrieved the Emacs sources, you will probably be able to
383      uncompress them with the command
384
385           gunzip --verbose emacs-21.2.tar.gz
386
387      changing the Emacs version (21.2), as necessary.  Once `gunzip'
388      has finished doing its job, a file by the name of `emacs-21.2.tar'
389      should be in your build directory.
390
391    * `tar', the "tape archiving" program, which moves multiple files
392      into and out of archive files, or "tarfiles".  All of the files
393      comprising the Emacs source come in a single tarfile, and must be
394      extracted using `tar' before you can build Emacs.  Typically, the
395      extraction command would look like
396
397           tar -xvvf emacs-21.2.tar
398
399      The `x' indicates that we want to extract files from this tarfile,
400      the two `v's force verbose output, and the `f' tells `tar' to use
401      a disk file, rather than one on the tape drive.
402
403      If you're using GNU `tar' (available at mirrors of `ftp.gnu.org'),
404      you can combine this step and the previous one by using the command
405
406           tar -zxvvf emacs-21.2.tar.gz
407
408      The additional `z' at the beginning of the options list tells GNU
409      `tar' to uncompress the file with `gunzip' before extracting the
410      tarfile's components.
411
412
413    At this point, the Emacs sources (all 70+ megabytes of them) should
414 be sitting in a directory called `emacs-21.2'.  On most common Unix and
415 Unix-like systems, you should be able to compile Emacs (with X Window
416 system support) with the following commands:
417
418      cd emacs-21.2       # change directory to emacs-21.2
419      ./configure         # configure Emacs for your particular system
420      make                # use Makefile to build components, then Emacs
421
422    If the `make' completes successfully, the odds are fairly good that
423 the build has gone well.  (*Note Problems building Emacs::, if you
424 weren't successful.)
425
426    By default, Emacs is installed in the following directories:
427
428 `/usr/local/bin'
429      binaries.
430
431 `/usr/local/share/emacs/21.2'
432      Lisp code and support files.
433
434 `/usr/local/info'
435      Info documentation.
436
437    To install files in those default directories, become the superuser
438 and type
439
440      make install
441
442    Note that `make install' will overwrite `/usr/local/bin/emacs' and
443 any Emacs Info files that might be in `/usr/local/info'.
444
445    Much more verbose instructions (with many more hints and suggestions)
446 come with the Emacs sources, in the file `INSTALL'.
447
448 
449 File: efaq,  Node: Updating Emacs,  Next: Problems building Emacs,  Prev: Installing Emacs,  Up: Compiling and installing Emacs
450
451 How do I update Emacs to the latest version?
452 ============================================
453
454    *Note Installing Emacs::, and follow the instructions there for
455 installation.
456
457    Most files are placed in version-specific directories.  Emacs 21.2,
458 for instance, places files in `/usr/local/share/emacs/21.2'.
459
460    Upgrading should overwrite only, `/usr/local/bin/emacs' (the Emacs
461 binary) and documentation in `/usr/local/info'.  Back up these files
462 before you upgrade, and you shouldn't have too much trouble.
463
464 
465 File: efaq,  Node: Problems building Emacs,  Next: Linking with -lX11 fails,  Prev: Updating Emacs,  Up: Compiling and installing Emacs
466
467 What should I do if I have trouble building Emacs?
468 ==================================================
469
470    First look in the file `etc/PROBLEMS' (where you unpack the Emacs
471 source) to see if there is already a solution for your problem.  Next,
472 look for other questions in this FAQ that have to do with Emacs
473 installation and compilation problems.
474
475    If you'd like to have someone look at your problem and help solve it,
476 see *Note Help installing Emacs::.
477
478    If you cannot find a solution in the documentation, send a message to
479 <bug-gnu-emacs@gnu.org>.
480
481    Please don't post it to `news:gnu.emacs.help' or send e-mail to
482 <help-gnu-emacs@gnu.org>.  For further guidelines, see *Note Guidelines
483 for newsgroup postings:: and *Note Reporting bugs::.
484
485 
486 File: efaq,  Node: Linking with -lX11 fails,  Prev: Problems building Emacs,  Up: Compiling and installing Emacs
487
488 Why does linking Emacs with -lX11 fail?
489 =======================================
490
491    Emacs needs to be linked with the static version of the X11 library,
492 `libX11.a'.  This may be missing.
493
494    On OpenWindows, you may need to use `add_services' to add the
495 "OpenWindows Programmers" optional software category from the CD-ROM.
496
497    On HP-UX 8.0, you may need to run `update' again to load the X11-PRG
498 "fileset".  This may be missing even if you specified "all filesets"
499 the first time.  If `libcurses.a' is missing, you may need to load the
500 "Berkeley Development Option."
501
502    David Zuhn <zoo@armadillo.com> says that MIT X builds shared
503 libraries by default, and only shared libraries, on those platforms that
504 support them.  These shared libraries can't be used when undumping
505 `temacs' (the last stage of the Emacs build process).  To get regular
506 libraries in addition to shared libraries, add this to `site.cf':
507
508      #define ForceNormalLib YES
509
510    Other systems may have similar problems.  You can always define
511 `CANNOT_DUMP' and link with the shared libraries instead.
512
513    To get the Xmenu stuff to work, you need to find a copy of MIT's
514 `liboldX.a'.
515
516 
517 File: efaq,  Node: Finding Emacs and related packages,  Next: Major packages and programs,  Prev: Compiling and installing Emacs,  Up: Top
518
519 Finding Emacs and related packages
520 **********************************
521
522 * Menu:
523
524 * Finding Emacs on the Internet::
525 * Finding a package with particular functionality::
526 * Packages that do not come with Emacs::
527 * Submitting to the Emacs Lisp Archive::
528 * Current GNU distributions::
529 * Difference between Emacs and XEmacs::
530 * Emacs for MS-DOS::
531 * Emacs for Windows::
532 * Emacs for OS/2::
533 * Emacs for Atari ST::
534 * Emacs for the Amiga ::
535 * Emacs for NeXTSTEP::
536 * Emacs for Apple computers::
537 * Emacs for VMS and DECwindows::
538 * Modes for various languages::
539 * Translating names to IP addresses::
540
541 
542 File: efaq,  Node: Finding Emacs on the Internet,  Next: Finding a package with particular functionality,  Prev: Finding Emacs and related packages,  Up: Finding Emacs and related packages
543
544 Where can I get Emacs on the net (or by snail mail)?
545 ====================================================
546
547    Look in the files `etc/DISTRIB' and `etc/FTP' for information on
548 nearby archive sites and `etc/ORDERS' for mail orders.  If you don't
549 already have Emacs, see *Note Informational files for Emacs::, for how
550 to get these files.
551
552    *Note Installing Emacs::, for information on how to obtain and build
553 the latest version of Emacs, and see *Note Current GNU distributions::,
554 for a list of archive sites that make GNU software available.
555
556 
557 File: efaq,  Node: Finding a package with particular functionality,  Next: Packages that do not come with Emacs,  Prev: Finding Emacs on the Internet,  Up: Finding Emacs and related packages
558
559 How do I find a Emacs Lisp package that does XXX?
560 =================================================
561
562    First of all, you should check to make sure that the package isn't
563 already available.  For example, typing `M-x apropos <RET> wordstar
564 <RET>' lists all functions and variables containing the string
565 `wordstar'.
566
567    It is also possible that the package is on your system, but has not
568 been loaded.  To see which packages are available for loading, look
569 through your computer's lisp directory (*note File-name conventions::).
570 The Lisp source to most packages contains a short description of how
571 they should be loaded, invoked, and configured--so before you use or
572 modify a Lisp package, see if the author has provided any hints in the
573 source code.
574
575    If a package does not come with Emacs, check the Lisp Code Directory.
576 The LCD was originally maintained by Dave Brennan <brennan@hal.com>,
577 but was recently taken over by toby knudsen <toby@world.std.com>, who
578 maintains `http://www.emacs.org'.  The LCD is currently being
579 reorganized and updated, but you can meanwhile find many packages at
580 `ftp://ftp.emacs.org/pub'.
581
582    For now, you can search through the LCD with `lispdir.el', which is
583 in the process of being updated.  Download it from the LCD, in the
584 `emacs-lisp-attic/misc' directory, and then evaluate the following Lisp
585 form (*note Evaluating Emacs Lisp code::):
586
587      (setq lisp-code-directory
588       "/anonymous@ftp.emacs.org:pub/emacs-lisp-attic/emacs-lisp/LCD-datafile.gz"
589        elisp-archive-host "ftp.emacs.org"
590        elisp-archive-directory "/pub/emacs-lisp-attic/emacs-lisp/")
591
592    Once you have installed `lispdir.el', you can use `M-x
593 lisp-dir-apropos' to search the listing.  For example, `M-x
594 lisp-dir-apropos <RET> ange-ftp <RET>' produces this output:
595
596               GNU Emacs Lisp Code Directory Apropos --- "ange-ftp"
597      "~/" refers to archive.cis.ohio-state.edu:pub/elisp-archive/
598      
599           ange-ftp (4.18)       15-Jul-1992
600                Andy Norman, <ange@hplb.hpl.hp.com>
601                ~/packages/ange-ftp.tar.Z
602                transparent FTP Support for GNU Emacs
603           auto-save (1.19)      01-May-1992
604                Sebastian Kremer, <sk@thp.uni-koeln.de>
605                ~/misc/auto-save.el.Z
606                Safer autosaving with support for ange-ftp and /tmp
607           ftp-quik (1.0)        28-Jul-1993
608                Terrence Brannon, <tb06@pl122f.eecs.lehigh.edu>
609                ~/modes/ftp-quik.el.Z
610                Quik access to dired'ing of ange-ftp and normal paths
611
612 
613 File: efaq,  Node: Packages that do not come with Emacs,  Next: Submitting to the Emacs Lisp Archive,  Prev: Finding a package with particular functionality,  Up: Finding Emacs and related packages
614
615 Where can I get Emacs Lisp packages that don't come with Emacs?
616 ===============================================================
617
618    First, check the Lisp Code Directory to find the name of the package
619 you are looking for (*note Finding a package with particular
620 functionality::).  Next, check local archives and the Emacs Lisp Archive
621 to find a copy of the relevant files.  If you still haven't found it,
622 you can send e-mail to the author asking for a copy.  If you find Emacs
623 Lisp code that doesn't appear in the LCD, please submit a copy to the
624 LCD (*note Submitting to the Emacs Lisp Archive::).
625
626    You can access the Emacs Lisp Archive at
627
628    `ftp://archive.cis.ohio-state.edu/pub/emacs-lisp/'
629
630 or at
631
632    `http://www.cis.ohio-state.edu/emacs-lisp'
633
634 Retrieve and read the file `README' first.
635
636    * The archive maintainers do not have time to answer individual
637      requests for packages or the list of packages in the archive.  If
638      you cannot use FTP or UUCP to access the archive yourself, try to
639      find a friend who can, but please don't ask the maintainers.
640
641    * Any files with names ending in `.Z', `.z', or `.gz' are
642      compressed, so you should use "binary" mode in FTP to retrieve
643      them.  You should also use binary mode whenever you retrieve any
644      files with names ending in `.elc'.
645
646
647 
648 File: efaq,  Node: Submitting to the Emacs Lisp Archive,  Next: Current GNU distributions,  Prev: Packages that do not come with Emacs,  Up: Finding Emacs and related packages
649
650 How do I submit code to the Emacs Lisp Archive?
651 ===============================================
652
653    Guidelines and procedures for submission to the archive can be found
654 in the file `GUIDELINES' in the archive directory (*note Packages that
655 do not come with Emacs::).  It covers documentation, copyrights,
656 packaging, submission, and the Lisp Code Directory Record.  Anonymous
657 FTP uploads are not permitted.  Instead, all submissions are mailed to
658 <elisp-archive@cis.ohio-state.edu>.  The `lispdir.el' package has a
659 function named `submit-lcd-entry' which will help you with this.
660
661 
662 File: efaq,  Node: Current GNU distributions,  Next: Difference between Emacs and XEmacs,  Prev: Submitting to the Emacs Lisp Archive,  Up: Finding Emacs and related packages
663
664 Where can I get other up-to-date GNU stuff?
665 ===========================================
666
667    The most up-to-date official GNU software is normally kept at
668
669    `ftp://ftp.gnu.org/pub/gnu'
670
671    Read the files `etc/DISTRIB' and `etc/FTP' for more information.
672
673    A list of sites mirroring `ftp.gnu.org' can be found at
674
675    `http://www.gnu.org/order/ftp.html'
676
677 
678 File: efaq,  Node: Difference between Emacs and XEmacs,  Next: Emacs for MS-DOS,  Prev: Current GNU distributions,  Up: Finding Emacs and related packages
679
680 What is the difference between Emacs and XEmacs (formerly "Lucid Emacs")?
681 =========================================================================
682
683    First of all, they're both GNU Emacs.  XEmacs is just as much a later
684 version of GNU Emacs as the FSF-distributed version.  This FAQ refers to
685 the latest version to be distributed by the FSF as "Emacs," partly
686 because the XEmacs maintainers now refer to their product using the
687 "XEmacs" name, and partly because there isn't any accurate way to
688 differentiate between the two without getting mired in paragraphs of
689 legalese and history.
690
691    XEmacs, which began life as Lucid Emacs, is based on an early
692 version of Emacs 19 and Epoch, an X-aware version of Emacs 18.
693
694    Emacs (i.e., the version distributed by the FSF) has a larger
695 installed base and now always contains the MULE multilingual facilities.
696 XEmacs can do some clever tricks with X and MS-Windows, such as putting
697 arbitrary graphics in a buffer.  Similar facilities have been
698 implemented for Emacs as part of a new redisplay implementation for
699 Emacs 21, and are available in the latest Emacs releases.  Emacs and
700 XEmacs each come with Lisp packages that are lacking in the other; RMS
701 says that the FSF would include more packages that come with XEmacs,
702 but that the XEmacs maintainers don't always keep track of the authors
703 of contributed code, which makes it impossible for the FSF to have
704 certain legal papers signed.  (Without these legal papers, the FSF will
705 not distribute Lisp packages with Emacs.)  The two versions have some
706 significant differences at the Lisp programming level.
707
708    Many XEmacs features have found their way into recent versions of
709 Emacs, and more features can be expected in the future, but there are
710 still many differences between the two.
711
712    The latest stable version of XEmacs as of this writing is 21.1.14;
713 you can get it at
714
715    `ftp://ftp.xemacs.org/pub/xemacs/xemacs-21.1/xemacs-21.1.14.tar.gz'
716
717    More information about XEmacs, including a list of frequently asked
718 questions (FAQ), is available at
719
720    `http://www.xemacs.org/'
721
722 
723 File: efaq,  Node: Emacs for MS-DOS,  Next: Emacs for Windows,  Prev: Difference between Emacs and XEmacs,  Up: Finding Emacs and related packages
724
725 Where can I get Emacs for my PC running MS-DOS?
726 ===============================================
727
728    A pre-built binary distribution of Emacs is available from the
729 SimTel.NET archives.  This version apparently works under MS-DOS and
730 Windows (3.X, 9X, ME, NT, and 2000) and supports long file names under
731 Windows 9X, Windows ME, and Windows 2000.  More information is available
732 from
733
734    `http://www.simtel.net/pub/djgpp/v2gnu/emacs.README'
735
736    The binary itself is available in the files `em*.zip' in the
737 directory
738
739    `http://www.simtel.net/pub/djgpp/v2gnu/'
740
741    If you prefer to compile Emacs for yourself, you can do so with the
742 current distribution directly.  You will need a 386 (or better)
743 processor, and to be running MS-DOS 3.0 or later.  According to Eli
744 Zaretskii <eliz@is.elta.co.il> and Darrel Hankerson
745 <hankedr@dms.auburn.edu>, you will need the following:
746
747 _Compiler_
748      DJGPP version 1.12 maint 1 or later.  Djgpp 2.0 or later is
749      recommended, since 1.x is very old an unmaintained.  Djgpp 2
750      supports long file names on Windows 9X/ME/2K.
751
752      You can get the latest release of DJGPP by retrieving all of the
753      files in
754
755      `http://www.simtel.net/pub/djgpp/v2*'
756
757 _Unpacking program_
758      The easiest way is to use `djtar' which comes with DJGPP v2.x,
759      because it can open gzip'ed tarfiles (i.e., those ending with
760      `.tar.gz') in one step.  `Djtar' comes in `djdevNNN.zip' archive
761      (where NNN is the DJGPP version number), from the URL mentioned
762      above.
763
764      *Warning!*  Do *not* use the popular WinZip program to unpack the
765      Emacs distribution!  WinZip is known to corrupt some of the files
766      by converting them to the DOS CR-LF format, it doesn't always
767      preserve the directory structure recorded in the compressed Emacs
768      archive, and commits other atrocities.  Some of these problems
769      could actually prevent Emacs from building successfully!
770
771 _make, mv, sed, and rm_
772      All of these utilities are available at
773
774      `http://www.simtel.net/pub/djgpp/v2gnu'
775
776      16-bit utilities can be found in GNUish, at
777
778      `http://www.simtel.net/pub/gnuish/'
779
780      (`mv' and `rm' are in the Fileutils package, `sed' and `make' are
781      each one in a separate package named after them.)
782
783    The files `INSTALL' (near its end) and `etc/PROBLEMS' in the
784 directory of the Emacs sources contains some additional information
785 regarding Emacs under MS-DOS.
786
787    For a list of other MS-DOS implementations of Emacs (and Emacs
788 look-alikes), consult the list of "Emacs implementations and
789 literature," available at
790
791    `ftp://rtfm.mit.edu/pub/usenet/comp.emacs/'
792
793    Note that while many of these programs look similar to Emacs, they
794 often lack certain features, such as the Emacs Lisp extension language.
795
796 
797 File: efaq,  Node: Emacs for Windows,  Next: Emacs for OS/2,  Prev: Emacs for MS-DOS,  Up: Finding Emacs and related packages
798
799 Where can I get Emacs for Microsoft Windows
800 ===========================================
801
802    For information on Emacs for Windows 95 and NT, read the FAQ
803 produced by Geoff Voelker <voelker@cs.washington.edu>, available at
804
805    `http://www.gnu.org/software/emacs/windows/ntemacs.html'
806
807    *Note Emacs for MS-DOS::, for Windows 3.1.
808
809    A port of Emacs 20.7 for Windows CE, based on NTEmacs, is available
810 at
811
812    `http://www.rainer-keuchel.de/software.html'
813
814 This port was done by Rainer Keuchel <coyxc@rainer-keuchel.de>, and
815 supports all Emacs features except async subprocesses and menus.  You
816 will need MSVC 6.0 and a Windows CE SDK to build this port.
817
818 
819 File: efaq,  Node: Emacs for OS/2,  Next: Emacs for Atari ST,  Prev: Emacs for Windows,  Up: Finding Emacs and related packages
820
821 Where can I get Emacs for my PC running OS/2?
822 =============================================
823
824    Emacs 20.6 is ported for emx on OS/2 2.0 or 2.1, and is available at
825
826    `ftp://hobbes.nmsu.edu/pub/os2/apps/editors/emacs/e206*.zip'
827
828 and also at
829
830    `http://archiv.leo.org/pub/comp/os/os2/leo/gnu/emacs%2d20/'
831
832    Instructions for installation, basic setup, and other useful
833 information for OS/2 users of Emacs can be found at
834
835    `http://userpage.fu-berlin.de/~oheiabbd/emacs/emacs206-os2.html'
836
837 
838 File: efaq,  Node: Emacs for Atari ST,  Next: Emacs for the Amiga,  Prev: Emacs for OS/2,  Up: Finding Emacs and related packages
839
840 Where can I get Emacs for my Atari ST?
841 ======================================
842
843    Roland Schäuble reports that Emacs 18.58 running on plain TOS and
844 MiNT is available at
845 `ftp://atari.archive.umich.edu/Editors/Emacs-18-58/1858b-d3.zoo'.
846
847 
848 File: efaq,  Node: Emacs for the Amiga,  Next: Emacs for NeXTSTEP,  Prev: Emacs for Atari ST,  Up: Finding Emacs and related packages
849
850 Where can I get Emacs for my Amiga?
851 ===================================
852
853    The files you need are available at
854
855    `ftp://ftp.wustl.edu/pub/aminet/util/gnu/'
856
857    David Gilbert <dgilbert@gamiga.guelphnet.dweomer.org> has released a
858 beta version of Emacs 19.25 for the Amiga.  You can get the binary at
859
860    `ftp://ftp.wustl.edu/pub/aminet/util/gnu/a2.0bEmacs-bin.lha'
861
862 
863 File: efaq,  Node: Emacs for NeXTSTEP,  Next: Emacs for Apple computers,  Prev: Emacs for the Amiga,  Up: Finding Emacs and related packages
864
865 Where can I get Emacs for NeXTSTEP?
866 ===================================
867
868    Emacs.app is a NeXTSTEP version of Emacs 19.34 which supports colors,
869 menus, and multiple frames.  You can get it from
870
871 `ftp://next-ftp.peak.org/pub/next/apps/emacs/Emacs_for_NeXTstep.4.20a1.NIHS.b.tar.gz'
872
873 
874 File: efaq,  Node: Emacs for Apple computers,  Next: Emacs for VMS and DECwindows,  Prev: Emacs for NeXTSTEP,  Up: Finding Emacs and related packages
875
876 Where can I get Emacs for my Apple computer?
877 ============================================
878
879    An unofficial port of GNU Emacs 18.59 to the Macintosh is available
880 at a number of ftp sites, the home being
881 `ftp://ftp.cs.cornell.edu/pub/parmet/Emacs-1.17.sit.bin'.
882
883    A port of Emacs 20.4 is available at
884 `http://www.cs.hku.hk/~choi/emacs/index.html'.
885
886    Beginning with version 21.1, the Macintosh is supported in the
887 official Emacs distribution; see the files `mac/README' and
888 `mac/INSTALL' in the Emacs distribution for build instructions.
889
890    Apple's forthcoming "OS X" is based largely on NeXTSTEP and OpenStep.
891 *Note Emacs for NeXTSTEP::, for more details about that version.
892
893 
894 File: efaq,  Node: Emacs for VMS and DECwindows,  Next: Modes for various languages,  Prev: Emacs for Apple computers,  Up: Finding Emacs and related packages
895
896 Where do I get Emacs that runs on VMS under DECwindows?
897 =======================================================
898
899    Up-to-date information about GNU software (including Emacs) for VMS
900 is available at `http://vms.gnu.org/'.
901
902 
903 File: efaq,  Node: Modes for various languages,  Next: Translating names to IP addresses,  Prev: Emacs for VMS and DECwindows,  Up: Finding Emacs and related packages
904
905 Where can I get modes for Lex, Yacc/Bison, Bourne shell, csh, C++, Objective-C, Pascal, Java, and Awk?
906 ======================================================================================================
907
908    Most of these modes are now available in standard Emacs distribution.
909 To get additional modes, look in the Lisp Code Directory (*note Finding
910 a package with particular functionality::).  For C++, if you use
911 `lisp-dir-apropos', you must specify the pattern with something like
912 `M-x lisp-dir-apropos <RET> c\+\+ <RET>'.(1)
913
914    Barry Warsaw's `cc-mode' now works for C, C++, Objective-C, and Java
915 code.  You can get the latest version from the Emacs Lisp Archive;
916 *note Packages that do not come with Emacs:: for details.  A FAQ for
917 `cc-mode' is available at `http://www.python.org/emacs/cc-mode/'.
918
919    ---------- Footnotes ----------
920
921    (1) The backslashes in `\+\+' are required because `M-x
922 lisp-dir-apropos' expects a regular expression as its argument (*note
923 Using regular expressions::), and `+' has a special meaning in regular
924 expressions.
925
926 
927 File: efaq,  Node: Translating names to IP addresses,  Prev: Modes for various languages,  Up: Finding Emacs and related packages
928
929 What is the IP address of XXX.YYY.ZZZ?
930 ======================================
931
932    If you are on a Unix machine, try using the `nslookup' command,
933 included in the Berkeley BIND package.  For example, to find the IP
934 address of `ftp.gnu.org', you would type `nslookup ftp.gnu.org'.
935
936    Your computer should then provide the IP address of that machine.
937
938    If your site's nameserver is deficient, you can use IP addresses to
939 FTP files.  You can get this information by e-mail:
940
941      To: dns@[134.214.84.25]    (to grasp.insa-lyon.fr)
942      Body: ip XXX.YYY.ZZZ        (or "help" for more information
943                                   and options - no quotes)
944
945 or:
946
947      To: resolve@[147.31.254.130]         (to laverne.cs.widener.edu)
948      Body: site XXX.YYY.ZZZ
949
950 
951 File: efaq,  Node: Major packages and programs,  Next: Key bindings,  Prev: Finding Emacs and related packages,  Up: Top
952
953 Major packages and programs
954 ***************************
955
956 * Menu:
957
958 * VM::
959 * Supercite::
960 * Calc::
961 * VIPER::
962 * AUC-TeX::
963 * BBDB::
964 * Ispell::
965 * w3-mode::
966 * EDB::
967 * Mailcrypt::
968 * JDE::
969 * Patch::
970
971 
972 File: efaq,  Node: VM,  Next: Supercite,  Prev: Major packages and programs,  Up: Major packages and programs
973
974 VM (View Mail) -- another mail reader within Emacs, with MIME support
975 =====================================================================
976
977 Author
978      Kyle Jones <kyle@uunet.uu.net>
979
980 Latest version
981      6.72
982
983 Distribution
984      `ftp://ftp.wonderworks.com/pub/vm/vm.tar.gz'
985
986 Informational newsgroup/mailing list
987      `news:gnu.emacs.vm.info'
988      Subscription requests to <info-vm-request@uunet.uu.net>
989      Submissions to <info-vm@uunet.uu.net>
990
991 Bug reports newsgroup/mailing list
992      `news:gnu.emacs.vm.bug'
993      Subscription requests to <bug-vm-request@uunet.uu.net>
994      Submissions to <bug-vm@uunet.uu.net>
995
996    VM 6 works with Emacs 20.4, and may cause problems with Emacs 20.3
997 and below.  (But note that many people seem to use Emacs 20.3 with VM 6,
998 without any problems.)  Risk-averse users might wish to try VM 5.97,
999 available from the same FTP site (ftp://ftp.wonderworks.com/pub/vm/).
1000
1001 
1002 File: efaq,  Node: Supercite,  Next: Calc,  Prev: VM,  Up: Major packages and programs
1003
1004 Supercite -- mail and news citation package within Emacs
1005 ========================================================
1006
1007 Author
1008      Barry Warsaw <bwarsaw@cen.com>
1009
1010 Latest version
1011      3.54 (comes bundled with Emacs 20)
1012
1013 Distribution
1014      `http://www.python.org/emacs/supercite.tar.gz'
1015
1016 Mailing list
1017      Subscription requests to <supercite-request@python.org>
1018      Submissions <supercite@python.org>
1019
1020    Superyank is an old version of Supercite.
1021
1022 
1023 File: efaq,  Node: Calc,  Next: VIPER,  Prev: Supercite,  Up: Major packages and programs
1024
1025 Calc -- poor man's Mathematica within Emacs
1026 ===========================================
1027
1028 Author
1029      Dave Gillespie <daveg@csvax.cs.caltech.edu>
1030
1031 Latest version
1032      2.02f
1033
1034 Distribution
1035      `ftp://ftp.gnu.org/pub/gnu/calc/calc-2.02f.tar.gz'
1036
1037    Note that Calc 2.02f needs patching to work with Emacs 21 and later.
1038
1039    Emacs 21.1 and later comes with a package called `calculator.el'.
1040 It doesn't support all the mathematical wizardry offered by Calc, such
1041 as matrices, special functions, and statistics, but is more than
1042 adequate as a replacement for `xcalc' and similar programs.
1043
1044 
1045 File: efaq,  Node: VIPER,  Next: AUC-TeX,  Prev: Calc,  Up: Major packages and programs
1046
1047 VIPER -- `vi' emulation for Emacs
1048 =================================
1049
1050    Since Emacs 19.29, the preferred `vi' emulation in Emacs is VIPER
1051 (`M-x viper-mode <RET>'), which comes with Emacs.  It extends and
1052 supersedes VIP (including VIP 4.3) and provides `vi' emulation at
1053 several levels, from one that closely follows `vi' to one that departs
1054 from `vi' in several significant ways.
1055
1056    For Emacs 19.28 and earlier, the following version of VIP is
1057 generally better than the one distributed with Emacs:
1058
1059 Author
1060      Aamod Sane <sane@cs.uiuc.edu>
1061
1062 Latest version
1063      4.3
1064
1065 Distribution
1066      `ftp://archive.cis.ohio-state.edu/pub/emacs-lisp/old-archive/modes/vip-mode.tar.Z'
1067
1068 
1069 File: efaq,  Node: AUC-TeX,  Next: BBDB,  Prev: VIPER,  Up: Major packages and programs
1070
1071 AUC TeX -- enhanced LaTeX mode with debugging facilities
1072 ========================================================
1073
1074 Authors
1075      Kresten Krab Thorup <krab@iesd.auc.dk> and
1076      Per Abrahamsen <abraham@dina.kvl.dk>
1077
1078 Latest version
1079      9.9p
1080
1081 Distribution
1082      `ftp://sunsite.auc.dk/packages/auctex/auctex.tar.gz'
1083
1084 Web site
1085      `http://sunsite.auc.dk/auctex/'
1086
1087 Mailing list:
1088      Subscription requests to <auc-tex-request@iesd.auc.dk>
1089      Submissions to <auc-tex@iesd.auc.dk>
1090      Development team is at <auc-tex_mgr@iesd.auc.dk>
1091
1092 
1093 File: efaq,  Node: BBDB,  Next: Ispell,  Prev: AUC-TeX,  Up: Major packages and programs
1094
1095 BBDB -- personal Info Rolodex integrated with mail/news readers
1096 ===============================================================
1097
1098 Maintainer
1099      Matt Simmons <simmonmt@acm.org>
1100
1101 Latest version
1102      2.00
1103
1104 Distribution
1105      `http://bbdb.sf.net/'
1106
1107 Mailing lists
1108      Subscription requests to <info-bbdb-request@xemacs.org>
1109      Submissions to <info-bbdb@xemacs.org>
1110      Release announcements: <bbdb-announce-request@xemacs.org>
1111
1112 
1113 File: efaq,  Node: Ispell,  Next: w3-mode,  Prev: BBDB,  Up: Major packages and programs
1114
1115 Ispell -- spell checker in C with interface for Emacs
1116 =====================================================
1117
1118 Author
1119      Geoff Kuenning <geoff@itcorp.com>
1120
1121 Latest version
1122      3.1.20
1123
1124 Distribution
1125      `ftp://ftp.cs.ucla.edu/pub/ispell/ispell-3.1.20.tar.gz'
1126 Web site
1127      `http://fmg-www.cs.ucla.edu/geoff/ispell.html'
1128
1129    * Do not ask Geoff to send you the latest version of Ispell. He does
1130      not have free e-mail.
1131
1132    * This Ispell program is distinct from GNU Ispell 4.0. GNU Ispell
1133      4.0 is no longer a supported product.
1134
1135
1136 
1137 File: efaq,  Node: w3-mode,  Next: EDB,  Prev: Ispell,  Up: Major packages and programs
1138
1139 w3-mode -- A World Wide Web browser inside of Emacs
1140 ===================================================
1141
1142 Author
1143      Bill Perry <wmperry@spry.com>
1144
1145 Latest version
1146      4.0pre.39
1147
1148 Distribution
1149      `ftp://ftp.cs.indiana.edu/pub/elisp/w3/w3.tar.gz'
1150
1151 Mailing lists
1152      Receive announcements from <w3-announce-request@indiana.edu>
1153      Become a beta tester at <w3-beta-request@indiana.edu>
1154      Help to develop `w3-mode' at <w3-dev@indiana.edu>
1155
1156 
1157 File: efaq,  Node: EDB,  Next: Mailcrypt,  Prev: w3-mode,  Up: Major packages and programs
1158
1159 EDB -- Database program for Emacs; replaces forms editing modes
1160 ===============================================================
1161
1162 Author
1163      Michael Ernst <mernst@theory.lcs.mit.edu>
1164
1165 Latest version
1166      1.21
1167
1168 Distribution
1169      `ftp://theory.lcs.mit.edu/pub/emacs/edb'
1170
1171 
1172 File: efaq,  Node: Mailcrypt,  Next: JDE,  Prev: EDB,  Up: Major packages and programs
1173
1174 Mailcrypt -- PGP interface within Emacs mail and news
1175 =================