]> code.delx.au - gnu-emacs/blobdiff - etc/PROBLEMS
Fix a typo.
[gnu-emacs] / etc / PROBLEMS
index 4cd7f6beeb4fb5545bded0f8103e962c1a52c147..6610814d021b1e31e61f6684c3a7e893b1faf07a 100644 (file)
@@ -1,13 +1,6 @@
 This file describes various problems that have been encountered
 in compiling, installing and running GNU Emacs.
 
-* Underlines appear at the wrong position.
-
-This is caused by fonts having a wrong UNDERLINE_POSITION property.
-An example is the font 7x13 on XFree prior to version 4.1.  To
-circumvent this problem, set x-use-underline-position-properties to
-nil in your .emacs.
-
 * Building Emacs with GCC 2.9x fails in the `src' directory.
 
 This may happen if you use a development version of GNU `cpp' from one
@@ -21,7 +14,7 @@ The solution is to make sure the preprocessor is run with the
 automatically.)
 
 Note that this problem does not pertain to the MS-Windows port of
-Emacs, since it doesn't use the preprocessor to generate Makefile's.
+Emacs, since it doesn't use the preprocessor to generate Makefiles.
 
 * Building the MS-Windows port with Cygwin GCC can fail.
 
@@ -85,6 +78,70 @@ patch to assert.h should solve this:
   #else /* debugging enabled */
   
 
+
+* Improving performance with slow X connections
+
+If you don't need X Input Methods (XIM) for entering text in some
+language you use, you can improve performance on WAN links by
+configuring Emacs with option `--without-xim'.  Configuring Emacs
+without XIM does not affect the use of Emacs' own input methods, which
+are part of the Leim package.
+
+If the connection is very slow, you might also want to consider
+switching off scroll bars, menu bar, and tool bar.
+
+* Getting a Meta key on the FreeBSD console
+
+By default, neither Alt nor any other key acts as a Meta key on
+FreeBSD, but this can be changed using kbdcontrol(1).  Dump the
+current keymap to a file with the command
+
+  $ kbdcontrol -d >emacs.kbd
+
+Edit emacs.kbd, and give the key you want to be the Meta key the
+definition `meta'.  For instance, if your keyboard has a ``Windows''
+key with scan code 105, change the line for scan code 105 in emacs.kbd
+to look like this
+
+  105   meta   meta   meta   meta   meta   meta   meta   meta    O
+
+to make the Windows key the Meta key.  Load the new keymap with
+
+  $ kbdcontrol -l emacs.kbd
+
+* Emacs' xterm-mouse-mode doesn't work on the Gnome terminal.
+
+A symptom of this bug is that double-clicks insert a control sequence
+into the buffer.  The reason this happens is an apparent
+incompatibility of the Gnome terminal with Xterm, which also affects
+other programs using the Xterm mouse interface.  A problem report has
+been filed.
+
+* Emacs pauses for several seconds when changing the default font
+
+This has been reported for fvwm 2.2.5 and the window manager of KDE
+2.1.  The reason for the pause is Xt waiting for a ConfigureNotify
+event from the window manager, which the window manager doesn't send.
+Xt stops waiting after a default timeout of usually 5 seconds.
+
+A workaround for this is to add something like
+
+emacs.waitForWM: false
+
+to your X resources.  Alternatively, add `(wait-for-wm . nil)' to a
+frame's parameter list, like this:
+
+   (modify-frame-parameters nil '((wait-for-wm . nil)))
+
+(this should go into your `.emacs' file).
+
+* Underlines appear at the wrong position.
+
+This is caused by fonts having a wrong UNDERLINE_POSITION property.
+An example is the font 7x13 on XFree prior to version 4.1.  To
+circumvent this problem, set x-use-underline-position-properties to
+nil in your .emacs.
+
 * When using Xaw3d scroll bars without arrows, the very first mouse
 click in a scroll bar might be ignored by the scroll bar widget.  This
 is probably a bug in Xaw3d; when Xaw3d is compiled with arrows, the
@@ -157,6 +214,10 @@ developers.
 Emacs 21.1 built for MS-Windows doesn't support images, the tool bar,
 and tooltips.  Support for these will be added in future versions.
 
+Help text that is displayed in a tooltip on other window systems, on
+Windows is printed in the echo area, since tooltips are not yet
+available.  Help text for menu items is not displayed at all.
+
 There are problems with display if the variable `redisplay-dont-pause'
 is set to nil (w32-win.el sets it to t by default, to avoid these
 problems).  The problems include:
@@ -249,6 +310,15 @@ a few seconds and then invoke Make again.  In one particular case,
 waiting for 10 or more seconds between the two Make invocations seemed
 to work around the problem.
 
+Similar problems can happen if your machine NFS-mounts a directory
+onto itself.  Suppose the Emacs sources live in `/usr/local/src' and
+you are working on the host called `marvin'.  Then an entry in the
+`/etc/fstab' file like the following is asking for trouble:
+
+    marvin:/usr/local/src /usr/local/src ...options.omitted...
+
+The solution is to remove this line from `etc/fstab'.
+
 * Accented ISO-8859-1 characters are displayed as | or _.
 
 Try other font set sizes (S-mouse-1).  If the problem persists with
@@ -283,9 +353,38 @@ port or in the Cygwin library which apparently make Bash ignore the
 keyboard interrupt event sent by Emacs to Bash.  (Older Cygwin ports
 of Bash, up to b20.1, did receive SIGINT from Emacs.)
 
+* Accessing remote files with ange-ftp hangs the MS-Windows version of Emacs.
+
+If the FTP client is the Cygwin port of GNU `ftp', this appears to be
+due to some bug in the Cygwin DLL or some incompatibility between it
+and the implementation of asynchronous subprocesses in the Windows
+port of Emacs.  Specifically, some parts of the FTP server responses
+are not flushed out, apparently due to buffering issues, which
+confuses ange-ftp.
+
+The solution is to downgrade to an older version of the Cygwin DLL
+(version 1.3.2 was reported to solve the problem), or use the stock
+Windows FTP client, usually found in the `C:\WINDOWS' directory.  To
+force ange-ftp use the stock Windows client, set the variable
+`ange-ftp-ftp-program-name' to the absolute file name of the client's
+executable.  For example:
+
+ (setq ange-ftp-ftp-program-name "c:/windows/ftp.exe")
+
+If you want to stick with the Cygwin FTP client, you can work around
+this problem by putting this in your `.emacs' file:
+
+ (setq ange-ftp-ftp-program-args '("-i" "-n" "-g" "-v" "--prompt" "")
+
+
 * The latest released version of the W3 package doesn't run properly
 with Emacs 21 and needs work.  However, these problems are already
-fixed in W3's CVS.  This patch is reported to make w3-4.0pre.46 work:
+fixed in W3's CVS.  The patch below is reported to make w3-4.0pre.46
+work.
+
+Some users report they are unable to byte-compile W3 with Emacs 21.
+If the patches below don't help to resolve your problems, install the
+CVS version of W3, which should be compatible with Emacs 21.
 
 diff -aur --new-file w3-4.0pre.46-orig/lisp/w3-display.el w3-4.0pre.46-new/lisp/w3-display.el
 --- w3-4.0pre.46-orig/lisp/w3-display.el       Sun Nov 14 22:00:12 1999
@@ -310,7 +409,6 @@ diff -aur --new-file w3-4.0pre.46-orig/lisp/w3-e21.el w3-4.0pre.46-new/lisp/w3-e
 +(require 'w3-e19)
 +(provide 'w3-e21)
 
-
 * On AIX, if linking fails because libXbsd isn't found, check if you
 are compiling with the system's `cc' and CFLAGS containing `-O5'.  If
 so, you have hit a compiler bug.  Please make sure to re-configure
@@ -729,6 +827,45 @@ release was reported to work without problems.  It worked OK on
 another system with Solaris 8 using apparently the same 5.0 compiler
 and the default CFLAGS.
 
+* Compiling syntax.c with the OPENSTEP 4.2 compiler gcc 2.7.2.1 fails.
+
+The compiler was reported to crash while compiling syntax.c with the
+following message:
+
+   cc: Internal compiler error: program cc1obj got fatal signal 11
+
+To work around this, replace the macros UPDATE_SYNTAX_TABLE_FORWARD,
+INC_BOTH, and INC_FROM with functions.  To this end, first define 3
+functions, one each for every macro.  Here's an example:
+
+    static int update_syntax_table_forward(int from)
+    {
+        return(UPDATE_SYNTAX_TABLE_FORWARD(from));
+    }/*update_syntax_table_forward*/
+
+Then replace all references to UPDATE_SYNTAX_TABLE_FORWARD in syntax.c
+with a call to the function update_syntax_table_forward.
+
+* Emacs 20 and later fails to load Lisp files at startup.
+
+The typical error message might be like this:
+
+  "Cannot open load file: fontset"
+
+This could happen if you compress the file lisp/subdirs.el.  That file
+tells Emacs what are the directories where it should look for Lisp
+files.  Emacs cannot work with subdirs.el compressed, since the
+Auto-compress mode it needs for this will not be loaded until later,
+when your .emacs file is processed.  (The package `fontset.el' is
+required to set up fonts used to display text on window systems, and
+its loaded very early in the startup procedure.)
+
+Similarly, any other .el file for which there's no corresponding .elc
+file could fail to load if it is compressed.
+
+The solution is to uncompress all .el files which don't have a .elc
+file.
+
 * Attempting to visit remote files via ange-ftp fails.
 
 If the error message is "ange-ftp-file-modtime: Specified time is not
@@ -742,6 +879,17 @@ Debian system, type
 
 and then choose /usr/bin/netkit-ftp.
 
+* Antivirus software interacts badly with the MS-Windows version of Emacs.
+
+The usual manifestation of these problems is that subprocesses don't
+work or even wedge the entire system.  In particular, "M-x shell RET"
+was reported to fail to work.  But other commands also sometimes don't
+work when an antivirus package is installed.
+
+The solution is to switch the antivirus software to a less aggressive
+mode (e.g., disable the ``auto-protect'' feature), or even uninstall
+or disable it entirely.
+
 * On Windows 95/98/ME, subprocesses do not terminate properly.
 
 This is a limitation of the Operating System, and can cause problems
@@ -754,6 +902,37 @@ mangled and is not seen correctly in Rmail or Gnus.  We don't know
 exactly what happens, but it isn't an Emacs problem in cases we've
 seen.
 
+* After upgrading to a newer version of Emacs, the Meta key stops working.
+
+This was reported to happen on a GNU/Linux system distributed by
+Mandrake.  The reason is that the previous version of Emacs was
+modified by Mandrake to make the Alt key act as the Meta key, on a
+keyboard where the Windows key is the one which produces the Meta
+modifier.  A user who started using a newer version of Emacs, which
+was not hacked by Mandrake, expected the Alt key to continue to act as
+Meta, and was astonished when that didn't happen.
+
+The solution is to find out what key on your keyboard produces the Meta
+modifier, and use that key instead.  Try all of the keys to the left
+and to the right of the space bar, together with the `x' key, and see
+which combination produces "M-x" in the echo area.  You can also use
+the `xmodmap' utility to show all the keys which produce a Meta
+modifier:
+
+         xmodmap -pk | egrep -i "meta|alt"
+
+A more convenient way of finding out which keys produce a Meta modifier
+is to use the `xkbprint' utility, if it's available on your system:
+
+         xkbprint 0:0 /tmp/k.ps
+
+This produces a PostScript file `/tmp/k.ps' with a picture of your
+keyboard; printing that file on a PostScript printer will show what
+keys can serve as Meta.
+
+The `xkeycaps' also shows a visual representation of the current
+keyboard settings.  It also allows to modify them.
+
 * On OSF/Dec Unix/Tru64/<whatever it is this year> under X locally or
 remotely, M-SPC acts as a `compose' key with strange results.  See
 keyboard(5).
@@ -1019,6 +1198,18 @@ add mod2 = Mode_switch
 EOF
 --------------------------------
 
+* Emacs hangs on KDE when a large portion of text is killed.
+
+This is caused by a bug in the KDE applet `klipper' which periodically
+requests the X clipboard contents from applications.  Early versions
+of klipper don't implement the ICCM protocol for large selections,
+which leads to Emacs being flooded with selection requests.  After a
+while, Emacs will print a message:
+
+  Timed out waiting for property-notify event
+
+A workaround is to not use `klipper'.
+
 * Emacs compiled with DJGPP for MS-DOS/MS-Windows cannot access files
 in the directory with the special name `dev' under the root of any
 drive, e.g. `c:/dev'.
@@ -1440,10 +1631,15 @@ the explanation of how to avoid this problem.
 
 * Emacs compiled for MSDOS cannot find some Lisp files, or other
 run-time support files, when long filename support is enabled.
-(Usually, this problem will manifest itself when Emacs exits
+
+Usually, this problem will manifest itself when Emacs exits
 immediately after flashing the startup screen, because it cannot find
 the Lisp files it needs to load at startup.  Redirect Emacs stdout
-and stderr to a file to see the error message printed by Emacs.)
+and stderr to a file to see the error message printed by Emacs.
+
+Another manifestation of this problem is that Emacs is unable to load
+the support for editing program sources in languages such as C and
+Lisp.
 
 This can happen if the Emacs distribution was unzipped without LFN
 support, thus causing long filenames to be truncated to the first 6
@@ -1453,6 +1649,14 @@ filenames (such as djtar from DJGPP or InfoZip's UnZip program
 compiled with DJGPP v2).  The MSDOG section of the file INSTALL
 explains this issue in more detail.
 
+Another possible reason for such failures is that Emacs compiled for
+MSDOS is used on Windows NT, where long file names are not supported
+by this version of Emacs, but the distribution was unpacked by an
+unzip program that preserved the long file names instead of truncating
+them to DOS 8+3 limits.  To be useful on NT, the MSDOS port of Emacs
+must be unzipped by a DOS utility, so that long file names are
+properly truncated.
+
 * Emacs compiled with DJGPP complains at startup:
 
   "Wrong type of argument: internal-facep, msdos-menu-active-face"