1 This is ../info/xemacs-faq.info, produced by makeinfo version 4.0 from
4 INFO-DIR-SECTION XEmacs Editor
6 * FAQ: (xemacs-faq). XEmacs FAQ.
10 File: xemacs-faq.info, Node: Q2.0.2, Next: Q2.0.3, Prev: Q2.0.1, Up: Installation
12 Q2.0.2: XEmacs is too big
13 -------------------------
15 Although this entry has been written for XEmacs 19.13, most of it
18 Steve Baur <steve@xemacs.org> writes:
20 The 45MB of space required by the installation directories can be
21 reduced dramatically if desired. Gzip all the .el files. Remove
22 all the packages you'll never want to use (or even ones you do
23 like the two obsolete mailcrypts and Gnus 4 in 19.13). Remove the
24 TexInfo manuals. Remove the Info (and use just hardcopy versions
25 of the manual). Remove most of the stuff in etc. Remove or gzip
26 all the source code. Gzip or remove the C source code. Configure
27 it so that copies are not made of the support lisp. I'm not
28 advocating any of these things, just pointing out ways to reduce
29 the disk requirements if desired.
31 Now examine the space used by directory:
33 0 /usr/local/bin/xemacs
34 2048 /usr/local/bin/xemacs-19.13
36 1546 /usr/local/lib/xemacs-19.13/i486-miranova-sco3.2v4.2
37 1158 /usr/local/lib/xemacs-19.13/i486-unknown-linux1.2.13
39 You need to keep these. XEmacs isn't stripped by default in
40 installation, you should consider stripping. That will save you
41 about 5MB right there.
43 207 /usr/local/lib/xemacs-19.13/etc/w3
44 122 /usr/local/lib/xemacs-19.13/etc/sounds
45 18 /usr/local/lib/xemacs-19.13/etc/sparcworks
46 159 /usr/local/lib/xemacs-19.13/etc/vm
47 6 /usr/local/lib/xemacs-19.13/etc/e
48 21 /usr/local/lib/xemacs-19.13/etc/eos
49 172 /usr/local/lib/xemacs-19.13/etc/toolbar
50 61 /usr/local/lib/xemacs-19.13/etc/ns
51 43 /usr/local/lib/xemacs-19.13/etc/gnus
53 These are support directories for various packages. In general
54 they match a directory under
55 ./xemacs-19.13/lib/xemacs-19.13/lisp/. If you do not require the
56 package, you may delete or gzip the support too.
58 1959 /usr/local/lib/xemacs-19.13/etc
59 175 /usr/local/lib/xemacs-19.13/lisp/bytecomp
60 340 /usr/local/lib/xemacs-19.13/lisp/calendar
61 342 /usr/local/lib/xemacs-19.13/lisp/comint
62 517 /usr/local/lib/xemacs-19.13/lisp/dired
63 42 /usr/local/lib/xemacs-19.13/lisp/electric
64 212 /usr/local/lib/xemacs-19.13/lisp/emulators
65 238 /usr/local/lib/xemacs-19.13/lisp/energize
66 289 /usr/local/lib/xemacs-19.13/lisp/gnus
67 457 /usr/local/lib/xemacs-19.13/lisp/ilisp
68 1439 /usr/local/lib/xemacs-19.13/lisp/modes
69 2276 /usr/local/lib/xemacs-19.13/lisp/packages
70 1040 /usr/local/lib/xemacs-19.13/lisp/prim
71 176 /usr/local/lib/xemacs-19.13/lisp/pcl-cvs
72 154 /usr/local/lib/xemacs-19.13/lisp/rmail
73 3 /usr/local/lib/xemacs-19.13/lisp/epoch
74 45 /usr/local/lib/xemacs-19.13/lisp/term
75 860 /usr/local/lib/xemacs-19.13/lisp/utils
76 851 /usr/local/lib/xemacs-19.13/lisp/vm
77 13 /usr/local/lib/xemacs-19.13/lisp/vms
78 157 /usr/local/lib/xemacs-19.13/lisp/x11
79 19 /usr/local/lib/xemacs-19.13/lisp/tooltalk
80 14 /usr/local/lib/xemacs-19.13/lisp/sunpro
81 291 /usr/local/lib/xemacs-19.13/lisp/games
82 198 /usr/local/lib/xemacs-19.13/lisp/edebug
83 619 /usr/local/lib/xemacs-19.13/lisp/w3
84 229 /usr/local/lib/xemacs-19.13/lisp/eos
85 55 /usr/local/lib/xemacs-19.13/lisp/iso
86 59 /usr/local/lib/xemacs-19.13/lisp/mailcrypt
87 187 /usr/local/lib/xemacs-19.13/lisp/eterm
88 356 /usr/local/lib/xemacs-19.13/lisp/ediff
89 408 /usr/local/lib/xemacs-19.13/lisp/hyperbole/kotl
90 1262 /usr/local/lib/xemacs-19.13/lisp/hyperbole
91 247 /usr/local/lib/xemacs-19.13/lisp/hm--html-menus
92 161 /usr/local/lib/xemacs-19.13/lisp/mh-e
93 299 /usr/local/lib/xemacs-19.13/lisp/viper
94 53 /usr/local/lib/xemacs-19.13/lisp/oobr/tree-x
95 4 /usr/local/lib/xemacs-19.13/lisp/oobr/tree-nx/English.lproj/DocWindow.nib
96 3 /usr/local/lib/xemacs-19.13/lisp/oobr/tree-nx/English.lproj/InfoPanel.nib
97 3 /usr/local/lib/xemacs-19.13/lisp/oobr/tree-nx/English.lproj/TreeView.nib
98 11 /usr/local/lib/xemacs-19.13/lisp/oobr/tree-nx/English.lproj
99 53 /usr/local/lib/xemacs-19.13/lisp/oobr/tree-nx
100 466 /usr/local/lib/xemacs-19.13/lisp/oobr
101 14142 /usr/local/lib/xemacs-19.13/lisp
103 These are all Emacs Lisp source code and bytecompiled object code.
104 You may safely gzip everything named *.el here. You may remove
105 any package you don't use. _Nothing bad will happen if you delete
106 a package that you do not use_. You must be sure you do not use
107 it though, so be conservative at first.
109 Possible candidates for deletion include w3 (newer versions exist,
110 or you may just use Lynx or Netscape for web browsing), games,
111 hyperbole, mh-e, hm-html-menus (better packages exist), vm, viper,
112 oobr, gnus (new versions exist), etc. Ask yourself, _Do I ever
113 want to use this package?_ If the answer is no, then it is a
114 candidate for removal.
116 First, gzip all the .el files. Then go about package by package
117 and start gzipping the .elc files. Then run XEmacs and do
118 whatever it is you normally do. If nothing bad happens, then
119 delete the directory. Be conservative about deleting directories,
120 and it would be handy to have a backup tape around in case you get
123 `prim', `modes', `packages', and `utils' are four directories you
124 definitely do *not* want to delete, although certain packages can
125 be removed from them if you do not use them.
127 1972 /usr/local/lib/xemacs-19.13/info
129 These are online texinfo sources. You may either gzip them or
130 remove them. In either case, `C-h i' (info mode) will no longer
133 20778 /usr/local/lib/xemacs-19.13
135 The 20MB achieved is less than half of what the full distribution
136 takes up, *and* can be achieved without deleting a single file.
138 Giacomo Boffi <boffi@hp735.stru.polimi.it> provides this procedure:
140 Substitute `/usr/local/lib/' with the path where the xemacs tree is
141 rooted, then use this script:
145 r=/usr/local/lib/xemacs-19.13/lisp
147 cd $r ; rm -f cmpr ; touch cmpr
155 # compress (remove) only (ONLY) the sources that have a
156 # corresponding compiled file --- do not (DO NOT)
157 # touch other sources
158 if test -f ${f}c ; then gzip -v9 $f >> $r/cmpr ; fi
166 A step beyond would be substituting `rm -f' for `gzip -v9', but
167 you have to be desperate for removing the sources (remember that
168 emacs can access compressed files transparently).
170 Also, a good megabyte could easily be trimmed from the $r/../etc
171 directory, e.g., the termcap files, some O+NEWS, others that I
172 don't remember as well.
174 XEmacs 21.0 will unbundle the lisp hierarchy and allow the
175 installer to choose exactly how much support code gets installed.
178 File: xemacs-faq.info, Node: Q2.0.3, Next: Q2.0.4, Prev: Q2.0.2, Up: Installation
180 Q2.0.3: Compiling XEmacs with Netaudio.
181 ---------------------------------------
183 What is the best way to compile XEmacs with the netaudio system,
184 since I have got the netaudio system compiled but installed at a weird
185 place, I am not root. Also in the READMEs it does not say anything
186 about compiling with the audioserver?
188 You should only need to add some stuff to the configure command line.
189 To tell it to compile in netaudio support: `--with-sound=both', or
190 `--with-sound=nas' if you don't want native sound support for some
191 reason.) To tell it where to find the netaudio includes and libraries:
193 --site-libraries=WHATEVER
194 --site-includes=WHATEVER
196 Then (fingers crossed) it should compile and it will use netaudio if
197 you have a server running corresponding to the X server. The netaudio
198 server has to be there when XEmacs starts. If the netaudio server goes
199 away and another is run, XEmacs should cope (fingers crossed, error
200 handling in netaudio isn't perfect).
202 BTW, netaudio has been renamed as it has a name clash with something
203 else, so if you see references to NAS or Network Audio System, it's the
204 same thing. It also might be found at
205 `ftp://ftp.x.org/contrib/audio/nas/'.
208 File: xemacs-faq.info, Node: Q2.0.4, Next: Q2.0.5, Prev: Q2.0.3, Up: Installation
210 Q2.0.4: Problems with Linux and ncurses.
211 ----------------------------------------
213 On Linux 1.3.98 with termcap 2.0.8 and the ncurses that came with
214 libc 5.2.18, XEmacs 20.0b20 is unable to open a tty device:
217 Initialization error:
218 Terminal type `xterm' undefined (or can't access database?)
220 Ben Wing <ben@xemacs.org> writes:
222 Your ncurses configuration is messed up. Your /usr/lib/terminfo
223 is a bad pointer, perhaps to a CD-ROM that is not inserted.
226 File: xemacs-faq.info, Node: Q2.0.5, Next: Q2.0.6, Prev: Q2.0.4, Up: Installation
228 Q2.0.5: Do I need X11 to run XEmacs?
229 ------------------------------------
231 No. The name "XEmacs" is unfortunate in the sense that it is *not*
232 an X Window System-only version of Emacs. Starting with 19.14 XEmacs
233 has full color support on a color-capable character terminal.
236 File: xemacs-faq.info, Node: Q2.0.6, Next: Q2.0.7, Prev: Q2.0.5, Up: Installation
238 Q2.0.6: I'm having strange crashes. What do I do?
239 --------------------------------------------------
241 There have been a variety of reports of crashes due to compilers with
242 buggy optimizers. Please see the `PROBLEMS' file that comes with
243 XEmacs to read what it says about your platform.
246 File: xemacs-faq.info, Node: Q2.0.7, Next: Q2.0.8, Prev: Q2.0.6, Up: Installation
248 Q2.0.7: Libraries in non-standard locations
249 -------------------------------------------
251 I have x-faces, jpeg, xpm etc. all in different places. I've tried
252 space-separated, comma-separated, several -site-libraries, all to no
255 --site-libraries='/path/one /path/two /path/etc'
258 File: xemacs-faq.info, Node: Q2.0.8, Next: Q2.0.9, Prev: Q2.0.7, Up: Installation
260 Q2.0.8: can't resolve symbol _h_errno
261 -------------------------------------
263 You are using the Linux/ELF distribution of XEmacs 19.14, and your
264 ELF libraries are out of date. You have the following options:
266 1. Upgrade your libc to at least 5.2.16 (better is 5.2.18, 5.3.12, or
269 2. Patch the XEmacs binary by replacing all occurrences of
270 `_h_errno^@' with `h_errno^@^@'. Any version of Emacs will
271 suffice. If you don't understand how to do this, don't do it.
273 3. Rebuild XEmacs yourself - any working ELF version of libc should be
276 Hrvoje Niksic <hniksic@xemacs.org> writes:
278 Why not use a Perl one-liner for No. 2?
280 perl -pi -e 's/_h_errno\0/h_errno\0\0/g' \
281 /usr/local/bin/xemacs-19.14
283 NB: You _must_ patch `/usr/local/bin/xemacs-19.14', and not
284 `xemacs' because `xemacs' is a link to `xemacs-19.14'; the Perl
285 `-i' option will cause unwanted side-effects if applied to a
288 SL Baur <steve@xemacs.org> writes:
290 If you build against a recent libc-5.4 (late enough to have caused
291 problems earlier in the beta cycle) and then run with an earlier
292 version of libc, you get a
295 xemacs: can't resolve symbol '__malloc_hook'
296 zsh: 7942 segmentation fault (core dumped) xemacs
298 (Example binary compiled against libc-5.4.23 and run with
301 The solution is to upgrade to at least libc-5.4.23. Sigh. Drat.
304 File: xemacs-faq.info, Node: Q2.0.9, Next: Q2.0.10, Prev: Q2.0.8, Up: Installation
306 Q2.0.9: Where do I find external libraries?
307 -------------------------------------------
309 All external libraries used by XEmacs can be found at the XEmacs FTP
310 site `ftp://ftp.xemacs.org/pub/xemacs/aux/'.
312 The canonical locations (at the time of this writing) are as follows:
315 `ftp://ftp.uu.net/graphics/jpeg/'. Version 6a is current.
318 `ftp://ftp.x.org/contrib/libraries/'. Version 3.4j is current.
319 Older versions of this package are known to cause XEmacs crashes.
322 `ftp://ftp.sgi.com/graphics/tiff/'. v3.4 is current. The latest
323 beta is v3.4b035. There is a HOWTO here.
326 `ftp://ftp.uu.net/graphics/png/'. 0.89c is current. XEmacs
327 requires a fairly recent version to avoid using temporary files.
329 `ftp://swrinde.nde.swri.edu/pub/png/src/'
332 `ftp://ftp.cs.indiana.edu/pub/faces/compface/'. This library has
333 been frozen for about 6 years, and is distributed without version
334 numbers. _It should be compiled with the same options that X11 was
335 compiled with on your system_. The version of this library at
336 XEmacs.org includes the `xbm2xface.pl' script, written by
337 <stig@hackvan.com>, which may be useful when generating your own
341 `ftp://ftp.x.org/contrib/audio/nas/'. Version 1.2p5 is current.
345 File: xemacs-faq.info, Node: Q2.0.10, Next: Q2.0.11, Prev: Q2.0.9, Up: Installation
347 Q2.0.10: After I run configure I find a core dump, is something wrong?
348 ----------------------------------------------------------------------
350 Not necessarily. If you have GNU sed 3.0 you should downgrade it to
351 2.05. From the `README' at prep.ai.mit.edu:
353 sed 3.0 has been withdrawn from distribution. It has major
354 revisions, which mostly seem to be improvements; but it turns out
355 to have bugs too which cause trouble in some common cases.
357 Tom Lord won't be able to work fixing the bugs until May. So in
358 the mean time, we've decided to withdraw sed 3.0 from distribution
359 and make version 2.05 once again the recommended version.
361 It has also been observed that the vfork test on Solaris will leave a
365 File: xemacs-faq.info, Node: Q2.0.11, Next: Q2.0.12, Prev: Q2.0.10, Up: Installation
367 Q2.0.11: XEmacs doesn't resolve hostnames.
368 ------------------------------------------
370 This is the result of a long-standing problem with SunOS and the fact
371 that stock SunOS systems do not ship with DNS resolver code in libc.
373 Christopher Davis <ckd@loiosh.kei.com> writes:
375 That's correct [The SunOS 4.1.3 precompiled binaries don't do name
376 lookup]. Since Sun figured that everyone used NIS to do name
377 lookups (that DNS thing was apparently only a passing fad,
378 right?), the stock SunOS 4.x systems don't have DNS-based name
381 This is also why Netscape ships two binaries for SunOS 4.1.x.
383 The best solution is to compile it yourself; the configure script
384 will check to see if you've put DNS in the shared libc and will
385 then proceed to link against the DNS resolver library code.
388 File: xemacs-faq.info, Node: Q2.0.12, Next: Q2.1.1, Prev: Q2.0.11, Up: Installation
390 Q2.0.12: Why can't I strip XEmacs?
391 ----------------------------------
393 Richard Cognot <cognot@fronsac.ensg.u-nancy.fr> writes:
395 Because of the way XEmacs (and every other Emacsen, AFAIK) is
396 built. The link gives you a bare-boned emacs (called temacs).
397 temacs is then run, preloading some of the lisp files. The result
398 is then dumped into a new executable, named xemacs, which will
399 contain all of the preloaded lisp functions and data.
401 Now, during the dump itself, the executable (code+data+symbols) is
402 written on disk using a special unexec() function. This function is
403 obviously heavily system dependent. And on some systems, it leads
404 to an executable which, although valid, cannot be stripped without
405 damage. If memory serves, this is especially the case for AIX
406 binaries. On other architecture it might work OK.
408 The Right Way to strip the emacs binary is to strip temacs prior to
409 dumping xemacs. This will always work, although you can do that
410 only if you install from sources (as temacs is `not' part of the
413 Nat Makarevitch <nat@nataa.fr.eu.org> writes:
417 1. [ ./configure; make ]
425 5. cp src/xemacs /usr/local/bin/xemacs
427 6. cp lib-src/DOC-19.16-XEmacs
428 /usr/local/lib/xemacs-19.16/i586-unknown-linuxaout
431 File: xemacs-faq.info, Node: Q2.1.1, Next: Q2.1.2, Prev: Q2.0.12, Up: Installation
433 2.1: Trouble Shooting
434 =====================
436 Q2.1.1: Help! XEmacs just crashed on me!
437 -----------------------------------------
439 First of all, don't panic. Whenever XEmacs crashes, it tries
440 extremely hard to auto-save all of your files before dying. (The main
441 time that this will not happen is if the machine physically lost power
442 or if you killed the XEmacs process using `kill -9'). The next time
443 you try to edit those files, you will be informed that a more recent
444 auto-save file exists. You can use `M-x recover-file' to retrieve the
445 auto-saved version of the file.
447 Starting with 19.14, you may use the command `M-x recover-session'
448 after a crash to pick up where you left off.
450 Now, XEmacs is not perfect, and there may occasionally be times, or
451 particular sequences of actions, that cause it to crash. If you can
452 come up with a reproducible way of doing this (or even if you have a
453 pretty good memory of exactly what you were doing at the time), the
454 maintainers would be very interested in knowing about it. Post a
455 message to comp.emacs.xemacs or send mail to <crashes@xemacs.org>.
456 Please note that the `crashes' address is exclusively for crash reports.
458 If at all possible, include a stack backtrace of the core dump that
459 was produced. This shows where exactly things went wrong, and makes it
460 much easier to diagnose problems. To do this, you need to locate the
461 core file (it's called `core', and is usually sitting in the directory
462 that you started XEmacs from, or your home directory if that other
463 directory was not writable). Then, go to that directory and execute a
466 gdb `which xemacs` core
468 and then issue the command `where' to get the stack backtrace. You
469 might have to use `dbx' or some similar debugger in place of `gdb'. If
470 you don't have any such debugger available, complain to your system
473 It's possible that a core file didn't get produced, in which case
474 you're out of luck. Go complain to your system administrator and tell
475 him not to disable core files by default. Also *Note Q2.1.15::, for
476 tips and techniques for dealing with a debugger.
478 When making a problem report make sure that:
480 1. Report *all* of the information output by XEmacs during the crash.
482 2. You mention what O/S & Hardware you are running XEmacs on.
484 3. What version of XEmacs you are running.
486 4. What build options you are using.
488 5. If the problem is related to graphics, we will also need to know
489 what version of the X Window System you are running, and what
490 window manager you are using.
492 6. If the problem happened on a tty, please include the terminal type.
495 File: xemacs-faq.info, Node: Q2.1.2, Next: Q2.1.3, Prev: Q2.1.1, Up: Installation
497 Q2.1.2: Cryptic Minibuffer messages.
498 ------------------------------------
500 When I try to use some particular option of some particular package,
501 I get a cryptic error in the minibuffer.
503 If you can't figure out what's going on, select Options/General
504 Options/Debug on Error from the Menubar and then try and make the error
505 happen again. This will give you a backtrace that may be enlightening.
506 If not, try reading through this FAQ; if that fails, you could try
507 posting to comp.emacs.xemacs (making sure to include the backtrace) and
508 someone may be able to help. If you can identify which Emacs lisp
509 source file the error is coming from you can get a more detailed stack
510 backtrace by doing the following:
512 1. Visit the .el file in an XEmacs buffer.
514 2. Issue the command `M-x eval-current-buffer'.
516 3. Reproduce the error.
518 Depending on the version of XEmacs, you may either select Edit->Show
519 Messages (19.13 and earlier) or Help->Recent Keystrokes/Messages (19.14
520 and later) from the menubar to see the most recent messages. This
521 command is bound to `C-h l' by default.
524 File: xemacs-faq.info, Node: Q2.1.3, Next: Q2.1.4, Prev: Q2.1.2, Up: Installation
526 Q2.1.3: Translation Table Syntax messages at Startup
527 ----------------------------------------------------
529 I get tons of translation table syntax error messages during startup.
530 How do I get rid of them?
532 There are two causes of this problem. The first usually only strikes
533 people using the prebuilt binaries. The culprit in both cases is the
536 * The binary cannot find the `XKeysymDB' file. The location is
537 hardcoded at compile time so if the system the binary was built on
538 puts it a different place than your system does, you have
539 problems. To fix, set the environment variable XKEYSYMDB to the
540 location of the `XKeysymDB' file on your system or to the location
541 of the one included with XEmacs which should be at
542 `<xemacs_root_directory>/lib/xemacs-19.16/etc/XKeysymDB'.
544 * The binary is finding the XKeysymDB but it is out-of-date on your
545 system and does not contain the necessary lines. Either ask your
546 system administrator to replace it with the one which comes with
547 XEmacs (which is the stock R6 version and is backwards compatible)
548 or set your XKEYSYMDB variable to the location of XEmacs's
552 File: xemacs-faq.info, Node: Q2.1.4, Next: Q2.1.5, Prev: Q2.1.3, Up: Installation
554 Q2.1.4: Startup warnings about deducing proper fonts?
555 -----------------------------------------------------
557 How can I avoid the startup warnings about deducing proper fonts?
559 This is highly dependent on your installation, but try with the
560 following font as your base font for XEmacs and see what it does:
562 -adobe-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-1
564 More precisely, do the following in your resource file:
566 Emacs.default.attributeFont: \
567 -adobe-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-1
569 If you just don't want to see the `*Warnings*' buffer at startup
570 time, you can set this:
572 (setq display-warning-minimum-level 'error)
574 The buffer still exists; it just isn't in your face.
577 File: xemacs-faq.info, Node: Q2.1.5, Next: Q2.1.6, Prev: Q2.1.4, Up: Installation
579 Q2.1.5: XEmacs cannot connect to my X Terminal!
580 -----------------------------------------------
582 Help! I can not get XEmacs to display on my Envizex X-terminal!
584 Try setting the DISPLAY variable using the numeric IP address of the
585 host you are running XEmacs from.
588 File: xemacs-faq.info, Node: Q2.1.6, Next: Q2.1.7, Prev: Q2.1.5, Up: Installation
590 Q2.1.6: XEmacs just locked up my Linux X server!
591 ------------------------------------------------
593 There have been several reports of the X server locking up under
594 Linux. In all reported cases removing speedo and scaled fonts from the
595 font path corrected the problem. This can be done with the command
598 It is possible that using a font server may also solve the problem.
601 File: xemacs-faq.info, Node: Q2.1.7, Next: Q2.1.8, Prev: Q2.1.6, Up: Installation
603 Q2.1.7: HP Alt key as Meta.
604 ---------------------------
606 How can I make XEmacs recognize the Alt key of my HP workstation as a
609 Put the following line into a file and load it with xmodmap(1) before
612 remove Mod1 = Mode_switch
615 File: xemacs-faq.info, Node: Q2.1.8, Next: Q2.1.9, Prev: Q2.1.7, Up: Installation
617 Q2.1.8: got (wrong-type-argument color-instance-p nil)
618 ------------------------------------------------------
620 Natalie Kershaw <nataliek@rd.scitec.com.au> writes:
622 I am trying to run xemacs 19.13 under X11R4. Whenever I move the
623 mouse I get the following error. Has anyone seen anything like
624 this? This doesn't occur on X11R5.
627 (error "got (wrong-type-argument color-instance-p nil)
628 and I don't know why!")
630 dinos <map01kd@gold.ac.uk> writes:
632 I think this is due to undefined resources; You need to define
633 color backgrounds and foregrounds into your
634 `.../app-defaults/Emacs' like:
636 *Foreground: Black ;everything will be of black on grey95,
637 *Background: Grey95 ;unless otherwise specified.
638 *cursorColor: Red3 ;red3 cursor with grey95 border.
639 *pointerColor: Red3 ;red3 pointer with grey95 border.
641 Natalie Kershaw adds:
643 What fixed the problem was adding some more colors to the X color
644 database (copying the X11R5 colors over), and also defining the
647 xemacs*cursorColor: black
648 xemacs*pointerColor: black
650 With the new colors installed the problem still occurs if the above
651 resources are not defined.
653 If the new colors are not present then an additional error occurs
654 on XEmacs startup, which says `Color Red3' not defined.
657 File: xemacs-faq.info, Node: Q2.1.9, Next: Q2.1.10, Prev: Q2.1.8, Up: Installation
659 Q2.1.9: XEmacs causes my OpenWindows 3.0 server to crash.
660 ---------------------------------------------------------
662 The OpenWindows 3.0 server is incredibly buggy. Your best bet is to
663 replace it with one from the generic MIT X11 release. You might also
664 try disabling parts of your `.emacs', like enabling background pixmaps.
667 File: xemacs-faq.info, Node: Q2.1.10, Next: Q2.1.11, Prev: Q2.1.9, Up: Installation
669 Q2.1.10: Warnings from incorrect key modifiers.
670 -----------------------------------------------
672 The following information comes from the `PROBLEMS' file that comes
675 If you're having troubles with HP/UX it is because HP/UX defines the
676 modifiers wrong in X. Here is a shell script to fix the problem; be
677 sure that it is run after VUE configures the X server.
680 xmodmap 2> /dev/null - << EOF
681 keysym Alt_L = Meta_L
682 keysym Alt_R = Meta_R
687 keysym Mode_switch = NoSymbol
689 keysym Meta_R = Mode_switch
690 add mod2 = Mode_switch
694 File: xemacs-faq.info, Node: Q2.1.11, Next: Q2.1.12, Prev: Q2.1.10, Up: Installation
696 Q2.1.11: `Can't instantiate image error...' in toolbar
697 ------------------------------------------------------
699 Dr. Ram Samudrala <expt@alanine.ram.org> writes:
701 I just installed the XEmacs (20.4-2) RPMS that I downloaded from
702 `http://www.xemacs.org/'. Everything works fine, except that when I
703 place my mouse over the toolbar, it beeps and gives me this message:
705 Can't instantiate image (probably cached):
706 [xbm :mask-file "/usr/include/X11/bitmaps/leftptrmsk :mask-data
707 (16 16 <strange control characters> ...
709 Kyle Jones <kyle_jones@wonderworks.com> writes:
710 This is problem specific to some Chips and Technologies video
711 chips, when running XFree86. Putting
715 in `XF86Config' gets rid of the problem.
718 File: xemacs-faq.info, Node: Q2.1.12, Next: Q2.1.13, Prev: Q2.1.11, Up: Installation
720 Q2.1.12: Problems with Regular Expressions on DEC OSF1.
721 -------------------------------------------------------
723 I have xemacs 19.13 running on an alpha running OSF1 V3.2 148 and
724 ispell would not run because it claimed the version number was incorrect
725 although it was indeed OK. I traced the problem to the regular
728 Douglas Kosovic <douglask@dstc.edu.au> writes:
730 Actually it's a DEC cc optimization bug that screws up the regexp
733 Rebuilding using the `-migrate' switch for DEC cc (which uses a
734 different sort of optimization) works fine.
736 See `xemacs-19_13-dunix-3_2c.patch' at the following URL on how to
737 build with the `-migrate' flag:
739 `http://www-digital.cern.ch/carney/emacs/emacs.html'
741 NOTE: There have been a variety of other problems reported that are
742 fixed in this fashion.
745 File: xemacs-faq.info, Node: Q2.1.13, Next: Q2.1.14, Prev: Q2.1.12, Up: Installation
747 Q2.1.13: HP/UX 10.10 and `create_process' failure.
748 --------------------------------------------------
750 Dave Carrigan <Dave.Carrigan@ipl.ca> writes:
752 With XEmacs 19.13 and HP/UX 10.10, anything that relies on the
753 `create_process' function fails. This breaks a lot of things
754 (shell-mode, compile, ange-ftp, to name a few).
756 Phil Johnson <johnson@dtc.hp.com> writes:
758 This is a problem specific to HP-UX 10.10. It only occurs when
759 XEmacs is compiled for shared libraries (the default), so you can
760 work around it by compiling a statically-linked binary (run
761 configure with `--dynamic=no').
763 I'm not sure whether the problem is with a particular shared
764 library or if it's a kernel problem which crept into 10.10.
766 Richard Cognot <cognot@ensg.u-nancy.fr> writes:
768 I had a few problems with 10.10. Apparently, some of them were
769 solved by forcing a static link of libc (manually).
772 File: xemacs-faq.info, Node: Q2.1.14, Next: Q2.1.15, Prev: Q2.1.13, Up: Installation
774 Q2.1.14: `C-g' doesn't work for me. Is it broken?
775 --------------------------------------------------
777 Ben Wing <ben@xemacs.org> writes:
779 `C-g' does work for most people in most circumstances. If it
780 doesn't, there are only two explanations:
782 1. The code is wrapped with a binding of `inhibit-quit' to `t'.
783 `Ctrl-Shift-G' should still work, I think.
785 2. SIGIO is broken on your system, but BROKEN_SIGIO isn't
788 To test #2, try executing `(while t)' from the `*scratch*' buffer.
789 If `C-g' doesn't interrupt, then you're seeing #2.
791 Morten Welinder <terra@diku.dk> writes:
793 On some (but _not_ all) machines a hung XEmacs can be revived by
794 `kill -FPE <pid>'. This is a hack, of course, not a solution.
795 This technique works on a Sun4 running 4.1.3_U1. To see if it
796 works for you, start another XEmacs and test with that first. If
797 you get a core dump the method doesn't work and if you get
798 `Arithmetic error' then it does.
801 File: xemacs-faq.info, Node: Q2.1.15, Next: Q2.1.16, Prev: Q2.1.14, Up: Installation
803 Q2.1.15: How to Debug an XEmacs problem with a debugger
804 -------------------------------------------------------
806 If XEmacs does crash on you, one of the most productive things you
807 can do to help get the bug fixed is to poke around a bit with the
808 debugger. Here are some hints:
810 * First of all, if the crash is at all reproducible, consider very
811 strongly recompiling your XEmacs with debugging symbols, with no
812 optimization, and with the configure options `--debug=yes' and
813 `--error-checking=all'. This will make your XEmacs run somewhat
814 slower but make it a lot more likely to catch the problem earlier
815 (closer to its source), and a lot easier to determine what's going
818 * If you're able to run XEmacs under a debugger and reproduce the
819 crash (if it's inconvenient to do this because XEmacs is already
820 running or is running in batch mode as part of a bunch of scripts,
821 consider attaching to the existing process with your debugger;
822 most debuggers let you do this by substituting the process ID for
823 the core file when you invoke the debugger from the command line,
824 or by using the `attach' command or something similar), here are
825 some things you can do:
827 * If XEmacs is hitting an assertion failure, put a breakpoint on
830 * If XEmacs is hitting some weird Lisp error that's causing it to
831 crash (e.g. during startup), put a breakpoint on
832 `signal_1()'--this is declared static in eval.c.
834 * Internally, you will probably see lots of variables that hold
835 objects of type `Lisp_Object'. These are exactly what they appear
836 to be, i.e. references to Lisp objects. Printing them out with
837 the debugger probably won't be too useful--you'll likely just see
838 a number. To decode them, do this:
840 call debug_print (OBJECT)
842 where OBJECT is whatever you want to decode (it can be a variable,
843 a function call, etc.). This will print out a readable
844 representation on the TTY from which the xemacs process was
847 * If you want to get a Lisp backtrace showing the Lisp call stack,
850 call debug_backtrace ()
852 * Using `debug_print' and `debug_backtrace' has two disadvantages -
853 it can only be used with a running xemacs process, and it cannot
854 display the internal C structure of a Lisp Object. Even if all
855 you've got is a core dump, all is not lost.
857 If you're using GDB, there are some macros in the file
858 `src/.gdbinit' in the XEmacs source distribution that should make
859 it easier for you to decode Lisp objects. This file is
860 automatically read by gdb if gdb is run in the directory where
861 xemacs was built, and contains these useful macros to inspect the
865 Usage: pobj lisp_object
866 Print the internal C representation of a lisp object.
869 Usage: xtype lisp_object
870 Print the Lisp type of a lisp object.
874 Print the current Lisp stack trace. Requires a running
878 Usage: ldp lisp_object
879 Print a Lisp Object value using the Lisp printer. Requires a
880 running xemacs process.
884 Run temacs interactively, like xemacs. Use this with
885 debugging tools (like purify) that cannot deal with dumping,
886 or when temacs builds successfully, but xemacs does not.
890 Run the dumping part of the build procedure. Use when
891 debugging temacs, not xemacs! Use this when temacs builds
892 successfully, but xemacs does not.
896 Run the test suite. Equivalent to 'make check'.
900 Run the test suite on temacs. Equivalent to 'make
901 check-temacs'. Use this with debugging tools (like purify)
902 that cannot deal with dumping, or when temacs builds
903 successfully, but xemacs does not.
905 If you are using Sun's `dbx' debugger, there is an equivalent file
906 `src/.dbxrc', which defines the same commands for dbx.
908 * If you're using a debugger to get a C stack backtrace and you're
909 seeing stack traces with some of the innermost frames mangled, it
910 may be due to dynamic linking. (This happens especially under
911 Linux.) Consider reconfiguring with `--dynamic=no'. Also,
912 sometimes (again under Linux), stack backtraces of core dumps will
913 have the frame where the fatal signal occurred mangled; if you can
914 obtain a stack trace while running the XEmacs process under a
915 debugger, the stack trace should be clean.
917 Curtiss <1CMC3466@ibm.mtsac.edu> suggests upgrading to ld.so
918 version 1.8 if dynamic linking and debugging is a problem on Linux.
920 * If you're using a debugger to get a C stack backtrace and you're
921 getting a completely mangled and bogus stack trace, it's probably
922 due to one of the following:
924 a. Your executable has been stripped. Bad news. Tell your
925 sysadmin not to do this--it doesn't accomplish anything
926 except to save a bit of disk space, and makes debugging much
929 b. Your stack is getting trashed. Debugging this is hard; you
930 have to do a binary-search type of narrowing down where the
931 crash occurs, until you figure out exactly which line is
932 causing the problem. Of course, this only works if the bug
933 is highly reproducible.
935 c. If your stack trace has exactly one frame in it, with address
936 0x0, this could simply mean that XEmacs attempted to execute
937 code at that address, e.g. through jumping to a null function
938 pointer. Unfortunately, under those circumstances, GDB under
939 Linux doesn't know how to get a stack trace. (Yes, this is
940 the third Linux-related problem I've mentioned. I have no
941 idea why GDB under Linux is so bogus. Complain to the GDB
942 authors, or to comp.os.linux.development.system). Again,
943 you'll have to use the narrowing-down process described above.
945 d. If you compiled 19.14 with `--debug' (or by default in later
946 versions), you will get a Lisp backtrace output when XEmacs
947 crashes, so you'll have something useful.
950 * If you compile with the newer gcc variants gcc-2.8 or egcs, you
951 will also need gdb 4.17 or above. Earlier releases of gdb can't
952 handle the debug information generated by the newer compilers.
954 * In versions of XEmacs before 21.2.27, `src/.gdbinit' was named
955 `src/gdbinit'. This had the disadvantage of not being sourced
956 automatically by gdb, so you had to set that up yourself.
960 File: xemacs-faq.info, Node: Q2.1.16, Next: Q2.1.17, Prev: Q2.1.15, Up: Installation
962 Q2.1.16: XEmacs crashes in `strcat' on HP/UX 10
963 -----------------------------------------------
965 From the problems database (through the former address
966 http://support.mayfield.hp.com/):
968 Problem Report: 5003302299
971 System/Model: 9000/700
972 Product Name: HPUX S800 10.0X
973 Product Vers: 9245XB.10.00
975 Description: strcat(3C) may read beyond
976 end of source string, can cause SIGSEGV
980 strcat(3C) may read beyond the source string onto an unmapped page,
981 causing a segmentation violation.
984 File: xemacs-faq.info, Node: Q2.1.17, Next: Q2.1.18, Prev: Q2.1.16, Up: Installation
986 Q2.1.17: `Marker does not point anywhere'
987 -----------------------------------------
989 As with other errors, set `debug-on-error' to `t' to get the
990 backtrace when the error occurs. Specifically, two problems have been
991 reported (and fixed).
993 1. A problem with line-number-mode in XEmacs 19.14 affected a large
994 number of other packages. If you see this error message, turn off
997 2. A problem with some early versions of Gnus 5.4 caused this error.
1001 File: xemacs-faq.info, Node: Q2.1.18, Next: Q2.1.19, Prev: Q2.1.17, Up: Installation
1007 File: xemacs-faq.info, Node: Q2.1.19, Next: Q2.1.20, Prev: Q2.1.18, Up: Installation
1009 Q2.1.19: XEmacs does not follow the local timezone.
1010 ---------------------------------------------------
1012 When using one of the prebuilt binaries many users have observed that
1013 XEmacs uses the timezone under which it was built, but not the timezone
1014 under which it is running. The solution is to add:
1016 (set-time-zone-rule "MET")
1018 to your `.emacs' or the `site-start.el' file if you can. Replace
1019 `MET' with your local timezone.
1022 File: xemacs-faq.info, Node: Q2.1.20, Next: Q2.1.21, Prev: Q2.1.19, Up: Installation
1024 Q2.1.20: `Symbol's function definition is void: hkey-help-show.'
1025 ----------------------------------------------------------------
1027 This is a problem with a partially loaded hyperbole. Try adding:
1029 (require 'hmouse-drv)
1031 where you load hyperbole and the problem should go away.
1034 File: xemacs-faq.info, Node: Q2.1.21, Next: Q2.1.22, Prev: Q2.1.20, Up: Installation
1036 Q2.1.21: [This question intentionally left blank]
1037 -------------------------------------------------
1040 File: xemacs-faq.info, Node: Q2.1.22, Next: Q2.1.23, Prev: Q2.1.21, Up: Installation
1042 Q2.1.22: XEmacs seems to take a really long time to do some things
1043 ------------------------------------------------------------------
1045 David Moore <dmoore@ucsd.edu> writes:
1047 Two things you can do:
1051 When you see it going mad like this, you might want to use gdb
1052 from an 'xterm' to attach to the running process and get a stack
1053 trace. To do this just run:
1055 gdb /path/to/xemacs/xemacs ####
1057 Where `####' is the process id of your xemacs, instead of
1058 specifying the core. When gdb attaches, the xemacs will stop [1]
1059 and you can type `where' in gdb to get a stack trace as usual. To
1060 get things moving again, you can just type `quit' in gdb. It'll
1061 tell you the program is running and ask if you want to quit
1062 anyways. Say 'y' and it'll quit and have your emacs continue from
1067 Turn on debug-on-quit early on. When you think things are going
1068 slow hit C-g and it may pop you in the debugger so you can see
1069 what routine is running. Press `c' to get going again.
1071 debug-on-quit doesn't work if something's turned on inhibit-quit
1072 or in some other strange cases.
1075 File: xemacs-faq.info, Node: Q2.1.23, Next: Q2.1.24, Prev: Q2.1.22, Up: Installation
1077 Q2.1.23: Movemail on Linux does not work for XEmacs 19.15 and later.
1078 ---------------------------------------------------------------------
1080 Movemail used to work fine in 19.14 but has stopped working in 19.15
1081 and 20.x. I am using Linux.
1083 SL Baur <steve@xemacs.org> writes:
1085 Movemail on Linux used to default to using flock file locking.
1086 With 19.15 and later versions it now defaults to using `.lock' file
1087 locking. If this is not appropriate for your system, edit
1088 src/s/linux.h and uncomment the line that reads:
1090 #define MAIL_USE_FLOCK
1093 File: xemacs-faq.info, Node: Q2.1.24, Prev: Q2.1.23, Up: Installation
1095 Q2.1.24: XEmacs won't start without network. (NEW)
1096 ---------------------------------------------------
1098 Q2.1.23: Movemail on Linux does not work for XEmacs 19.15 and later.
1100 If XEmacs starts when you're on the network, but fails when you're
1101 not on the network, you may be missing a "localhost" entry in your
1102 `/etc/hosts' file. The file should contain an entry like:
1106 Add that line, and XEmacs will be happy.
1109 File: xemacs-faq.info, Node: Customization, Next: Subsystems, Prev: Installation, Up: Top
1111 3 Customization and Options
1112 ***************************
1114 This is part 3 of the XEmacs Frequently Asked Questions list. This
1115 section is devoted to Customization and screen settings.
1119 Customization---Emacs Lisp and `.emacs':
1120 * Q3.0.1:: What version of Emacs am I running?
1121 * Q3.0.2:: How do I evaluate Elisp expressions?
1122 * Q3.0.3:: `(setq tab-width 6)' behaves oddly.
1123 * Q3.0.4:: How can I add directories to the `load-path'?
1124 * Q3.0.5:: How to check if a lisp function is defined?
1125 * Q3.0.6:: Can I force the output of `(face-list)' to a buffer?
1126 * Q3.0.7:: Font selections don't get saved after `Save Options'.
1127 * Q3.0.8:: How do I make a single minibuffer frame?
1128 * Q3.0.9:: What is `Customize'?
1130 X Window System & Resources:
1131 * Q3.1.1:: Where is a list of X resources?
1132 * Q3.1.2:: How can I detect a color display?
1133 * Q3.1.3:: [This question intentionally left blank]
1134 * Q3.1.4:: [This question intentionally left blank]
1135 * Q3.1.5:: How can I get the icon to just say `XEmacs'?
1136 * Q3.1.6:: How can I have the window title area display the full path?
1137 * Q3.1.7:: `xemacs -name junk' doesn't work?
1138 * Q3.1.8:: `-iconic' doesn't work.
1140 Textual Fonts & Colors:
1141 * Q3.2.1:: How can I set color options from `.emacs'?
1142 * Q3.2.2:: How do I set the text, menu and modeline fonts?
1143 * Q3.2.3:: How can I set the colors when highlighting a region?
1144 * Q3.2.4:: How can I limit color map usage?
1145 * Q3.2.5:: My tty supports color, but XEmacs doesn't use them.
1146 * Q3.2.6:: Can I have pixmap backgrounds in XEmacs?
1149 * Q3.3.1:: How can I make the modeline go away?
1150 * Q3.3.2:: How do you have XEmacs display the line number in the modeline?
1151 * Q3.3.3:: How do I get XEmacs to put the time of day on the modeline?
1152 * Q3.3.4:: How do I turn off current chapter from AUC TeX modeline?
1153 * Q3.3.5:: How can one change the modeline color based on the mode used?
1155 3.4 Multiple Device Support:
1156 * Q3.4.1:: How do I open a frame on another screen of my multi-headed display?
1157 * Q3.4.2:: Can I really connect to a running XEmacs after calling up over a modem? How?
1160 * Q3.5.1:: How can I bind complex functions (or macros) to keys?
1161 * Q3.5.2:: How can I stop down-arrow from adding empty lines to the bottom of my buffers?
1162 * Q3.5.3:: How do I bind C-. and C-; to scroll one line up and down?
1163 * Q3.5.4:: Globally binding Delete?
1164 * Q3.5.5:: Scrolling one line at a time.
1165 * Q3.5.6:: How to map Help key alone on Sun type4 keyboard?
1166 * Q3.5.7:: How can you type in special characters in XEmacs?
1167 * Q3.5.8:: Why does `(global-set-key [delete-forward] 'delete-char)' complain?
1168 * Q3.5.9:: How do I make the Delete key delete forward?
1169 * Q3.5.10:: Can I turn on "sticky" modifier keys?
1170 * Q3.5.11:: How do I map the arrow keys?
1173 * Q3.6.1:: Is there a way to make the bar cursor thicker?
1174 * Q3.6.2:: Is there a way to get back the old block cursor where the cursor covers the character in front of the point?
1175 * Q3.6.3:: Can I make the cursor blink?
1177 The Mouse and Highlighting:
1178 * Q3.7.1:: How can I turn off Mouse pasting?
1179 * Q3.7.2:: How do I set control/meta/etc modifiers on mouse buttons?
1180 * Q3.7.3:: Clicking the left button does not do anything in buffer list.
1181 * Q3.7.4:: How can I get a list of buffers when I hit mouse button 3?
1182 * Q3.7.5:: Why does cut-and-paste not work between XEmacs and a cmdtool?
1183 * Q3.7.6:: How I can set XEmacs up so that it pastes where the text cursor is?
1184 * Q3.7.7:: How do I select a rectangular region?
1185 * Q3.7.8:: Why does M-w take so long?
1187 The Menubar and Toolbar:
1188 * Q3.8.1:: How do I get rid of the menu (or menubar)?
1189 * Q3.8.2:: Can I customize the basic menubar?
1190 * Q3.8.3:: How do I control how many buffers are listed in the menu `Buffers' list?
1191 * Q3.8.4:: Resources like `Emacs*menubar*font' are not working?
1192 * Q3.8.5:: How can I bind a key to a function to toggle the toolbar?
1195 * Q3.9.1:: How can I disable the scrollbar?
1196 * Q3.9.2:: How can one use resources to change scrollbar colors?
1197 * Q3.9.3:: Moving the scrollbar can move the point; can I disable this?
1198 * Q3.9.4:: How can I get automatic horizontal scrolling?
1201 * Q3.10.1:: How can I turn off or change highlighted selections?
1202 * Q3.10.2:: How do I get that typing on an active region removes it?
1203 * Q3.10.3:: Can I turn off the highlight during isearch?
1204 * Q3.10.4:: How do I turn off highlighting after C-x C-p (mark-page)?
1205 * Q3.10.5:: The region disappears when I hit the end of buffer while scrolling.
1208 File: xemacs-faq.info, Node: Q3.0.1, Next: Q3.0.2, Prev: Customization, Up: Customization
1210 3.0: Customization - Emacs Lisp and .emacs
1211 ==========================================
1213 Q3.0.1: What version of Emacs am I running?
1214 -------------------------------------------
1216 How can `.emacs' determine which of the family of Emacsen I am using?
1218 To determine if you are currently running GNU Emacs 18, GNU Emacs 19,
1219 XEmacs 19, XEmacs 20, or Epoch, and use appropriate code, check out the
1220 example given in `etc/sample.emacs'. There are other nifty things in
1223 For all new code, all you really need to do is:
1225 (defvar running-xemacs (string-match "XEmacs\\|Lucid" emacs-version))
1228 File: xemacs-faq.info, Node: Q3.0.2, Next: Q3.0.3, Prev: Q3.0.1, Up: Customization
1230 Q3.0.2: How can I evaluate Emacs-Lisp expressions?
1231 --------------------------------------------------
1233 I know I can evaluate Elisp expressions from `*scratch*' buffer with
1234 `C-j' after the expression. How do I do it from another buffer?
1236 Press `M-:' (the default binding of `eval-expression'), and enter
1237 the expression to the minibuffer. In XEmacs prior to 19.15
1238 `eval-expression' used to be a disabled command by default. If this is
1239 the case, upgrade your XEmacs.
1242 File: xemacs-faq.info, Node: Q3.0.3, Next: Q3.0.4, Prev: Q3.0.2, Up: Customization
1244 Q3.0.3: `(setq tab-width 6)' behaves oddly.
1245 -------------------------------------------
1247 If you put `(setq tab-width 6)' in your `.emacs' file it does not
1248 work! Is there a reason for this? If you do it at the EVAL prompt it
1249 works fine!! How strange.
1251 Use `setq-default' instead, since `tab-width' is all-buffer-local.
1254 File: xemacs-faq.info, Node: Q3.0.4, Next: Q3.0.5, Prev: Q3.0.3, Up: Customization
1256 Q3.0.4: How can I add directories to the `load-path'?
1257 -----------------------------------------------------
1259 Here are two ways to do that, one that puts your directories at the
1260 front of the load-path, the other at the end:
1262 ;;; Add things at the beginning of the load-path, do not add
1263 ;;; duplicate directories:
1264 (pushnew "bar" load-path :test 'equal)
1266 (pushnew "foo" load-path :test 'equal)
1268 ;;; Add things at the end, unconditionally
1269 (setq load-path (nconc load-path '("foo" "bar")))
1271 keith (k.p.) hanlan <keithh@nortel.ca> writes:
1273 To add directories using Unix shell metacharacters use
1274 `expand-file-name' like this:
1276 (push (expand-file-name "~keithh/.emacsdir") load-path)