aboutsummaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorMiles Bader2004-08-27 07:00:34 +0000
committerMiles Bader2004-08-27 07:00:34 +0000
commitb71f2b97d343dd5ec39b64b66de86051ee47eb3e (patch)
tree85e3d906c7ba13a3fd447ad054a430388386b748 /etc
parent21b4a4fb21f6254fb37da88b0d5858575f953e22 (diff)
parent11d2e01ba3a82c41eec105df81260568f048e726 (diff)
downloademacs-b71f2b97d343dd5ec39b64b66de86051ee47eb3e.tar.gz
emacs-b71f2b97d343dd5ec39b64b66de86051ee47eb3e.zip
Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-32
Merge from emacs--cvs-trunk--0 Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-486 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-487 Tweak permissions * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-488 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-489 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-490 Update from CVS: man/fixit.texi (Spelling): Fix typo. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-491 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-494 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-495 Update from CVS: Add missing lisp/mh-e files * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-496 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-499 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-500 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-513 Update from CVS
Diffstat (limited to 'etc')
-rw-r--r--etc/ChangeLog38
-rw-r--r--etc/MAILINGLISTS9
-rw-r--r--etc/MH-E-NEWS385
-rw-r--r--etc/NEWS22
-rw-r--r--etc/PROBLEMS4873
-rw-r--r--etc/TODO5
-rw-r--r--etc/TUTORIAL.es28
7 files changed, 2901 insertions, 2459 deletions
diff --git a/etc/ChangeLog b/etc/ChangeLog
index 5c86c060880..48c6da4e32d 100644
--- a/etc/ChangeLog
+++ b/etc/ChangeLog
@@ -1,3 +1,41 @@
12004-08-24 Bill Wohler <wohler@newt.com>
2
3 * NEWS, MH-E-NEWS: Upgraded to MH-E version 7.82.
4
52004-08-22 David Kastrup <dak@gnu.org>
6
7 * PROBLEMS, MAILINGLISTS: Update AUCTeX information.
8
92004-08-21 Bill Wohler <wohler@newt.com>
10
11 * NEWS, MH-E-NEWS: Upgraded to MH-E version 7.81.
12
132004-08-21 Eric S. Raymond <esr@thyrsus.com>
14
15 * PROBLEMS: Massively rearranged by category, to make environment
16 features and symptoms easier to find. Bugs relating to
17 20th-century systems moved to the end. Most problem headers
18 changed to "object: variation" format.
19
202004-08-15 Bill Wohler <wohler@newt.com>
21
22 * NEWS, MH-E-NEWS: Upgraded to MH-E version 7.4.80.
23
242004-08-14 Romain Francoise <romain@orebokech.com>
25
26 * NEWS: Mention the thumbs.el package.
27
282004-08-14 Eric Hanchrow <offby1@blarg.net>
29
30 * TUTORIAL.es: Replace actual whitespace with the magic string
31 that causes help-with-tutorial to automatically insert the correct
32 amount.
33
342004-08-10 Steven Tamm <steventamm@mac.com>
35
36 * PROBLEMS: Remove description of Mac OS version upgrade
37 problems as it is no longer applicable.
38
12004-07-27 Werner Lemberg <wl@gnu.org> 392004-07-27 Werner Lemberg <wl@gnu.org>
2 40
3 * NEWS: Document all new tutorials. 41 * NEWS: Document all new tutorials.
diff --git a/etc/MAILINGLISTS b/etc/MAILINGLISTS
index 6c22e668340..7c5558eabf6 100644
--- a/etc/MAILINGLISTS
+++ b/etc/MAILINGLISTS
@@ -1224,13 +1224,14 @@ rmail mode.
1224The supercite mailing list covers issues related to the advanced 1224The supercite mailing list covers issues related to the advanced
1225mail/news citation package called Supercite for GNU Emacs. 1225mail/news citation package called Supercite for GNU Emacs.
1226 1226
1227* auc-tex-request@iesd.auc.dk to subscribe 1227* auc-tex-request@sunsite.dk to subscribe
1228** USENET newsgroup: NONE YET 1228** USENET newsgroup: NONE YET
1229** Send contributions to: auc-tex@iesd.auc.dk 1229** Send contributions to: auc-tex@sunsite.dk
1230 1230
1231The list is intended to exchange information about AUC TeX, such as 1231The list is intended to exchange information about AUCTeX, such as
1232bug reports, request for help, and information on current 1232bug reports, request for help, and information on current
1233developments. AUC TeX is a much enhanced LaTeX mode for GNU Emacs. 1233developments. AUCTeX is a much enhanced TeX/LaTeX/ConTeXt/Texinfo mode
1234for GNU Emacs.
1234 1235
1235The list is unmoderated. 1236The list is unmoderated.
1236 1237
diff --git a/etc/MH-E-NEWS b/etc/MH-E-NEWS
index 5bea16d91ba..f82bf4cb045 100644
--- a/etc/MH-E-NEWS
+++ b/etc/MH-E-NEWS
@@ -6,6 +6,389 @@ Copying and distribution of this file, with or without modification,
6are permitted in any medium without royalty provided the copyright 6are permitted in any medium without royalty provided the copyright
7notice and this notice are preserved. 7notice and this notice are preserved.
8 8
9* Changes in MH-E 7.82
10
11Version 7.82 continues to address the saga surrounding the use of CL
12macros in CVS Emacs and fixes the auto-detection of vanilla MH (SF
13#1014781).
14
15* Changes in MH-E 7.81
16
17Version 7.81 fixes a `wrong-type-argument' argument error that
18sometimes occurred when processing the Message-ID, adds the ";
19(mh-toggle-mh-decode-mime-flag)" command, and uses ":default" instead
20of "default" in `mh-identity-handlers' to avoid problems with
21"Default:" as a user defined field. If you have modified
22`mh-identity-handlers' in your .emacs, you'll need to rename "default"
23to ":default". This release also corrects the release numbering; the
24previous version number was intended to be 7.80.
25
26* Changes in MH-E 7.4.80
27
28Version 7.4.80 now supports GNU mailutils, S/MIME, picons,
29which-func-mode, has an improved interface for hiding header fields,
30improves upon the MH variant detection, and contains many bug fixes.
31Those of you familiar with the GNU version numbering schemes will
32recognize this as an alpha release. This does not reflect on the
33quality of this release which is as high as it has always been.
34Although we are not ready to release 8.0, we want you to have access
35to the work that has been hiding in CVS. At the same time we want to
36make it clear that there are incompatible changes with previous
37versions.
38
39We are planning to release the long-awaited manual update synchronized
40with version 8.0. We are using documentation from the manual in the
41docstrings which is hoped to make "C-h f (describe-function)" really
42useful and create a seamless experience when switching back and forth
43between the manual and the docstrings. This has been done in about
44half of the variables and functions in this version.
45
46The writing of the manual has revealed a few inconsistencies in the
47software whose fixes have resulted in incompatible changes, and there
48may well be more. So, unlike version 7 which was chock full of new
49features, version 8's strengths will include complete documentation
50and higher quality.
51
52** New Features in MH-E 7.4.80
53
54*** GNU mailutils Support
55
56MH-E now supports GNU mailutils 0.4 and higher versions.
57
58*** S/MIME Support
59
60MH-E now supports S/MIME using Gnus 5.10.6 or higher.
61
62*** Picon Support
63
64In addition to the other methods of displaying an icon for the sender
65of a message, MH-E can now display images from a picon directory. The
66directory search path is found in the `mh-picon-directory-list'
67variable. More documentation is found in the "facedb" sections in the
68xfaces man page. [NOTE: need to make mh-picon-directory-list an option
69and add xfaces facedb documentation to it.]
70
71*** X-Image-URL Updates
72
73Now support the use of `curl' and `fetch' as alternatives to `wget' to
74obtain the image. The display of images are controlled with the
75`mh-show-use-xface-flag' option while the `mh-fetch-x-image-url'
76option controls how the images are fetched.
77
78WARNING: There are security concerns with this feature. Please read
79the documentation for these options carefully before changing the
80default.
81
82*** Updates to mh-identity-list
83
84Note that the field names found in `mh-identity-list' that refer to
85the fields in `mh-identity-handlers' have changed in an incompatible
86way from 7.4.4. In general, the symbolic names now have a ":" prefix
87to avoid collisions with header fields. Before starting Emacs, edit
88your .emacs and insert ":" before "signature" if you have defined it.
89
90You can change your attribution in replies with the new "Attribution
91Verb" field, and you can set your default GPG user ID with the "GPG
92key ID" field.
93
94Signatures can now be read from the `mh-signature-file-name' variable,
95or come from a function, in addition to a named file. If you write
96your own function, variables that you can use include
97`mh-signature-separator-regexp', `mh-signature-separator',
98and `mh-signature-separator-p'.
99
100The handling of these fields has been moved into a new
101`mh-identity-handlers' option, an alist of fields (strings) and
102handlers (functions). Strings are lowercase. Use ":signature" for
103Signature and ":pgg-default-user-id" for GPG Key ID. The function
104associated with the string "default" is used if no other functions are
105appropriate. For this reason, don't name a header field "Default".
106
107If you point your signature at a vCard file with a vcf suffix, then it
108will be incorporated as a vCard body part (closes SF #802723).
109
110*** Catchup Command
111
112There is a new "F c (mh-catchup)" command that marks all unread
113messages in the current folder as read.
114
115*** Change Content-Type Renderer on the Fly in MH-Show Buffer
116
117This has been implemented by adding the key binding "K e
118(mh-display-with-external-viewer)". For inline text/html parts,
119buttons aren't displayed by default. In that case use "K t
120(mh-toggle-mime-buttons)" to display the button before viewing it with
121an external browser (closes SF #839318).
122
123*** Use which-func-mode to Display Folder in Index Mode
124
125Turning on `which-func-mode' displays the folder name of the message
126under the cursor in index folders (closes SF #855520).
127
128*** Render Signature and vCard in Italics
129
130This has been implemented. Use `mh-show-signature-face' to customize
131the face used (closes SF #802722).
132
133*** New Print Map
134
135There is now a keymap for the printing functions whose prefix is "P".
136The command "l (mh-print-msg)" has been replaced with "P l". Other new
137functions in this keymap include:
138
139 P A mh-ps-print-toggle-mime
140 P C mh-ps-print-toggle-color
141 P F mh-ps-print-toggle-faces
142 P M mh-ps-print-toggle-mime
143 P f mh-ps-print-msg-file
144 P l mh-print-msg
145 P p mh-ps-print-msg
146 P s mh-ps-print-msg-show
147
148*** Draft Buffer Keymap Changes
149
150The keymap in the draft buffer has been modified slightly. The old
151anonymous ftp and tar composition commands have been reinstated and
152letter signing and encrypting keymaps have been added.
153
154The type of signing or encryption has been generalized so the method
155is now an option rather than a part of the function's name. The option
156is `mh-mml-method-default' and choices include PGP (MIME), PGP,
157S/MIME, or none.
158
159Key 7.4.4 7.4.80
160
161C-c RET C-e mh-mml-secure-message-encrypt-pgpmime
162 mh-mml-secure-message-encrypt
163C-c RET C-s mh-mml-secure-message-sign-pgpmime
164 -
165C-c RET C-g - mh-mhn-compose-anon-ftp
166C-c RET C-n - mh-mml-unsecure-message
167C-c RET C-s - mh-mml-secure-message-sign
168C-c RET C-t - mh-mhn-compose-external-compressed-tar
169C-c RET C-s mh-mml-secure-message-sign-pgpmime
170 mh-mml-secure-message-sign
171C-c RET C-x - mh-mhn-compose-external-type
172C-c RET e mh-mml-secure-message-encrypt-pgpmime
173 Prefix Command
174C-c RET e e - mh-mml-secure-message-encrypt
175C-c RET e s - mh-mml-secure-message-signencrypt
176C-c RET g - mh-mhn-compose-anon-ftp
177C-c RET n - mh-mml-unsecure-message
178C-c RET s mh-mml-secure-message-sign-pgpmime
179 Prefix Command
180C-c RET s e - mh-mml-secure-message-signencrypt
181C-c RET s s - mh-mml-secure-message-sign
182C-c RET t - mh-mhn-compose-external-compressed-tar
183C-c RET x - mh-mhn-compose-external-type
184
185*** Speedbar: Highlight Folders With Unseen
186
187The speedbar now renders the folders with unseen messages in boldface
188which makes them easier to identify (closes SF #623369).
189
190*** Quick Key Help
191
192The "? (mh-help)" function now displays the help in its own buffer
193called *MH-E Help* (closes SF #493740 and SF #656631).
194
195*** New Startup File mh-e-autoloads.el
196
197If you are installing MH-E yourself, then you can replace any
198autoloads you may have with "(require 'mh-e-autoloads.el)". See the
199README for details.
200
201*** Glimpse Support Removed
202
203Since glimpse isn't free, we cannot mention it. Glimpse has been
204removed from the option `mh-indexer-choices' (closes SF #831276).
205
206*** mh-msg-is-in-seq Update
207
208Can now specify an alternate message number to "S s
209(mh-msg-is-in-seq)" with a prefix argument.
210
211** New Variables in MH-E 7.4.80
212
213Variables that have been added to MH-E that have not been discussed
214elsewhere are listed here.
215
216*** mail-citation-hook
217
218Hook for modifying a citation just inserted in the mail buffer.
219
220*** mh-alias-reloaded-hook
221
222Invoked by `mh-alias-reload' after reloading aliases.
223
224*** mh-auto-fields-prompt-flag
225
226Non-nil means to prompt before sending if fields in
227`mh-auto-fields-list' are inserted.
228
229*** mh-default-folder-for-message-function
230
231Function to select a default folder for refiling or `Fcc'.
232
233*** mh-forward-hook
234
235Invoked on the forwarded letter by "f (mh-forward)".
236
237*** mh-invisible-header-fields-default
238
239List of hidden header fields. The header fields listed in this option
240are hidden, although you can check off any field that you would like
241to see. Header fields that you would like to hide that aren't listed
242can be added to the `mh-invisible-header-fields' option (closes SF
243#752045).
244
245The option `mh-visible-header-fields' has been deleted.
246
247*** mh-junk-background
248
249If on, spam programs are run in background. This used to be the
250default behavior but this could overwhelm a system if many messages
251were black- or whitelisted at once. The spam programs are now run in
252the foreground, but this option can be used to put them back in the
253background.
254
255*** mh-signature-separator-flag
256
257Non-nil means a signature separator should be inserted. It is not
258recommended that you change this option since various mail user
259agents, including MH-E, use the separator to present the signature
260differently, and to suppress the signature when replying or yanking a
261letter into a draft.
262
263*** mh-variant
264
265Specifies the variant used by MH-E. The default setting of this option
266is `Auto-detect' which means that MH-E will automatically choose the
267first of nmh, MH, or GNU mailutils that it finds in the directories
268listed in `mh-path', `mh-sys-path', and `exec-path'. If, for example,
269you have both nmh and mailutils installed and `mh-variant-in-use' was
270initialized to nmh but you want to use mailutils, then you can set
271this option to `mailutils'.
272
273When this variable is changed, MH-E resets `mh-progs', `mh-lib',
274`mh-lib-progs', `mh-flists-present-flag', and `mh-variant-in-use'
275accordingly.
276
277If you've set these variables in your .emacs, it is strongly suggested
278that you comment them out. The MH detection code has been completely
279rewritten and it is very likely that you no longer to set them and
280their setting may confuse other MH-E settings.
281
282** Variables Deleted in MH-E
283
284Variables that have been removed from MH-E that have not been
285discussed elsewhere are listed here.
286
287*** mh-alias-system-aliases
288
289System definitions should not be a user option.
290
291*** mh-junk-mail-folder
292
293Since this variable can accept values other than folder names, it was
294renamed to `mh-junk-disposition' to more accurately reflect the content.
295
296** Bug Fixes in MH-E 7.4.80
297
298Many bugs were fixed in this version that aren't listed below.
299
300*** mh-extract-rejected-mail Can't Do MIME (and Other Formats)
301
302Now handles qmail and exim bounces (addresses SF #404965).
303
304*** mh-rmail Hangs in XEmacs
305
306We've determined that MH-E is incompatible with some versions of
307XEmacs (21.5.9-21.5.16). More recent versions work fine. If you think
308our list is too broad, please let us know which version of XEmacs you
309are using (closes SF #644321).
310
311*** Inconsistent Prompts
312
313Prompt formats are now consistent throughout the application (closes
314SF #730470).
315
316*** Empty Shell Comments Confuse mh-mhn-directive-present-p
317
318If you had a string that matched the regexp "^# $" in your draft, it
319would cause an error. This has been fixed (closes SF #762458).
320
321*** Quote Hashes When mhbuild Directives Used
322
323A related bug, if you had empty shell comments but inserted your own
324directives, you'd get another error from mhbuild. This has been fixed
325by quoting the hash ("^# $") like this "##" before submitting to
326mhbuild (closes SF #762464).
327
328*** Inconsistent Usage in Scan Formatting Variables
329
330The variables:
331
332 mh-note-cur
333 mh-note-deleted
334 mh-note-dist
335 mh-note-forw
336 mh-note-refiled
337 mh-note-repl
338 mh-note-seq
339
340used to contain strings. Although only the first character was read,
341the entire string would be inserted which may have caused problems.
342These variables have been converted to character constants so that
343only a single character can be inserted into the scan line (closes SF
344#770772).
345
346*** Bad Handling of Aliases That Conflict With Local User Names
347
348If a user name existed both locally and in the aliases file, the local
349user would be flashed, but the alias would be used when sending. This
350has been fixed so that the user name that is flashed is the same as
351the name that is sent (closes SF #772595).
352
353*** Args out of range
354
355In rare and non-reproducible circumstances, compilation sometimes
356threw an "Args out of range" error. Nonetheless, this has been fixed
357(closes SF #806577).
358
359*** mh-forward hard-codes '-mime' Switch on nmh
360
361Added new option `mh-compose-forward-as-mime-flag' that controls whether
362messages are forwarded as MIME attachments (closes SF #827203).
363
364*** Not Re-prompted to Sign After Pass Phrase Typo
365
366If there were errors when sending a signed message (like getting the
367pass phrase wrong), the MML markup remained in the draft buffer. The
368draft buffer is now restored if there is an error (closes SF #839303).
369
370*** Font-lock Gets Confused in MH-Letter Buffer
371
372If a user manually moved the cursor to the end of the header field
373separator line (by mouse click or keyboard navigation) and hit Enter
374to start typing their message, any line in the body with a colon would
375be fontified with a gray background. This has been fixed (closes SF
376#855479).
377
378*** mh-refile-msg Fails to Suggest Folder for Empty Message
379
380If you received a message with an empty body from someone who is
381listed in your aliases file, "o (mh-refile-msg)" failed to suggest the
382correct folder. This has been fixed (closes SF #917096).
383
384*** Error Visiting Folder With no Unseen Messages
385
386If you visited a folder without unseen messages and the option "flist:
387-noshowzero" is present in your ~/.mh_profile, you'd get an error. This
388has been fixed (closes SF #933954).
389
390
391
9* Changes in MH-E 7.4.4 392* Changes in MH-E 7.4.4
10 393
11Version 7.4.4 addresses programmatic issues from the FSF and prepares 394Version 7.4.4 addresses programmatic issues from the FSF and prepares
@@ -18,7 +401,7 @@ code moved here from desktop.el.
18 401
19* Changes in MH-E 7.4.3 402* Changes in MH-E 7.4.3
20 403
21Version 7.4.3 fixes the problem where mh-identity-list was not getting 404Version 7.4.3 fixes the problem where `mh-identity-list' was not getting
22set from .emacs. 405set from .emacs.
23 406
24* Changes in MH-E 7.4.2 407* Changes in MH-E 7.4.2
diff --git a/etc/NEWS b/etc/NEWS
index d0c28f0c277..c0d5914ebc0 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -173,6 +173,8 @@ types any more. Add -DUSE_LISP_UNION_TYPE if you want union types.
173 173
174* Changes in Emacs 21.4 174* Changes in Emacs 21.4
175 175
176** global-whitespace-mode is a new alias for whitespace-global-mode.
177
176+++ 178+++
177** There are now two new regular expression operators, \_< and \_>, 179** There are now two new regular expression operators, \_< and \_>,
178for matching the beginning and end of a symbol. A symbol is a 180for matching the beginning and end of a symbol. A symbol is a
@@ -267,6 +269,11 @@ just put point at the end of the buffer and it stays there. This
267rule applies to file buffers. For non-file buffers, the behavior may 269rule applies to file buffers. For non-file buffers, the behavior may
268be mode dependent. 270be mode dependent.
269 271
272If you are sure that the file will only change by growing at the end,
273then you can tail the file more efficiently by using the new minor
274mode Auto Revert Tail mode. The function `auto-revert-tail-mode'
275toggles this mode.
276
270** Auto Revert mode is now more careful to avoid excessive reverts and 277** Auto Revert mode is now more careful to avoid excessive reverts and
271other potential problems when deciding which non-file buffers to 278other potential problems when deciding which non-file buffers to
272revert. This matters especially if Global Auto Revert mode is enabled 279revert. This matters especially if Global Auto Revert mode is enabled
@@ -733,7 +740,7 @@ You can now put the init files .emacs and .emacs_SHELL under
733 740
734** MH-E changes. 741** MH-E changes.
735 742
736Upgraded to MH-E version 7.4.4. There have been major changes since 743Upgraded to MH-E version 7.82. There have been major changes since
737version 5.0.2; see MH-E-NEWS for details. 744version 5.0.2; see MH-E-NEWS for details.
738 745
739+++ 746+++
@@ -2041,9 +2048,12 @@ source files. See the Flymake's Info manual for more details.
2041of hierarchical data as an outline. For example, the tree-widget is 2048of hierarchical data as an outline. For example, the tree-widget is
2042well suited to display a hierarchy of directories and files. 2049well suited to display a hierarchy of directories and files.
2043 2050
2044** The wdired.el package allows you to use normal editing commands on dired 2051** The wdired.el package allows you to use normal editing commands on Dired
2045buffers to change filenames, permissions, etc... 2052buffers to change filenames, permissions, etc...
2046 2053
2054** The thumbs.el package allows you to preview image files as thumbnails
2055and can be invoked from a Dired buffer.
2056
2047** The new python.el package is used to edit Python and Jython programs. 2057** The new python.el package is used to edit Python and Jython programs.
2048 2058
2049** The URL package (which had been part of W3) is now part of Emacs. 2059** The URL package (which had been part of W3) is now part of Emacs.
@@ -3343,7 +3353,13 @@ and modify elements on this property list.
3343The new low-level functions process-plist and set-process-plist are 3353The new low-level functions process-plist and set-process-plist are
3344used to access and replace the entire property list of a process. 3354used to access and replace the entire property list of a process.
3345 3355
3346??? 3356*** Function accept-process-output now has an optional fourth arg
3357`just-this-one'. If non-nil, only output from the specified process
3358is handled, suspending output from other processes. If value is an
3359integer, also inhibit running timers. This feature is generally not
3360recommended, but may be necessary for specific applications, such as
3361speech synthesis.
3362
3347*** Adaptive read buffering of subprocess output. 3363*** Adaptive read buffering of subprocess output.
3348 3364
3349On some systems, when emacs reads the output from a subprocess, the 3365On some systems, when emacs reads the output from a subprocess, the
diff --git a/etc/PROBLEMS b/etc/PROBLEMS
index 4ff8d50c8ae..20077d848d0 100644
--- a/etc/PROBLEMS
+++ b/etc/PROBLEMS
@@ -1,761 +1,592 @@
1This file describes various problems that have been encountered 1This file describes various problems that have been encountered
2in compiling, installing and running GNU Emacs. 2in compiling, installing and running GNU Emacs. Try doing Ctl t
3and browsing through the outline headers.
3 4
4* Mule-UCS doesn't work in Emacs 22. 5* Mule-UCS doesn't work in Emacs 22.
5 6
6It's completely redundant now, as far as we know. 7It's completely redundant now, as far as we know.
7 8
8* Environment Variables from dotfiles are ignored with Mac OS X (Carbon). 9* Emacs startup failures
9 10
10When starting Emacs from the Dock or the Finder on Mac OS X, the 11** Emacs fails to start, complaining about missing fonts.
11environment variables that are set up in dotfiles, such as .cshrc or
12.profile, are ignored. This is because the Finder and Dock are not
13started from a shell, but instead from the Window Manager itself.
14
15The workaround for this is to create a .MacOSX/environment.plist file to
16setup these environment variables. These environment variables will
17apply to all processes regardless of where they are started.
18For me information, see http://developer.apple.com/qa/qa2001/qa1067.html.
19
20* Segfault on GNU/Linux using certain recent versions of the Linux kernel.
21
22With certain recent Linux kernels (like the one of Redhat Fedora Core
231), the new "Exec-shield" functionality is enabled by default, which
24creates a different memory layout that breaks the emacs dumper.
25
26You can check the Exec-shield state like this:
27
28 cat /proc/sys/kernel/exec-shield
29
30It returns 1 or 2 when Exec-shield is enabled, 0 otherwise. Please
31read your system documentation for more details on Exec-shield and
32associated commands.
33
34When Exec-shield is enabled, building Emacs will segfault during the
35execution of this command:
36
37temacs --batch --load loadup [dump|bootstrap]
38
39To work around this problem, it is necessary to temporarily disable
40Exec-shield while building Emacs, using the `setarch' command like
41this:
42
43 setarch i386 ./configure <configure parameters>
44 setarch i386 make <make parameters>
45
46* Characters are displayed as empty boxes or with wrong font under X.
47
48This can occur when two different versions of FontConfig are used.
49For example, XFree86 4.3.0 has one version and Gnome usually comes
50with a newer version. Emacs compiled with --with-gtk will then use
51the newer version. In most cases the problem can be temporarily
52fixed by stopping the application that has the error (it can be
53Emacs or any other application), removing ~/.fonts.cache-1,
54and then start the application again.
55If removing ~/.fonts.cache-1 and restarting doesn't help, the
56application with problem must be recompiled with the same version
57of FontConfig as the rest of the system uses. For KDE, it is
58sufficient to recompile Qt.
59
60* Process output truncated on Mac OS X (Carbon) when using pty's.
61
62There appears to be a problem with the implementation of pty's on the
63Mac OS X that causes process output to be truncated. To avoid this,
64leave process-connection-type set to its default value of nil.
65
66* Emacs crashes on Mac OS X (Carbon) after system software upgrade.
67
68This problem seems to be now solved by Steven Tamm's patch to
69unexmacosx.c on Nov 24, 2002.
70
71Between Mac OS X release 10.2.1 and 10.2.2 there was an incompatible
72change in the memory allocator that causes a EXC_BAD_ACCESS error near
73xrealloc(). Relinking the application (by deleting src/temacs and
74running make) will solve the problem. It appears to be caused by some
75problems with the unexec code and its interaction with libSystem.B.
76
77* Emacs crashes with SIGSEGV in XtInitializeWidgetClass
78
79It crashes on X, but runs fine when called with option "-nw".
80
81This has been observed when Emacs is linked with GNU ld but without passing
82the -z nocombreloc flag. Emacs normally knows to pass the -z nocombreloc
83flag when needed, so if you come across a situation where the flag is
84necessary but missing, please report it via M-x report-emacs-bug.
85
86On platforms such as Solaris, you can also work around this problem by
87configuring your compiler to use the native linker instead of GNU ld.
88
89* Characters from the mule-unicode charsets aren't displayed under X.
90 12
91XFree86 4 contains many fonts in iso10646-1 encoding which have 13A typical error message might be something like
92minimal character repertoires (whereas the encoding part of the font
93name is meant to be a reasonable indication of the repertoire
94according to the XLFD spec). Emacs may choose one of these to display
95characters from the mule-unicode charsets and then typically won't be
96able to find the glyphs to display many characters. (Check with C-u
97C-x = .) To avoid this, you may need to use a fontset which sets the
98font for the mule-unicode sets explicitly. E.g. to use GNU unifont,
99include in the fontset spec:
100
101mule-unicode-2500-33ff:-gnu-unifont-*-iso10646-1,\
102mule-unicode-e000-ffff:-gnu-unifont-*-iso10646-1,\
103mule-unicode-0100-24ff:-gnu-unifont-*-iso10646-1
104 14
105* The UTF-8/16/7 coding systems don't encode CJK (Far Eastern) characters. 15 No fonts match `-*-fixed-medium-r-*--6-*-*-*-*-*-iso8859-1'
106 16
107Emacs by default only supports the parts of the Unicode BMP whose code 17This happens because some X resource specifies a bad font family for
108points are in the ranges 0000-33ff and e000-ffff. This excludes: most 18Emacs to use. The possible places where this specification might be
109of CJK, Yi and Hangul, as well as everything outside the BMP. 19are:
110 20
111If you read UTF-8 data with code points outside these ranges, the 21 - in your ~/.Xdefaults file
112characters appear in the buffer as raw bytes of the original UTF-8
113(composed into a single quasi-character) and they will be written back
114correctly as UTF-8, assuming you don't break the composed sequences.
115If you read such characters from UTF-16 or UTF-7 data, they are
116substituted with the Unicode `replacement character', and you lose
117information.
118 22
119To edit such UTF data, turn on Utf-Translate-Cjk mode, which makes 23 - client-side X resource file, such as ~/Emacs or
120many common CJK characters available for encoding and decoding and can 24 /usr/X11R6/lib/app-defaults/Emacs or
121be extended by updating the tables it uses. This also allows you to 25 /usr/X11R6/lib/X11/app-defaults/Emacs
122save as UTF buffers containing characters decoded by the chinese-,
123japanese- and korean- coding systems, e.g. cut and pasted from
124elsewhere.
125 26
126* Problems with file dialogs in Emacs built with Open Motif. 27One of these files might have bad or malformed specification of a
28fontset that Emacs should use. To fix the problem, you need to find
29the problematic line(s) and correct them.
127 30
128When Emacs 21 is built with Open Motif 2.1, it can happen that the 31** Emacs aborts while starting up, only when run without X.
129graphical file dialog boxes do not work properly. The "OK", "Filter"
130and "Cancel" buttons do not respond to mouse clicks. Dragging the
131file dialog window usually causes the buttons to work again.
132 32
133The solution is to use LessTif instead. LessTif is a free replacement 33This problem often results from compiling Emacs with GCC when GCC was
134for Motif. See the file INSTALL for information on how to do this. 34installed incorrectly. The usual error in installing GCC is to
35specify --includedir=/usr/include. Installation of GCC makes
36corrected copies of the system header files. GCC is supposed to use
37the corrected copies in preference to the original system headers.
38Specifying --includedir=/usr/include causes the original system header
39files to be used. On some systems, the definition of ioctl in the
40original system header files is invalid for ANSI C and causes Emacs
41not to work.
135 42
136Another workaround is not to use the mouse to trigger file prompts, 43The fix is to reinstall GCC, and this time do not specify --includedir
137but to use the keyboard. This way, you will be prompted for a file in 44when you configure it. Then recompile Emacs. Specifying --includedir
138the minibuffer instead of a graphical file dialog. 45is appropriate only in very special cases and it should *never* be the
46same directory where system header files are kept.
139 47
140* Emacs reports a BadAtom error (from X) running on Solaris 7 or 8. 48** Emacs does not start, complaining that it cannot open termcap database file.
141 49
142This happens when Emacs was built on some other version of Solaris. 50If your system uses Terminfo rather than termcap (most modern
143Rebuild it on Solaris 8. 51systems do), this could happen if the proper version of
52ncurses is not visible to the Emacs configure script (i.e. it
53cannot be found along the usual path the linker looks for
54libraries). It can happen because your version of ncurses is
55obsolete, or is available only in form of binaries.
144 56
145* Mule-UCS loads very slowly. 57The solution is to install an up-to-date version of ncurses in
58the developer's form (header files, static libraries and
59symbolic links); in some GNU/Linux distributions (e.g. Debian)
60it constitutes a separate package.
146 61
147Changes to Emacs internals interact badly with Mule-UCS's `un-define' 62** Emacs 20 and later fails to load Lisp files at startup.
148library, which is the usual interface to Mule-UCS. Apply the
149following patch to Mule-UCS 0.84 and rebuild it. That will help,
150though loading will still be slower than in Emacs 20. (Some
151distributions, such as Debian, may already have applied such a patch.)
152 63
153--- lisp/un-define.el 6 Mar 2001 22:41:38 -0000 1.30 64The typical error message might be like this:
154+++ lisp/un-define.el 19 Apr 2002 18:34:26 -0000
155@@ -610,13 +624,21 @@ by calling post-read-conversion and pre-
156 65
157 (mapcar 66 "Cannot open load file: fontset"
158 (lambda (x)
159- (mapcar
160- (lambda (y)
161- (mucs-define-coding-system
162- (nth 0 y) (nth 1 y) (nth 2 y)
163- (nth 3 y) (nth 4 y) (nth 5 y) (nth 6 y))
164- (coding-system-put (car y) 'alias-coding-systems (list (car x))))
165- (cdr x)))
166+ (if (fboundp 'register-char-codings)
167+ ;; Mule 5, where we don't need the eol-type specified and
168+ ;; register-char-codings may be very slow for these coding
169+ ;; system definitions.
170+ (let ((y (cadr x)))
171+ (mucs-define-coding-system
172+ (car x) (nth 1 y) (nth 2 y)
173+ (nth 3 y) (nth 4 y) (nth 5 y)))
174+ (mapcar
175+ (lambda (y)
176+ (mucs-define-coding-system
177+ (nth 0 y) (nth 1 y) (nth 2 y)
178+ (nth 3 y) (nth 4 y) (nth 5 y) (nth 6 y))
179+ (coding-system-put (car y) 'alias-coding-systems (list (car x)))))
180+ (cdr x)))
181 `((utf-8
182 (utf-8-unix
183 ?u "UTF-8 coding system"
184 67
185Note that Emacs has native support for Unicode, roughly equivalent to 68This could happen if you compress the file lisp/subdirs.el. That file
186Mule-UCS's, so you may not need it. 69tells Emacs what are the directories where it should look for Lisp
70files. Emacs cannot work with subdirs.el compressed, since the
71Auto-compress mode it needs for this will not be loaded until later,
72when your .emacs file is processed. (The package `fontset.el' is
73required to set up fonts used to display text on window systems, and
74it's loaded very early in the startup procedure.)
187 75
188* Building Emacs with GCC 2.9x fails in the `src' directory. 76Similarly, any other .el file for which there's no corresponding .elc
77file could fail to load if it is compressed.
189 78
190This may happen if you use a development version of GNU `cpp' from one 79The solution is to uncompress all .el files which don't have a .elc
191of the GCC snapshots between Oct 2000 and Feb 2001, or from a released 80file.
192version of GCC newer than 2.95.2 which was prepared around those
193dates; similar problems were reported with some snapshots of GCC 3.1
194around Sep 30 2001. The preprocessor in those versions is
195incompatible with a traditional Unix cpp (e.g., it expands ".." into
196". .", which breaks relative file names that reference the parent
197directory; or inserts TAB characters before lines that set Make
198variables).
199 81
200The solution is to make sure the preprocessor is run with the 82Another possible reason for such failures is stale *.elc files
201`-traditional' option. The `configure' script does that automatically 83lurking somewhere on your load-path. The following command will
202when it detects the known problems in your cpp, but you might hit some 84print any duplicate Lisp files that are present in load-path:
203unknown ones. To force the `configure' script to use `-traditional',
204run the script like this:
205 85
206 CPP='gcc -E -traditional' ./configure ... 86 emacs -q -batch -f list-load-path-shadows
207 87
208(replace the ellipsis "..." with any additional arguments you pass to 88If this command prints any file names, some of these files are stale,
209the script). 89and should be deleted or their directories removed from your
90load-path.
210 91
211Note that this problem does not pertain to the MS-Windows port of 92** Emacs prints an error at startup after upgrading from an earlier version.
212Emacs, since it doesn't use the preprocessor to generate Makefiles.
213 93
214* Building Emacs with a system compiler fails to link because of an 94An example of such an error is:
215undefined symbol such as __eprintf which does not appear in Emacs.
216 95
217This can happen if some of the libraries linked into Emacs were built 96 x-complement-fontset-spec: "Wrong type argument: stringp, nil"
218with GCC, but Emacs itself is being linked with a compiler other than
219GCC. Object files compiled with GCC might need some helper functions
220from libgcc.a, the library which comes with GCC, but the system
221compiler does not instruct the linker to search libgcc.a during the
222link stage.
223 97
224A solution is to link with GCC, like this: 98This can be another symptom of stale *.elc files in your load-path.
99The following command will print any duplicate Lisp files that are
100present in load-path:
225 101
226 make CC=gcc 102 emacs -q -batch -f list-load-path-shadows
227 103
228Since the .o object files already exist, this will not recompile Emacs 104If this command prints any file names, some of these files are stale,
229with GCC, but just restart by trying again to link temacs. 105and should be deleted or their directories removed from your
106load-path.
230 107
231* Building the MS-Windows port with Cygwin GCC can fail. 108** With X11R6.4, public-patch-3, Emacs crashes at startup.
232 109
233Emacs may not build using recent Cygwin builds of GCC, such as Cygwin 110Reportedly this patch in X fixes the problem.
234version 1.1.8, using the default configure settings. It appears to be
235necessary to specify the -mwin32 flag when compiling, and define
236__MSVCRT__, like so:
237 111
238 configure --with-gcc --cflags -mwin32 --cflags -D__MSVCRT__ 112 --- xc/lib/X11/imInt.c~ Wed Jun 30 13:31:56 1999
113 +++ xc/lib/X11/imInt.c Thu Jul 1 15:10:27 1999
114 @@ -1,4 +1,4 @@
115 -/* $TOG: imInt.c /main/5 1998/05/30 21:11:16 kaleb $ */
116 +/* $TOG: imInt.c /main/5 1998/05/30 21:11:16 kaleb $ */
117 /******************************************************************
239 118
240* Building the MS-Windows port fails with a CreateProcess failure. 119 Copyright 1992, 1993, 1994 by FUJITSU LIMITED
120 @@ -166,8 +166,8 @@
121 _XimMakeImName(lcd)
122 XLCd lcd;
123 {
124 - char* begin;
125 - char* end;
126 + char* begin = NULL;
127 + char* end = NULL;
128 char* ret;
129 int i = 0;
130 char* ximmodifier = XIMMODIFIER;
131 @@ -182,7 +182,11 @@
132 }
133 ret = Xmalloc(end - begin + 2);
134 if (ret != NULL) {
135 - (void)strncpy(ret, begin, end - begin + 1);
136 + if (begin != NULL) {
137 + (void)strncpy(ret, begin, end - begin + 1);
138 + } else {
139 + ret[0] = '\0';
140 + }
141 ret[end - begin + 1] = '\0';
142 }
143 return ret;
241 144
242Some versions of mingw32 make on some versions of Windows do not seem 145* Crash bugs
243to detect the shell correctly. Try "make SHELL=cmd.exe", or if that
244fails, try running make from Cygwin bash instead.
245 146
246* Building the MS-Windows port with Leim fails in the `leim' directory. 147** Emacs crashes in x-popup-dialog.
247 148
248The error message might be something like this: 149This can happen if the dialog widget cannot find the font it wants to
150use. You can work around the problem by specifying another font with
151an X resource--for example, `Emacs.dialog*.font: 9x15' (or any font that
152happens to exist on your X server).
249 153
250 Converting d:/emacs-21.3/leim/CXTERM-DIC/4Corner.tit to quail-package... 154** Emacs crashes when you use Bibtex mode.
251 Invalid ENCODE: value in TIT dictionary
252 NMAKE : fatal error U1077: '"../src/obj-spd/i386/emacs.exe"' : return code
253 '0xffffffff'
254 Stop.
255 155
256This can happen if the Leim distribution is unpacked with a program 156This happens if your system puts a small limit on stack size. You can
257which converts the `*.tit' files to DOS-style CR-LF text format. The 157prevent the problem by using a suitable shell command (often `ulimit')
258`*.tit' files in the leim/CXTERM-DIC directory require Unix-style line 158to raise the stack size limit before you run Emacs.
259endings to compile properly, because Emacs reads them without any code
260or EOL conversions.
261 159
262The solution is to make sure the program used to unpack Leim does not 160Patches to raise the stack size limit automatically in `main'
263change the files' line endings behind your back. The GNU FTP site has 161(src/emacs.c) on various systems would be greatly appreciated.
264in the `/gnu/emacs/windows' directory a program called `djtarnt.exe'
265which can be used to unpack `.tar.gz' and `.zip' archives without
266mangling them.
267 162
268* Emacs crashes when dumping itself on Mac PPC running Yellow Dog GNU/Linux. 163** Emacs crashes with SIGBUS or SIGSEGV on HPUX 9 after you delete a frame.
269 164
270The crashes happen inside the function Fmake_symbol; here's a typical 165We think this is due to a bug in the X libraries provided by HP. With
271C backtrace printed by GDB: 166the alternative X libraries in /usr/contrib/mitX11R5/lib, the problem
167does not happen.
272 168
273 0x190c0c0 in Fmake_symbol () 169** Emacs crashes with SIGBUS or SIGSEGV on Solaris after you delete a frame.
274 (gdb) where
275 #0 0x190c0c0 in Fmake_symbol ()
276 #1 0x1942ca4 in init_obarray ()
277 #2 0x18b3500 in main ()
278 #3 0x114371c in __libc_start_main (argc=5, argv=0x7ffff5b4, envp=0x7ffff5cc,
279 170
280This could happen because GCC version 2.95 and later changed the base 171We suspect that this is a similar bug in the X libraries provided by
281of the load address to 0x10000000. Emacs needs to be told about this, 172Sun. There is a report that one of these patches fixes the bug and
282but we currently cannot do that automatically, because that breaks 173makes the problem stop:
283other versions of GNU/Linux on the MacPPC. Until we find a way to
284distinguish between the Yellow Dog and the other varieties of
285GNU/Linux systems on the PPC, you will have to manually uncomment the
286following section near the end of the file src/m/macppc.h in the Emacs
287distribution:
288 174
289 #if 0 /* This breaks things on PPC GNU/Linux except for Yellowdog, 175105216-01 105393-01 105518-01 105621-01 105665-01 105615-02 105216-02
290 even with identical GCC, as, ld. Let's take it out until we 176105667-01 105401-08 105615-03 105621-02 105686-02 105736-01 105755-03
291 know what's really going on here. */ 177106033-01 105379-01 105786-01 105181-04 105379-03 105786-04 105845-01
292 /* GCC 2.95 and newer on GNU/Linux PPC changed the load address to 178105284-05 105669-02 105837-01 105837-02 105558-01 106125-02 105407-01
293 0x10000000. */
294 #if defined __linux__
295 #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
296 #define DATA_SEG_BITS 0x10000000
297 #endif
298 #endif
299 #endif /* 0 */
300 179
301Remove the "#if 0" and "#endif" directives which surround this, save 180Another person using a newer system (kernel patch level Generic_105181-06)
302the file, and then reconfigure and rebuild Emacs. The dumping process 181suspects that the bug was fixed by one of these more recent patches:
303should now succeed.
304 182
305* JPEG images aren't displayed. 183106040-07 SunOS 5.6: X Input & Output Method patch
184106222-01 OpenWindows 3.6: filemgr (ff.core) fixes
185105284-12 Motif 1.2.7: sparc Runtime library patch
306 186
307This has been reported when Emacs is built with jpeg-6a library. 187** Error message `Symbol's value as variable is void: x', followed by
308Upgrading to jpeg-6b solves the problem. Configure checks for the 188a segmentation fault and core dump.
309correct version, but this problem could occur if a binary built
310against a shared libjpeg is run on a system with an older version.
311 189
312* Building `ctags' for MS-Windows with the MinGW port of GCC fails. 190This has been tracked to a bug in tar! People report that tar erroneously
191added a line like this at the beginning of files of Lisp code:
313 192
314This might happen due to a bug in the MinGW header assert.h, which 193 x FILENAME, N bytes, B tape blocks
315defines the `assert' macro with a trailing semi-colon. The following
316patch to assert.h should solve this:
317 194
318*** include/assert.h.orig Sun Nov 7 02:41:36 1999 195If your tar has this problem, install GNU tar--if you can manage to
319--- include/assert.h Mon Jan 29 11:49:10 2001 196untar it :-).
320***************
321*** 41,47 ****
322 /*
323 * If not debugging, assert does nothing.
324 */
325! #define assert(x) ((void)0);
326 197
327 #else /* debugging enabled */ 198** Crashes when displaying GIF images in Emacs built with version
199libungif-4.1.0 are resolved by using version libungif-4.1.0b1.
200Configure checks for the correct version, but this problem could occur
201if a binary built against a shared libungif is run on a system with an
202older version.
328 203
329--- 41,47 ---- 204** Emacs aborts inside the function `tparam1'.
330 /*
331 * If not debugging, assert does nothing.
332 */
333! #define assert(x) ((void)0)
334 205
335 #else /* debugging enabled */ 206This can happen if Emacs was built without terminfo support, but the
207terminal's capabilities use format that is only supported by terminfo.
208If your system has ncurses installed, this might happen if your
209version of ncurses is broken; upgrading to a newer version of ncurses
210and reconfiguring and rebuilding Emacs should solve this.
336 211
212All modern systems support terminfo, so even if ncurses is not the
213problem, you should look for a way to configure Emacs so that it uses
214terminfo when built.
337 215
216** Emacs crashes when using the Exceed 6.0 X server.
338 217
339* Improving performance with slow X connections 218If you are using Exceed 6.1, upgrade to a later version. This was
219reported to prevent the crashes.
340 220
341There are several ways to improve this performance, any subset of which can 221** Emacs crashes with SIGSEGV in XtInitializeWidgetClass.
342be carried out at the same time:
343 222
3441) If you don't need X Input Methods (XIM) for entering text in some 223It crashes on X, but runs fine when called with option "-nw".
345 language you use, you can improve performance on WAN links by using
346 the X resource useXIM to turn off use of XIM. This does not affect
347 the use of Emacs' own input methods, which are part of the Leim
348 package.
349 224
3502) If the connection is very slow, you might also want to consider 225This has been observed when Emacs is linked with GNU ld but without passing
351 switching off scroll bars, menu bar, and tool bar. 226the -z nocombreloc flag. Emacs normally knows to pass the -z nocombreloc
227flag when needed, so if you come across a situation where the flag is
228necessary but missing, please report it via M-x report-emacs-bug.
352 229
3533) Use ssh to forward the X connection, and enable compression on this 230On platforms such as Solaris, you can also work around this problem by
354 forwarded X connection (ssh -XC remotehostname emacs ...). 231configuring your compiler to use the native linker instead of GNU ld.
355 232
3564) Use lbxproxy on the remote end of the connection. This is an interface 233* General runtime problems
357 to the low bandwidth X extension in most modern X servers, which
358 improves performance dramatically, at the slight expense of correctness
359 of the X protocol. lbxproxy acheives the performance gain by grouping
360 several X requests in one TCP packet and sending them off together,
361 instead of requiring a round-trip for each X request in a seperate
362 packet. The switches that seem to work best for emacs are:
363 -noatomsfile -nowinattr -cheaterrors -cheatevents
364 Note that the -nograbcmap option is known to cause problems.
365 For more about lbxproxy, see:
366 http://www.xfree86.org/4.3.0/lbxproxy.1.html
367 234
368* Getting a Meta key on the FreeBSD console 235** Lisp problems
369 236
370By default, neither Alt nor any other key acts as a Meta key on 237*** Changes made to .el files do not take effect.
371FreeBSD, but this can be changed using kbdcontrol(1). Dump the
372current keymap to a file with the command
373 238
374 $ kbdcontrol -d >emacs.kbd 239You may have forgotten to recompile them into .elc files.
240Then the old .elc files will be loaded, and your changes
241will not be seen. To fix this, do M-x byte-recompile-directory
242and specify the directory that contains the Lisp files.
375 243
376Edit emacs.kbd, and give the key you want to be the Meta key the 244Emacs should print a warning when loading a .elc file which is older
377definition `meta'. For instance, if your keyboard has a ``Windows'' 245than the corresponding .el file.
378key with scan code 105, change the line for scan code 105 in emacs.kbd
379to look like this
380 246
381 105 meta meta meta meta meta meta meta meta O 247*** Watch out for .emacs files and EMACSLOADPATH environment vars.
382 248
383to make the Windows key the Meta key. Load the new keymap with 249These control the actions of Emacs.
250~/.emacs is your Emacs init file.
251EMACSLOADPATH overrides which directories the function
252"load" will search.
384 253
385 $ kbdcontrol -l emacs.kbd 254If you observe strange problems, check for these and get rid
255of them, then try again.
386 256
387* Emacs' xterm-mouse-mode doesn't work on the Gnome terminal. 257*** Using epop3.el package causes Emacs to signal an error.
388 258
389A symptom of this bug is that double-clicks insert a control sequence 259The error message might be something like this:
390into the buffer. The reason this happens is an apparent
391incompatibility of the Gnome terminal with Xterm, which also affects
392other programs using the Xterm mouse interface. A problem report has
393been filed.
394 260
395* Emacs pauses for several seconds when changing the default font 261 "Lisp nesting exceeds max-lisp-eval-depth"
396 262
397This has been reported for fvwm 2.2.5 and the window manager of KDE 263This happens because epop3 redefines the function gethash, which is a
3982.1. The reason for the pause is Xt waiting for a ConfigureNotify 264built-in primitive beginning with Emacs 21.1. We don't have a patch
399event from the window manager, which the window manager doesn't send. 265for epop3 that fixes this, but perhaps a newer version of epop3
400Xt stops waiting after a default timeout of usually 5 seconds. 266corrects that.
401 267
402A workaround for this is to add something like 268*** Buffers from `with-output-to-temp-buffer' get set up in Help mode.
403 269
404emacs.waitForWM: false 270Changes in Emacs 20.4 to the hooks used by that function cause
271problems for some packages, specifically BBDB. See the function's
272documentation for the hooks involved. BBDB 2.00.06 fixes the problem.
405 273
406to your X resources. Alternatively, add `(wait-for-wm . nil)' to a 274*** The Hyperbole package causes *Help* buffers not to be displayed in
407frame's parameter list, like this: 275Help mode due to setting `temp-buffer-show-hook' rather than using
276`add-hook'. Using `(add-hook 'temp-buffer-show-hook
277'help-mode-maybe)' after loading Hyperbole should fix this.
408 278
409 (modify-frame-parameters nil '((wait-for-wm . nil))) 279** Keyboard problems
410 280
411(this should go into your `.emacs' file). 281*** "Compose Character" key does strange things when used as a Meta key.
412 282
413* Underlines appear at the wrong position. 283If you define one key to serve as both Meta and Compose Character, you
284will get strange results. In previous Emacs versions, this "worked"
285in that the key acted as Meta--that's because the older Emacs versions
286did not try to support Compose Character. Now Emacs tries to do
287character composition in the standard X way. This means that you
288must pick one meaning or the other for any given key.
414 289
415This is caused by fonts having a wrong UNDERLINE_POSITION property. 290You can use both functions (Meta, and Compose Character) if you assign
416Examples are the font 7x13 on XFree prior to version 4.1, or the jmk 291them to two different keys.
417neep font from the Debian xfonts-jmk package. To circumvent this
418problem, set x-use-underline-position-properties to nil in your
419`.emacs'.
420 292
421To see what is the value of UNDERLINE_POSITION defined by the font, 293*** C-z just refreshes the screen instead of suspending Emacs.
422type `xlsfonts -lll FONT' and look at the font's UNDERLINE_POSITION
423property.
424 294
425* When using Xaw3d scroll bars without arrows, the very first mouse 295You are probably using a shell that doesn't support job control, even
426click in a scroll bar might be ignored by the scroll bar widget. This 296though the system itself is capable of it. Either use a different shell,
427is probably a bug in Xaw3d; when Xaw3d is compiled with arrows, the 297or set the variable `cannot-suspend' to a non-nil value.
428problem disappears.
429 298
430* There are known binary incompatibilities between Xaw, Xaw3d, neXtaw, 299*** With M-x enable-flow-control, you need to type C-\ twice
431XawM and the few other derivatives of Xaw. So when you compile with 300to do incremental search--a single C-\ gets no response.
432one of these, it may not work to dynamically link with another one.
433For example, strange problems, such as Emacs exiting when you type
434"C-x 1", were reported when Emacs compiled with Xaw3d and libXaw was
435used with neXtaw at run time.
436 301
437The solution is to rebuild Emacs with the toolkit version you actually 302This has been traced to communicating with your machine via kermit,
438want to use, or set LD_PRELOAD to preload the same toolkit version you 303with C-\ as the kermit escape character. One solution is to use
439built Emacs with. 304another escape character in kermit. One user did
440 305
441* Clicking C-mouse-2 in the scroll bar doesn't split the window. 306 set escape-character 17
442 307
443This currently doesn't work with scroll-bar widgets (and we don't know 308in his .kermrc file, to make C-q the kermit escape character.
444a good way of implementing it with widgets). If Emacs is configured
445--without-toolkit-scroll-bars, C-mouse-2 on the scroll bar does work.
446 309
447* Emacs aborts inside the function `tparam1'. 310** Mailers and other helper programs
448 311
449This can happen if Emacs was built without terminfo support, but the 312*** movemail compiled with POP support can't connect to the POP server.
450terminal's capabilities use format that is only supported by terminfo.
451If your system has ncurses installed, this might happen if your
452version of ncurses is broken; upgrading to a newer version of ncurses
453and reconfiguring and rebuilding Emacs should solve this.
454 313
455All modern systems support terminfo, so even if ncurses is not the 314Make sure that the `pop' entry in /etc/services, or in the services
456problem, you should look for a way to configure Emacs so that it uses 315NIS map if your machine uses NIS, has the same port number as the
457terminfo when built. 316entry on the POP server. A common error is for the POP server to be
317listening on port 110, the assigned port for the POP3 protocol, while
318the client is trying to connect on port 109, the assigned port for the
319old POP protocol.
458 320
459* Error messages about undefined colors on X. 321*** RMAIL gets error getting new mail.
460 322
461The messages might say something like this: 323RMAIL gets new mail from /usr/spool/mail/$USER using a program
324called `movemail'. This program interlocks with /bin/mail using
325the protocol defined by /bin/mail.
462 326
463 Unable to load color "grey95" 327There are two different protocols in general use. One of them uses
328the `flock' system call. The other involves creating a lock file;
329`movemail' must be able to write in /usr/spool/mail in order to do
330this. You control which one is used by defining, or not defining,
331the macro MAIL_USE_FLOCK in config.h or the m- or s- file it includes.
332IF YOU DON'T USE THE FORM OF INTERLOCKING THAT IS NORMAL ON YOUR
333SYSTEM, YOU CAN LOSE MAIL!
464 334
465(typically, in the `*Messages*' buffer), or something like this: 335If your system uses the lock file protocol, and fascist restrictions
336prevent ordinary users from writing the lock files in /usr/spool/mail,
337you may need to make `movemail' setgid to a suitable group such as
338`mail'. You can use these commands (as root):
466 339
467 Error while displaying tooltip: (error Undefined color lightyellow) 340 chgrp mail movemail
341 chmod 2755 movemail
468 342
469These problems could happen if some other X program has used up too 343If your system uses the lock file protocol, and fascist restrictions
470many colors of the X palette, leaving Emacs with insufficient system 344prevent ordinary users from writing the lock files in /usr/spool/mail,
471resources to load all the colors it needs. 345you may need to make `movemail' setgid to a suitable group such as
346`mail'. To do this, use the following commands (as root) after doing the
347make install.
472 348
473A solution is to exit the offending X programs before starting Emacs. 349 chgrp mail movemail
350 chmod 2755 movemail
474 351
475* Colors are not available on a tty or in xterm. 352Installation normally copies movemail from the build directory to an
353installation directory which is usually under /usr/local/lib. The
354installed copy of movemail is usually in the directory
355/usr/local/lib/emacs/VERSION/TARGET. You must change the group and
356mode of the installed copy; changing the group and mode of the build
357directory copy is ineffective.
476 358
477Emacs 21 supports colors on character terminals and terminal 359*** rcs2log gives you the awk error message "too many fields".
478emulators, but this support relies on the terminfo or termcap database
479entry to specify that the display supports color. Emacs looks at the
480"Co" capability for the terminal to find out how many colors are
481supported; it should be non-zero to activate the color support within
482Emacs. (Most color terminals support 8 or 16 colors.) If your system
483uses terminfo, the name of the capability equivalent to "Co" is
484"colors".
485 360
486In addition to the "Co" capability, Emacs needs the "op" (for 361This is due to an arbitrary limit in certain versions of awk.
487``original pair'') capability, which tells how to switch the terminal 362The solution is to use gawk (GNU awk).
488back to the default foreground and background colors. Emacs will not
489use colors if this capability is not defined. If your terminal entry
490doesn't provide such a capability, try using the ANSI standard escape
491sequence \E[00m (that is, define a new termcap/terminfo entry and make
492it use your current terminal's entry plus \E[00m for the "op"
493capability).
494 363
495Finally, the "NC" capability (terminfo name: "ncv") tells Emacs which 364** Problems with hostname resolution
496attributes cannot be used with colors. Setting this capability
497incorrectly might have the effect of disabling colors; try setting
498this capability to `0' (zero) and see if that helps.
499 365
500Emacs uses the database entry for the terminal whose name is the value 366*** Emacs fails to understand most Internet host names, even though
501of the environment variable TERM. With `xterm', a common terminal 367the names work properly with other programs on the same system.
502entry that supports color is `xterm-color', so setting TERM's value to 368*** Emacs won't work with X-windows if the value of DISPLAY is HOSTNAME:0.
503`xterm-color' might activate the color support on an xterm-compatible 369*** GNUs can't make contact with the specified host for nntp.
504emulator.
505 370
506Beginning with version 21.4, Emacs supports the --color command-line 371This typically happens on Suns and other systems that use shared
507option which may be used to force Emacs to use one of a few popular 372libraries. The cause is that the site has installed a version of the
508modes for getting colors on a tty. For example, --color=ansi8 sets up 373shared library which uses a name server--but has not installed a
509for using the ANSI-standard escape sequences that support 8 colors. 374similar version of the unshared library which Emacs uses.
510 375
511Some modes do not use colors unless you turn on the Font-lock mode. 376The result is that most programs, using the shared library, work with
512Some people have long ago set their `~/.emacs' files to turn on 377the nameserver, but Emacs does not.
513Font-lock on X only, so they won't see colors on a tty. The
514recommended way of turning on Font-lock is by typing "M-x
515global-font-lock-mode RET" or by customizing the variable
516`global-font-lock-mode'.
517 378
518* Emacs on a tty switches the cursor to large blinking block. 379The fix is to install an unshared library that corresponds to what you
380installed in the shared library, and then relink Emacs.
519 381
520This was reported to happen on some GNU/Linux systems which use 382On SunOS 4.1, simply define HAVE_RES_INIT.
521ncurses version 5.0, but could be relevant for other versions as well.
522These versions of ncurses come with a `linux' terminfo entry, where
523the "cvvis" capability (termcap "vs") is defined as "\E[?25h\E[?8c"
524(show cursor, change size). This escape sequence switches on a
525blinking hardware text-mode cursor whose size is a full character
526cell. This blinking cannot be stopped, since a hardware cursor
527always blinks.
528 383
529A work-around is to redefine the "cvvis" capability so that it 384If you have already installed the name resolver in the file libresolv.a,
530enables a *software* cursor. The software cursor works by inverting 385then you need to compile Emacs to use that library. The easiest way to
531the colors of the character at point, so what you see is a block 386do this is to add to config.h a definition of LIBS_SYSTEM, LIBS_MACHINE
532cursor that doesn't blink. For this to work, you need to redefine 387or LIB_STANDARD which uses -lresolv. Watch out! If you redefine a macro
533the "cnorm" capability as well, so that it operates on the software 388that is already in use in your configuration to supply some other libraries,
534cursor instead of the hardware cursor. 389be careful not to lose the others.
535 390
536To this end, run "infocmp linux > linux-term", edit the file 391Thus, you could start by adding this to config.h:
537`linux-term' to make both the "cnorm" and "cvvis" capabilities send
538the sequence "\E[?25h\E[?17;0;64c", and then run "tic linux-term" to
539produce a modified terminfo entry.
540 392
541Alternatively, if you want a blinking underscore as your Emacs cursor, 393#define LIBS_SYSTEM -lresolv
542change the "cvvis" capability to send the "\E[?25h\E[?0c" command.
543 394
544* Problems in Emacs built with LessTif. 395Then if this gives you an error for redefining a macro, and you see that
396the s- file defines LIBS_SYSTEM as -lfoo -lbar, you could change config.h
397again to say this:
545 398
546The problems seem to depend on the version of LessTif and the Motif 399#define LIBS_SYSTEM -lresolv -lfoo -lbar
547emulation for which it is set up.
548 400
549Only the Motif 1.2 emulation seems to be stable enough in LessTif. 401*** Emacs does not know your host's fully-qualified domain name.
550Lesstif 0.92-17's Motif 1.2 emulation seems to work okay on FreeBSD.
551On GNU/Linux systems, lesstif-0.92.6 configured with "./configure
552--enable-build-12 --enable-default-12" is reported to be the most
553successful. The binary GNU/Linux package
554lesstif-devel-0.92.0-1.i386.rpm was reported to have problems with
555menu placement.
556 402
557On some systems, even with Motif 1.2 emulation, Emacs occasionally 403You need to configure your machine with a fully qualified domain name,
558locks up, grabbing all mouse and keyboard events. We still don't know 404either in /etc/hosts, /etc/hostname, the NIS, or wherever your system
559what causes these problems; they are not reproducible by Emacs 405calls for specifying this.
560developers.
561 406
562* Known problems with the MS-Windows port of Emacs 21.2. 407If you cannot fix the configuration, you can set the Lisp variable
408mail-host-address to the value you want.
563 409
564Frames are not refreshed while the File or Font dialog or a pop-up menu 410** NFS and RFS
565is displayed. This also means help text for pop-up menus is not
566displayed at all. This is because message handling under Windows is
567synchronous, so we cannot handle repaint (or any other) messages while
568waiting for a system function to return the result of the dialog or
569pop-up menu interaction.
570 411
571Windows 95 and Windows NT up to version 4.0 do not support help text 412*** Emacs says it has saved a file, but the file does not actually
572for menus. Help text is only available in later versions of Windows. 413appear on disk.
573 414
574There are problems with display if mouse-tracking is enabled and the 415This can happen on certain systems when you are using NFS, if the
575mouse is moved off a frame, over another frame then back over the first 416remote disk is full. It is due to a bug in NFS (or certain NFS
576frame. A workaround is to click the left mouse button inside the frame 417implementations), and there is apparently nothing Emacs can do to
577after moving back into it. 418detect the problem. Emacs checks the failure codes of all the system
419calls involved in writing a file, including `close'; but in the case
420where the problem occurs, none of those system calls fails.
578 421
579Some minor flickering still persists during mouse-tracking, although 422*** Editing files through RFS gives spurious "file has changed" warnings.
580not as severely as in 21.1. 423It is possible that a change in Emacs 18.37 gets around this problem,
424but in case not, here is a description of how to fix the RFS bug that
425causes it.
581 426
582Emacs can sometimes abort when non-ASCII text, possibly with null 427 There was a serious pair of bugs in the handling of the fsync() system
583characters, is copied and pasted into a buffer. 428 call in the RFS server.
584 429
585An inactive cursor remains in an active window after the Windows 430 The first is that the fsync() call is handled as another name for the
586Manager driven switch of the focus, until a key is pressed. 431 close() system call (!!). It appears that fsync() is not used by very
432 many programs; Emacs version 18 does an fsync() before closing files
433 to make sure that the bits are on the disk.
587 434
588Windows input methods are not recognized by Emacs (as of v21.2). Some 435 This is fixed by the enclosed patch to the RFS server.
589of these input methods cause the keyboard to send characters encoded
590in the appropriate coding system (e.g., ISO 8859-1 for Latin-1
591characters, ISO 8859-8 for Hebrew characters, etc.). To make this
592work, set the keyboard coding system to the appropriate value after
593you activate the Windows input method. For example, if you activate
594the Hebrew input method, type "C-x RET k iso-8859-8 RET". (Emacs
595ought to recognize the Windows language-change event and set up the
596appropriate keyboard encoding automatically, but it doesn't do that
597yet.)
598 436
599The %b specifier for format-time-string does not produce abbreviated 437 The second, more serious problem, is that fsync() is treated as a
600month names with consistent widths for some locales on some versions 438 non-blocking system call (i.e., it's implemented as a message that
601of Windows. This is caused by a deficiency in the underlying system 439 gets sent to the remote system without waiting for a reply). Fsync is
602library function. 440 a useful tool for building atomic file transactions. Implementing it
441 as a non-blocking RPC call (when the local call blocks until the sync
442 is done) is a bad idea; unfortunately, changing it will break the RFS
443 protocol. No fix was supplied for this problem.
603 444
604* The `configure' script doesn't find the jpeg library. 445 (as always, your line numbers may vary)
605 446
606There are reports that this happens on some systems because the linker 447 % rcsdiff -c -r1.2 serversyscall.c
607by default only looks for shared libraries, but jpeg distribution by 448 RCS file: RCS/serversyscall.c,v
608default only installs a nonshared version of the library, `libjpeg.a'. 449 retrieving revision 1.2
450 diff -c -r1.2 serversyscall.c
451 *** /tmp/,RCSt1003677 Wed Jan 28 15:15:02 1987
452 --- serversyscall.c Wed Jan 28 15:14:48 1987
453 ***************
454 *** 163,169 ****
455 /*
456 * No return sent for close or fsync!
457 */
458 ! if (syscall == RSYS_close || syscall == RSYS_fsync)
459 proc->p_returnval = deallocate_fd(proc, msg->m_args[0]);
460 else
461 {
462 --- 166,172 ----
463 /*
464 * No return sent for close or fsync!
465 */
466 ! if (syscall == RSYS_close)
467 proc->p_returnval = deallocate_fd(proc, msg->m_args[0]);
468 else
469 {
609 470
610If this is the problem, you can configure the jpeg library with the 471** PSGML
611`--enable-shared' option and then rebuild libjpeg. This produces a
612shared version of libjpeg, which you need to install. Finally, rerun
613the Emacs configure script, which should now find the jpeg library.
614Alternatively, modify the generated src/Makefile to link the .a file
615explicitly, and edit src/config.h to define HAVE_JPEG.
616 472
617* Building Emacs over NFS fails with ``Text file busy''. 473*** Old versions of the PSGML package use the obsolete variables
474`before-change-function' and `after-change-function', which are no
475longer used by Emacs. Please use PSGML 1.2.3 or later.
618 476
619This was reported to happen when building Emacs on a GNU/Linux system 477*** PSGML conflicts with sgml-mode.
620(RedHat Linux 6.2) using a build directory automounted from Solaris
621(SunOS 5.6) file server, but it might not be limited to that
622configuration alone. Presumably, the NFS server doesn't commit the
623files' data to disk quickly enough, and the Emacs executable file is
624left ``busy'' for several seconds after Emacs has finished dumping
625itself. This causes the subsequent commands which invoke the dumped
626Emacs executable to fail with the above message.
627 478
628In some of these cases, a time skew between the NFS server and the 479PSGML package uses the same names of some variables (like keymap)
629machine where Emacs is built is detected and reported by GNU Make 480as built-in sgml-mode.el because it was created as a replacement
630(it says that some of the files have modification time in the future). 481of that package. The conflict will be shown if you load
631This might be a symptom of NFS-related problems. 482sgml-mode.el before psgml.el. E.g. this could happen if you edit
483HTML page and then start to work with SGML or XML file. html-mode
484(from sgml-mode.el) is used for HTML file and loading of psgml.el
485(for sgml-mode or xml-mode) will cause an error.
632 486
633If the NFS server runs on Solaris, apply the Solaris patch 105379-05 487*** Versions of the PSGML package earlier than 1.0.3 (stable) or 1.1.2
634(Sunos 5.6: /kernel/misc/nfssrv patch). If that doesn't work, or if 488(alpha) fail to parse DTD files correctly in Emacs 20.3 and later.
635you have a different version of the OS or the NFS server, you can 489Here is a patch for psgml-parse.el from PSGML 1.0.1 and, probably,
636force the NFS server to use 1KB blocks, which was reported to fix the 490earlier versions.
637problem albeit at a price of slowing down file I/O. You can force 1KB
638blocks by specifying the "-o rsize=1024,wsize=1024" options to the
639`mount' command, or by adding ",rsize=1024,wsize=1024" to the mount
640options in the appropriate system configuration file, such as
641`/etc/auto.home'.
642 491
643Alternatively, when Make fails due to this problem, you could wait for 492--- psgml-parse.el 1998/08/21 19:18:18 1.1
644a few seconds and then invoke Make again. In one particular case, 493+++ psgml-parse.el 1998/08/21 19:20:00
645waiting for 10 or more seconds between the two Make invocations seemed 494@@ -2383,7 +2383,7 @@ (defun sgml-push-to-entity (entity &opti
646to work around the problem. 495 (setq sgml-buffer-parse-state nil))
496 (cond
497 ((stringp entity) ; a file name
498- (save-excursion (insert-file-contents entity))
499+ (insert-file-contents entity)
500 (setq default-directory (file-name-directory entity)))
501 ((consp (sgml-entity-text entity)) ; external id?
502 (let* ((extid (sgml-entity-text entity))
647 503
648Similar problems can happen if your machine NFS-mounts a directory 504** AUCTeX
649onto itself. Suppose the Emacs sources live in `/usr/local/src' and
650you are working on the host called `marvin'. Then an entry in the
651`/etc/fstab' file like the following is asking for trouble:
652 505
653 marvin:/usr/local/src /usr/local/src ...options.omitted... 506You should not be using a version older than 11.52 if you can avoid
507it.
654 508
655The solution is to remove this line from `etc/fstab'. 509*** Emacs 21 freezes when visiting a TeX file with AUCTeX installed.
656 510
657* Emacs binary is not in executable format, and cannot be run. 511Emacs 21 needs version 10 or later of AUCTeX; upgrading should solve
512these problems.
658 513
659This was reported to happen when Emacs is built in a directory mounted 514*** No colors in AUCTeX with Emacs 21.
660via NFS, for some combinations of NFS client and NFS server.
661Usually, the file `emacs' produced in these cases is full of
662binary null characters, and the `file' utility says:
663 515
664 emacs: ASCII text, with no line terminators 516Upgrade to AUC TeX version 10 or later, and make sure it is
517byte-compiled with Emacs 21.
665 518
666We don't know what exactly causes this failure. A work-around is to 519** Miscellaneous problems
667build Emacs in a directory on a local disk.
668 520
669* Accented ISO-8859-1 characters are displayed as | or _. 521*** Self-documentation messages are garbled.
670 522
671Try other font set sizes (S-mouse-1). If the problem persists with 523This means that the file `etc/DOC-...' doesn't properly correspond
672other sizes as well, your text is corrupted, probably through software 524with the Emacs executable. Redumping Emacs and then installing the
673that is not 8-bit clean. If the problem goes away with another font 525corresponding pair of files should fix the problem.
674size, it's probably because some fonts pretend to be ISO-8859-1 fonts
675when they are really ASCII fonts. In particular the schumacher-clean
676fonts have this bug in some versions of X.
677 526
678To see what glyphs are included in a font, use `xfd', like this: 527*** Programs running under terminal emulator do not recognize `emacs'
528terminal type.
679 529
680 xfd -fn -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-1 530The cause of this is a shell startup file that sets the TERMCAP
531environment variable. The terminal emulator uses that variable to
532provide the information on the special terminal type that Emacs
533emulates.
681 534
682If this shows only ASCII glyphs, the font is indeed the source of the 535Rewrite your shell startup file so that it does not change TERMCAP
683problem. 536in such a case. You could use the following conditional which sets
537it only if it is undefined.
684 538
685The solution is to remove the corresponding lines from the appropriate 539 if ( ! ${?TERMCAP} ) setenv TERMCAP ~/my-termcap-file
686`fonts.alias' file, then run `mkfontdir' in that directory, and then run
687`xset fp rehash'.
688 540
689* Large file support is disabled on HP-UX. See the comments in 541Or you could set TERMCAP only when you set TERM--which should not
690src/s/hpux10.h. 542happen in a non-login shell.
691 543
692* Crashes when displaying GIF images in Emacs built with version 544*** In Shell mode, you get a ^M at the end of every line.
693libungif-4.1.0 are resolved by using version libungif-4.1.0b1.
694Configure checks for the correct version, but this problem could occur
695if a binary built against a shared libungif is run on a system with an
696older version.
697 545
698* Font Lock displays portions of the buffer in incorrect faces. 546This happens to people who use tcsh, because it is trying to be too
547smart. It sees that the Shell uses terminal type `unknown' and turns
548on the flag to output ^M at the end of each line. You can fix the
549problem by adding this to your .cshrc file:
699 550
700By far the most frequent cause of this is a parenthesis `(' or a brace 551 if ($?EMACS) then
701`{' in column zero. Font Lock assumes that such a paren is outside of 552 if ($EMACS == "t") then
702any comment or string. This is of course not true in general, but the 553 unset edit
703vast majority of well-formatted program source files don't have such 554 stty -icrnl -onlcr -echo susp ^Z
704parens, and therefore this assumption is used to allow optimizations 555 endif
705in Font Lock's syntactical analysis. These optimizations avoid some 556 endif
706pathological cases where jit-lock, the Just-in-Time fontification
707introduced with Emacs 21.1, could significantly slow down scrolling
708through the buffer, especially scrolling backwards, and also jumping
709to the end of a very large buffer.
710 557
711Beginning with version 21.4, a parenthesis or a brace in column zero 558*** Emacs startup on GNU/Linux systems (and possibly other systems) is slow.
712is highlighted in bold-red face if it is inside a string or a comment,
713to indicate that it could interfere with Font Lock (and also with
714indentation) and should be moved or escaped with a backslash.
715 559
716If you don't use large buffers, or have a very fast machine which 560This can happen if the system is misconfigured and Emacs can't get the
717makes the delays insignificant, you can avoid the incorrect 561full qualified domain name, FQDN. You should have your FQDN in the
718fontification by setting the variable 562/etc/hosts file, something like this:
719`font-lock-beginning-of-syntax-function' to a nil value. (This must
720be done _after_ turning on Font Lock.)
721 563
722Another alternative is to avoid a paren in column zero. For example, 564127.0.0.1 localhost
723in a Lisp string you could precede the paren with a backslash. 565129.187.137.82 nuc04.t30.physik.tu-muenchen.de nuc04
724 566
725* When running on KDE, colors or fonts are not as specified for Emacs, 567The way to set this up may vary on non-GNU systems.
726or messed up.
727 568
728For example, you could see background you set for Emacs only in the 569*** Attempting to visit remote files via ange-ftp fails.
729empty portions of the Emacs display, while characters have some other
730background.
731 570
732This happens because KDE's defaults apply its color and font 571If the error message is "ange-ftp-file-modtime: Specified time is not
733definitions even to applications that weren't compiled for KDE. The 572representable", then this could happen when `lukemftp' is used as the
734solution is to uncheck the "Apply fonts and colors to non-KDE apps" 573ftp client. This was reported to happen on Debian GNU/Linux, kernel
735option in Preferences->Look&Feel->Style (KDE 2). In KDE 3, this option 574version 2.4.3, with `lukemftp' 1.5-5, but might happen on other
736is in the "Colors" section, rather than "Style". 575systems as well. To avoid this problem, switch to using the standard
576ftp client. On a Debian system, type
737 577
738Alternatively, if you do want the KDE defaults to apply to other 578 update-alternatives --config ftp
739applications, but not to Emacs, you could modify the file `Emacs.ad'
740(should be in the `/usr/share/apps/kdisplay/app-defaults/' directory)
741so that it doesn't set the default background and foreground only for
742Emacs. For example, make sure the following resources are either not
743present or commented out:
744 579
745 Emacs.default.attributeForeground 580and then choose /usr/bin/netkit-ftp.
746 Emacs.default.attributeBackground
747 Emacs*Foreground
748 Emacs*Background
749 581
750* Interrupting Cygwin port of Bash from Emacs doesn't work. 582*** JPEG images aren't displayed.
751 583
752Cygwin 1.x builds of the ported Bash cannot be interrupted from the 584This has been reported when Emacs is built with jpeg-6a library.
753MS-Windows version of Emacs. This is due to some change in the Bash 585Upgrading to jpeg-6b solves the problem. Configure checks for the
754port or in the Cygwin library which apparently make Bash ignore the 586correct version, but this problem could occur if a binary built
755keyboard interrupt event sent by Emacs to Bash. (Older Cygwin ports 587against a shared libjpeg is run on a system with an older version.
756of Bash, up to b20.1, did receive SIGINT from Emacs.)
757 588
758* Dired is very slow. 589*** Dired is very slow.
759 590
760This could happen if invocation of the `df' program takes a long 591This could happen if invocation of the `df' program takes a long
761time. Possible reasons for this include: 592time. Possible reasons for this include:
@@ -772,85 +603,17 @@ To work around the problem, you could either (a) set the variable
772invoking `df'; (b) use `df' from the GNU Fileutils package; or 603invoking `df'; (b) use `df' from the GNU Fileutils package; or
773(c) use CVS, which is Free Software, instead of ClearCase. 604(c) use CVS, which is Free Software, instead of ClearCase.
774 605
775* Accessing remote files with ange-ftp hangs the MS-Windows version of Emacs. 606*** Versions of the W3 package released before Emacs 21.1 don't run
776
777If the FTP client is the Cygwin port of GNU `ftp', this appears to be
778due to some bug in the Cygwin DLL or some incompatibility between it
779and the implementation of asynchronous subprocesses in the Windows
780port of Emacs. Specifically, some parts of the FTP server responses
781are not flushed out, apparently due to buffering issues, which
782confuses ange-ftp.
783
784The solution is to downgrade to an older version of the Cygwin DLL
785(version 1.3.2 was reported to solve the problem), or use the stock
786Windows FTP client, usually found in the `C:\WINDOWS' or 'C:\WINNT'
787directory. To force ange-ftp use the stock Windows client, set the
788variable `ange-ftp-ftp-program-name' to the absolute file name of the
789client's executable. For example:
790
791 (setq ange-ftp-ftp-program-name "c:/windows/ftp.exe")
792
793If you want to stick with the Cygwin FTP client, you can work around
794this problem by putting this in your `.emacs' file:
795
796 (setq ange-ftp-ftp-program-args '("-i" "-n" "-g" "-v" "--prompt" "")
797
798* Versions of the W3 package released before Emacs 21.1 don't run
799under Emacs 21. This fixed in W3 version 4.0pre.47. 607under Emacs 21. This fixed in W3 version 4.0pre.47.
800 608
801* On AIX, if linking fails because libXbsd isn't found, check if you 609*** The LDAP support rely on ldapsearch program from OpenLDAP version 2.
802are compiling with the system's `cc' and CFLAGS containing `-O5'. If
803so, you have hit a compiler bug. Please make sure to re-configure
804Emacs so that it isn't compiled with `-O5'.
805
806* Compiling on AIX 4.3.x or 4.4 fails.
807
808This could happen if you use /bin/c89 as your compiler, instead of
809the default `cc'. /bin/c89 treats certain warnings, such as benign
810redefinitions of macros, as errors, and fails the build. A solution
811is to use the default compiler `cc'.
812
813* Old versions of the PSGML package use the obsolete variables
814`before-change-function' and `after-change-function', which are no
815longer used by Emacs. Please use PSGML 1.2.3 or later.
816
817* PSGML conflicts with sgml-mode.
818
819PSGML package uses the same names of some variables (like keymap)
820as built-in sgml-mode.el because it was created as a replacement
821of that package. The conflict will be shown if you load
822sgml-mode.el before psgml.el. E.g. this could happen if you edit
823HTML page and then start to work with SGML or XML file. html-mode
824(from sgml-mode.el) is used for HTML file and loading of psgml.el
825(for sgml-mode or xml-mode) will cause an error.
826
827* The LDAP support rely on ldapsearch program from OpenLDAP version 2.
828 610
829It can fail to work with ldapsearch program from OpenLDAP version 1. 611It can fail to work with ldapsearch program from OpenLDAP version 1.
830Version 1 of OpenLDAP is now deprecated. If you are still using it, 612Version 1 of OpenLDAP is now deprecated. If you are still using it,
831please upgrade to version 2. As a temporary workaround, remove 613please upgrade to version 2. As a temporary workaround, remove
832argument "-x" from the variable `ldap-ldapsearch-args'. 614argument "-x" from the variable `ldap-ldapsearch-args'.
833 615
834* The `oc-unicode' package doesn't work with Emacs 21. 616*** ps-print commands fail to find prologue files ps-prin*.ps.
835
836This package tries to define more private charsets than there are free
837slots now. The current built-in Unicode support is actually more
838flexible. (Use option `utf-translate-cjk-mode' if you need CJK
839support.) Files encoded as emacs-mule using oc-unicode aren't
840generally read correctly by Emacs 21.
841
842* Using epop3.el package causes Emacs to signal an error.
843
844The error message might be something like this:
845
846 "Lisp nesting exceeds max-lisp-eval-depth"
847
848This happens because epop3 redefines the function gethash, which is a
849built-in primitive beginning with Emacs 21.1. We don't have a patch
850for epop3 that fixes this, but perhaps a newer version of epop3
851corrects that.
852
853* ps-print commands fail to find prologue files ps-prin*.ps.
854 617
855This can happen if you use an old version of X-Symbol package: it 618This can happen if you use an old version of X-Symbol package: it
856defines compatibility functions which trick ps-print into thinking it 619defines compatibility functions which trick ps-print into thinking it
@@ -858,23 +621,7 @@ runs in XEmacs, and look for the prologue files in a wrong directory.
858 621
859The solution is to upgrade X-Symbol to a later version. 622The solution is to upgrade X-Symbol to a later version.
860 623
861* lpr commands don't work on MS-Windows with some cheap printers. 624*** On systems with shared libraries you might encounter run-time errors
862
863This problem may also strike other platforms, but the solution is
864likely to be a global one, and not Emacs specific.
865
866Many cheap inkjet, and even some cheap laser printers, do not
867print plain text anymore, they will only print through graphical
868printer drivers. A workaround on MS-Windows is to use Windows' basic
869built in editor to print (this is possibly the only useful purpose it
870has):
871
872(setq printer-name "") ;; notepad takes the default
873(setq lpr-command "notepad") ;; notepad
874(setq lpr-switches nil) ;; not needed
875(setq lpr-printer-switch "/P") ;; run notepad as batch printer
876
877* On systems with shared libraries you might encounter run-time errors
878from the dynamic linker telling you that it is unable to find some 625from the dynamic linker telling you that it is unable to find some
879shared libraries, for instance those for Xaw3d or image support. 626shared libraries, for instance those for Xaw3d or image support.
880These errors mean Emacs has been linked with a library whose shared 627These errors mean Emacs has been linked with a library whose shared
@@ -913,320 +660,338 @@ to work around the problem.
913 660
914Please refer to the documentation of your dynamic linker for details. 661Please refer to the documentation of your dynamic linker for details.
915 662
916* On Solaris 2.7, building Emacs with WorkShop Compilers 5.0 98/12/15 663*** You request inverse video, and the first Emacs frame is in inverse
917C 5.0 failed, apparently with non-default CFLAGS, most probably due to 664video, but later frames are not in inverse video.
918compiler bugs. Using Sun Solaris 2.7 Sun WorkShop 6 update 1 C
919release was reported to work without problems. It worked OK on
920another system with Solaris 8 using apparently the same 5.0 compiler
921and the default CFLAGS.
922
923* Compiling syntax.c with the OPENSTEP 4.2 compiler gcc 2.7.2.1 fails.
924
925The compiler was reported to crash while compiling syntax.c with the
926following message:
927
928 cc: Internal compiler error: program cc1obj got fatal signal 11
929
930To work around this, replace the macros UPDATE_SYNTAX_TABLE_FORWARD,
931INC_BOTH, and INC_FROM with functions. To this end, first define 3
932functions, one each for every macro. Here's an example:
933
934 static int update_syntax_table_forward(int from)
935 {
936 return(UPDATE_SYNTAX_TABLE_FORWARD(from));
937 }/*update_syntax_table_forward*/
938 665
939Then replace all references to UPDATE_SYNTAX_TABLE_FORWARD in syntax.c 666This can happen if you have an old version of the custom library in
940with a call to the function update_syntax_table_forward. 667your search path for Lisp packages. Use M-x list-load-path-shadows to
668check whether this is true. If it is, delete the old custom library.
941 669
942* Emacs fails to start, complaining about missing fonts. 670*** When you run Ispell from Emacs, it reports a "misalignment" error.
943 671
944A typical error message might be something like 672This can happen if you compiled the Ispell program to use ASCII
673characters only and then try to use it from Emacs with non-ASCII
674characters, like Latin-1. The solution is to recompile Ispell with
675support for 8-bit characters.
945 676
946 No fonts match `-*-fixed-medium-r-*--6-*-*-*-*-*-iso8859-1' 677To see whether your Ispell program supports 8-bit characters, type
678this at your shell's prompt:
947 679
948This happens because some X resource specifies a bad font family for 680 ispell -vv
949Emacs to use. The possible places where this specification might be
950are:
951 681
952 - in your ~/.Xdefaults file 682and look in the output for the string "NO8BIT". If Ispell says
683"!NO8BIT (8BIT)", your speller supports 8-bit characters; otherwise it
684does not.
953 685
954 - client-side X resource file, such as ~/Emacs or 686To rebuild Ispell with 8-bit character support, edit the local.h file
955 /usr/X11R6/lib/app-defaults/Emacs or 687in the Ispell distribution and make sure it does _not_ define NO8BIT.
956 /usr/X11R6/lib/X11/app-defaults/Emacs 688Then rebuild the speller.
957 689
958One of these files might have bad or malformed specification of a 690Another possible cause for "misalignment" error messages is that the
959fontset that Emacs should use. To fix the problem, you need to find 691version of Ispell installed on your machine is old. Upgrade.
960the problematic line(s) and correct them.
961 692
962* Emacs 20 and later fails to load Lisp files at startup. 693Yet another possibility is that you are trying to spell-check a word
694in a language that doesn't fit the dictionary you choose for use by
695Ispell. (Ispell can only spell-check one language at a time, because
696it uses a single dictionary.) Make sure that the text you are
697spelling and the dictionary used by Ispell conform to each other.
963 698
964The typical error message might be like this: 699If your spell-checking program is Aspell, it has been reported that if
700you have a personal configuration file (normally ~/.aspell.conf), it
701can cause this error. Remove that file, execute `ispell-kill-ispell'
702in Emacs, and then try spell-checking again.
965 703
966 "Cannot open load file: fontset" 704* Runtime problems related to font handling
967 705
968This could happen if you compress the file lisp/subdirs.el. That file 706** Under X11, some characters appear as hollow boxes.
969tells Emacs what are the directories where it should look for Lisp
970files. Emacs cannot work with subdirs.el compressed, since the
971Auto-compress mode it needs for this will not be loaded until later,
972when your .emacs file is processed. (The package `fontset.el' is
973required to set up fonts used to display text on window systems, and
974it's loaded very early in the startup procedure.)
975 707
976Similarly, any other .el file for which there's no corresponding .elc 708Each X11 font covers just a fraction of the characters that Emacs
977file could fail to load if it is compressed. 709supports. To display the whole range of Emacs characters requires
710many different fonts, collected into a fontset.
978 711
979The solution is to uncompress all .el files which don't have a .elc 712If some of the fonts called for in your fontset do not exist on your X
980file. 713server, then the characters that have no font appear as hollow boxes.
714You can remedy the problem by installing additional fonts.
981 715
982Another possible reason for such failures is stale *.elc files 716The intlfonts distribution includes a full spectrum of fonts that can
983lurking somewhere on your load-path. The following command will 717display all the characters Emacs supports.
984print any duplicate Lisp files that are present in load-path:
985 718
986 emacs -q -batch -f list-load-path-shadows 719Another cause of this for specific characters is fonts which have a
720missing glyph and no default character. This is known to occur for
721character number 160 (no-break space) in some fonts, such as Lucida
722but Emacs sets the display table for the unibyte and Latin-1 version
723of this character to display a space.
987 724
988If this command prints any file names, some of these files are stale, 725** Under X11, some characters appear improperly aligned in their lines.
989and should be deleted or their directories removed from your
990load-path.
991 726
992* Emacs prints an error at startup after upgrading from an earlier version. 727You may have bad X11 fonts; try installing the intlfonts distribution.
993 728
994An example of such an error is: 729** Certain fonts make each line take one pixel more than it "should".
995 730
996 x-complement-fontset-spec: "Wrong type argument: stringp, nil" 731This is because these fonts contain characters a little taller
732than the font's nominal height. Emacs needs to make sure that
733lines do not overlap.
997 734
998This can be another symptom of stale *.elc files in your load-path. 735** Loading fonts is very slow.
999The following command will print any duplicate Lisp files that are
1000present in load-path:
1001 736
1002 emacs -q -batch -f list-load-path-shadows 737You might be getting scalable fonts instead of precomputed bitmaps.
738Known scalable font directories are "Type1" and "Speedo". A font
739directory contains scalable fonts if it contains the file
740"fonts.scale".
1003 741
1004If this command prints any file names, some of these files are stale, 742If this is so, re-order your X windows font path to put the scalable
1005and should be deleted or their directories removed from your 743font directories last. See the documentation of `xset' for details.
1006load-path.
1007 744
1008* Attempting to visit remote files via ange-ftp fails. 745With some X servers, it may be necessary to take the scalable font
746directories out of your path entirely, at least for Emacs 19.26.
747Changes in the future may make this unnecessary.
1009 748
1010If the error message is "ange-ftp-file-modtime: Specified time is not 749** Font Lock displays portions of the buffer in incorrect faces.
1011representable", then this could happen when `lukemftp' is used as the
1012ftp client. This was reported to happen on Debian GNU/Linux, kernel
1013version 2.4.3, with `lukemftp' 1.5-5, but might happen on other
1014systems as well. To avoid this problem, switch to using the standard
1015ftp client. On a Debian system, type
1016 750
1017 update-alternatives --config ftp 751By far the most frequent cause of this is a parenthesis `(' or a brace
752`{' in column zero. Font Lock assumes that such a paren is outside of
753any comment or string. This is of course not true in general, but the
754vast majority of well-formatted program source files don't have such
755parens, and therefore this assumption is used to allow optimizations
756in Font Lock's syntactical analysis. These optimizations avoid some
757pathological cases where jit-lock, the Just-in-Time fontification
758introduced with Emacs 21.1, could significantly slow down scrolling
759through the buffer, especially scrolling backwards, and also jumping
760to the end of a very large buffer.
1018 761
1019and then choose /usr/bin/netkit-ftp. 762Beginning with version 21.4, a parenthesis or a brace in column zero
763is highlighted in bold-red face if it is inside a string or a comment,
764to indicate that it could interfere with Font Lock (and also with
765indentation) and should be moved or escaped with a backslash.
1020 766
1021* Antivirus software interacts badly with the MS-Windows version of Emacs. 767If you don't use large buffers, or have a very fast machine which
768makes the delays insignificant, you can avoid the incorrect
769fontification by setting the variable
770`font-lock-beginning-of-syntax-function' to a nil value. (This must
771be done _after_ turning on Font Lock.)
1022 772
1023The usual manifestation of these problems is that subprocesses don't 773Another alternative is to avoid a paren in column zero. For example,
1024work or even wedge the entire system. In particular, "M-x shell RET" 774in a Lisp string you could precede the paren with a backslash.
1025was reported to fail to work. But other commands also sometimes don't
1026work when an antivirus package is installed.
1027 775
1028The solution is to switch the antivirus software to a less aggressive 776** With certain fonts, when the cursor appears on a character, the
1029mode (e.g., disable the ``auto-protect'' feature), or even uninstall 777character doesn't appear--you get a solid box instead.
1030or disable it entirely.
1031 778
1032* On MS-Windows 95/98/ME, subprocesses do not terminate properly. 779One user on a Linux-based GNU system reported that this problem went
780away with installation of a new X server. The failing server was
781XFree86 3.1.1. XFree86 3.1.2 works.
1033 782
1034This is a limitation of the Operating System, and can cause problems 783** Characters are displayed as empty boxes or with wrong font under X.
1035when shutting down Windows. Ensure that all subprocesses are exited
1036cleanly before exiting Emacs. For more details, see the FAQ at
1037http://www.gnu.org/software/emacs/windows/.
1038 784
1039* MS-Windows 95/98/ME crashes when Emacs invokes non-existent programs. 785This can occur when two different versions of FontConfig are used.
786For example, XFree86 4.3.0 has one version and Gnome usually comes
787with a newer version. Emacs compiled with --with-gtk will then use
788the newer version. In most cases the problem can be temporarily
789fixed by stopping the application that has the error (it can be
790Emacs or any other application), removing ~/.fonts.cache-1,
791and then start the application again.
792If removing ~/.fonts.cache-1 and restarting doesn't help, the
793application with problem must be recompiled with the same version
794of FontConfig as the rest of the system uses. For KDE, it is
795sufficient to recompile Qt.
1040 796
1041When a program you are trying to run is not found on the PATH, 797** Emacs pauses for several seconds when changing the default font.
1042Windows might respond by crashing or locking up your system. In
1043particular, this has been reported when trying to compile a Java
1044program in JDEE when javac.exe is installed, but not on the system
1045PATH.
1046 798
1047* Pressing the mouse button on MS-Windows does not give a mouse-2 event. 799This has been reported for fvwm 2.2.5 and the window manager of KDE
8002.1. The reason for the pause is Xt waiting for a ConfigureNotify
801event from the window manager, which the window manager doesn't send.
802Xt stops waiting after a default timeout of usually 5 seconds.
1048 803
1049This is usually a problem with the mouse driver. Because most Windows 804A workaround for this is to add something like
1050programs do not do anything useful with the middle mouse button, many
1051mouse drivers allow you to define the wheel press to do something
1052different. Some drivers do not even have the option to generate a
1053middle button press. In such cases, setting the wheel press to
1054"scroll" sometimes works if you press the button twice. Trying a
1055generic mouse driver might help.
1056 805
1057* Scrolling the mouse wheel on MS-Windows always scrolls the top window. 806emacs.waitForWM: false
1058 807
1059This is another common problem with mouse drivers. Instead of 808to your X resources. Alternatively, add `(wait-for-wm . nil)' to a
1060generating scroll events, some mouse drivers try to fake scroll bar 809frame's parameter list, like this:
1061movement. But they are not intelligent enough to handle multiple
1062scroll bars within a frame. Trying a generic mouse driver might help.
1063 810
1064* Mail sent through Microsoft Exchange in some encodings appears to be 811 (modify-frame-parameters nil '((wait-for-wm . nil)))
1065mangled and is not seen correctly in Rmail or Gnus. We don't know
1066exactly what happens, but it isn't an Emacs problem in cases we've
1067seen.
1068 812
1069* After upgrading to a newer version of Emacs, the Meta key stops working. 813(this should go into your `.emacs' file).
1070 814
1071This was reported to happen on a GNU/Linux system distributed by 815** Underlines appear at the wrong position.
1072Mandrake. The reason is that the previous version of Emacs was
1073modified by Mandrake to make the Alt key act as the Meta key, on a
1074keyboard where the Windows key is the one which produces the Meta
1075modifier. A user who started using a newer version of Emacs, which
1076was not hacked by Mandrake, expected the Alt key to continue to act as
1077Meta, and was astonished when that didn't happen.
1078 816
1079The solution is to find out what key on your keyboard produces the Meta 817This is caused by fonts having a wrong UNDERLINE_POSITION property.
1080modifier, and use that key instead. Try all of the keys to the left 818Examples are the font 7x13 on XFree prior to version 4.1, or the jmk
1081and to the right of the space bar, together with the `x' key, and see 819neep font from the Debian xfonts-jmk package. To circumvent this
1082which combination produces "M-x" in the echo area. You can also use 820problem, set x-use-underline-position-properties to nil in your
1083the `xmodmap' utility to show all the keys which produce a Meta 821`.emacs'.
1084modifier:
1085 822
1086 xmodmap -pk | egrep -i "meta|alt" 823To see what is the value of UNDERLINE_POSITION defined by the font,
824type `xlsfonts -lll FONT' and look at the font's UNDERLINE_POSITION
825property.
1087 826
1088A more convenient way of finding out which keys produce a Meta modifier 827** When using Exceed, fonts sometimes appear too tall.
1089is to use the `xkbprint' utility, if it's available on your system:
1090 828
1091 xkbprint 0:0 /tmp/k.ps 829When the display is set to an Exceed X-server and fonts are specified
830(either explicitly with the -fn option or implicitly with X resources)
831then the fonts may appear "too tall". The actual character sizes are
832correct but there is too much vertical spacing between rows, which
833gives the appearance of "double spacing".
1092 834
1093This produces a PostScript file `/tmp/k.ps' with a picture of your 835To prevent this, turn off the Exceed's "automatic font substitution"
1094keyboard; printing that file on a PostScript printer will show what 836feature (in the font part of the configuration window).
1095keys can serve as Meta.
1096 837
1097The `xkeycaps' also shows a visual representation of the current 838* Internationalization problems
1098keyboard settings. It also allows to modify them.
1099 839
1100* On OSF/Dec Unix/Tru64/<whatever it is this year> under X locally or 840** Characters from the mule-unicode charsets aren't displayed under X.
1101remotely, M-SPC acts as a `compose' key with strange results. See
1102keyboard(5).
1103 841
1104Changing Alt_L to Meta_L fixes it: 842XFree86 4 contains many fonts in iso10646-1 encoding which have
1105% xmodmap -e 'keysym Alt_L = Meta_L Alt_L' 843minimal character repertoires (whereas the encoding part of the font
1106% xmodmap -e 'keysym Alt_R = Meta_R Alt_R' 844name is meant to be a reasonable indication of the repertoire
845according to the XLFD spec). Emacs may choose one of these to display
846characters from the mule-unicode charsets and then typically won't be
847able to find the glyphs to display many characters. (Check with C-u
848C-x = .) To avoid this, you may need to use a fontset which sets the
849font for the mule-unicode sets explicitly. E.g. to use GNU unifont,
850include in the fontset spec:
1107 851
1108* Error "conflicting types for `initstate'" compiling with GCC on Irix 6. 852mule-unicode-2500-33ff:-gnu-unifont-*-iso10646-1,\
853mule-unicode-e000-ffff:-gnu-unifont-*-iso10646-1,\
854mule-unicode-0100-24ff:-gnu-unifont-*-iso10646-1
1109 855
1110Install GCC 2.95 or a newer version, and this problem should go away. 856** The UTF-8/16/7 coding systems don't encode CJK (Far Eastern) characters.
1111It is possible that this problem results from upgrading the operating
1112system without reinstalling GCC; so you could also try reinstalling
1113the same version of GCC, and telling us whether that fixes the problem.
1114 857
1115* Emacs dumps core on Solaris in function IMCheckWindow. 858Emacs by default only supports the parts of the Unicode BMP whose code
859points are in the ranges 0000-33ff and e000-ffff. This excludes: most
860of CJK, Yi and Hangul, as well as everything outside the BMP.
1116 861
1117This was reported to happen when Emacs runs with more than one frame, 862If you read UTF-8 data with code points outside these ranges, the
1118and one of them is closed, either with "C-x 5 0" or from the window 863characters appear in the buffer as raw bytes of the original UTF-8
1119manager. 864(composed into a single quasi-character) and they will be written back
865correctly as UTF-8, assuming you don't break the composed sequences.
866If you read such characters from UTF-16 or UTF-7 data, they are
867substituted with the Unicode `replacement character', and you lose
868information.
1120 869
1121This bug was reported to Sun as 870To edit such UTF data, turn on Utf-Translate-Cjk mode, which makes
871many common CJK characters available for encoding and decoding and can
872be extended by updating the tables it uses. This also allows you to
873save as UTF buffers containing characters decoded by the chinese-,
874japanese- and korean- coding systems, e.g. cut and pasted from
875elsewhere.
1122 876
1123 Gtk apps dump core in ximlocal.so.2:IMCheckIMWindow() 877** Mule-UCS loads very slowly.
1124 Bug Reports: 4463537
1125 878
1126Installing Solaris 8 patch 108773-12 for Sparc and 108774-12 for x86 879Changes to Emacs internals interact badly with Mule-UCS's `un-define'
1127reportedly fixes the bug, which appears to be inside the shared 880library, which is the usual interface to Mule-UCS. Apply the
1128library xiiimp.so. 881following patch to Mule-UCS 0.84 and rebuild it. That will help,
882though loading will still be slower than in Emacs 20. (Some
883distributions, such as Debian, may already have applied such a patch.)
1129 884
1130Alternatively, you can configure Emacs with `--with-xim=no' to prevent 885--- lisp/un-define.el 6 Mar 2001 22:41:38 -0000 1.30
1131the core dump, but will loose X input method support, of course. (You 886+++ lisp/un-define.el 19 Apr 2002 18:34:26 -0000
1132can use Emacs's own input methods instead, if you install Leim.) 887@@ -610,13 +624,21 @@ by calling post-read-conversion and pre-
1133 888
1134* On Solaris 7, Emacs gets a segmentation fault when starting up using X. 889 (mapcar
890 (lambda (x)
891- (mapcar
892- (lambda (y)
893- (mucs-define-coding-system
894- (nth 0 y) (nth 1 y) (nth 2 y)
895- (nth 3 y) (nth 4 y) (nth 5 y) (nth 6 y))
896- (coding-system-put (car y) 'alias-coding-systems (list (car x))))
897- (cdr x)))
898+ (if (fboundp 'register-char-codings)
899+ ;; Mule 5, where we don't need the eol-type specified and
900+ ;; register-char-codings may be very slow for these coding
901+ ;; system definitions.
902+ (let ((y (cadr x)))
903+ (mucs-define-coding-system
904+ (car x) (nth 1 y) (nth 2 y)
905+ (nth 3 y) (nth 4 y) (nth 5 y)))
906+ (mapcar
907+ (lambda (y)
908+ (mucs-define-coding-system
909+ (nth 0 y) (nth 1 y) (nth 2 y)
910+ (nth 3 y) (nth 4 y) (nth 5 y) (nth 6 y))
911+ (coding-system-put (car y) 'alias-coding-systems (list (car x)))))
912+ (cdr x)))
913 `((utf-8
914 (utf-8-unix
915 ?u "UTF-8 coding system"
1135 916
1136This results from Sun patch 107058-01 (SunOS 5.7: Patch for 917Note that Emacs has native support for Unicode, roughly equivalent to
1137assembler) if you use GCC version 2.7 or later. 918Mule-UCS's, so you may not need it.
1138To work around it, either install patch 106950-03 or later,
1139or uninstall patch 107058-01, or install the GNU Binutils.
1140Then recompile Emacs, and it should work.
1141 919
1142* With X11R6.4, public-patch-3, Emacs crashes at startup. 920** Accented ISO-8859-1 characters are displayed as | or _.
1143 921
1144Reportedly this patch in X fixes the problem. 922Try other font set sizes (S-mouse-1). If the problem persists with
923other sizes as well, your text is corrupted, probably through software
924that is not 8-bit clean. If the problem goes away with another font
925size, it's probably because some fonts pretend to be ISO-8859-1 fonts
926when they are really ASCII fonts. In particular the schumacher-clean
927fonts have this bug in some versions of X.
1145 928
1146 --- xc/lib/X11/imInt.c~ Wed Jun 30 13:31:56 1999 929To see what glyphs are included in a font, use `xfd', like this:
1147 +++ xc/lib/X11/imInt.c Thu Jul 1 15:10:27 1999
1148 @@ -1,4 +1,4 @@
1149 -/* $TOG: imInt.c /main/5 1998/05/30 21:11:16 kaleb $ */
1150 +/* $TOG: imInt.c /main/5 1998/05/30 21:11:16 kaleb $ */
1151 /******************************************************************
1152 930
1153 Copyright 1992, 1993, 1994 by FUJITSU LIMITED 931 xfd -fn -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-1
1154 @@ -166,8 +166,8 @@
1155 _XimMakeImName(lcd)
1156 XLCd lcd;
1157 {
1158 - char* begin;
1159 - char* end;
1160 + char* begin = NULL;
1161 + char* end = NULL;
1162 char* ret;
1163 int i = 0;
1164 char* ximmodifier = XIMMODIFIER;
1165 @@ -182,7 +182,11 @@
1166 }
1167 ret = Xmalloc(end - begin + 2);
1168 if (ret != NULL) {
1169 - (void)strncpy(ret, begin, end - begin + 1);
1170 + if (begin != NULL) {
1171 + (void)strncpy(ret, begin, end - begin + 1);
1172 + } else {
1173 + ret[0] = '\0';
1174 + }
1175 ret[end - begin + 1] = '\0';
1176 }
1177 return ret;
1178 932
933If this shows only ASCII glyphs, the font is indeed the source of the
934problem.
1179 935
1180* Emacs crashes on Irix 6.5 on the SGI R10K, when compiled with GCC. 936The solution is to remove the corresponding lines from the appropriate
937`fonts.alias' file, then run `mkfontdir' in that directory, and then run
938`xset fp rehash'.
1181 939
1182This seems to be fixed in GCC 2.95. 940** The `oc-unicode' package doesn't work with Emacs 21.
1183 941
1184* Emacs crashes in utmpname on Irix 5.3. 942This package tries to define more private charsets than there are free
943slots now. The current built-in Unicode support is actually more
944flexible. (Use option `utf-translate-cjk-mode' if you need CJK
945support.) Files encoded as emacs-mule using oc-unicode aren't
946generally read correctly by Emacs 21.
1185 947
1186This problem is fixed in Patch 3175 for Irix 5.3. 948** After a while, Emacs slips into unibyte mode.
1187It is also fixed in Irix versions 6.2 and up.
1188 949
1189* The S-C-t key combination doesn't get passed to Emacs on X. 950The VM mail package, which is not part of Emacs, sometimes does
951 (standard-display-european t)
952That should be changed to
953 (standard-display-european 1 t)
1190 954
1191This happens because some X configurations assign the Ctrl-Shift-t 955* X runtime problems
1192combination the same meaning as the Multi_key. The offending
1193definition is in the file `...lib/X11/locale/iso8859-1/Compose'; there
1194might be other similar combinations which are grabbed by X for similar
1195purposes.
1196 956
1197We think that this can be countermanded with the `xmodmap' utility, if 957** X keyboard problems
1198you want to be able to bind one of these key sequences within Emacs.
1199 958
1200* On Solaris, CTRL-t is ignored by Emacs when you use 959*** You "lose characters" after typing Compose Character key.
1201the fr.ISO-8859-15 locale (and maybe other related locales).
1202 960
1203You can fix this by editing the file: 961This is because the Compose Character key is defined as the keysym
962Multi_key, and Emacs (seeing that) does the proper X11
963character-composition processing. If you don't want your Compose key
964to do that, you can redefine it with xmodmap.
1204 965
1205 /usr/openwin/lib/locale/iso8859-15/Compose 966For example, here's one way to turn it into a Meta key:
1206 967
1207Near the bottom there is a line that reads: 968 xmodmap -e "keysym Multi_key = Meta_L"
1208 969
1209 Ctrl<t> <quotedbl> <Y> : "\276" threequarters 970If all users at your site of a particular keyboard prefer Meta to
971Compose, you can make the remapping happen automatically by adding the
972xmodmap command to the xdm setup script for that display.
1210 973
1211that should read: 974*** Using X Windows, control-shift-leftbutton makes Emacs hang.
1212 975
1213 Ctrl<T> <quotedbl> <Y> : "\276" threequarters 976Use the shell command `xset bc' to make the old X Menu package work.
1214 977
1215Note the lower case <t>. Changing this line should make C-t work. 978*** M-SPC seems to be ignored as input.
1216 979
1217* Emacs on Digital Unix 4.0 fails to build, giving error message 980See if your X server is set up to use this as a command
1218 Invalid dimension for the charset-ID 160 981for character composition.
1219 982
1220This is due to a bug or an installation problem in GCC 2.8.0. 983*** The S-C-t key combination doesn't get passed to Emacs on X.
1221Installing a more recent version of GCC fixes the problem.
1222 984
1223* Buffers from `with-output-to-temp-buffer' get set up in Help mode. 985This happens because some X configurations assign the Ctrl-Shift-t
986combination the same meaning as the Multi_key. The offending
987definition is in the file `...lib/X11/locale/iso8859-1/Compose'; there
988might be other similar combinations which are grabbed by X for similar
989purposes.
1224 990
1225Changes in Emacs 20.4 to the hooks used by that function cause 991We think that this can be countermanded with the `xmodmap' utility, if
1226problems for some packages, specifically BBDB. See the function's 992you want to be able to bind one of these key sequences within Emacs.
1227documentation for the hooks involved. BBDB 2.00.06 fixes the problem.
1228 993
1229* Under X, C-v and/or other keys don't work. 994*** Under X, C-v and/or other keys don't work.
1230 995
1231These may have been intercepted by your window manager. In 996These may have been intercepted by your window manager. In
1232particular, AfterStep 1.6 is reported to steal C-v in its default 997particular, AfterStep 1.6 is reported to steal C-v in its default
@@ -1234,159 +999,81 @@ configuration. Various Meta keys are also likely to be taken by the
1234configuration of the `feel'. See the WM's documentation for how to 999configuration of the `feel'. See the WM's documentation for how to
1235change this. 1000change this.
1236 1001
1237* When using Exceed, fonts sometimes appear too tall. 1002*** Clicking C-mouse-2 in the scroll bar doesn't split the window.
1238
1239When the display is set to an Exceed X-server and fonts are specified
1240(either explicitly with the -fn option or implicitly with X resources)
1241then the fonts may appear "too tall". The actual character sizes are
1242correct but there is too much vertical spacing between rows, which
1243gives the appearance of "double spacing".
1244
1245To prevent this, turn off the Exceed's "automatic font substitution"
1246feature (in the font part of the configuration window).
1247
1248* Failure in unexec while dumping emacs on Digital Unix 4.0
1249
1250This problem manifests itself as an error message
1251
1252 unexec: Bad address, writing data section to ...
1253
1254The user suspects that this happened because his X libraries
1255were built for an older system version,
1256
1257 ./configure --x-includes=/usr/include --x-libraries=/usr/shlib
1258
1259made the problem go away.
1260
1261* No visible display on mips-sgi-irix6.2 when compiling with GCC 2.8.1.
1262
1263This problem went away after installing the latest IRIX patches
1264as of 8 Dec 1998.
1265
1266The same problem has been reported on Irix 6.3.
1267
1268* As of version 20.4, Emacs doesn't work properly if configured for
1269the Motif toolkit and linked against the free LessTif library. The
1270next Emacs release is expected to work with LessTif.
1271
1272* Emacs gives the error, Couldn't find per display information.
1273
1274This can result if the X server runs out of memory because Emacs uses
1275a large number of fonts. On systems where this happens, C-h h is
1276likely to cause it.
1277
1278We do not know of a way to prevent the problem.
1279
1280* Emacs makes HPUX 11.0 crash.
1281 1003
1282This is a bug in HPUX; HPUX patch PHKL_16260 is said to fix it. 1004This currently doesn't work with scroll-bar widgets (and we don't know
1283 1005a good way of implementing it with widgets). If Emacs is configured
1284* Emacs crashes during dumping on the HPPA machine (HPUX 10.20). 1006--without-toolkit-scroll-bars, C-mouse-2 on the scroll bar does work.
1285
1286This seems to be due to a GCC bug; it is fixed in GCC 2.8.1.
1287
1288* The Hyperbole package causes *Help* buffers not to be displayed in
1289Help mode due to setting `temp-buffer-show-hook' rather than using
1290`add-hook'. Using `(add-hook 'temp-buffer-show-hook
1291'help-mode-maybe)' after loading Hyperbole should fix this.
1292
1293* Versions of the PSGML package earlier than 1.0.3 (stable) or 1.1.2
1294(alpha) fail to parse DTD files correctly in Emacs 20.3 and later.
1295Here is a patch for psgml-parse.el from PSGML 1.0.1 and, probably,
1296earlier versions.
1297
1298--- psgml-parse.el 1998/08/21 19:18:18 1.1
1299+++ psgml-parse.el 1998/08/21 19:20:00
1300@@ -2383,7 +2383,7 @@ (defun sgml-push-to-entity (entity &opti
1301 (setq sgml-buffer-parse-state nil))
1302 (cond
1303 ((stringp entity) ; a file name
1304- (save-excursion (insert-file-contents entity))
1305+ (insert-file-contents entity)
1306 (setq default-directory (file-name-directory entity)))
1307 ((consp (sgml-entity-text entity)) ; external id?
1308 (let* ((extid (sgml-entity-text entity))
1309
1310* Emacs 21 freezes when visiting a TeX file with AUC TeX installed.
1311 1007
1312Emacs 21 needs version 10 or later of AUC TeX; upgrading should solve 1008*** Inability to send an Alt-modified key, when Emacs is communicating
1313these problems. 1009directly with an X server.
1314 1010
1315* No colors in AUC TeX with Emacs 21. 1011If you have tried to bind an Alt-modified key as a command, and it
1012does not work to type the command, the first thing you should check is
1013whether the key is getting through to Emacs. To do this, type C-h c
1014followed by the Alt-modified key. C-h c should say what kind of event
1015it read. If it says it read an Alt-modified key, then make sure you
1016have made the key binding correctly.
1316 1017
1317Upgrade to AUC TeX version 10 or later, and make sure it is 1018If C-h c reports an event that doesn't have the Alt modifier, it may
1318byte-compiled with Emacs 21. 1019be because your X server has no key for the Alt modifier. The X
1020server that comes from MIT does not set up the Alt modifier by
1021default.
1319 1022
1320* Running TeX from AUC TeX package with Emacs 20.3 gives a Lisp error 1023If your keyboard has keys named Alt, you can enable them as follows:
1321about a read-only tex output buffer.
1322 1024
1323This problem appeared for AUC TeX version 9.9j and some earlier 1025 xmodmap -e 'add mod2 = Alt_L'
1324versions. Here is a patch for the file tex-buf.el in the AUC TeX 1026 xmodmap -e 'add mod2 = Alt_R'
1325package.
1326 1027
1327diff -c auctex/tex-buf.el~ auctex/tex-buf.el 1028If the keyboard has just one key named Alt, then only one of those
1328*** auctex/tex-buf.el~ Wed Jul 29 18:35:32 1998 1029commands is needed. The modifier `mod2' is a reasonable choice if you
1329--- auctex/tex-buf.el Sat Sep 5 15:20:38 1998 1030are using an unmodified MIT version of X. Otherwise, choose any
1330*************** 1031modifier bit not otherwise used.
1331*** 545,551 ****
1332 (dir (TeX-master-directory)))
1333 (TeX-process-check file) ; Check that no process is running
1334 (setq TeX-command-buffer (current-buffer))
1335! (with-output-to-temp-buffer buffer)
1336 (set-buffer buffer)
1337 (if dir (cd dir))
1338 (insert "Running `" name "' on `" file "' with ``" command "''\n")
1339- --- 545,552 ----
1340 (dir (TeX-master-directory)))
1341 (TeX-process-check file) ; Check that no process is running
1342 (setq TeX-command-buffer (current-buffer))
1343! (let (temp-buffer-show-function temp-buffer-show-hook)
1344! (with-output-to-temp-buffer buffer))
1345 (set-buffer buffer)
1346 (if dir (cd dir))
1347 (insert "Running `" name "' on `" file "' with ``" command "''\n")
1348
1349* On Irix 6.3, substituting environment variables in file names
1350in the minibuffer gives peculiar error messages such as
1351 1032
1352 Substituting nonexistent environment variable "" 1033If your keyboard does not have keys named Alt, you can use some other
1034keys. Use the keysym command in xmodmap to turn a function key (or
1035some other 'spare' key) into Alt_L or into Alt_R, and then use the
1036commands show above to make them modifier keys.
1353 1037
1354This is not an Emacs bug; it is caused by something in SGI patch 1038Note that if you have Alt keys but no Meta keys, Emacs translates Alt
1355003082 August 11, 1998. 1039into Meta. This is because of the great importance of Meta in Emacs.
1356 1040
1357* After a while, Emacs slips into unibyte mode. 1041** Window-manager and toolkit-related problems
1358 1042
1359The VM mail package, which is not part of Emacs, sometimes does 1043*** Gnome: Emacs' xterm-mouse-mode doesn't work on the Gnome terminal.
1360 (standard-display-european t)
1361That should be changed to
1362 (standard-display-european 1 t)
1363 1044
1364* Installing Emacs gets an error running `install-info'. 1045A symptom of this bug is that double-clicks insert a control sequence
1046into the buffer. The reason this happens is an apparent
1047incompatibility of the Gnome terminal with Xterm, which also affects
1048other programs using the Xterm mouse interface. A problem report has
1049been filed.
1365 1050
1366You need to install a recent version of Texinfo; that package 1051*** KDE: When running on KDE, colors or fonts are not as specified for Emacs,
1367supplies the `install-info' command. 1052or messed up.
1368 1053
1369* Emacs does not recognize the AltGr key, on HPUX. 1054For example, you could see background you set for Emacs only in the
1055empty portions of the Emacs display, while characters have some other
1056background.
1370 1057
1371To fix this, set up a file ~/.dt/sessions/sessionetc with executable 1058This happens because KDE's defaults apply its color and font
1372rights, containing this text: 1059definitions even to applications that weren't compiled for KDE. The
1060solution is to uncheck the "Apply fonts and colors to non-KDE apps"
1061option in Preferences->Look&Feel->Style (KDE 2). In KDE 3, this option
1062is in the "Colors" section, rather than "Style".
1373 1063
1374-------------------------------- 1064Alternatively, if you do want the KDE defaults to apply to other
1375xmodmap 2> /dev/null - << EOF 1065applications, but not to Emacs, you could modify the file `Emacs.ad'
1376keysym Alt_L = Meta_L 1066(should be in the `/usr/share/apps/kdisplay/app-defaults/' directory)
1377keysym Alt_R = Meta_R 1067so that it doesn't set the default background and foreground only for
1378EOF 1068Emacs. For example, make sure the following resources are either not
1069present or commented out:
1379 1070
1380xmodmap - << EOF 1071 Emacs.default.attributeForeground
1381clear mod1 1072 Emacs.default.attributeBackground
1382keysym Mode_switch = NoSymbol 1073 Emacs*Foreground
1383add mod1 = Meta_L 1074 Emacs*Background
1384keysym Meta_R = Mode_switch
1385add mod2 = Mode_switch
1386EOF
1387--------------------------------
1388 1075
1389* Emacs hangs on KDE when a large portion of text is killed. 1076*** KDE: Emacs hangs on KDE when a large portion of text is killed.
1390 1077
1391This is caused by a bug in the KDE applet `klipper' which periodically 1078This is caused by a bug in the KDE applet `klipper' which periodically
1392requests the X clipboard contents from applications. Early versions 1079requests the X clipboard contents from applications. Early versions
@@ -1398,729 +1085,732 @@ while, Emacs will print a message:
1398 1085
1399A workaround is to not use `klipper'. 1086A workaround is to not use `klipper'.
1400 1087
1401* Emacs compiled with DJGPP for MS-DOS/MS-Windows cannot access files 1088*** CDE: Frames may cover dialogs they created when using CDE.
1402in the directory with the special name `dev' under the root of any
1403drive, e.g. `c:/dev'.
1404
1405This is an unfortunate side-effect of the support for Unix-style
1406device names such as /dev/null in the DJGPP runtime library. A
1407work-around is to rename the problem directory to another name.
1408
1409* M-SPC seems to be ignored as input.
1410
1411See if your X server is set up to use this as a command
1412for character composition.
1413
1414* Emacs startup on GNU/Linux systems (and possibly other systems) is slow.
1415 1089
1416This can happen if the system is misconfigured and Emacs can't get the 1090This can happen if you have "Allow Primary Windows On Top" enabled which
1417full qualified domain name, FQDN. You should have your FQDN in the 1091seems to be the default in the Common Desktop Environment.
1418/etc/hosts file, something like this: 1092To change, go in to "Desktop Controls" -> "Window Style Manager"
1419 1093and uncheck "Allow Primary Windows On Top".
1420127.0.0.1 localhost
1421129.187.137.82 nuc04.t30.physik.tu-muenchen.de nuc04
1422 1094
1423The way to set this up may vary on non-GNU systems. 1095*** Xaw3d : When using Xaw3d scroll bars without arrows, the very first mouse
1096click in a scroll bar might be ignored by the scroll bar widget. This
1097is probably a bug in Xaw3d; when Xaw3d is compiled with arrows, the
1098problem disappears.
1424 1099
1425* Garbled display on non-X terminals when Emacs runs on Digital Unix 4.0. 1100*** Xaw: There are known binary incompatibilities between Xaw, Xaw3d, neXtaw,
1101XawM and the few other derivatives of Xaw. So when you compile with
1102one of these, it may not work to dynamically link with another one.
1103For example, strange problems, such as Emacs exiting when you type
1104"C-x 1", were reported when Emacs compiled with Xaw3d and libXaw was
1105used with neXtaw at run time.
1426 1106
1427So far it appears that running `tset' triggers this problem (when TERM 1107The solution is to rebuild Emacs with the toolkit version you actually
1428is vt100, at least). If you do not run `tset', then Emacs displays 1108want to use, or set LD_PRELOAD to preload the same toolkit version you
1429properly. If someone can tell us precisely which effect of running 1109built Emacs with.
1430`tset' actually causes the problem, we may be able to implement a fix
1431in Emacs.
1432 1110
1433* When you run Ispell from Emacs, it reports a "misalignment" error. 1111*** Open Motif: Problems with file dialogs in Emacs built with Open Motif.
1434 1112
1435This can happen if you compiled the Ispell program to use ASCII 1113When Emacs 21 is built with Open Motif 2.1, it can happen that the
1436characters only and then try to use it from Emacs with non-ASCII 1114graphical file dialog boxes do not work properly. The "OK", "Filter"
1437characters, like Latin-1. The solution is to recompile Ispell with 1115and "Cancel" buttons do not respond to mouse clicks. Dragging the
1438support for 8-bit characters. 1116file dialog window usually causes the buttons to work again.
1439 1117
1440To see whether your Ispell program supports 8-bit characters, type 1118The solution is to use LessTif instead. LessTif is a free replacement
1441this at your shell's prompt: 1119for Motif. See the file INSTALL for information on how to do this.
1442 1120
1443 ispell -vv 1121Another workaround is not to use the mouse to trigger file prompts,
1122but to use the keyboard. This way, you will be prompted for a file in
1123the minibuffer instead of a graphical file dialog.
1444 1124
1445and look in the output for the string "NO8BIT". If Ispell says 1125*** LessTif: Problems in Emacs built with LessTif.
1446"!NO8BIT (8BIT)", your speller supports 8-bit characters; otherwise it
1447does not.
1448 1126
1449To rebuild Ispell with 8-bit character support, edit the local.h file 1127The problems seem to depend on the version of LessTif and the Motif
1450in the Ispell distribution and make sure it does _not_ define NO8BIT. 1128emulation for which it is set up.
1451Then rebuild the speller.
1452 1129
1453Another possible cause for "misalignment" error messages is that the 1130Only the Motif 1.2 emulation seems to be stable enough in LessTif.
1454version of Ispell installed on your machine is old. Upgrade. 1131Lesstif 0.92-17's Motif 1.2 emulation seems to work okay on FreeBSD.
1132On GNU/Linux systems, lesstif-0.92.6 configured with "./configure
1133--enable-build-12 --enable-default-12" is reported to be the most
1134successful. The binary GNU/Linux package
1135lesstif-devel-0.92.0-1.i386.rpm was reported to have problems with
1136menu placement.
1455 1137
1456Yet another possibility is that you are trying to spell-check a word 1138On some systems, even with Motif 1.2 emulation, Emacs occasionally
1457in a language that doesn't fit the dictionary you choose for use by 1139locks up, grabbing all mouse and keyboard events. We still don't know
1458Ispell. (Ispell can only spell-check one language at a time, because 1140what causes these problems; they are not reproducible by Emacs
1459it uses a single dictionary.) Make sure that the text you are 1141developers.
1460spelling and the dictionary used by Ispell conform to each other.
1461 1142
1462If your spell-checking program is Aspell, it has been reported that if 1143*** Motif: The Motif version of Emacs paints the screen a solid color.
1463you have a personal configuration file (normally ~/.aspell.conf), it
1464can cause this error. Remove that file, execute `ispell-kill-ispell'
1465in Emacs, and then try spell-checking again.
1466 1144
1467* On Linux-based GNU systems using libc versions 5.4.19 through 1145This has been observed to result from the following X resource:
14685.4.22, Emacs crashes at startup with a segmentation fault.
1469 1146
1470This problem happens if libc defines the symbol __malloc_initialized. 1147 Emacs*default.attributeFont: -*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-*
1471One known solution is to upgrade to a newer libc version. 5.4.33 is
1472known to work.
1473 1148
1474* On MS-Windows, you cannot use the right-hand ALT key and the left-hand 1149That the resource has this effect indicates a bug in something, but we
1475CTRL key together to type a Control-Meta character. 1150do not yet know what. If it is an Emacs bug, we hope someone can
1151explain what the bug is so we can fix it. In the mean time, removing
1152the resource prevents the problem.
1476 1153
1477This is a consequence of a misfeature beyond Emacs's control. 1154** General X problems
1478 1155
1479Under Windows, the AltGr key on international keyboards generates key 1156*** Redisplay using X11 is much slower than previous Emacs versions.
1480events with the modifiers Right-Alt and Left-Ctrl. Since Emacs cannot
1481distinguish AltGr from an explicit Right-Alt and Left-Ctrl
1482combination, whenever it sees Right-Alt and Left-Ctrl it assumes that
1483AltGr has been pressed. The variable `w32-recognize-altgr' can be set
1484to nil to tell Emacs that AltGr is really Ctrl and Alt.
1485 1157
1486* Emacs crashes when using the Exceed 6.0 X server 1158We've noticed that certain X servers draw the text much slower when
1159scroll bars are on the left. We don't know why this happens. If this
1160happens to you, you can work around it by putting the scroll bars
1161on the right (as they were in Emacs 19).
1487 1162
1488If you are using Exceed 6.1, upgrade to a later version. This was 1163Here's how to do this:
1489reported to prevent the crashes.
1490 1164
1491* Under some X-servers running on MS-Windows, Emacs' display is incorrect 1165 (set-scroll-bar-mode 'right)
1492 1166
1493The symptoms are that Emacs does not completely erase blank areas of the 1167If you're not sure whether (or how much) this problem affects you,
1494screen during scrolling or some other screen operations (e.g., selective 1168try that and see how much difference it makes. To set things back
1495display or when killing a region). M-x recenter will cause the screen 1169to normal, do
1496to be completely redisplayed and the "extra" characters will disappear.
1497 1170
1498This is known to occur under Exceed 6, and possibly earlier versions 1171 (set-scroll-bar-mode 'left)
1499as well; it is reportedly solved in version 6.2.0.16 and later. The
1500problem lies in the X-server settings.
1501 1172
1502There are reports that you can solve the problem with Exceed by 1173*** Error messages about undefined colors on X.
1503running `Xconfig' from within NT, choosing "X selection", then
1504un-checking the boxes "auto-copy X selection" and "auto-paste to X
1505selection".
1506 1174
1507Of this does not work, please inform bug-gnu-emacs@gnu.org. Then 1175The messages might say something like this:
1508please call support for your X-server and see if you can get a fix.
1509If you do, please send it to bug-gnu-emacs@gnu.org so we can list it
1510here.
1511 1176
1512* On Solaris 2, Emacs dumps core when built with Motif. 1177 Unable to load color "grey95"
1513 1178
1514The Solaris Motif libraries are buggy, at least up through Solaris 2.5.1. 1179(typically, in the `*Messages*' buffer), or something like this:
1515Install the current Motif runtime library patch appropriate for your host.
1516(Make sure the patch is current; some older patch versions still have the bug.)
1517You should install the other patches recommended by Sun for your host, too.
1518You can obtain Sun patches from ftp://sunsolve.sun.com/pub/patches/;
1519look for files with names ending in `.PatchReport' to see which patches
1520are currently recommended for your host.
1521 1180
1522On Solaris 2.6, Emacs is said to work with Motif when Solaris patch 1181 Error while displaying tooltip: (error Undefined color lightyellow)
1523105284-12 is installed, but fail when 105284-15 is installed.
1524105284-18 might fix it again.
1525 1182
1526* On Solaris 2.6 and 7, the Compose key does not work. 1183These problems could happen if some other X program has used up too
1184many colors of the X palette, leaving Emacs with insufficient system
1185resources to load all the colors it needs.
1527 1186
1528This is a bug in Motif in Solaris. Supposedly it has been fixed for 1187A solution is to exit the offending X programs before starting Emacs.
1529the next major release of Solaris. However, if someone with Sun
1530support complains to Sun about the bug, they may release a patch.
1531If you do this, mention Sun bug #4188711.
1532 1188
1533One workaround is to use a locale that allows non-ASCII characters. 1189*** Improving performance with slow X connections.
1534For example, before invoking emacs, set the LC_ALL environment
1535variable to "en_US" (American English). The directory /usr/lib/locale
1536lists the supported locales; any locale other than "C" or "POSIX"
1537should do.
1538 1190
1539pen@lysator.liu.se says (Feb 1998) that the Compose key does work 1191There are several ways to improve this performance, any subset of which can
1540if you link with the MIT X11 libraries instead of the Solaris X11 1192be carried out at the same time:
1541libraries.
1542 1193
1543* Frames may cover dialogs they created when using CDE. 11941) If you don't need X Input Methods (XIM) for entering text in some
1195 language you use, you can improve performance on WAN links by using
1196 the X resource useXIM to turn off use of XIM. This does not affect
1197 the use of Emacs' own input methods, which are part of the Leim
1198 package.
1544 1199
1545This can happen if you have "Allow Primary Windows On Top" enabled which 12002) If the connection is very slow, you might also want to consider
1546seems to be the default in the Common Desktop Environment. 1201 switching off scroll bars, menu bar, and tool bar.
1547To change, go in to "Desktop Controls" -> "Window Style Manager"
1548and uncheck "Allow Primary Windows On Top".
1549 1202
1550* Emacs does not know your host's fully-qualified domain name. 12033) Use ssh to forward the X connection, and enable compression on this
1204 forwarded X connection (ssh -XC remotehostname emacs ...).
1551 1205
1552You need to configure your machine with a fully qualified domain name, 12064) Use lbxproxy on the remote end of the connection. This is an interface
1553either in /etc/hosts, /etc/hostname, the NIS, or wherever your system 1207 to the low bandwidth X extension in most modern X servers, which
1554calls for specifying this. 1208 improves performance dramatically, at the slight expense of correctness
1209 of the X protocol. lbxproxy acheives the performance gain by grouping
1210 several X requests in one TCP packet and sending them off together,
1211 instead of requiring a round-trip for each X request in a seperate
1212 packet. The switches that seem to work best for emacs are:
1213 -noatomsfile -nowinattr -cheaterrors -cheatevents
1214 Note that the -nograbcmap option is known to cause problems.
1215 For more about lbxproxy, see:
1216 http://www.xfree86.org/4.3.0/lbxproxy.1.html
1555 1217
1556If you cannot fix the configuration, you can set the Lisp variable 1218*** Emacs gives the error, Couldn't find per display information.
1557mail-host-address to the value you want.
1558 1219
1559* Error 12 (virtual memory exceeded) when dumping Emacs, on UnixWare 2.1 1220This can result if the X server runs out of memory because Emacs uses
1221a large number of fonts. On systems where this happens, C-h h is
1222likely to cause it.
1560 1223
1561Paul Abrahams (abrahams@acm.org) reports that with the installed 1224We do not know of a way to prevent the problem.
1562virtual memory settings for UnixWare 2.1.2, an Error 12 occurs during
1563the "make" that builds Emacs, when running temacs to dump emacs. That
1564error indicates that the per-process virtual memory limit has been
1565exceeded. The default limit is probably 32MB. Raising the virtual
1566memory limit to 40MB should make it possible to finish building Emacs.
1567 1225
1568You can do this with the command `ulimit' (sh) or `limit' (csh). 1226*** Emacs does not notice when you release the mouse.
1569But you have to be root to do it.
1570 1227
1571According to Martin Sohnius, you can also retune this in the kernel: 1228There are reports that this happened with (some) Microsoft mice and
1229that replacing the mouse made it stop.
1572 1230
1573 # /etc/conf/bin/idtune SDATLIM 33554432 ## soft data size limit 1231*** You can't select from submenus (in the X toolkit version).
1574 # /etc/conf/bin/idtune HDATLIM 33554432 ## hard "
1575 # /etc/conf/bin/idtune SVMMSIZE unlimited ## soft process size limit
1576 # /etc/conf/bin/idtune HVMMSIZE unlimited ## hard "
1577 # /etc/conf/bin/idbuild -B
1578 1232
1579(He recommends you not change the stack limit, though.) 1233On certain systems, mouse-tracking and selection in top-level menus
1580These changes take effect when you reboot. 1234works properly with the X toolkit, but neither of them works when you
1235bring up a submenu (such as Bookmarks or Compare or Apply Patch, in
1236the Files menu).
1581 1237
1582* Redisplay using X11 is much slower than previous Emacs versions. 1238This works on most systems. There is speculation that the failure is
1239due to bugs in old versions of X toolkit libraries, but no one really
1240knows. If someone debugs this and finds the precise cause, perhaps a
1241workaround can be found.
1583 1242
1584We've noticed that certain X servers draw the text much slower when 1243*** An error message such as `X protocol error: BadMatch (invalid
1585scroll bars are on the left. We don't know why this happens. If this 1244parameter attributes) on protocol request 93'.
1586happens to you, you can work around it by putting the scroll bars
1587on the right (as they were in Emacs 19).
1588 1245
1589Here's how to do this: 1246This comes from having an invalid X resource, such as
1247 emacs*Cursor: black
1248(which is invalid because it specifies a color name for something
1249that isn't a color.)
1590 1250
1591 (set-scroll-bar-mode 'right) 1251The fix is to correct your X resources.
1592 1252
1593If you're not sure whether (or how much) this problem affects you, 1253*** Slow startup on X11R6 with X windows.
1594try that and see how much difference it makes. To set things back
1595to normal, do
1596 1254
1597 (set-scroll-bar-mode 'left) 1255If Emacs takes two minutes to start up on X11R6, see if your X
1256resources specify any Adobe fonts. That causes the type-1 font
1257renderer to start up, even if the font you asked for is not a type-1
1258font.
1598 1259
1599* Under X11, some characters appear as hollow boxes. 1260One way to avoid this problem is to eliminate the type-1 fonts from
1261your font path, like this:
1600 1262
1601Each X11 font covers just a fraction of the characters that Emacs 1263 xset -fp /usr/X11R6/lib/X11/fonts/Type1/
1602supports. To display the whole range of Emacs characters requires
1603many different fonts, collected into a fontset.
1604 1264
1605If some of the fonts called for in your fontset do not exist on your X 1265*** Pull-down menus appear in the wrong place, in the toolkit version of Emacs.
1606server, then the characters that have no font appear as hollow boxes.
1607You can remedy the problem by installing additional fonts.
1608 1266
1609The intlfonts distribution includes a full spectrum of fonts that can 1267An X resource of this form can cause the problem:
1610display all the characters Emacs supports.
1611 1268
1612Another cause of this for specific characters is fonts which have a 1269 Emacs*geometry: 80x55+0+0
1613missing glyph and no default character. This is known ot occur for
1614character number 160 (no-break space) in some fonts, such as Lucida
1615but Emacs sets the display table for the unibyte and Latin-1 version
1616of this character to display a space.
1617 1270
1618* Under X11, some characters appear improperly aligned in their lines. 1271This resource is supposed to apply, and does apply, to the menus
1272individually as well as to Emacs frames. If that is not what you
1273want, rewrite the resource.
1619 1274
1620You may have bad X11 fonts; try installing the intlfonts distribution. 1275To check thoroughly for such resource specifications, use `xrdb
1276-query' to see what resources the X server records, and also look at
1277the user's ~/.Xdefaults and ~/.Xdefaults-* files.
1621 1278
1622* Certain fonts make each line take one pixel more than it "should". 1279*** --with-x-toolkit version crashes when used with shared libraries.
1623 1280
1624This is because these fonts contain characters a little taller 1281On some systems, including Sunos 4 and DGUX 5.4.2 and perhaps others,
1625than the font's nominal height. Emacs needs to make sure that 1282unexec doesn't work properly with the shared library for the X
1626lines do not overlap. 1283toolkit. You might be able to work around this by using a nonshared
1284libXt.a library. The real fix is to upgrade the various versions of
1285unexec and/or ralloc. We think this has been fixed on Sunos 4
1286and Solaris in version 19.29.
1627 1287
1628* You request inverse video, and the first Emacs frame is in inverse 1288*** Emacs running under X Windows does not handle mouse clicks.
1629video, but later frames are not in inverse video. 1289*** `emacs -geometry 80x20' finds a file named `80x20'.
1630 1290
1631This can happen if you have an old version of the custom library in 1291One cause of such problems is having (setq term-file-prefix nil) in
1632your search path for Lisp packages. Use M-x list-load-path-shadows to 1292your .emacs file. Another cause is a bad value of EMACSLOADPATH in
1633check whether this is true. If it is, delete the old custom library. 1293the environment.
1634 1294
1635* In FreeBSD 2.1.5, useless symbolic links remain in /tmp or other 1295*** Emacs fails to get default settings from X Windows server.
1636directories that have the +t bit.
1637 1296
1638This is because of a kernel bug in FreeBSD 2.1.5 (fixed in 2.2). 1297The X library in X11R4 has a bug; it interchanges the 2nd and 3rd
1639Emacs uses symbolic links to implement file locks. In a directory 1298arguments to XGetDefaults. Define the macro XBACKWARDS in config.h to
1640with +t bit, the directory owner becomes the owner of the symbolic 1299tell Emacs to compensate for this.
1641link, so that it cannot be removed by anyone else.
1642 1300
1643If you don't like those useless links, you can let Emacs not to using 1301I don't believe there is any way Emacs can determine for itself
1644file lock by adding #undef CLASH_DETECTION to config.h. 1302whether this problem is present on a given system.
1645 1303
1646* When using M-x dbx with the SparcWorks debugger, the `up' and `down' 1304*** X Windows doesn't work if DISPLAY uses a hostname.
1647commands do not move the arrow in Emacs.
1648 1305
1649You can fix this by adding the following line to `~/.dbxinit': 1306People have reported kernel bugs in certain systems that cause Emacs
1307not to work with X Windows if DISPLAY is set using a host name. But
1308the problem does not occur if DISPLAY is set to `unix:0.0'. I think
1309the bug has to do with SIGIO or FIONREAD.
1650 1310
1651 dbxenv output_short_file_name off 1311You may be able to compensate for the bug by doing (set-input-mode nil nil).
1312However, that has the disadvantage of turning off interrupts, so that
1313you are unable to quit out of a Lisp program by typing C-g.
1652 1314
1653* Emacs says it has saved a file, but the file does not actually 1315The easy way to do this is to put
1654appear on disk.
1655 1316
1656This can happen on certain systems when you are using NFS, if the 1317 (setq x-sigio-bug t)
1657remote disk is full. It is due to a bug in NFS (or certain NFS
1658implementations), and there is apparently nothing Emacs can do to
1659detect the problem. Emacs checks the failure codes of all the system
1660calls involved in writing a file, including `close'; but in the case
1661where the problem occurs, none of those system calls fails.
1662 1318
1663* "Compose Character" key does strange things when used as a Meta key. 1319in your site-init.el file.
1664 1320
1665If you define one key to serve as both Meta and Compose Character, you 1321* Runtime problems on character termunals
1666will get strange results. In previous Emacs versions, this "worked"
1667in that the key acted as Meta--that's because the older Emacs versions
1668did not try to support Compose Character. Now Emacs tries to do
1669character composition in the standard X way. This means that you
1670must pick one meaning or the other for any given key.
1671 1322
1672You can use both functions (Meta, and Compose Character) if you assign 1323** Emacs spontaneously displays "I-search: " at the bottom of the screen.
1673them to two different keys.
1674 1324
1675* Emacs gets a segmentation fault at startup, on AIX4.2. 1325This means that Control-S/Control-Q (XON/XOFF) "flow control" is being
1326used. C-s/C-q flow control is bad for Emacs editors because it takes
1327away C-s and C-q as user commands. Since editors do not output long
1328streams of text without user commands, there is no need for a
1329user-issuable "stop output" command in an editor; therefore, a
1330properly designed flow control mechanism would transmit all possible
1331input characters without interference. Designing such a mechanism is
1332easy, for a person with at least half a brain.
1676 1333
1677If you are using IBM's xlc compiler, compile emacs.c 1334There are three possible reasons why flow control could be taking place:
1678without optimization; that should avoid the problem.
1679 1335
1680* movemail compiled with POP support can't connect to the POP server. 1336 1) Terminal has not been told to disable flow control
1337 2) Insufficient padding for the terminal in use
1338 3) Some sort of terminal concentrator or line switch is responsible
1681 1339
1682Make sure that the `pop' entry in /etc/services, or in the services 1340First of all, many terminals have a set-up mode which controls whether
1683NIS map if your machine uses NIS, has the same port number as the 1341they generate XON/XOFF flow control characters. This must be set to
1684entry on the POP server. A common error is for the POP server to be 1342"no XON/XOFF" in order for Emacs to work. Sometimes there is an
1685listening on port 110, the assigned port for the POP3 protocol, while 1343escape sequence that the computer can send to turn flow control off
1686the client is trying to connect on port 109, the assigned port for the 1344and on. If so, perhaps the termcap `ti' string should turn flow
1687old POP protocol. 1345control off, and the `te' string should turn it on.
1688 1346
1689* Emacs crashes in x-popup-dialog. 1347Once the terminal has been told "no flow control", you may find it
1348needs more padding. The amount of padding Emacs sends is controlled
1349by the termcap entry for the terminal in use, and by the output baud
1350rate as known by the kernel. The shell command `stty' will print
1351your output baud rate; `stty' with suitable arguments will set it if
1352it is wrong. Setting to a higher speed causes increased padding. If
1353the results are wrong for the correct speed, there is probably a
1354problem in the termcap entry. You must speak to a local Unix wizard
1355to fix this. Perhaps you are just using the wrong terminal type.
1690 1356
1691This can happen if the dialog widget cannot find the font it wants to 1357For terminals that lack a "no flow control" mode, sometimes just
1692use. You can work around the problem by specifying another font with 1358giving lots of padding will prevent actual generation of flow control
1693an X resource--for example, `Emacs.dialog*.font: 9x15' (or any font that 1359codes. You might as well try it.
1694happens to exist on your X server).
1695 1360
1696* Emacs crashes when you use Bibtex mode. 1361If you are really unlucky, your terminal is connected to the computer
1362through a concentrator which sends XON/XOFF flow control to the
1363computer, or it insists on sending flow control itself no matter how
1364much padding you give it. Unless you can figure out how to turn flow
1365control off on this concentrator (again, refer to your local wizard),
1366you are screwed! You should have the terminal or concentrator
1367replaced with a properly designed one. In the mean time, some drastic
1368measures can make Emacs semi-work.
1697 1369
1698This happens if your system puts a small limit on stack size. You can 1370You can make Emacs ignore C-s and C-q and let the operating system
1699prevent the problem by using a suitable shell command (often `ulimit') 1371handle them. To do this on a per-session basis, just type M-x
1700to raise the stack size limit before you run Emacs. 1372enable-flow-control RET. You will see a message that C-\ and C-^ are
1373now translated to C-s and C-q. (Use the same command M-x
1374enable-flow-control to turn *off* this special mode. It toggles flow
1375control handling.)
1701 1376
1702Patches to raise the stack size limit automatically in `main' 1377If C-\ and C-^ are inconvenient for you (for example, if one of them
1703(src/emacs.c) on various systems would be greatly appreciated. 1378is the escape character of your terminal concentrator), you can choose
1379other characters by setting the variables flow-control-c-s-replacement
1380and flow-control-c-q-replacement. But choose carefully, since all
1381other control characters are already used by emacs.
1704 1382
1705* Emacs crashes with SIGBUS or SIGSEGV on HPUX 9 after you delete a frame. 1383IMPORTANT: if you type C-s by accident while flow control is enabled,
1384Emacs output will freeze, and you will have to remember to type C-q in
1385order to continue.
1706 1386
1707We think this is due to a bug in the X libraries provided by HP. With 1387If you work in an environment where a majority of terminals of a
1708the alternative X libraries in /usr/contrib/mitX11R5/lib, the problem 1388certain type are flow control hobbled, you can use the function
1709does not happen. 1389`enable-flow-control-on' to turn on this flow control avoidance scheme
1390automatically. Here is an example:
1710 1391
1711* Emacs crashes with SIGBUS or SIGSEGV on Solaris after you delete a frame. 1392(enable-flow-control-on "vt200" "vt300" "vt101" "vt131")
1712 1393
1713We suspect that this is a similar bug in the X libraries provided by 1394If this isn't quite correct (e.g. you have a mixture of flow-control hobbled
1714Sun. There is a report that one of these patches fixes the bug and 1395and good vt200 terminals), you can still run enable-flow-control
1715makes the problem stop: 1396manually.
1716 1397
1717105216-01 105393-01 105518-01 105621-01 105665-01 105615-02 105216-02 1398I have no intention of ever redesigning the Emacs command set for the
1718105667-01 105401-08 105615-03 105621-02 105686-02 105736-01 105755-03 1399assumption that terminals use C-s/C-q flow control. XON/XOFF flow
1719106033-01 105379-01 105786-01 105181-04 105379-03 105786-04 105845-01 1400control technique is a bad design, and terminals that need it are bad
1720105284-05 105669-02 105837-01 105837-02 105558-01 106125-02 105407-01 1401merchandise and should not be purchased. Now that X is becoming
1402widespread, XON/XOFF seems to be on the way out. If you can get some
1403use out of GNU Emacs on inferior terminals, more power to you, but I
1404will not make Emacs worse for properly designed systems for the sake
1405of inferior systems.
1721 1406
1722Another person using a newer system (kernel patch level Generic_105181-06) 1407** Control-S and Control-Q commands are ignored completely.
1723suspects that the bug was fixed by one of these more recent patches:
1724 1408
1725106040-07 SunOS 5.6: X Input & Output Method patch 1409For some reason, your system is using brain-damaged C-s/C-q flow
1726106222-01 OpenWindows 3.6: filemgr (ff.core) fixes 1410control despite Emacs's attempts to turn it off. Perhaps your
1727105284-12 Motif 1.2.7: sparc Runtime library patch 1411terminal is connected to the computer through a concentrator
1412that wants to use flow control.
1728 1413
1729* Problems running Perl under Emacs on MS-Windows NT/95. 1414You should first try to tell the concentrator not to use flow control.
1415If you succeed in this, try making the terminal work without
1416flow control, as described in the preceding section.
1730 1417
1731`perl -de 0' just hangs when executed in an Emacs subshell. 1418If that line of approach is not successful, map some other characters
1732The fault lies with Perl (indirectly with Windows NT/95). 1419into C-s and C-q using keyboard-translate-table. The example above
1420shows how to do this with C-^ and C-\.
1733 1421
1734The problem is that the Perl debugger explicitly opens a connection to 1422** Screen is updated wrong, but only on one kind of terminal.
1735"CON", which is the DOS/NT equivalent of "/dev/tty", for interacting
1736with the user.
1737 1423
1738On Unix, this is okay, because Emacs (or the shell?) creates a 1424This could mean that the termcap entry you are using for that
1739pseudo-tty so that /dev/tty is really the pipe Emacs is using to 1425terminal is wrong, or it could mean that Emacs has a bug handing
1740communicate with the subprocess. 1426the combination of features specified for that terminal.
1741 1427
1742On NT, this fails because CON always refers to the handle for the 1428The first step in tracking this down is to record what characters
1743relevant console (approximately equivalent to a tty), and cannot be 1429Emacs is sending to the terminal. Execute the Lisp expression
1744redirected to refer to the pipe Emacs assigned to the subprocess as 1430(open-termscript "./emacs-script") to make Emacs write all
1745stdin. 1431terminal output into the file ~/emacs-script as well; then do
1432what makes the screen update wrong, and look at the file
1433and decode the characters using the manual for the terminal.
1434There are several possibilities:
1746 1435
1747A workaround is to modify perldb.pl to use STDIN/STDOUT instead of CON. 14361) The characters sent are correct, according to the terminal manual.
1748 1437
1749For Perl 4: 1438In this case, there is no obvious bug in Emacs, and most likely you
1439need more padding, or possibly the terminal manual is wrong.
1750 1440
1751 *** PERL/LIB/PERLDB.PL.orig Wed May 26 08:24:18 1993 14412) The characters sent are incorrect, due to an obscure aspect
1752 --- PERL/LIB/PERLDB.PL Mon Jul 01 15:28:16 1996 1442 of the terminal behavior not described in an obvious way
1753 *************** 1443 by termcap.
1754 *** 68,74 ****
1755 $rcfile=".perldb";
1756 }
1757 else {
1758 ! $console = "con";
1759 $rcfile="perldb.ini";
1760 }
1761 1444
1762 --- 68,74 ---- 1445This case is hard. It will be necessary to think of a way for
1763 $rcfile=".perldb"; 1446Emacs to distinguish between terminals with this kind of behavior
1764 } 1447and other terminals that behave subtly differently but are
1765 else { 1448classified the same by termcap; or else find an algorithm for
1766 ! $console = ""; 1449Emacs to use that avoids the difference. Such changes must be
1767 $rcfile="perldb.ini"; 1450tested on many kinds of terminals.
1768 }
1769 1451
14523) The termcap entry is wrong.
1770 1453
1771 For Perl 5: 1454See the file etc/TERMS for information on changes
1772 *** perl/5.001/lib/perl5db.pl.orig Sun Jun 04 21:13:40 1995 1455that are known to be needed in commonly used termcap entries
1773 --- perl/5.001/lib/perl5db.pl Mon Jul 01 17:00:08 1996 1456for certain terminals.
1774 ***************
1775 *** 22,28 ****
1776 $rcfile=".perldb";
1777 }
1778 elsif (-e "con") {
1779 ! $console = "con";
1780 $rcfile="perldb.ini";
1781 }
1782 else {
1783 --- 22,28 ----
1784 $rcfile=".perldb";
1785 }
1786 elsif (-e "con") {
1787 ! $console = "";
1788 $rcfile="perldb.ini";
1789 }
1790 else {
1791 1457
1792* Problems on MS-DOG if DJGPP v2.0 is used to compile Emacs: 14584) The characters sent are incorrect, and clearly cannot be
1459 right for any terminal with the termcap entry you were using.
1793 1460
1794There are two DJGPP library bugs which cause problems: 1461This is unambiguously an Emacs bug, and can probably be fixed
1462in termcap.c, tparam.c, term.c, scroll.c, cm.c or dispnew.c.
1795 1463
1796 * Running `shell-command' (or `compile', or `grep') you get 1464** Control-S and Control-Q commands are ignored completely on a net connection.
1797 `Searching for program: permission denied (EACCES), c:/command.com';
1798 * After you shell to DOS, Ctrl-Break kills Emacs.
1799 1465
1800To work around these bugs, you can use two files in the msdos 1466Some versions of rlogin (and possibly telnet) do not pass flow
1801subdirectory: `is_exec.c' and `sigaction.c'. Compile them and link 1467control characters to the remote system to which they connect.
1802them into the Emacs executable `temacs'; then they will replace the 1468On such systems, emacs on the remote system cannot disable flow
1803incorrect library functions. 1469control on the local system.
1804 1470
1805* When compiling with DJGPP on MS-Windows NT, "config msdos" fails. 1471One way to cure this is to disable flow control on the local host
1472(the one running rlogin, not the one running rlogind) using the
1473stty command, before starting the rlogin process. On many systems,
1474"stty start u stop u" will do this.
1806 1475
1807If the error message is "VDM has been already loaded", this is because 1476Some versions of tcsh will prevent even this from working. One way
1808Windows has a program called `redir.exe' that is incompatible with a 1477around this is to start another shell before starting rlogin, and
1809program by the same name supplied with DJGPP, which is used by 1478issue the stty command to disable flow control from that shell.
1810config.bat. To resolve this, move the DJGPP's `bin' subdirectory to
1811the front of your PATH environment variable.
1812 1479
1813* When compiling with DJGPP on MS-Windows 95, Make fails for some targets 1480If none of these methods work, the best solution is to type
1814like make-docfile. 1481M-x enable-flow-control at the beginning of your emacs session, or
1482if you expect the problem to continue, add a line such as the
1483following to your .emacs (on the host running rlogind):
1815 1484
1816This can happen if long file name support (the setting of environment 1485(enable-flow-control-on "vt200" "vt300" "vt101" "vt131")
1817variable LFN) when Emacs distribution was unpacked and during
1818compilation are not the same. See the MSDOG section of INSTALL for
1819the explanation of how to avoid this problem.
1820 1486
1821* Emacs compiled for MSDOS cannot find some Lisp files, or other 1487See the entry about spontaneous display of I-search (above) for more
1822run-time support files, when long filename support is enabled. 1488info.
1823 1489
1824Usually, this problem will manifest itself when Emacs exits 1490** Output from Control-V is slow.
1825immediately after flashing the startup screen, because it cannot find
1826the Lisp files it needs to load at startup. Redirect Emacs stdout
1827and stderr to a file to see the error message printed by Emacs.
1828 1491
1829Another manifestation of this problem is that Emacs is unable to load 1492On many bit-map terminals, scrolling operations are fairly slow.
1830the support for editing program sources in languages such as C and 1493Often the termcap entry for the type of terminal in use fails
1831Lisp. 1494to inform Emacs of this. The two lines at the bottom of the screen
1495before a Control-V command are supposed to appear at the top after
1496the Control-V command. If Emacs thinks scrolling the lines is fast,
1497it will scroll them to the top of the screen.
1832 1498
1833This can happen if the Emacs distribution was unzipped without LFN 1499If scrolling is slow but Emacs thinks it is fast, the usual reason is
1834support, thus causing long filenames to be truncated to the first 6 1500that the termcap entry for the terminal you are using does not
1835characters and a numeric tail that Windows 95 normally attaches to it. 1501specify any padding time for the `al' and `dl' strings. Emacs
1836You should unzip the files again with a utility that supports long 1502concludes that these operations take only as much time as it takes to
1837filenames (such as djtar from DJGPP or InfoZip's UnZip program 1503send the commands at whatever line speed you are using. You must
1838compiled with DJGPP v2). The MSDOG section of the file INSTALL 1504fix the termcap entry to specify, for the `al' and `dl', as much
1839explains this issue in more detail. 1505time as the operations really take.
1840 1506
1841Another possible reason for such failures is that Emacs compiled for 1507Currently Emacs thinks in terms of serial lines which send characters
1842MSDOS is used on Windows NT, where long file names are not supported 1508at a fixed rate, so that any operation which takes time for the
1843by this version of Emacs, but the distribution was unpacked by an 1509terminal to execute must also be padded. With bit-map terminals
1844unzip program that preserved the long file names instead of truncating 1510operated across networks, often the network provides some sort of
1845them to DOS 8+3 limits. To be useful on NT, the MSDOS port of Emacs 1511flow control so that padding is never needed no matter how slow
1846must be unzipped by a DOS utility, so that long file names are 1512an operation is. You must still specify a padding time if you want
1847properly truncated. 1513Emacs to realize that the operation takes a long time. This will
1514cause padding characters to be sent unnecessarily, but they do
1515not really cost much. They will be transmitted while the scrolling
1516is happening and then discarded quickly by the terminal.
1848 1517
1849* Emacs compiled with DJGPP complains at startup: 1518Most bit-map terminals provide commands for inserting or deleting
1519multiple lines at once. Define the `AL' and `DL' strings in the
1520termcap entry to say how to do these things, and you will have
1521fast output without wasted padding characters. These strings should
1522each contain a single %-spec saying how to send the number of lines
1523to be scrolled. These %-specs are like those in the termcap
1524`cm' string.
1850 1525
1851 "Wrong type of argument: internal-facep, msdos-menu-active-face" 1526You should also define the `IC' and `DC' strings if your terminal
1527has a command to insert or delete multiple characters. These
1528take the number of positions to insert or delete as an argument.
1852 1529
1853This can happen if you define an environment variable `TERM'. Emacs 1530A `cs' string to set the scrolling region will reduce the amount
1854on MSDOS uses an internal terminal emulator which is disabled if the 1531of motion you see on the screen when part of the screen is scrolled.
1855value of `TERM' is anything but the string "internal". Emacs then
1856works as if its terminal were a dumb glass teletype that doesn't
1857support faces. To work around this, arrange for `TERM' to be
1858undefined when Emacs runs. The best way to do that is to add an
1859[emacs] section to the DJGPP.ENV file which defines an empty value for
1860`TERM'; this way, only Emacs gets the empty value, while the rest of
1861your system works as before.
1862 1532
1863* On MS-Windows 95, Alt-f6 does not get through to Emacs. 1533** You type Control-H (Backspace) expecting to delete characters.
1864 1534
1865This character seems to be trapped by the kernel in Windows 95. 1535Put `stty dec' in your .login file and your problems will disappear
1866You can enter M-f6 by typing ESC f6. 1536after a day or two.
1867 1537
1868* Typing Alt-Shift has strange effects on MS-Windows. 1538The choice of Backspace for erasure was based on confusion, caused by
1539the fact that backspacing causes erasure (later, when you type another
1540character) on most display terminals. But it is a mistake. Deletion
1541of text is not the same thing as backspacing followed by failure to
1542overprint. I do not wish to propagate this confusion by conforming
1543to it.
1869 1544
1870This combination of keys is a command to change keyboard layout. If 1545For this reason, I believe `stty dec' is the right mode to use,
1871you proceed to type another non-modifier key before you let go of Alt 1546and I have designed Emacs to go with that. If there were a thousand
1872and Shift, the Alt and Shift act as modifiers in the usual way. A 1547other control characters, I would define Control-h to delete as well;
1873more permanent work around is to change it to another key combination, 1548but there are not very many other control characters, and I think
1874or disable it in the keyboard control panel. 1549that providing the most mnemonic possible Help character is more
1550important than adapting to people who don't use `stty dec'.
1875 1551
1876* `tparam' reported as a multiply-defined symbol when linking with ncurses. 1552If you are obstinate about confusing buggy overprinting with deletion,
1553you can redefine Backspace in your .emacs file:
1554 (global-set-key "\b" 'delete-backward-char)
1555You can probably access help-command via f1.
1877 1556
1878This problem results from an incompatible change in ncurses, in 1557** Colors are not available on a tty or in xterm.
1879version 1.9.9e approximately. This version is unable to provide a
1880definition of tparm without also defining tparam. This is also
1881incompatible with Terminfo; as a result, the Emacs Terminfo support
1882does not work with this version of ncurses.
1883 1558
1884The fix is to install a newer version of ncurses, such as version 4.2. 1559Emacs 21 supports colors on character terminals and terminal
1560emulators, but this support relies on the terminfo or termcap database
1561entry to specify that the display supports color. Emacs looks at the
1562"Co" capability for the terminal to find out how many colors are
1563supported; it should be non-zero to activate the color support within
1564Emacs. (Most color terminals support 8 or 16 colors.) If your system
1565uses terminfo, the name of the capability equivalent to "Co" is
1566"colors".
1885 1567
1886* Emacs does not start, complaining that it cannot open termcap database file. 1568In addition to the "Co" capability, Emacs needs the "op" (for
1569``original pair'') capability, which tells how to switch the terminal
1570back to the default foreground and background colors. Emacs will not
1571use colors if this capability is not defined. If your terminal entry
1572doesn't provide such a capability, try using the ANSI standard escape
1573sequence \E[00m (that is, define a new termcap/terminfo entry and make
1574it use your current terminal's entry plus \E[00m for the "op"
1575capability).
1887 1576
1888If your system uses Terminfo rather than termcap (most modern 1577Finally, the "NC" capability (terminfo name: "ncv") tells Emacs which
1889systems do), this could happen if the proper version of 1578attributes cannot be used with colors. Setting this capability
1890ncurses is not visible to the Emacs configure script (i.e. it 1579incorrectly might have the effect of disabling colors; try setting
1891cannot be found along the usual path the linker looks for 1580this capability to `0' (zero) and see if that helps.
1892libraries). It can happen because your version of ncurses is
1893obsolete, or is available only in form of binaries.
1894 1581
1895The solution is to install an up-to-date version of ncurses in 1582Emacs uses the database entry for the terminal whose name is the value
1896the developer's form (header files, static libraries and 1583of the environment variable TERM. With `xterm', a common terminal
1897symbolic links); in some GNU/Linux distributions (e.g. Debian) 1584entry that supports color is `xterm-color', so setting TERM's value to
1898it constitutes a separate package. 1585`xterm-color' might activate the color support on an xterm-compatible
1586emulator.
1899 1587
1900* Strange results from format %d in a few cases, on a Sun. 1588Beginning with version 21.4, Emacs supports the --color command-line
1589option which may be used to force Emacs to use one of a few popular
1590modes for getting colors on a tty. For example, --color=ansi8 sets up
1591for using the ANSI-standard escape sequences that support 8 colors.
1901 1592
1902Sun compiler version SC3.0 has been found to miscompile part of 1593Some modes do not use colors unless you turn on the Font-lock mode.
1903editfns.c. The workaround is to compile with some other compiler such 1594Some people have long ago set their `~/.emacs' files to turn on
1904as GCC. 1595Font-lock on X only, so they won't see colors on a tty. The
1596recommended way of turning on Font-lock is by typing "M-x
1597global-font-lock-mode RET" or by customizing the variable
1598`global-font-lock-mode'.
1905 1599
1906* Output from subprocess (such as man or diff) is randomly truncated 1600* Runtime problems specific to individual Unix variants
1907on GNU/Linux systems.
1908 1601
1909This is due to a kernel bug which seems to be fixed in Linux version 1602** GNU/Linux
19101.3.75.
1911 1603
1912* Error messages `internal facep []' happen on GNU/Linux systems. 1604*** GNU/Linux: On Linux-based GNU systems using libc versions 5.4.19 through
16055.4.22, Emacs crashes at startup with a segmentation fault.
1913 1606
1914There is a report that replacing libc.so.5.0.9 with libc.so.5.2.16 1607This problem happens if libc defines the symbol __malloc_initialized.
1915caused this to start happening. People are not sure why, but the 1608One known solution is to upgrade to a newer libc version. 5.4.33 is
1916problem seems unlikely to be in Emacs itself. Some suspect that it 1609known to work.
1917is actually Xlib which won't work with libc.so.5.2.16.
1918 1610
1919Using the old library version is a workaround. 1611*** GNU/Linux: After upgrading to a newer version of Emacs,
1612the Meta key stops working.
1920 1613
1921* On Solaris, Emacs crashes if you use (display-time). 1614This was reported to happen on a GNU/Linux system distributed by
1615Mandrake. The reason is that the previous version of Emacs was
1616modified by Mandrake to make the Alt key act as the Meta key, on a
1617keyboard where the Windows key is the one which produces the Meta
1618modifier. A user who started using a newer version of Emacs, which
1619was not hacked by Mandrake, expected the Alt key to continue to act as
1620Meta, and was astonished when that didn't happen.
1922 1621
1923This can happen if you configure Emacs without specifying the precise 1622The solution is to find out what key on your keyboard produces the Meta
1924version of Solaris that you are using. 1623modifier, and use that key instead. Try all of the keys to the left
1624and to the right of the space bar, together with the `x' key, and see
1625which combination produces "M-x" in the echo area. You can also use
1626the `xmodmap' utility to show all the keys which produce a Meta
1627modifier:
1925 1628
1926* Emacs dumps core on startup, on Solaris. 1629 xmodmap -pk | egrep -i "meta|alt"
1927 1630
1928Bill Sebok says that the cause of this is Solaris 2.4 vendor patch 1631A more convenient way of finding out which keys produce a Meta modifier
1929102303-05, which extends the Solaris linker to deal with the Solaris 1632is to use the `xkbprint' utility, if it's available on your system:
1930Common Desktop Environment's linking needs. You can fix the problem
1931by removing this patch and installing patch 102049-02 instead.
1932However, that linker version won't work with CDE.
1933 1633
1934Solaris 2.5 comes with a linker that has this bug. It is reported that if 1634 xkbprint 0:0 /tmp/k.ps
1935you install all the latest patches (as of June 1996), the bug is fixed.
1936We suspect the crucial patch is one of these, but we don't know
1937for certain.
1938 1635
1939 103093-03: [README] SunOS 5.5: kernel patch (2140557 bytes) 1636This produces a PostScript file `/tmp/k.ps' with a picture of your
1940 102832-01: [README] OpenWindows 3.5: Xview Jumbo Patch (4181613 bytes) 1637keyboard; printing that file on a PostScript printer will show what
1941 103242-04: [README] SunOS 5.5: linker patch (595363 bytes) 1638keys can serve as Meta.
1942 1639
1943(One user reports that the bug was fixed by those patches together 1640The `xkeycaps' also shows a visual representation of the current
1944with patches 102980-04, 103279-01, 103300-02, and 103468-01.) 1641keyboard settings. It also allows to modify them.
1945 1642
1946If you can determine which patch does fix the bug, please tell 1643*** GNU/Linux: low startup on Linux-based GNU systems.
1947bug-gnu-emacs@gnu.org.
1948 1644
1949Meanwhile, the GNU linker links Emacs properly on both Solaris 2.4 and 1645People using systems based on the Linux kernel sometimes report that
1950Solaris 2.5. 1646startup takes 10 to 15 seconds longer than `usual'.
1951 1647
1952* Emacs dumps core if lisp-complete-symbol is called, on Solaris. 1648This is because Emacs looks up the host name when it starts.
1649Normally, this takes negligible time; the extra delay is due to
1650improper system configuration. This problem can occur for both
1651networked and non-networked machines.
1953 1652
1954If you compile Emacs with the -fast or -xO4 option with version 3.0.2 1653Here is how to fix the configuration. It requires being root.
1955of the Sun C compiler, Emacs dumps core when lisp-complete-symbol is
1956called. The problem does not happen if you compile with GCC.
1957 1654
1958* "Cannot find callback list" messages from dialog boxes on HPUX, in 1655**** Networked Case.
1959Emacs built with Motif.
1960 1656
1961This problem resulted from a bug in GCC 2.4.5. Newer GCC versions 1657First, make sure the files `/etc/hosts' and `/etc/host.conf' both
1962such as 2.7.0 fix the problem. 1658exist. The first line in the `/etc/hosts' file should look like this
1659(replace HOSTNAME with your host name):
1963 1660
1964* On Irix 6.0, make tries (and fails) to build a program named unexelfsgi 1661 127.0.0.1 HOSTNAME
1965 1662
1966A compiler bug inserts spaces into the string "unexelfsgi . o" 1663Also make sure that the `/etc/host.conf' files contains the following
1967in src/Makefile. Edit src/Makefile, after configure is run, 1664lines:
1968find that string, and take out the spaces.
1969 1665
1970Compiler fixes in Irix 6.0.1 should eliminate this problem. 1666 order hosts, bind
1667 multi on
1971 1668
1972* "out of virtual swap space" on Irix 5.3 1669Any changes, permanent and temporary, to the host name should be
1670indicated in the `/etc/hosts' file, since it acts a limited local
1671database of addresses and names (e.g., some SLIP connections
1672dynamically allocate ip addresses).
1973 1673
1974This message occurs when the system runs out of swap space due to too 1674**** Non-Networked Case.
1975many large programs running. The solution is either to provide more
1976swap space or to reduce the number of large programs being run. You
1977can check the current status of the swap space by executing the
1978command `swap -l'.
1979 1675
1980You can increase swap space by changing the file /etc/fstab. Adding a 1676The solution described in the networked case applies here as well.
1981line like this: 1677However, if you never intend to network your machine, you can use a
1678simpler solution: create an empty `/etc/host.conf' file. The command
1679`touch /etc/host.conf' suffices to create the file. The `/etc/hosts'
1680file is not necessary with this approach.
1982 1681
1983/usr/swap/swap.more swap swap pri=3 0 0 1682*** GNU/Linux: Emacs on a tty switches the cursor to large blinking block.
1984 1683
1985where /usr/swap/swap.more is a file previously created (for instance 1684This was reported to happen on some GNU/Linux systems which use
1986by using /etc/mkfile), will increase the swap space by the size of 1685ncurses version 5.0, but could be relevant for other versions as well.
1987that file. Execute `swap -m' or reboot the machine to activate the 1686These versions of ncurses come with a `linux' terminfo entry, where
1988new swap area. See the manpages for `swap' and `fstab' for further 1687the "cvvis" capability (termcap "vs") is defined as "\E[?25h\E[?8c"
1989information. 1688(show cursor, change size). This escape sequence switches on a
1689blinking hardware text-mode cursor whose size is a full character
1690cell. This blinking cannot be stopped, since a hardware cursor
1691always blinks.
1990 1692
1991The objectserver daemon can use up lots of memory because it can be 1693A work-around is to redefine the "cvvis" capability so that it
1992swamped with NIS information. It collects information about all users 1694enables a *software* cursor. The software cursor works by inverting
1993on the network that can log on to the host. 1695the colors of the character at point, so what you see is a block
1696cursor that doesn't blink. For this to work, you need to redefine
1697the "cnorm" capability as well, so that it operates on the software
1698cursor instead of the hardware cursor.
1994 1699
1995If you want to disable the objectserver completely, you can execute 1700To this end, run "infocmp linux > linux-term", edit the file
1996the command `chkconfig objectserver off' and reboot. That may disable 1701`linux-term' to make both the "cnorm" and "cvvis" capabilities send
1997some of the window system functionality, such as responding CDROM 1702the sequence "\E[?25h\E[?17;0;64c", and then run "tic linux-term" to
1998icons. 1703produce a modified terminfo entry.
1999 1704
2000You can also remove NIS support from the objectserver. The SGI `admin' 1705Alternatively, if you want a blinking underscore as your Emacs cursor,
2001FAQ has a detailed description on how to do that; see question 35 1706change the "cvvis" capability to send the "\E[?25h\E[?0c" command.
2002("Why isn't the objectserver working?"). The admin FAQ can be found at
2003ftp://viz.tamu.edu/pub/sgi/faq/.
2004 1707
2005* With certain fonts, when the cursor appears on a character, the 1708*** GNU/Linux: Error messages `internal facep []' happen on GNU/Linux systems.
2006character doesn't appear--you get a solid box instead.
2007 1709
2008One user on a Linux-based GNU system reported that this problem went 1710There is a report that replacing libc.so.5.0.9 with libc.so.5.2.16
2009away with installation of a new X server. The failing server was 1711caused this to start happening. People are not sure why, but the
2010XFree86 3.1.1. XFree86 3.1.2 works. 1712problem seems unlikely to be in Emacs itself. Some suspect that it
1713is actually Xlib which won't work with libc.so.5.2.16.
2011 1714
2012* On SunOS 4.1.3, Emacs unpredictably crashes in _yp_dobind_soft. 1715Using the old library version is a workaround.
2013 1716
2014This happens if you configure Emacs specifying just `sparc-sun-sunos4' 1717** Mac OS X
2015on a system that is version 4.1.3. You must specify the precise
2016version number (or let configure figure out the configuration, which
2017it can do perfectly well for SunOS).
2018 1718
2019* On SunOS 4, Emacs processes keep going after you kill the X server 1719*** Mac OS X (Carbon): Environment Variables from dotfiles are ignored.
2020(or log out, if you logged in using X).
2021 1720
2022Someone reported that recompiling with GCC 2.7.0 fixed this problem. 1721When starting Emacs from the Dock or the Finder on Mac OS X, the
1722environment variables that are set up in dotfiles, such as .cshrc or
1723.profile, are ignored. This is because the Finder and Dock are not
1724started from a shell, but instead from the Window Manager itself.
2023 1725
2024* On AIX 4, some programs fail when run in a Shell buffer 1726The workaround for this is to create a .MacOSX/environment.plist file to
2025with an error message like No terminfo entry for "unknown". 1727setup these environment variables. These environment variables will
1728apply to all processes regardless of where they are started.
1729For me information, see http://developer.apple.com/qa/qa2001/qa1067.html.
2026 1730
2027On AIX, many terminal type definitions are not installed by default. 1731*** Mac OS X (Carbon): Process output truncated when using ptys.
2028`unknown' is one of them. Install the "Special Generic Terminal
2029Definitions" to make them defined.
2030 1732
2031* On SunOS, you get linker errors 1733There appears to be a problem with the implementation of pty's on the
2032 ld: Undefined symbol 1734Mac OS X that causes process output to be truncated. To avoid this,
2033 _get_wmShellWidgetClass 1735leave process-connection-type set to its default value of nil.
2034 _get_applicationShellWidgetClass
2035 1736
2036The fix to this is to install patch 100573 for OpenWindows 3.0 1737** FreeBSD
2037or link libXmu statically.
2038 1738
2039* On AIX 4.1.2, linker error messages such as 1739*** FreeBSD 2.1.5: useless symbolic links remain in /tmp or other
2040 ld: 0711-212 SEVERE ERROR: Symbol .__quous, found in the global symbol table 1740directories that have the +t bit.
2041 of archive /usr/lib/libIM.a, was not defined in archive member shr.o.
2042 1741
2043This is a problem in libIM.a. You can work around it by executing 1742This is because of a kernel bug in FreeBSD 2.1.5 (fixed in 2.2).
2044these shell commands in the src subdirectory of the directory where 1743Emacs uses symbolic links to implement file locks. In a directory
2045you build Emacs: 1744with +t bit, the directory owner becomes the owner of the symbolic
1745link, so that it cannot be removed by anyone else.
2046 1746
2047 cp /usr/lib/libIM.a . 1747If you don't like those useless links, you can let Emacs not to using
2048 chmod 664 libIM.a 1748file lock by adding #undef CLASH_DETECTION to config.h.
2049 ranlib libIM.a
2050 1749
2051Then change -lIM to ./libIM.a in the command to link temacs (in 1750*** FreeBSD: Getting a Meta key on the console.
2052Makefile).
2053 1751
2054* Unpredictable segmentation faults on Solaris 2.3 and 2.4. 1752By default, neither Alt nor any other key acts as a Meta key on
1753FreeBSD, but this can be changed using kbdcontrol(1). Dump the
1754current keymap to a file with the command
2055 1755
2056A user reported that this happened in 19.29 when it was compiled with 1756 $ kbdcontrol -d >emacs.kbd
2057the Sun compiler, but not when he recompiled with GCC 2.7.0.
2058 1757
2059We do not know whether something in Emacs is partly to blame for this. 1758Edit emacs.kbd, and give the key you want to be the Meta key the
1759definition `meta'. For instance, if your keyboard has a ``Windows''
1760key with scan code 105, change the line for scan code 105 in emacs.kbd
1761to look like this
2060 1762
2061* Emacs exits with "X protocol error" when run with an X server for 1763 105 meta meta meta meta meta meta meta meta O
2062MS-Windows.
2063 1764
2064A certain X server for Windows had a bug which caused this. 1765to make the Windows key the Meta key. Load the new keymap with
2065Supposedly the newer 32-bit version of this server doesn't have the
2066problem.
2067 1766
2068* Emacs crashes at startup on MSDOS. 1767 $ kbdcontrol -l emacs.kbd
2069 1768
2070Some users report that Emacs 19.29 requires dpmi memory management, 1769** HP-UX
2071and crashes on startup if the system does not have it. We don't yet
2072know why this happens--perhaps these machines don't have enough real
2073memory, or perhaps something is wrong in Emacs or the compiler.
2074However, arranging to use dpmi support is a workaround.
2075 1770
2076You can find out if you have a dpmi host by running go32 without 1771*** HP/UX : Shell mode gives the message, "`tty`: Ambiguous".
2077arguments; it will tell you if it uses dpmi memory. For more
2078information about dpmi memory, consult the djgpp FAQ. (djgpp
2079is the GNU C compiler as packaged for MSDOS.)
2080 1772
2081Compiling Emacs under MSDOS is extremely sensitive for proper memory 1773christos@theory.tn.cornell.edu says:
2082configuration. If you experience problems during compilation, consider
2083removing some or all memory resident programs (notably disk caches)
2084and make sure that your memory managers are properly configured. See
2085the djgpp faq for configuration hints.
2086 1774
2087* A position you specified in .Xdefaults is ignored, using twm. 1775The problem is that in your .cshrc you have something that tries to
1776execute `tty`. If you are not running the shell on a real tty then
1777tty will print "not a tty". Csh expects one word in some places,
1778but tty is giving it back 3.
2088 1779
2089twm normally ignores "program-specified" positions. 1780The solution is to add a pair of quotes around `tty` to make it a single
2090You can tell it to obey them with this command in your `.twmrc' file: 1781word:
2091 1782
2092 UsePPosition "on" #allow clients to request a position 1783if (`tty` == "/dev/console")
2093 1784
2094* Compiling lib-src says there is no rule to make test-distrib.c. 1785should be changed to:
2095 1786
2096This results from a bug in a VERY old version of GNU Sed. To solve 1787if ("`tty`" == "/dev/console")
2097the problem, install the current version of GNU Sed, then rerun
2098Emacs's configure script.
2099 1788
2100* Compiling wakeup, in lib-src, says it can't make wakeup.c. 1789Even better, move things that set up terminal sections out of .cshrc
1790and into .login.
2101 1791
2102This results from a bug in GNU Sed version 2.03. To solve the 1792*** HP/UX: `Pid xxx killed due to text modification or page I/O error'.
2103problem, install the current version of GNU Sed, then rerun Emacs's
2104configure script.
2105 1793
2106* On Sunos 4.1.1, there are errors compiling sysdep.c. 1794On HP/UX, you can get that error when the Emacs executable is on an NFS
1795file system. HP/UX responds this way if it tries to swap in a page and
1796does not get a response from the server within a timeout whose default
1797value is just ten seconds.
2107 1798
2108If you get errors such as 1799If this happens to you, extend the timeout period.
2109 1800
2110 "sysdep.c", line 2017: undefined structure or union 1801*** HP/UX: Emacs is slow using X11R5.
2111 "sysdep.c", line 2017: undefined structure or union
2112 "sysdep.c", line 2019: nodename undefined
2113 1802
2114This can result from defining LD_LIBRARY_PATH. It is very tricky 1803This happens if you use the MIT versions of the X libraries--it
2115to use that environment variable with Emacs. The Emacs configure 1804doesn't run as fast as HP's version. People sometimes use the version
2116script links many test programs with the system libraries; you must 1805because they see the HP version doesn't have the libraries libXaw.a,
2117make sure that the libraries available to configure are the same 1806libXmu.a, libXext.a and others. HP/UX normally doesn't come with
2118ones available when you build Emacs. 1807those libraries installed. To get good performance, you need to
1808install them and rebuild Emacs.
2119 1809
2120* The right Alt key works wrong on German HP keyboards (and perhaps 1810*** HP/UX: The right Alt key works wrong on German HP keyboards (and perhaps
2121other non-English HP keyboards too). 1811other non-English HP keyboards too).
2122 1812
2123This is because HPUX defines the modifiers wrong in X. Here is a 1813This is because HP-UX defines the modifiers wrong in X. Here is a
2124shell script to fix the problem; be sure that it is run after VUE 1814shell script to fix the problem; be sure that it is run after VUE
2125configures the X server. 1815configures the X server.
2126 1816
@@ -2137,212 +1827,221 @@ configures the X server.
2137 add mod2 = Mode_switch 1827 add mod2 = Mode_switch
2138 EOF 1828 EOF
2139 1829
2140* The Emacs window disappears when you type M-q. 1830*** HP/UX: "Cannot find callback list" messages from dialog boxes in
1831Emacs built with Motif.
2141 1832
2142Some versions of the Open Look window manager interpret M-q as a quit 1833This problem resulted from a bug in GCC 2.4.5. Newer GCC versions
2143command for whatever window you are typing at. If you want to use 1834such as 2.7.0 fix the problem.
2144Emacs with that window manager, you should try to configure the window
2145manager to use some other command. You can disable the
2146shortcut keys entirely by adding this line to ~/.OWdefaults:
2147 1835
2148 OpenWindows.WindowMenuAccelerators: False 1836*** HP/UX: Emacs does not recognize the AltGr key.
2149 1837
2150* Emacs does not notice when you release the mouse. 1838To fix this, set up a file ~/.dt/sessions/sessionetc with executable
1839rights, containing this text:
2151 1840
2152There are reports that this happened with (some) Microsoft mice and 1841--------------------------------
2153that replacing the mouse made it stop. 1842xmodmap 2> /dev/null - << EOF
1843keysym Alt_L = Meta_L
1844keysym Alt_R = Meta_R
1845EOF
2154 1846
2155* Trouble using ptys on IRIX, or running out of ptys. 1847xmodmap - << EOF
1848clear mod1
1849keysym Mode_switch = NoSymbol
1850add mod1 = Meta_L
1851keysym Meta_R = Mode_switch
1852add mod2 = Mode_switch
1853EOF
1854--------------------------------
2156 1855
2157The program mkpts (which may be in `/usr/adm' or `/usr/sbin') needs to 1856*** HP/UX: Large file support is disabled.
2158be set-UID to root, or non-root programs like Emacs will not be able
2159to allocate ptys reliably.
2160 1857
2161* On Irix 5.2, unexelfsgi.c can't find cmplrs/stsupport.h. 1858See the comments in src/s/hpux10.h.
2162 1859
2163The file cmplrs/stsupport.h was included in the wrong file set in the 1860*** HP/UX 11.0: Emacs makes HP/UX 11.0 crash.
2164Irix 5.2 distribution. You can find it in the optional fileset
2165compiler_dev, or copy it from some other Irix 5.2 system. A kludgy
2166workaround is to change unexelfsgi.c to include sym.h instead of
2167syms.h.
2168 1861
2169* Slow startup on Linux-based GNU systems. 1862This is a bug in HPUX; HPUX patch PHKL_16260 is said to fix it.
2170 1863
2171People using systems based on the Linux kernel sometimes report that 1864** AIX
2172startup takes 10 to 15 seconds longer than `usual'.
2173 1865
2174This is because Emacs looks up the host name when it starts. 1866*** AIX: Trouble using ptys.
2175Normally, this takes negligible time; the extra delay is due to
2176improper system configuration. This problem can occur for both
2177networked and non-networked machines.
2178 1867
2179Here is how to fix the configuration. It requires being root. 1868People often install the pty devices on AIX incorrectly.
1869Use `smit pty' to reinstall them properly.
2180 1870
2181** Networked Case 1871*** AIXterm: Your Delete key sends a Backspace to the terminal.
2182 1872
2183First, make sure the files `/etc/hosts' and `/etc/host.conf' both 1873The solution is to include in your .Xdefaults the lines:
2184exist. The first line in the `/etc/hosts' file should look like this
2185(replace HOSTNAME with your host name):
2186 1874
2187 127.0.0.1 HOSTNAME 1875 *aixterm.Translations: #override <Key>BackSpace: string(0x7f)
1876 aixterm*ttyModes: erase ^?
2188 1877
2189Also make sure that the `/etc/host.conf' files contains the following 1878This makes your Backspace key send DEL (ASCII 127).
2190lines:
2191 1879
2192 order hosts, bind 1880*** AIX: You get this message when running Emacs:
2193 multi on
2194 1881
2195Any changes, permanent and temporary, to the host name should be 1882 Could not load program emacs
2196indicated in the `/etc/hosts' file, since it acts a limited local 1883 Symbol smtcheckinit in csh is undefined
2197database of addresses and names (e.g., some SLIP connections 1884 Error was: Exec format error
2198dynamically allocate ip addresses).
2199 1885
2200** Non-Networked Case 1886or this one:
2201 1887
2202The solution described in the networked case applies here as well. 1888 Could not load program .emacs
2203However, if you never intend to network your machine, you can use a 1889 Symbol _system_con in csh is undefined
2204simpler solution: create an empty `/etc/host.conf' file. The command 1890 Symbol _fp_trapsta in csh is undefined
2205`touch /etc/host.conf' suffices to create the file. The `/etc/hosts' 1891 Error was: Exec format error
2206file is not necessary with this approach.
2207 1892
2208* On Solaris 2.4, Dired hangs and C-g does not work. Or Emacs hangs 1893These can happen when you try to run on AIX 3.2.5 a program that was
2209forever waiting for termination of a subprocess that is a zombie. 1894compiled with 3.2.4. The fix is to recompile.
2210 1895
2211casper@fwi.uva.nl says the problem is in X11R6. Rebuild libX11.so 1896*** AIX 3.2.4: Releasing Ctrl/Act key has no effect, if Shift is down.
2212after changing the file xc/config/cf/sunLib.tmpl. Change the lines
2213 1897
2214 #if ThreadedX 1898Due to a feature of AIX, pressing or releasing the Ctrl/Act key is
2215 #define SharedX11Reqs -lthread 1899ignored when the Shift, Alt or AltGr keys are held down. This can
2216 #endif 1900lead to the keyboard being "control-locked"--ordinary letters are
1901treated as control characters.
2217 1902
2218to: 1903You can get out of this "control-locked" state by pressing and
1904releasing Ctrl/Act while not pressing or holding any other keys.
2219 1905
2220 #if OSMinorVersion < 4 1906*** AIX 4.2: Emacs gets a segmentation fault at startup.
2221 #if ThreadedX
2222 #define SharedX11Reqs -lthread
2223 #endif
2224 #endif
2225 1907
2226Be sure also to edit x/config/cf/sun.cf so that OSMinorVersion is 4 1908If you are using IBM's xlc compiler, compile emacs.c
2227(as it should be for Solaris 2.4). The file has three definitions for 1909without optimization; that should avoid the problem.
2228OSMinorVersion: the first is for x86, the second for SPARC under
2229Solaris, and the third for SunOS 4. Make sure to update the
2230definition for your type of machine and system.
2231 1910
2232Then do `make Everything' in the top directory of X11R6, to rebuild 1911*** AIX: If linking fails because libXbsd isn't found, check if you
2233the makefiles and rebuild X. The X built this way work only on 1912are compiling with the system's `cc' and CFLAGS containing `-O5'. If
2234Solaris 2.4, not on 2.3. 1913so, you have hit a compiler bug. Please make sure to re-configure
1914Emacs so that it isn't compiled with `-O5'.
2235 1915
2236For multithreaded X to work it is necessary to install patch 1916*** AIX 4.3.x or 4.4: Compiling fails.
2237101925-02 to fix problems in header files [2.4]. You need
2238to reinstall gcc or re-run just-fixinc after installing that
2239patch.
2240 1917
2241However, Frank Rust <frust@iti.cs.tu-bs.de> used a simpler solution: 1918This could happen if you use /bin/c89 as your compiler, instead of
2242he changed 1919the default `cc'. /bin/c89 treats certain warnings, such as benign
2243 #define ThreadedX YES 1920redefinitions of macros, as errors, and fails the build. A solution
2244to 1921is to use the default compiler `cc'.
2245 #define ThreadedX NO
2246in sun.cf and did `make World' to rebuild X11R6. Removing all
2247`-DXTHREAD*' flags and `-lthread' entries from lib/X11/Makefile and
2248typing 'make install' in that directory also seemed to work.
2249 1922
2250* With M-x enable-flow-control, you need to type C-\ twice 1923*** AIX 4: Some programs fail when run in a Shell buffer
2251 to do incremental search--a single C-\ gets no response. 1924with an error message like No terminfo entry for "unknown".
2252 1925
2253This has been traced to communicating with your machine via kermit, 1926On AIX, many terminal type definitions are not installed by default.
2254with C-\ as the kermit escape character. One solution is to use 1927`unknown' is one of them. Install the "Special Generic Terminal
2255another escape character in kermit. One user did 1928Definitions" to make them defined.
2256 1929
2257 set escape-character 17 1930** Solaris
2258 1931
2259in his .kermrc file, to make C-q the kermit escape character. 1932We list bugs in current versions here. Solaris 2.x and 4.x are covered in the
1933section on legacy systems.
2260 1934
2261* The Motif version of Emacs paints the screen a solid color. 1935*** On Solaris, C-x doesn't get through to Emacs when you use the console.
2262 1936
2263This has been observed to result from the following X resource: 1937This is a Solaris feature (at least on Intel x86 cpus). Type C-r
1938C-r C-t, to toggle whether C-x gets through to Emacs.
2264 1939
2265 Emacs*default.attributeFont: -*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-* 1940*** Problem with remote X server on Suns.
2266 1941
2267That the resource has this effect indicates a bug in something, but we 1942On a Sun, running Emacs on one machine with the X server on another
2268do not yet know what. If it is an Emacs bug, we hope someone can 1943may not work if you have used the unshared system libraries. This
2269explain what the bug is so we can fix it. In the mean time, removing 1944is because the unshared libraries fail to use YP for host name lookup.
2270the resource prevents the problem. 1945As a result, the host name you specify may not be recognized.
2271 1946
2272* Emacs gets hung shortly after startup, on Sunos 4.1.3. 1947*** Emacs reports a BadAtom error (from X) running on Solaris 7 or 8.
2273 1948
2274We think this is due to a bug in Sunos. The word is that 1949This happens when Emacs was built on some other version of Solaris.
2275one of these Sunos patches fixes the bug: 1950Rebuild it on Solaris 8.
2276 1951
2277100075-11 100224-06 100347-03 100482-05 100557-02 100623-03 100804-03 101080-01 1952*** On Solaris, CTRL-t is ignored by Emacs when you use
2278100103-12 100249-09 100496-02 100564-07 100630-02 100891-10 101134-01 1953the fr.ISO-8859-15 locale (and maybe other related locales).
2279100170-09 100296-04 100377-09 100507-04 100567-04 100650-02 101070-01 101145-01
2280100173-10 100305-15 100383-06 100513-04 100570-05 100689-01 101071-03 101200-02
2281100178-09 100338-05 100421-03 100536-02 100584-05 100784-01 101072-01 101207-01
2282 1954
2283We don't know which of these patches really matter. If you find out 1955You can fix this by editing the file:
2284which ones, please inform bug-gnu-emacs@gnu.org.
2285 1956
2286* Emacs aborts while starting up, only when run without X. 1957 /usr/openwin/lib/locale/iso8859-15/Compose
2287 1958
2288This problem often results from compiling Emacs with GCC when GCC was 1959Near the bottom there is a line that reads:
2289installed incorrectly. The usual error in installing GCC is to
2290specify --includedir=/usr/include. Installation of GCC makes
2291corrected copies of the system header files. GCC is supposed to use
2292the corrected copies in preference to the original system headers.
2293Specifying --includedir=/usr/include causes the original system header
2294files to be used. On some systems, the definition of ioctl in the
2295original system header files is invalid for ANSI C and causes Emacs
2296not to work.
2297 1960
2298The fix is to reinstall GCC, and this time do not specify --includedir 1961 Ctrl<t> <quotedbl> <Y> : "\276" threequarters
2299when you configure it. Then recompile Emacs. Specifying --includedir
2300is appropriate only in very special cases and it should *never* be the
2301same directory where system header files are kept.
2302 1962
2303* On Solaris 2.x, GCC complains "64 bit integer types not supported" 1963that should read:
2304 1964
2305This suggests that GCC is not installed correctly. Most likely you 1965 Ctrl<T> <quotedbl> <Y> : "\276" threequarters
2306are using GCC 2.7.2.3 (or earlier) on Solaris 2.6 (or later); this
2307does not work without patching. To run GCC 2.7.2.3 on Solaris 2.6 or
2308later, you must patch fixinc.svr4 and reinstall GCC from scratch as
2309described in the Solaris FAQ
2310<http://www.wins.uva.nl/pub/solaris/solaris2.html>. A better fix is
2311to upgrade to GCC 2.8.1 or later.
2312 1966
2313* The Compose key on a DEC keyboard does not work as Meta key. 1967Note the lower case <t>. Changing this line should make C-t work.
2314 1968
2315This shell command should fix it: 1969*** When using M-x dbx with the SparcWorks debugger, the `up' and `down'
1970commands do not move the arrow in Emacs.
2316 1971
2317 xmodmap -e 'keycode 0xb1 = Meta_L' 1972You can fix this by adding the following line to `~/.dbxinit':
2318 1973
2319* Regular expressions matching bugs on SCO systems. 1974 dbxenv output_short_file_name off
2320 1975
2321On SCO, there are problems in regexp matching when Emacs is compiled 1976** Irix
2322with the system compiler. The compiler version is "Microsoft C
2323version 6", SCO 4.2.0h Dev Sys Maintenance Supplement 01/06/93; Quick
2324C Compiler Version 1.00.46 (Beta). The solution is to compile with
2325GCC.
2326 1977
2327* On Sunos 4, you get the error ld: Undefined symbol __lib_version. 1978*** Irix 5.2: unexelfsgi.c can't find cmplrs/stsupport.h.
2328 1979
2329This is the result of using cc or gcc with the shared library meant 1980The file cmplrs/stsupport.h was included in the wrong file set in the
2330for acc (the Sunpro compiler). Check your LD_LIBRARY_PATH and delete 1981Irix 5.2 distribution. You can find it in the optional fileset
2331/usr/lang/SC2.0.1 or some similar directory. 1982compiler_dev, or copy it from some other Irix 5.2 system. A kludgy
1983workaround is to change unexelfsgi.c to include sym.h instead of
1984syms.h.
2332 1985
2333* You can't select from submenus (in the X toolkit version). 1986*** Irix 5.3: "out of virtual swap space".
2334 1987
2335On certain systems, mouse-tracking and selection in top-level menus 1988This message occurs when the system runs out of swap space due to too
2336works properly with the X toolkit, but neither of them works when you 1989many large programs running. The solution is either to provide more
2337bring up a submenu (such as Bookmarks or Compare or Apply Patch, in 1990swap space or to reduce the number of large programs being run. You
2338the Files menu). 1991can check the current status of the swap space by executing the
1992command `swap -l'.
2339 1993
2340This works on most systems. There is speculation that the failure is 1994You can increase swap space by changing the file /etc/fstab. Adding a
2341due to bugs in old versions of X toolkit libraries, but no one really 1995line like this:
2342knows. If someone debugs this and finds the precise cause, perhaps a 1996
2343workaround can be found. 1997/usr/swap/swap.more swap swap pri=3 0 0
1998
1999where /usr/swap/swap.more is a file previously created (for instance
2000by using /etc/mkfile), will increase the swap space by the size of
2001that file. Execute `swap -m' or reboot the machine to activate the
2002new swap area. See the manpages for `swap' and `fstab' for further
2003information.
2004
2005The objectserver daemon can use up lots of memory because it can be
2006swamped with NIS information. It collects information about all users
2007on the network that can log on to the host.
2008
2009If you want to disable the objectserver completely, you can execute
2010the command `chkconfig objectserver off' and reboot. That may disable
2011some of the window system functionality, such as responding CDROM
2012icons.
2013
2014You can also remove NIS support from the objectserver. The SGI `admin'
2015FAQ has a detailed description on how to do that; see question 35
2016("Why isn't the objectserver working?"). The admin FAQ can be found at
2017ftp://viz.tamu.edu/pub/sgi/faq/.
2018
2019*** Irix 5.3: Emacs crashes in utmpname.
2344 2020
2345* Unusable default font on SCO 3.2v4. 2021This problem is fixed in Patch 3175 for Irix 5.3.
2022It is also fixed in Irix versions 6.2 and up.
2023
2024*** Irix 6.0: Make tries (and fails) to build a program named unexelfsgi.
2025
2026A compiler bug inserts spaces into the string "unexelfsgi . o"
2027in src/Makefile. Edit src/Makefile, after configure is run,
2028find that string, and take out the spaces.
2029
2030Compiler fixes in Irix 6.0.1 should eliminate this problem.
2031
2032*** Irix 6.5: Emacs crashes on the SGI R10K, when compiled with GCC.
2033
2034This seems to be fixed in GCC 2.95.
2035
2036*** Trouble using ptys on IRIX, or running out of ptys.
2037
2038The program mkpts (which may be in `/usr/adm' or `/usr/sbin') needs to
2039be set-UID to root, or non-root programs like Emacs will not be able
2040to allocate ptys reliably.
2041
2042** SCO Unix and UnixWare
2043
2044*** SCO 3.2v4: Unusable default font.
2346 2045
2347The Open Desktop environment comes with default X resource settings 2046The Open Desktop environment comes with default X resource settings
2348that tell Emacs to use a variable-width font. Emacs cannot use such 2047that tell Emacs to use a variable-width font. Emacs cannot use such
@@ -2377,258 +2076,309 @@ Open Desktop display.
2377These resource files are not normally shared across a network of SCO 2076These resource files are not normally shared across a network of SCO
2378machines; you must create the file on each machine individually. 2077machines; you must create the file on each machine individually.
2379 2078
2380* rcs2log gives you the awk error message "too many fields". 2079*** Regular expressions matching bugs on SCO systems.
2381
2382This is due to an arbitrary limit in certain versions of awk.
2383The solution is to use gawk (GNU awk).
2384
2385* Emacs is slow using X11R5 on HP/UX.
2386
2387This happens if you use the MIT versions of the X libraries--it
2388doesn't run as fast as HP's version. People sometimes use the version
2389because they see the HP version doesn't have the libraries libXaw.a,
2390libXmu.a, libXext.a and others. HP/UX normally doesn't come with
2391those libraries installed. To get good performance, you need to
2392install them and rebuild Emacs.
2393 2080
2394* Loading fonts is very slow. 2081On SCO, there are problems in regexp matching when Emacs is compiled
2082with the system compiler. The compiler version is "Microsoft C
2083version 6", SCO 4.2.0h Dev Sys Maintenance Supplement 01/06/93; Quick
2084C Compiler Version 1.00.46 (Beta). The solution is to compile with
2085GCC.
2395 2086
2396You might be getting scalable fonts instead of precomputed bitmaps. 2087*** UnixWare 2.1: Error 12 (virtual memory exceeded) when dumping Emacs.
2397Known scalable font directories are "Type1" and "Speedo". A font
2398directory contains scalable fonts if it contains the file
2399"fonts.scale".
2400 2088
2401If this is so, re-order your X windows font path to put the scalable 2089Paul Abrahams (abrahams@acm.org) reports that with the installed
2402font directories last. See the documentation of `xset' for details. 2090virtual memory settings for UnixWare 2.1.2, an Error 12 occurs during
2091the "make" that builds Emacs, when running temacs to dump emacs. That
2092error indicates that the per-process virtual memory limit has been
2093exceeded. The default limit is probably 32MB. Raising the virtual
2094memory limit to 40MB should make it possible to finish building Emacs.
2403 2095
2404With some X servers, it may be necessary to take the scalable font 2096You can do this with the command `ulimit' (sh) or `limit' (csh).
2405directories out of your path entirely, at least for Emacs 19.26. 2097But you have to be root to do it.
2406Changes in the future may make this unnecessary.
2407 2098
2408* On AIX 3.2.4, releasing Ctrl/Act key has no effect, if Shift is down. 2099According to Martin Sohnius, you can also retune this in the kernel:
2409 2100
2410Due to a feature of AIX, pressing or releasing the Ctrl/Act key is 2101 # /etc/conf/bin/idtune SDATLIM 33554432 ## soft data size limit
2411ignored when the Shift, Alt or AltGr keys are held down. This can 2102 # /etc/conf/bin/idtune HDATLIM 33554432 ## hard "
2412lead to the keyboard being "control-locked"--ordinary letters are 2103 # /etc/conf/bin/idtune SVMMSIZE unlimited ## soft process size limit
2413treated as control characters. 2104 # /etc/conf/bin/idtune HVMMSIZE unlimited ## hard "
2105 # /etc/conf/bin/idbuild -B
2414 2106
2415You can get out of this "control-locked" state by pressing and 2107(He recommends you not change the stack limit, though.)
2416releasing Ctrl/Act while not pressing or holding any other keys. 2108These changes take effect when you reboot.
2417 2109
2418* display-time causes kernel problems on ISC systems. 2110* Runtime problems specific to MS-Windows
2419 2111
2420Under Interactive Unix versions 3.0.1 and 4.0 (and probably other 2112** Emacs exits with "X protocol error" when run with an X server for MS-Windows.
2421versions), display-time causes the loss of large numbers of STREVENT
2422cells. Eventually the kernel's supply of these cells is exhausted.
2423This makes emacs and the whole system run slow, and can make other
2424processes die, in particular pcnfsd.
2425 2113
2426Other emacs functions that communicate with remote processes may have 2114A certain X server for Windows had a bug which caused this.
2427the same problem. Display-time seems to be far the worst. 2115Supposedly the newer 32-bit version of this server doesn't have the
2116problem.
2428 2117
2429The only known fix: Don't run display-time. 2118** Known problems with the MS-Windows port of Emacs 21.2.
2430 2119
2431* On Solaris, C-x doesn't get through to Emacs when you use the console. 2120Frames are not refreshed while the File or Font dialog or a pop-up menu
2121is displayed. This also means help text for pop-up menus is not
2122displayed at all. This is because message handling under Windows is
2123synchronous, so we cannot handle repaint (or any other) messages while
2124waiting for a system function to return the result of the dialog or
2125pop-up menu interaction.
2432 2126
2433This is a Solaris feature (at least on Intel x86 cpus). Type C-r 2127Windows 95 and Windows NT up to version 4.0 do not support help text
2434C-r C-t, to toggle whether C-x gets through to Emacs. 2128for menus. Help text is only available in later versions of Windows.
2435 2129
2436* Error message `Symbol's value as variable is void: x', followed by 2130There are problems with display if mouse-tracking is enabled and the
2437 segmentation fault and core dump. 2131mouse is moved off a frame, over another frame then back over the first
2132frame. A workaround is to click the left mouse button inside the frame
2133after moving back into it.
2438 2134
2439This has been tracked to a bug in tar! People report that tar erroneously 2135Some minor flickering still persists during mouse-tracking, although
2440added a line like this at the beginning of files of Lisp code: 2136not as severely as in 21.1.
2441 2137
2442 x FILENAME, N bytes, B tape blocks 2138Emacs can sometimes abort when non-ASCII text, possibly with null
2139characters, is copied and pasted into a buffer.
2443 2140
2444If your tar has this problem, install GNU tar--if you can manage to 2141An inactive cursor remains in an active window after the Windows
2445untar it :-). 2142Manager driven switch of the focus, until a key is pressed.
2446 2143
2447* Link failure when using acc on a Sun. 2144Windows input methods are not recognized by Emacs (as of v21.2). Some
2145of these input methods cause the keyboard to send characters encoded
2146in the appropriate coding system (e.g., ISO 8859-1 for Latin-1
2147characters, ISO 8859-8 for Hebrew characters, etc.). To make this
2148work, set the keyboard coding system to the appropriate value after
2149you activate the Windows input method. For example, if you activate
2150the Hebrew input method, type "C-x RET k iso-8859-8 RET". (Emacs
2151ought to recognize the Windows language-change event and set up the
2152appropriate keyboard encoding automatically, but it doesn't do that
2153yet.)
2448 2154
2449To use acc, you need additional options just before the libraries, such as 2155The %b specifier for format-time-string does not produce abbreviated
2156month names with consistent widths for some locales on some versions
2157of Windows. This is caused by a deficiency in the underlying system
2158library function.
2450 2159
2451 /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1 2160** Problems running Perl under Emacs on MS-Windows NT/95.
2452 2161
2453and you need to add -lansi just before -lc. 2162`perl -de 0' just hangs when executed in an Emacs subshell.
2163The fault lies with Perl (indirectly with Windows NT/95).
2454 2164
2455The precise file names depend on the compiler version, so we 2165The problem is that the Perl debugger explicitly opens a connection to
2456cannot easily arrange to supply them. 2166"CON", which is the DOS/NT equivalent of "/dev/tty", for interacting
2167with the user.
2457 2168
2458* Link failure on IBM AIX 1.3 ptf 0013. 2169On Unix, this is okay, because Emacs (or the shell?) creates a
2170pseudo-tty so that /dev/tty is really the pipe Emacs is using to
2171communicate with the subprocess.
2459 2172
2460There is a real duplicate definition of the function `_slibc_free' in 2173On NT, this fails because CON always refers to the handle for the
2461the library /lib/libc_s.a (just do nm on it to verify). The 2174relevant console (approximately equivalent to a tty), and cannot be
2462workaround/fix is: 2175redirected to refer to the pipe Emacs assigned to the subprocess as
2176stdin.
2463 2177
2464 cd /lib 2178A workaround is to modify perldb.pl to use STDIN/STDOUT instead of CON.
2465 ar xv libc_s.a NLtmtime.o
2466 ar dv libc_s.a NLtmtime.o
2467 2179
2468* Undefined symbols _dlopen, _dlsym and/or _dlclose on a Sun. 2180For Perl 4:
2469 2181
2470If you see undefined symbols _dlopen, _dlsym, or _dlclose when linking 2182 *** PERL/LIB/PERLDB.PL.orig Wed May 26 08:24:18 1993
2471with -lX11, compile and link against the file mit/util/misc/dlsym.c in 2183 --- PERL/LIB/PERLDB.PL Mon Jul 01 15:28:16 1996
2472the MIT X11R5 distribution. Alternatively, link temacs using shared 2184 ***************
2473libraries with s/sunos4shr.h. (This doesn't work if you use the X 2185 *** 68,74 ****
2474toolkit.) 2186 $rcfile=".perldb";
2187 }
2188 else {
2189 ! $console = "con";
2190 $rcfile="perldb.ini";
2191 }
2475 2192
2476If you get the additional error that the linker could not find 2193 --- 68,74 ----
2477lib_version.o, try extracting it from X11/usr/lib/X11/libvim.a in 2194 $rcfile=".perldb";
2478X11R4, then use it in the link. 2195 }
2196 else {
2197 ! $console = "";
2198 $rcfile="perldb.ini";
2199 }
2479 2200
2480* Error messages `Wrong number of arguments: #<subr where-is-internal>, 5'
2481 2201
2482This typically results from having the powerkey library loaded. 2202 For Perl 5:
2483Powerkey was designed for Emacs 19.22. It is obsolete now because 2203 *** perl/5.001/lib/perl5db.pl.orig Sun Jun 04 21:13:40 1995
2484Emacs 19 now has this feature built in; and powerkey also calls 2204 --- perl/5.001/lib/perl5db.pl Mon Jul 01 17:00:08 1996
2485where-is-internal in an obsolete way. 2205 ***************
2206 *** 22,28 ****
2207 $rcfile=".perldb";
2208 }
2209 elsif (-e "con") {
2210 ! $console = "con";
2211 $rcfile="perldb.ini";
2212 }
2213 else {
2214 --- 22,28 ----
2215 $rcfile=".perldb";
2216 }
2217 elsif (-e "con") {
2218 ! $console = "";
2219 $rcfile="perldb.ini";
2220 }
2221 else {
2486 2222
2487So the fix is to arrange not to load powerkey. 2223** On MS-Windows 95, Alt-f6 does not get through to Emacs.
2488 2224
2489* In Shell mode, you get a ^M at the end of every line. 2225This character seems to be trapped by the kernel in Windows 95.
2226You can enter M-f6 by typing ESC f6.
2490 2227
2491This happens to people who use tcsh, because it is trying to be too 2228** Typing Alt-Shift has strange effects on MS-Windows.
2492smart. It sees that the Shell uses terminal type `unknown' and turns
2493on the flag to output ^M at the end of each line. You can fix the
2494problem by adding this to your .cshrc file:
2495 2229
2496 if ($?EMACS) then 2230This combination of keys is a command to change keyboard layout. If
2497 if ($EMACS == "t") then 2231you proceed to type another non-modifier key before you let go of Alt
2498 unset edit 2232and Shift, the Alt and Shift act as modifiers in the usual way. A
2499 stty -icrnl -onlcr -echo susp ^Z 2233more permanent work around is to change it to another key combination,
2500 endif 2234or disable it in the keyboard control panel.
2501 endif
2502 2235
2503* An error message such as `X protocol error: BadMatch (invalid 2236** Interrupting Cygwin port of Bash from Emacs doesn't work.
2504parameter attributes) on protocol request 93'.
2505 2237
2506This comes from having an invalid X resource, such as 2238Cygwin 1.x builds of the ported Bash cannot be interrupted from the
2507 emacs*Cursor: black 2239MS-Windows version of Emacs. This is due to some change in the Bash
2508(which is invalid because it specifies a color name for something 2240port or in the Cygwin library which apparently make Bash ignore the
2509that isn't a color.) 2241keyboard interrupt event sent by Emacs to Bash. (Older Cygwin ports
2242of Bash, up to b20.1, did receive SIGINT from Emacs.)
2510 2243
2511The fix is to correct your X resources. 2244** Accessing remote files with ange-ftp hangs the MS-Windows version of Emacs.
2512 2245
2513* Undefined symbols when linking on Sunos 4.1 using --with-x-toolkit. 2246If the FTP client is the Cygwin port of GNU `ftp', this appears to be
2247due to some bug in the Cygwin DLL or some incompatibility between it
2248and the implementation of asynchronous subprocesses in the Windows
2249port of Emacs. Specifically, some parts of the FTP server responses
2250are not flushed out, apparently due to buffering issues, which
2251confuses ange-ftp.
2514 2252
2515If you get the undefined symbols _atowc _wcslen, _iswprint, _iswspace, 2253The solution is to downgrade to an older version of the Cygwin DLL
2516_iswcntrl, _wcscpy, and _wcsncpy, then you need to add -lXwchar after 2254(version 1.3.2 was reported to solve the problem), or use the stock
2517-lXaw in the command that links temacs. 2255Windows FTP client, usually found in the `C:\WINDOWS' or 'C:\WINNT'
2256directory. To force ange-ftp use the stock Windows client, set the
2257variable `ange-ftp-ftp-program-name' to the absolute file name of the
2258client's executable. For example:
2518 2259
2519This problem seems to arise only when the international language 2260 (setq ange-ftp-ftp-program-name "c:/windows/ftp.exe")
2520extensions to X11R5 are installed.
2521 2261
2522* Typing C-c C-c in Shell mode kills your X server. 2262If you want to stick with the Cygwin FTP client, you can work around
2263this problem by putting this in your `.emacs' file:
2523 2264
2524This happens with Linux kernel 1.0 thru 1.04, approximately. The workaround is 2265 (setq ange-ftp-ftp-program-args '("-i" "-n" "-g" "-v" "--prompt" "")
2525to define SIGNALS_VIA_CHARACTERS in config.h and recompile Emacs.
2526Newer Linux kernel versions don't have this problem.
2527 2266
2528* src/Makefile and lib-src/Makefile are truncated--most of the file missing. 2267** lpr commands don't work on MS-Windows with some cheap printers.
2529 2268
2530This can happen if configure uses GNU sed version 2.03. That version 2269This problem may also strike other platforms, but the solution is
2531had a bug. GNU sed version 2.05 works properly. 2270likely to be a global one, and not Emacs specific.
2532 2271
2533* Slow startup on X11R6 with X windows. 2272Many cheap inkjet, and even some cheap laser printers, do not
2273print plain text anymore, they will only print through graphical
2274printer drivers. A workaround on MS-Windows is to use Windows' basic
2275built in editor to print (this is possibly the only useful purpose it
2276has):
2534 2277
2535If Emacs takes two minutes to start up on X11R6, see if your X 2278(setq printer-name "") ;; notepad takes the default
2536resources specify any Adobe fonts. That causes the type-1 font 2279(setq lpr-command "notepad") ;; notepad
2537renderer to start up, even if the font you asked for is not a type-1 2280(setq lpr-switches nil) ;; not needed
2538font. 2281(setq lpr-printer-switch "/P") ;; run notepad as batch printer
2539 2282
2540One way to avoid this problem is to eliminate the type-1 fonts from 2283** Antivirus software interacts badly with the MS-Windows version of Emacs.
2541your font path, like this:
2542 2284
2543 xset -fp /usr/X11R6/lib/X11/fonts/Type1/ 2285The usual manifestation of these problems is that subprocesses don't
2286work or even wedge the entire system. In particular, "M-x shell RET"
2287was reported to fail to work. But other commands also sometimes don't
2288work when an antivirus package is installed.
2544 2289
2545* Pull-down menus appear in the wrong place, in the toolkit version of Emacs. 2290The solution is to switch the antivirus software to a less aggressive
2291mode (e.g., disable the ``auto-protect'' feature), or even uninstall
2292or disable it entirely.
2546 2293
2547An X resource of this form can cause the problem: 2294** On MS-Windows 95/98/ME, subprocesses do not terminate properly.
2548 2295
2549 Emacs*geometry: 80x55+0+0 2296This is a limitation of the Operating System, and can cause problems
2297when shutting down Windows. Ensure that all subprocesses are exited
2298cleanly before exiting Emacs. For more details, see the FAQ at
2299http://www.gnu.org/software/emacs/windows/.
2550 2300
2551This resource is supposed to apply, and does apply, to the menus 2301** MS-Windows 95/98/ME crashes when Emacs invokes non-existent programs.
2552individually as well as to Emacs frames. If that is not what you
2553want, rewrite the resource.
2554 2302
2555To check thoroughly for such resource specifications, use `xrdb 2303When a program you are trying to run is not found on the PATH,
2556-query' to see what resources the X server records, and also look at 2304Windows might respond by crashing or locking up your system. In
2557the user's ~/.Xdefaults and ~/.Xdefaults-* files. 2305particular, this has been reported when trying to compile a Java
2306program in JDEE when javac.exe is installed, but not on the system
2307PATH.
2558 2308
2559* --with-x-toolkit version crashes when used with shared libraries. 2309** Pressing the mouse button on MS-Windows does not give a mouse-2 event.
2560 2310
2561On some systems, including Sunos 4 and DGUX 5.4.2 and perhaps others, 2311This is usually a problem with the mouse driver. Because most Windows
2562unexec doesn't work properly with the shared library for the X 2312programs do not do anything useful with the middle mouse button, many
2563toolkit. You might be able to work around this by using a nonshared 2313mouse drivers allow you to define the wheel press to do something
2564libXt.a library. The real fix is to upgrade the various versions of 2314different. Some drivers do not even have the option to generate a
2565unexec and/or ralloc. We think this has been fixed on Sunos 4 2315middle button press. In such cases, setting the wheel press to
2566and Solaris in version 19.29. 2316"scroll" sometimes works if you press the button twice. Trying a
2317generic mouse driver might help.
2567 2318
2568* `make install' fails on install-doc with `Error 141'. 2319** Scrolling the mouse wheel on MS-Windows always scrolls the top window.
2569 2320
2570This happens on Ultrix 4.2 due to failure of a pipeline of tar 2321This is another common problem with mouse drivers. Instead of
2571commands. We don't know why they fail, but the bug seems not to be in 2322generating scroll events, some mouse drivers try to fake scroll bar
2572Emacs. The workaround is to run the shell command in install-doc by 2323movement. But they are not intelligent enough to handle multiple
2573hand. 2324scroll bars within a frame. Trying a generic mouse driver might help.
2574 2325
2575* --with-x-toolkit option configures wrong on BSD/386. 2326** Mail sent through Microsoft Exchange in some encodings appears to be
2327mangled and is not seen correctly in Rmail or Gnus. We don't know
2328exactly what happens, but it isn't an Emacs problem in cases we've
2329seen.
2576 2330
2577This problem is due to bugs in the shell in version 1.0 of BSD/386. 2331** On MS-Windows, you cannot use the right-hand ALT key and the left-hand
2578The workaround is to edit the configure file to use some other shell, 2332CTRL key together to type a Control-Meta character.
2579such as bash.
2580 2333
2581* Subprocesses remain, hanging but not zombies, on Sunos 5.3. 2334This is a consequence of a misfeature beyond Emacs's control.
2582 2335
2583A bug in Sunos 5.3 causes Emacs subprocesses to remain after Emacs 2336Under Windows, the AltGr key on international keyboards generates key
2584exits. Sun patch # 101415-02 is part of the fix for this, but it only 2337events with the modifiers Right-Alt and Left-Ctrl. Since Emacs cannot
2585applies to ptys, and doesn't fix the problem with subprocesses 2338distinguish AltGr from an explicit Right-Alt and Left-Ctrl
2586communicating through pipes. 2339combination, whenever it sees Right-Alt and Left-Ctrl it assumes that
2340AltGr has been pressed. The variable `w32-recognize-altgr' can be set
2341to nil to tell Emacs that AltGr is really Ctrl and Alt.
2587 2342
2588* Mail is lost when sent to local aliases. 2343** Under some X-servers running on MS-Windows, Emacs' display is incorrect.
2589 2344
2590Many emacs mail user agents (VM and rmail, for instance) use the 2345The symptoms are that Emacs does not completely erase blank areas of the
2591sendmail.el library. This library can arrange for mail to be 2346screen during scrolling or some other screen operations (e.g., selective
2592delivered by passing messages to the /usr/lib/sendmail (usually) 2347display or when killing a region). M-x recenter will cause the screen
2593program . In doing so, it passes the '-t' flag to sendmail, which 2348to be completely redisplayed and the "extra" characters will disappear.
2594means that the name of the recipient of the message is not on the
2595command line and, therefore, that sendmail must parse the message to
2596obtain the destination address.
2597 2349
2598There is a bug in the SunOS4.1.1 and SunOS4.1.3 versions of sendmail. 2350This is known to occur under Exceed 6, and possibly earlier versions
2599In short, when given the -t flag, the SunOS sendmail won't recognize 2351as well; it is reportedly solved in version 6.2.0.16 and later. The
2600non-local (i.e. NIS) aliases. It has been reported that the Solaris 2352problem lies in the X-server settings.
26012.x versions of sendmail do not have this bug. For those using SunOS
26024.1, the best fix is to install sendmail V8 or IDA sendmail (which
2603have other advantages over the regular sendmail as well). At the time
2604of this writing, these official versions are available:
2605 2353
2606 Sendmail V8 on ftp.cs.berkeley.edu in /ucb/sendmail: 2354There are reports that you can solve the problem with Exceed by
2607 sendmail.8.6.9.base.tar.Z (the base system source & documentation) 2355running `Xconfig' from within NT, choosing "X selection", then
2608 sendmail.8.6.9.cf.tar.Z (configuration files) 2356un-checking the boxes "auto-copy X selection" and "auto-paste to X
2609 sendmail.8.6.9.misc.tar.Z (miscellaneous support programs) 2357selection".
2610 sendmail.8.6.9.xdoc.tar.Z (extended documentation, with postscript)
2611 2358
2612 IDA sendmail on vixen.cso.uiuc.edu in /pub: 2359Of this does not work, please inform bug-gnu-emacs@gnu.org. Then
2613 sendmail-5.67b+IDA-1.5.tar.gz 2360please call support for your X-server and see if you can get a fix.
2361If you do, please send it to bug-gnu-emacs@gnu.org so we can list it
2362here.
2614 2363
2615* On AIX, you get this message when running Emacs: 2364* Build-time problems
2616 2365
2617 Could not load program emacs 2366** Configuration
2618 Symbol smtcheckinit in csh is undefined
2619 Error was: Exec format error
2620 2367
2621or this one: 2368*** The `configure' script doesn't find the jpeg library.
2622 2369
2623 Could not load program .emacs 2370There are reports that this happens on some systems because the linker
2624 Symbol _system_con in csh is undefined 2371by default only looks for shared libraries, but jpeg distribution by
2625 Symbol _fp_trapsta in csh is undefined 2372default only installs a nonshared version of the library, `libjpeg.a'.
2626 Error was: Exec format error
2627 2373
2628These can happen when you try to run on AIX 3.2.5 a program that was 2374If this is the problem, you can configure the jpeg library with the
2629compiled with 3.2.4. The fix is to recompile. 2375`--enable-shared' option and then rebuild libjpeg. This produces a
2376shared version of libjpeg, which you need to install. Finally, rerun
2377the Emacs configure script, which should now find the jpeg library.
2378Alternatively, modify the generated src/Makefile to link the .a file
2379explicitly, and edit src/config.h to define HAVE_JPEG.
2630 2380
2631* On AIX, you get this compiler error message: 2381*** AIX: You get this compiler error message:
2632 2382
2633 Processing include file ./XMenuInt.h 2383 Processing include file ./XMenuInt.h
2634 1501-106: (S) Include file X11/Xlib.h not found. 2384 1501-106: (S) Include file X11/Xlib.h not found.
@@ -2637,293 +2387,249 @@ This means your system was installed with only the X11 runtime i.d
2637libraries. You have to find your sipo (bootable tape) and install 2387libraries. You have to find your sipo (bootable tape) and install
2638X11Dev... with smit. 2388X11Dev... with smit.
2639 2389
2640* You "lose characters" after typing Compose Character key. 2390** Compilation
2641
2642This is because the Compose Character key is defined as the keysym
2643Multi_key, and Emacs (seeing that) does the proper X11
2644character-composition processing. If you don't want your Compose key
2645to do that, you can redefine it with xmodmap.
2646
2647For example, here's one way to turn it into a Meta key:
2648
2649 xmodmap -e "keysym Multi_key = Meta_L"
2650
2651If all users at your site of a particular keyboard prefer Meta to
2652Compose, you can make the remapping happen automatically by adding the
2653xmodmap command to the xdm setup script for that display.
2654
2655* C-z just refreshes the screen instead of suspending Emacs.
2656
2657You are probably using a shell that doesn't support job control, even
2658though the system itself is capable of it. Either use a different shell,
2659or set the variable `cannot-suspend' to a non-nil value.
2660
2661* Watch out for .emacs files and EMACSLOADPATH environment vars
2662
2663These control the actions of Emacs.
2664~/.emacs is your Emacs init file.
2665EMACSLOADPATH overrides which directories the function
2666"load" will search.
2667
2668If you observe strange problems, check for these and get rid
2669of them, then try again.
2670
2671* After running emacs once, subsequent invocations crash.
2672
2673Some versions of SVR4 have a serious bug in the implementation of the
2674mmap () system call in the kernel; this causes emacs to run correctly
2675the first time, and then crash when run a second time.
2676
2677Contact your vendor and ask for the mmap bug fix; in the mean time,
2678you may be able to work around the problem by adding a line to your
2679operating system description file (whose name is reported by the
2680configure script) that reads:
2681#define SYSTEM_MALLOC
2682This makes Emacs use memory less efficiently, but seems to work around
2683the kernel bug.
2684
2685* Inability to send an Alt-modified key, when Emacs is communicating
2686directly with an X server.
2687
2688If you have tried to bind an Alt-modified key as a command, and it
2689does not work to type the command, the first thing you should check is
2690whether the key is getting through to Emacs. To do this, type C-h c
2691followed by the Alt-modified key. C-h c should say what kind of event
2692it read. If it says it read an Alt-modified key, then make sure you
2693have made the key binding correctly.
2694
2695If C-h c reports an event that doesn't have the Alt modifier, it may
2696be because your X server has no key for the Alt modifier. The X
2697server that comes from MIT does not set up the Alt modifier by
2698default.
2699 2391
2700If your keyboard has keys named Alt, you can enable them as follows: 2392*** Building Emacs over NFS fails with ``Text file busy''.
2701
2702 xmodmap -e 'add mod2 = Alt_L'
2703 xmodmap -e 'add mod2 = Alt_R'
2704
2705If the keyboard has just one key named Alt, then only one of those
2706commands is needed. The modifier `mod2' is a reasonable choice if you
2707are using an unmodified MIT version of X. Otherwise, choose any
2708modifier bit not otherwise used.
2709 2393
2710If your keyboard does not have keys named Alt, you can use some other 2394This was reported to happen when building Emacs on a GNU/Linux system
2711keys. Use the keysym command in xmodmap to turn a function key (or 2395(RedHat Linux 6.2) using a build directory automounted from Solaris
2712some other 'spare' key) into Alt_L or into Alt_R, and then use the 2396(SunOS 5.6) file server, but it might not be limited to that
2713commands show above to make them modifier keys. 2397configuration alone. Presumably, the NFS server doesn't commit the
2714 2398files' data to disk quickly enough, and the Emacs executable file is
2715Note that if you have Alt keys but no Meta keys, Emacs translates Alt 2399left ``busy'' for several seconds after Emacs has finished dumping
2716into Meta. This is because of the great importance of Meta in Emacs. 2400itself. This causes the subsequent commands which invoke the dumped
2717 2401Emacs executable to fail with the above message.
2718* `Pid xxx killed due to text modification or page I/O error'
2719
2720On HP/UX, you can get that error when the Emacs executable is on an NFS
2721file system. HP/UX responds this way if it tries to swap in a page and
2722does not get a response from the server within a timeout whose default
2723value is just ten seconds.
2724
2725If this happens to you, extend the timeout period.
2726 2402
2727* `expand-file-name' fails to work on any but the machine you dumped Emacs on. 2403In some of these cases, a time skew between the NFS server and the
2404machine where Emacs is built is detected and reported by GNU Make
2405(it says that some of the files have modification time in the future).
2406This might be a symptom of NFS-related problems.
2728 2407
2729On Ultrix, if you use any of the functions which look up information 2408If the NFS server runs on Solaris, apply the Solaris patch 105379-05
2730in the passwd database before dumping Emacs (say, by using 2409(Sunos 5.6: /kernel/misc/nfssrv patch). If that doesn't work, or if
2731expand-file-name in site-init.el), then those functions will not work 2410you have a different version of the OS or the NFS server, you can
2732in the dumped Emacs on any host but the one Emacs was dumped on. 2411force the NFS server to use 1KB blocks, which was reported to fix the
2412problem albeit at a price of slowing down file I/O. You can force 1KB
2413blocks by specifying the "-o rsize=1024,wsize=1024" options to the
2414`mount' command, or by adding ",rsize=1024,wsize=1024" to the mount
2415options in the appropriate system configuration file, such as
2416`/etc/auto.home'.
2733 2417
2734The solution? Don't use expand-file-name in site-init.el, or in 2418Alternatively, when Make fails due to this problem, you could wait for
2735anything it loads. Yuck - some solution. 2419a few seconds and then invoke Make again. In one particular case,
2420waiting for 10 or more seconds between the two Make invocations seemed
2421to work around the problem.
2736 2422
2737I'm not sure why this happens; if you can find out exactly what is 2423Similar problems can happen if your machine NFS-mounts a directory
2738going on, and perhaps find a fix or a workaround, please let us know. 2424onto itself. Suppose the Emacs sources live in `/usr/local/src' and
2739Perhaps the YP functions cache some information, the cache is included 2425you are working on the host called `marvin'. Then an entry in the
2740in the dumped Emacs, and is then inaccurate on any other host. 2426`/etc/fstab' file like the following is asking for trouble:
2741 2427
2742* On some variants of SVR4, Emacs does not work at all with X. 2428 marvin:/usr/local/src /usr/local/src ...options.omitted...
2743 2429
2744Try defining BROKEN_FIONREAD in your config.h file. If this solves 2430The solution is to remove this line from `etc/fstab'.
2745the problem, please send a bug report to tell us this is needed; be
2746sure to say exactly what type of machine and system you are using.
2747 2431
2748* Linking says that the functions insque and remque are undefined. 2432*** Building Emacs with GCC 2.9x fails in the `src' directory.
2749 2433
2750Change oldXMenu/Makefile by adding insque.o to the variable OBJS. 2434This may happen if you use a development version of GNU `cpp' from one
2435of the GCC snapshots between Oct 2000 and Feb 2001, or from a released
2436version of GCC newer than 2.95.2 which was prepared around those
2437dates; similar problems were reported with some snapshots of GCC 3.1
2438around Sep 30 2001. The preprocessor in those versions is
2439incompatible with a traditional Unix cpp (e.g., it expands ".." into
2440". .", which breaks relative file names that reference the parent
2441directory; or inserts TAB characters before lines that set Make
2442variables).
2751 2443
2752* Emacs fails to understand most Internet host names, even though 2444The solution is to make sure the preprocessor is run with the
2753the names work properly with other programs on the same system. 2445`-traditional' option. The `configure' script does that automatically
2754* Emacs won't work with X-windows if the value of DISPLAY is HOSTNAME:0. 2446when it detects the known problems in your cpp, but you might hit some
2755* GNUs can't make contact with the specified host for nntp. 2447unknown ones. To force the `configure' script to use `-traditional',
2448run the script like this:
2756 2449
2757This typically happens on Suns and other systems that use shared 2450 CPP='gcc -E -traditional' ./configure ...
2758libraries. The cause is that the site has installed a version of the
2759shared library which uses a name server--but has not installed a
2760similar version of the unshared library which Emacs uses.
2761 2451
2762The result is that most programs, using the shared library, work with 2452(replace the ellipsis "..." with any additional arguments you pass to
2763the nameserver, but Emacs does not. 2453the script).
2764 2454
2765The fix is to install an unshared library that corresponds to what you 2455Note that this problem does not pertain to the MS-Windows port of
2766installed in the shared library, and then relink Emacs. 2456Emacs, since it doesn't use the preprocessor to generate Makefiles.
2767 2457
2768On SunOS 4.1, simply define HAVE_RES_INIT. 2458*** src/Makefile and lib-src/Makefile are truncated--most of the file missing.
2459*** Compiling wakeup, in lib-src, says it can't make wakeup.c.
2769 2460
2770If you have already installed the name resolver in the file libresolv.a, 2461This can happen if configure uses GNU sed version 2.03. That version
2771then you need to compile Emacs to use that library. The easiest way to 2462had a bug. GNU sed version 2.05 works properly.To solve the
2772do this is to add to config.h a definition of LIBS_SYSTEM, LIBS_MACHINE 2463problem, install the current version of GNU Sed, then rerun Emacs's
2773or LIB_STANDARD which uses -lresolv. Watch out! If you redefine a macro 2464configure script.
2774that is already in use in your configuration to supply some other libraries,
2775be careful not to lose the others.
2776 2465
2777Thus, you could start by adding this to config.h: 2466*** Compiling lib-src says there is no rule to make test-distrib.c.
2778 2467
2779#define LIBS_SYSTEM -lresolv 2468This results from a bug in a VERY old version of GNU Sed. To solve
2469the problem, install the current version of GNU Sed, then rerun
2470Emacs's configure script.
2780 2471
2781Then if this gives you an error for redefining a macro, and you see that 2472*** Building the MS-Windows port with Cygwin GCC can fail.
2782the s- file defines LIBS_SYSTEM as -lfoo -lbar, you could change config.h
2783again to say this:
2784 2473
2785#define LIBS_SYSTEM -lresolv -lfoo -lbar 2474Emacs may not build using recent Cygwin builds of GCC, such as Cygwin
2475version 1.1.8, using the default configure settings. It appears to be
2476necessary to specify the -mwin32 flag when compiling, and define
2477__MSVCRT__, like so:
2786 2478
2787* On a Sun running SunOS 4.1.1, you get this error message from GNU ld: 2479 configure --with-gcc --cflags -mwin32 --cflags -D__MSVCRT__
2788 2480
2789 /lib/libc.a(_Q_sub.o): Undefined symbol __Q_get_rp_rd referenced from text segment 2481*** Building the MS-Windows port fails with a CreateProcess failure.
2790 2482
2791The problem is in the Sun shared C library, not in GNU ld. 2483Some versions of mingw32 make on some versions of Windows do not seem
2484to detect the shell correctly. Try "make SHELL=cmd.exe", or if that
2485fails, try running make from Cygwin bash instead.
2792 2486
2793The solution is to install Patch-ID# 100267-03 from Sun. 2487*** Building the MS-Windows port with Leim fails in the `leim' directory.
2794 2488
2795* Self documentation messages are garbled. 2489The error message might be something like this:
2796 2490
2797This means that the file `etc/DOC-...' doesn't properly correspond 2491 Converting d:/emacs-21.3/leim/CXTERM-DIC/4Corner.tit to quail-package...
2798with the Emacs executable. Redumping Emacs and then installing the 2492 Invalid ENCODE: value in TIT dictionary
2799corresponding pair of files should fix the problem. 2493 NMAKE : fatal error U1077: '"../src/obj-spd/i386/emacs.exe"' : return code
2494 '0xffffffff'
2495 Stop.
2800 2496
2801* Trouble using ptys on AIX. 2497This can happen if the Leim distribution is unpacked with a program
2498which converts the `*.tit' files to DOS-style CR-LF text format. The
2499`*.tit' files in the leim/CXTERM-DIC directory require Unix-style line
2500endings to compile properly, because Emacs reads them without any code
2501or EOL conversions.
2802 2502
2803People often install the pty devices on AIX incorrectly. 2503The solution is to make sure the program used to unpack Leim does not
2804Use `smit pty' to reinstall them properly. 2504change the files' line endings behind your back. The GNU FTP site has
2505in the `/gnu/emacs/windows' directory a program called `djtarnt.exe'
2506which can be used to unpack `.tar.gz' and `.zip' archives without
2507mangling them.
2805 2508
2806* Shell mode on HP/UX gives the message, "`tty`: Ambiguous". 2509*** Building `ctags' for MS-Windows with the MinGW port of GCC fails.
2807 2510
2808christos@theory.tn.cornell.edu says: 2511This might happen due to a bug in the MinGW header assert.h, which
2512defines the `assert' macro with a trailing semi-colon. The following
2513patch to assert.h should solve this:
2809 2514
2810The problem is that in your .cshrc you have something that tries to 2515*** include/assert.h.orig Sun Nov 7 02:41:36 1999
2811execute `tty`. If you are not running the shell on a real tty then 2516--- include/assert.h Mon Jan 29 11:49:10 2001
2812tty will print "not a tty". Csh expects one word in some places, 2517***************
2813but tty is giving it back 3. 2518*** 41,47 ****
2519 /*
2520 * If not debugging, assert does nothing.
2521 */
2522! #define assert(x) ((void)0);
2814 2523
2815The solution is to add a pair of quotes around `tty` to make it a single 2524 #else /* debugging enabled */
2816word:
2817 2525
2818if (`tty` == "/dev/console") 2526--- 41,47 ----
2527 /*
2528 * If not debugging, assert does nothing.
2529 */
2530! #define assert(x) ((void)0)
2819 2531
2820should be changed to: 2532 #else /* debugging enabled */
2821 2533
2822if ("`tty`" == "/dev/console")
2823 2534
2824Even better, move things that set up terminal sections out of .cshrc 2535** Linking
2825and into .login.
2826 2536
2827* Using X Windows, control-shift-leftbutton makes Emacs hang. 2537*** Building Emacs with a system compiler fails to link because of an
2538undefined symbol such as __eprintf which does not appear in Emacs.
2828 2539
2829Use the shell command `xset bc' to make the old X Menu package work. 2540This can happen if some of the libraries linked into Emacs were built
2541with GCC, but Emacs itself is being linked with a compiler other than
2542GCC. Object files compiled with GCC might need some helper functions
2543from libgcc.a, the library which comes with GCC, but the system
2544compiler does not instruct the linker to search libgcc.a during the
2545link stage.
2830 2546
2831* Emacs running under X Windows does not handle mouse clicks. 2547A solution is to link with GCC, like this:
2832* `emacs -geometry 80x20' finds a file named `80x20'.
2833 2548
2834One cause of such problems is having (setq term-file-prefix nil) in 2549 make CC=gcc
2835your .emacs file. Another cause is a bad value of EMACSLOADPATH in
2836the environment.
2837 2550
2838* Emacs gets error message from linker on Sun. 2551Since the .o object files already exist, this will not recompile Emacs
2552with GCC, but just restart by trying again to link temacs.
2839 2553
2840If the error message says that a symbol such as `f68881_used' or 2554*** AIX 1.3 ptf 0013: Link failure.
2841`ffpa_used' or `start_float' is undefined, this probably indicates
2842that you have compiled some libraries, such as the X libraries,
2843with a floating point option other than the default.
2844 2555
2845It's not terribly hard to make this work with small changes in 2556There is a real duplicate definition of the function `_slibc_free' in
2846crt0.c together with linking with Fcrt1.o, Wcrt1.o or Mcrt1.o. 2557the library /lib/libc_s.a (just do nm on it to verify). The
2847However, the easiest approach is to build Xlib with the default 2558workaround/fix is:
2848floating point option: -fsoft.
2849 2559
2850* Emacs fails to get default settings from X Windows server. 2560 cd /lib
2561 ar xv libc_s.a NLtmtime.o
2562 ar dv libc_s.a NLtmtime.o
2851 2563
2852The X library in X11R4 has a bug; it interchanges the 2nd and 3rd 2564*** AIX 4.1.2: Linker error messages such as
2853arguments to XGetDefaults. Define the macro XBACKWARDS in config.h to 2565 ld: 0711-212 SEVERE ERROR: Symbol .__quous, found in the global symbol table
2854tell Emacs to compensate for this. 2566 of archive /usr/lib/libIM.a, was not defined in archive member shr.o.
2855 2567
2856I don't believe there is any way Emacs can determine for itself 2568This is a problem in libIM.a. You can work around it by executing
2857whether this problem is present on a given system. 2569these shell commands in the src subdirectory of the directory where
2570you build Emacs:
2858 2571
2859* Keyboard input gets confused after a beep when using a DECserver 2572 cp /usr/lib/libIM.a .
2860 as a concentrator. 2573 chmod 664 libIM.a
2574 ranlib libIM.a
2861 2575
2862This problem seems to be a matter of configuring the DECserver to use 2576Then change -lIM to ./libIM.a in the command to link temacs (in
28637 bit characters rather than 8 bit characters. 2577Makefile).
2864 2578
2865* M-x shell persistently reports "Process shell exited abnormally with code 1". 2579*** Sun with acc: Link failure when using acc on a Sun.
2866 2580
2867This happened on Suns as a result of what is said to be a bug in Sunos 2581To use acc, you need additional options just before the libraries, such as
2868version 4.0.x. The only fix was to reboot the machine.
2869 2582
2870* Programs running under terminal emulator do not recognize `emacs' 2583 /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1
2871 terminal type.
2872 2584
2873The cause of this is a shell startup file that sets the TERMCAP 2585and you need to add -lansi just before -lc.
2874environment variable. The terminal emulator uses that variable to
2875provide the information on the special terminal type that Emacs
2876emulates.
2877 2586
2878Rewrite your shell startup file so that it does not change TERMCAP 2587The precise file names depend on the compiler version, so we
2879in such a case. You could use the following conditional which sets 2588cannot easily arrange to supply them.
2880it only if it is undefined.
2881 2589
2882 if ( ! ${?TERMCAP} ) setenv TERMCAP ~/my-termcap-file 2590*** Linking says that the functions insque and remque are undefined.
2883 2591
2884Or you could set TERMCAP only when you set TERM--which should not 2592Change oldXMenu/Makefile by adding insque.o to the variable OBJS.
2885happen in a non-login shell.
2886 2593
2887* X Windows doesn't work if DISPLAY uses a hostname. 2594*** `tparam' reported as a multiply-defined symbol when linking with ncurses.
2888 2595
2889People have reported kernel bugs in certain systems that cause Emacs 2596This problem results from an incompatible change in ncurses, in
2890not to work with X Windows if DISPLAY is set using a host name. But 2597version 1.9.9e approximately. This version is unable to provide a
2891the problem does not occur if DISPLAY is set to `unix:0.0'. I think 2598definition of tparm without also defining tparam. This is also
2892the bug has to do with SIGIO or FIONREAD. 2599incompatible with Terminfo; as a result, the Emacs Terminfo support
2600does not work with this version of ncurses.
2893 2601
2894You may be able to compensate for the bug by doing (set-input-mode nil nil). 2602The fix is to install a newer version of ncurses, such as version 4.2.
2895However, that has the disadvantage of turning off interrupts, so that
2896you are unable to quit out of a Lisp program by typing C-g.
2897 2603
2898The easy way to do this is to put 2604** Dumping
2899 2605
2900 (setq x-sigio-bug t) 2606*** Linux: Segfault during `make bootstrap' under certain recent versions of the Linux kernel.
2901 2607
2902in your site-init.el file. 2608With certain recent Linux kernels (like the one of Redhat Fedora Core
26091), the new "Exec-shield" functionality is enabled by default, which
2610creates a different memory layout that breaks the emacs dumper.
2903 2611
2904* Problem with remote X server on Suns. 2612You can check the Exec-shield state like this:
2905 2613
2906On a Sun, running Emacs on one machine with the X server on another 2614 cat /proc/sys/kernel/exec-shield
2907may not work if you have used the unshared system libraries. This
2908is because the unshared libraries fail to use YP for host name lookup.
2909As a result, the host name you specify may not be recognized.
2910 2615
2911* Shell mode ignores interrupts on Apollo Domain 2616It returns 1 or 2 when Exec-shield is enabled, 0 otherwise. Please
2617read your system documentation for more details on Exec-shield and
2618associated commands.
2912 2619
2913You may find that M-x shell prints the following message: 2620When Exec-shield is enabled, building Emacs will segfault during the
2621execution of this command:
2914 2622
2915 Warning: no access to tty; thus no job control in this shell... 2623temacs --batch --load loadup [dump|bootstrap]
2916 2624
2917This can happen if there are not enough ptys on your system. 2625To work around this problem, it is necessary to temporarily disable
2918Here is how to make more of them. 2626Exec-shield while building Emacs, using the `setarch' command like
2627this:
2919 2628
2920 % cd /dev 2629 setarch i386 ./configure <configure parameters>
2921 % ls pty* 2630 setarch i386 make <make parameters>
2922 # shows how many pty's you have. I had 8, named pty0 to pty7)
2923 % /etc/crpty 8
2924 # creates eight new pty's
2925 2631
2926* Fatal signal in the command temacs -l loadup inc dump 2632*** Fatal signal in the command temacs -l loadup inc dump.
2927 2633
2928This command is the final stage of building Emacs. It is run by the 2634This command is the final stage of building Emacs. It is run by the
2929Makefile in the src subdirectory, or by build.com on VMS. 2635Makefile in the src subdirectory, or by build.com on VMS.
@@ -2931,14 +2637,14 @@ Makefile in the src subdirectory, or by build.com on VMS.
2931It has been known to get fatal errors due to insufficient swapping 2637It has been known to get fatal errors due to insufficient swapping
2932space available on the machine. 2638space available on the machine.
2933 2639
2934On 68000's, it has also happened because of bugs in the 2640On 68000s, it has also happened because of bugs in the
2935subroutine `alloca'. Verify that `alloca' works right, even 2641subroutine `alloca'. Verify that `alloca' works right, even
2936for large blocks (many pages). 2642for large blocks (many pages).
2937 2643
2938* test-distrib says that the distribution has been clobbered 2644*** test-distrib says that the distribution has been clobbered.
2939* or, temacs prints "Command key out of range 0-127" 2645*** or, temacs prints "Command key out of range 0-127".
2940* or, temacs runs and dumps emacs, but emacs totally fails to work. 2646*** or, temacs runs and dumps emacs, but emacs totally fails to work.
2941* or, temacs gets errors dumping emacs 2647*** or, temacs gets errors dumping emacs.
2942 2648
2943This can be because the .elc files have been garbled. Do not be 2649This can be because the .elc files have been garbled. Do not be
2944fooled by the fact that most of a .elc file is text: these are 2650fooled by the fact that most of a .elc file is text: these are
@@ -2971,7 +2677,7 @@ nonprinting characters, you can fix them:
2971 and remake temacs. 2677 and remake temacs.
2972 7) Remake emacs. It should work now, with valid .elc files. 2678 7) Remake emacs. It should work now, with valid .elc files.
2973 2679
2974* temacs prints "Pure Lisp storage exhausted" 2680*** temacs prints "Pure Lisp storage exhausted".
2975 2681
2976This means that the Lisp code loaded from the .elc and .el 2682This means that the Lisp code loaded from the .elc and .el
2977files during temacs -l loadup inc dump took up more 2683files during temacs -l loadup inc dump took up more
@@ -3000,17 +2706,69 @@ But in some of the cases listed above, this problem is a consequence
3000of something else that is wrong. Be sure to check and fix the real 2706of something else that is wrong. Be sure to check and fix the real
3001problem. 2707problem.
3002 2708
3003* Changes made to .el files do not take effect. 2709*** Linux: Emacs crashes when dumping itself on Mac PPC running Yellow Dog GNU/Linux.
3004 2710
3005You may have forgotten to recompile them into .elc files. 2711The crashes happen inside the function Fmake_symbol; here's a typical
3006Then the old .elc files will be loaded, and your changes 2712C backtrace printed by GDB:
3007will not be seen. To fix this, do M-x byte-recompile-directory
3008and specify the directory that contains the Lisp files.
3009 2713
3010Emacs should print a warning when loading a .elc file which is older 2714 0x190c0c0 in Fmake_symbol ()
3011than the corresponding .el file. 2715 (gdb) where
2716 #0 0x190c0c0 in Fmake_symbol ()
2717 #1 0x1942ca4 in init_obarray ()
2718 #2 0x18b3500 in main ()
2719 #3 0x114371c in __libc_start_main (argc=5, argv=0x7ffff5b4, envp=0x7ffff5cc,
2720
2721This could happen because GCC version 2.95 and later changed the base
2722of the load address to 0x10000000. Emacs needs to be told about this,
2723but we currently cannot do that automatically, because that breaks
2724other versions of GNU/Linux on the MacPPC. Until we find a way to
2725distinguish between the Yellow Dog and the other varieties of
2726GNU/Linux systems on the PPC, you will have to manually uncomment the
2727following section near the end of the file src/m/macppc.h in the Emacs
2728distribution:
2729
2730 #if 0 /* This breaks things on PPC GNU/Linux except for Yellowdog,
2731 even with identical GCC, as, ld. Let's take it out until we
2732 know what's really going on here. */
2733 /* GCC 2.95 and newer on GNU/Linux PPC changed the load address to
2734 0x10000000. */
2735 #if defined __linux__
2736 #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
2737 #define DATA_SEG_BITS 0x10000000
2738 #endif
2739 #endif
2740 #endif /* 0 */
3012 2741
3013* The dumped Emacs crashes when run, trying to write pure data. 2742Remove the "#if 0" and "#endif" directives which surround this, save
2743the file, and then reconfigure and rebuild Emacs. The dumping process
2744should now succeed.
2745
2746*** HPUX 10.20: Emacs crashes during dumping on the HPPA machine.
2747
2748This seems to be due to a GCC bug; it is fixed in GCC 2.8.1.
2749
2750** Installation
2751
2752*** Installing Emacs gets an error running `install-info'.
2753
2754You need to install a recent version of Texinfo; that package
2755supplies the `install-info' command.
2756
2757** First execution
2758
2759*** Emacs binary is not in executable format, and cannot be run.
2760
2761This was reported to happen when Emacs is built in a directory mounted
2762via NFS, for some combinations of NFS client and NFS server.
2763Usually, the file `emacs' produced in these cases is full of
2764binary null characters, and the `file' utility says:
2765
2766 emacs: ASCII text, with no line terminators
2767
2768We don't know what exactly causes this failure. A work-around is to
2769build Emacs in a directory on a local disk.
2770
2771*** The dumped Emacs crashes when run, trying to write pure data.
3014 2772
3015Two causes have been seen for such problems. 2773Two causes have been seen for such problems.
3016 2774
@@ -3025,356 +2783,621 @@ of its files pure after dumping, but the variables declared static and
3025not initialized are not supposed to be pure. On these systems you 2783not initialized are not supposed to be pure. On these systems you
3026may need to add "#define static" to the m- or the s- file. 2784may need to add "#define static" to the m- or the s- file.
3027 2785
3028* Compilation errors on VMS. 2786* Emacs 19 problems
3029 2787
3030You will get warnings when compiling on VMS because there are 2788** Error messages `Wrong number of arguments: #<subr where-is-internal>, 5'.
3031variable names longer than 32 (or whatever it is) characters.
3032This is not an error. Ignore it.
3033 2789
3034VAX C does not support #if defined(foo). Uses of this construct 2790This typically results from having the powerkey library loaded.
3035were removed, but some may have crept back in. They must be rewritten. 2791Powerkey was designed for Emacs 19.22. It is obsolete now because
2792Emacs 19 now has this feature built in; and powerkey also calls
2793where-is-internal in an obsolete way.
3036 2794
3037There is a bug in the C compiler which fails to sign extend characters 2795So the fix is to arrange not to load powerkey.
3038in conditional expressions. The bug is:
3039 char c = -1, d = 1;
3040 int i;
3041 2796
3042 i = d ? c : d; 2797* Runtime problems on legacy systems
3043The result is i == 255; the fix is to typecast the char in the
3044conditional expression as an (int). Known occurrences of such
3045constructs in Emacs have been fixed.
3046 2798
3047* rmail gets error getting new mail 2799This section covers bugs reported on very old hardware or software.
2800If you are using hardware and an operating system shipped after 2000,
2801it is unlikely you will see any of these.
3048 2802
3049rmail gets new mail from /usr/spool/mail/$USER using a program 2803** Ancient operating systems
3050called `movemail'. This program interlocks with /bin/mail using
3051the protocol defined by /bin/mail.
3052 2804
3053There are two different protocols in general use. One of them uses 2805*** ISC Unix
3054the `flock' system call. The other involves creating a lock file;
3055`movemail' must be able to write in /usr/spool/mail in order to do
3056this. You control which one is used by defining, or not defining,
3057the macro MAIL_USE_FLOCK in config.h or the m- or s- file it includes.
3058IF YOU DON'T USE THE FORM OF INTERLOCKING THAT IS NORMAL ON YOUR
3059SYSTEM, YOU CAN LOSE MAIL!
3060 2806
3061If your system uses the lock file protocol, and fascist restrictions 2807**** ISC: display-time causes kernel problems on ISC systems.
3062prevent ordinary users from writing the lock files in /usr/spool/mail,
3063you may need to make `movemail' setgid to a suitable group such as
3064`mail'. You can use these commands (as root):
3065 2808
3066 chgrp mail movemail 2809Under Interactive Unix versions 3.0.1 and 4.0 (and probably other
3067 chmod 2755 movemail 2810versions), display-time causes the loss of large numbers of STREVENT
2811cells. Eventually the kernel's supply of these cells is exhausted.
2812This makes emacs and the whole system run slow, and can make other
2813processes die, in particular pcnfsd.
3068 2814
3069If your system uses the lock file protocol, and fascist restrictions 2815Other emacs functions that communicate with remote processes may have
3070prevent ordinary users from writing the lock files in /usr/spool/mail, 2816the same problem. Display-time seems to be far the worst.
3071you may need to make `movemail' setgid to a suitable group such as
3072`mail'. To do this, use the following commands (as root) after doing the
3073make install.
3074 2817
3075 chgrp mail movemail 2818The only known fix: Don't run display-time.
3076 chmod 2755 movemail
3077 2819
3078Installation normally copies movemail from the build directory to an 2820*** SunOS
3079installation directory which is usually under /usr/local/lib. The
3080installed copy of movemail is usually in the directory
3081/usr/local/lib/emacs/VERSION/TARGET. You must change the group and
3082mode of the installed copy; changing the group and mode of the build
3083directory copy is ineffective.
3084 2821
3085* Emacs spontaneously displays "I-search: " at the bottom of the screen. 2822**** Sun 4.0.x: M-x shell persistently reports "Process shell exited abnormally with code 1".
3086 2823
3087This means that Control-S/Control-Q (XON/XOFF) "flow control" is being 2824This happened on Suns as a result of what is said to be a bug in Sunos
3088used. C-s/C-q flow control is bad for Emacs editors because it takes 2825version 4.0.x. The only fix was to reboot the machine.
3089away C-s and C-q as user commands. Since editors do not output long
3090streams of text without user commands, there is no need for a
3091user-issuable "stop output" command in an editor; therefore, a
3092properly designed flow control mechanism would transmit all possible
3093input characters without interference. Designing such a mechanism is
3094easy, for a person with at least half a brain.
3095 2826
3096There are three possible reasons why flow control could be taking place: 2827**** SunOS4.1.1 and SunOS4.1.3: Mail is lost when sent to local aliases.
3097 2828
3098 1) Terminal has not been told to disable flow control 2829Many emacs mail user agents (VM and rmail, for instance) use the
3099 2) Insufficient padding for the terminal in use 2830sendmail.el library. This library can arrange for mail to be
3100 3) Some sort of terminal concentrator or line switch is responsible 2831delivered by passing messages to the /usr/lib/sendmail (usually)
2832program . In doing so, it passes the '-t' flag to sendmail, which
2833means that the name of the recipient of the message is not on the
2834command line and, therefore, that sendmail must parse the message to
2835obtain the destination address.
3101 2836
3102First of all, many terminals have a set-up mode which controls whether 2837There is a bug in the SunOS4.1.1 and SunOS4.1.3 versions of sendmail.
3103they generate XON/XOFF flow control characters. This must be set to 2838In short, when given the -t flag, the SunOS sendmail won't recognize
3104"no XON/XOFF" in order for Emacs to work. Sometimes there is an 2839non-local (i.e. NIS) aliases. It has been reported that the Solaris
3105escape sequence that the computer can send to turn flow control off 28402.x versions of sendmail do not have this bug. For those using SunOS
3106and on. If so, perhaps the termcap `ti' string should turn flow 28414.1, the best fix is to install sendmail V8 or IDA sendmail (which
3107control off, and the `te' string should turn it on. 2842have other advantages over the regular sendmail as well). At the time
2843of this writing, these official versions are available:
3108 2844
3109Once the terminal has been told "no flow control", you may find it 2845 Sendmail V8 on ftp.cs.berkeley.edu in /ucb/sendmail:
3110needs more padding. The amount of padding Emacs sends is controlled 2846 sendmail.8.6.9.base.tar.Z (the base system source & documentation)
3111by the termcap entry for the terminal in use, and by the output baud 2847 sendmail.8.6.9.cf.tar.Z (configuration files)
3112rate as known by the kernel. The shell command `stty' will print 2848 sendmail.8.6.9.misc.tar.Z (miscellaneous support programs)
3113your output baud rate; `stty' with suitable arguments will set it if 2849 sendmail.8.6.9.xdoc.tar.Z (extended documentation, with postscript)
3114it is wrong. Setting to a higher speed causes increased padding. If
3115the results are wrong for the correct speed, there is probably a
3116problem in the termcap entry. You must speak to a local Unix wizard
3117to fix this. Perhaps you are just using the wrong terminal type.
3118 2850
3119For terminals that lack a "no flow control" mode, sometimes just 2851 IDA sendmail on vixen.cso.uiuc.edu in /pub:
3120giving lots of padding will prevent actual generation of flow control 2852 sendmail-5.67b+IDA-1.5.tar.gz
3121codes. You might as well try it.
3122 2853
3123If you are really unlucky, your terminal is connected to the computer 2854**** Sunos 5.3: Subprocesses remain, hanging but not zombies.
3124through a concentrator which sends XON/XOFF flow control to the
3125computer, or it insists on sending flow control itself no matter how
3126much padding you give it. Unless you can figure out how to turn flow
3127control off on this concentrator (again, refer to your local wizard),
3128you are screwed! You should have the terminal or concentrator
3129replaced with a properly designed one. In the mean time, some drastic
3130measures can make Emacs semi-work.
3131 2855
3132You can make Emacs ignore C-s and C-q and let the operating system 2856A bug in Sunos 5.3 causes Emacs subprocesses to remain after Emacs
3133handle them. To do this on a per-session basis, just type M-x 2857exits. Sun patch # 101415-02 is part of the fix for this, but it only
3134enable-flow-control RET. You will see a message that C-\ and C-^ are 2858applies to ptys, and doesn't fix the problem with subprocesses
3135now translated to C-s and C-q. (Use the same command M-x 2859communicating through pipes.
3136enable-flow-control to turn *off* this special mode. It toggles flow
3137control handling.)
3138 2860
3139If C-\ and C-^ are inconvenient for you (for example, if one of them 2861**** Sunos 4: You get the error ld: Undefined symbol __lib_version.
3140is the escape character of your terminal concentrator), you can choose
3141other characters by setting the variables flow-control-c-s-replacement
3142and flow-control-c-q-replacement. But choose carefully, since all
3143other control characters are already used by emacs.
3144 2862
3145IMPORTANT: if you type C-s by accident while flow control is enabled, 2863This is the result of using cc or gcc with the shared library meant
3146Emacs output will freeze, and you will have to remember to type C-q in 2864for acc (the Sunpro compiler). Check your LD_LIBRARY_PATH and delete
3147order to continue. 2865/usr/lang/SC2.0.1 or some similar directory.
3148 2866
3149If you work in an environment where a majority of terminals of a 2867**** SunOS 4.1.3: Emacs unpredictably crashes in _yp_dobind_soft.
3150certain type are flow control hobbled, you can use the function
3151`enable-flow-control-on' to turn on this flow control avoidance scheme
3152automatically. Here is an example:
3153 2868
3154(enable-flow-control-on "vt200" "vt300" "vt101" "vt131") 2869This happens if you configure Emacs specifying just `sparc-sun-sunos4'
2870on a system that is version 4.1.3. You must specify the precise
2871version number (or let configure figure out the configuration, which
2872it can do perfectly well for SunOS).
3155 2873
3156If this isn't quite correct (e.g. you have a mixture of flow-control hobbled 2874**** Sunos 4.1.3: Emacs gets hung shortly after startup.
3157and good vt200 terminals), you can still run enable-flow-control
3158manually.
3159 2875
3160I have no intention of ever redesigning the Emacs command set for the 2876We think this is due to a bug in Sunos. The word is that
3161assumption that terminals use C-s/C-q flow control. XON/XOFF flow 2877one of these Sunos patches fixes the bug:
3162control technique is a bad design, and terminals that need it are bad
3163merchandise and should not be purchased. Now that X is becoming
3164widespread, XON/XOFF seems to be on the way out. If you can get some
3165use out of GNU Emacs on inferior terminals, more power to you, but I
3166will not make Emacs worse for properly designed systems for the sake
3167of inferior systems.
3168 2878
3169* Control-S and Control-Q commands are ignored completely. 2879100075-11 100224-06 100347-03 100482-05 100557-02 100623-03 100804-03 101080-01
2880100103-12 100249-09 100496-02 100564-07 100630-02 100891-10 101134-01
2881100170-09 100296-04 100377-09 100507-04 100567-04 100650-02 101070-01 101145-01
2882100173-10 100305-15 100383-06 100513-04 100570-05 100689-01 101071-03 101200-02
2883100178-09 100338-05 100421-03 100536-02 100584-05 100784-01 101072-01 101207-01
3170 2884
3171For some reason, your system is using brain-damaged C-s/C-q flow 2885We don't know which of these patches really matter. If you find out
3172control despite Emacs's attempts to turn it off. Perhaps your 2886which ones, please inform bug-gnu-emacs@gnu.org.
3173terminal is connected to the computer through a concentrator
3174that wants to use flow control.
3175 2887
3176You should first try to tell the concentrator not to use flow control. 2888**** SunOS 4: Emacs processes keep going after you kill the X server
3177If you succeed in this, try making the terminal work without 2889(or log out, if you logged in using X).
3178flow control, as described in the preceding section.
3179 2890
3180If that line of approach is not successful, map some other characters 2891Someone reported that recompiling with GCC 2.7.0 fixed this problem.
3181into C-s and C-q using keyboard-translate-table. The example above
3182shows how to do this with C-^ and C-\.
3183 2892
3184* Control-S and Control-Q commands are ignored completely on a net connection. 2893**** SunOS: You get linker errors
2894 ld: Undefined symbol
2895 _get_wmShellWidgetClass
2896 _get_applicationShellWidgetClass
3185 2897
3186Some versions of rlogin (and possibly telnet) do not pass flow 2898The fix to this is to install patch 100573 for OpenWindows 3.0
3187control characters to the remote system to which they connect. 2899or link libXmu statically.
3188On such systems, emacs on the remote system cannot disable flow
3189control on the local system.
3190 2900
3191One way to cure this is to disable flow control on the local host 2901*** Apollo Domain
3192(the one running rlogin, not the one running rlogind) using the
3193stty command, before starting the rlogin process. On many systems,
3194"stty start u stop u" will do this.
3195 2902
3196Some versions of tcsh will prevent even this from working. One way 2903**** Shell mode ignores interrupts on Apollo Domain.
3197around this is to start another shell before starting rlogin, and
3198issue the stty command to disable flow control from that shell.
3199 2904
3200If none of these methods work, the best solution is to type 2905You may find that M-x shell prints the following message:
3201M-x enable-flow-control at the beginning of your emacs session, or
3202if you expect the problem to continue, add a line such as the
3203following to your .emacs (on the host running rlogind):
3204 2906
3205(enable-flow-control-on "vt200" "vt300" "vt101" "vt131") 2907 Warning: no access to tty; thus no job control in this shell...
3206 2908
3207See the entry about spontaneous display of I-search (above) for more 2909This can happen if there are not enough ptys on your system.
3208info. 2910Here is how to make more of them.
3209 2911
3210* Screen is updated wrong, but only on one kind of terminal. 2912 % cd /dev
2913 % ls pty*
2914 # shows how many pty's you have. I had 8, named pty0 to pty7)
2915 % /etc/crpty 8
2916 # creates eight new pty's
3211 2917
3212This could mean that the termcap entry you are using for that 2918*** Irix
3213terminal is wrong, or it could mean that Emacs has a bug handing
3214the combination of features specified for that terminal.
3215 2919
3216The first step in tracking this down is to record what characters 2920*** Irix 6.2: No visible display on mips-sgi-irix6.2 when compiling with GCC 2.8.1.
3217Emacs is sending to the terminal. Execute the Lisp expression
3218(open-termscript "./emacs-script") to make Emacs write all
3219terminal output into the file ~/emacs-script as well; then do
3220what makes the screen update wrong, and look at the file
3221and decode the characters using the manual for the terminal.
3222There are several possibilities:
3223 2921
32241) The characters sent are correct, according to the terminal manual. 2922This problem went away after installing the latest IRIX patches
2923as of 8 Dec 1998.
3225 2924
3226In this case, there is no obvious bug in Emacs, and most likely you 2925The same problem has been reported on Irix 6.3.
3227need more padding, or possibly the terminal manual is wrong.
3228 2926
32292) The characters sent are incorrect, due to an obscure aspect 2927*** Irix 6.3: substituting environment variables in file names
3230 of the terminal behavior not described in an obvious way 2928in the minibuffer gives peculiar error messages such as
3231 by termcap.
3232 2929
3233This case is hard. It will be necessary to think of a way for 2930 Substituting nonexistent environment variable ""
3234Emacs to distinguish between terminals with this kind of behavior
3235and other terminals that behave subtly differently but are
3236classified the same by termcap; or else find an algorithm for
3237Emacs to use that avoids the difference. Such changes must be
3238tested on many kinds of terminals.
3239 2931
32403) The termcap entry is wrong. 2932This is not an Emacs bug; it is caused by something in SGI patch
2933003082 August 11, 1998.
3241 2934
3242See the file etc/TERMS for information on changes 2935*** OPENSTEP
3243that are known to be needed in commonly used termcap entries
3244for certain terminals.
3245 2936
32464) The characters sent are incorrect, and clearly cannot be 2937**** OPENSTEP 4.2: Compiling syntax.c with gcc 2.7.2.1 fails.
3247 right for any terminal with the termcap entry you were using.
3248 2938
3249This is unambiguously an Emacs bug, and can probably be fixed 2939The compiler was reported to crash while compiling syntax.c with the
3250in termcap.c, tparam.c, term.c, scroll.c, cm.c or dispnew.c. 2940following message:
3251 2941
3252* Output from Control-V is slow. 2942 cc: Internal compiler error: program cc1obj got fatal signal 11
3253 2943
3254On many bit-map terminals, scrolling operations are fairly slow. 2944To work around this, replace the macros UPDATE_SYNTAX_TABLE_FORWARD,
3255Often the termcap entry for the type of terminal in use fails 2945INC_BOTH, and INC_FROM with functions. To this end, first define 3
3256to inform Emacs of this. The two lines at the bottom of the screen 2946functions, one each for every macro. Here's an example:
3257before a Control-V command are supposed to appear at the top after
3258the Control-V command. If Emacs thinks scrolling the lines is fast,
3259it will scroll them to the top of the screen.
3260 2947
3261If scrolling is slow but Emacs thinks it is fast, the usual reason is 2948 static int update_syntax_table_forward(int from)
3262that the termcap entry for the terminal you are using does not 2949 {
3263specify any padding time for the `al' and `dl' strings. Emacs 2950 return(UPDATE_SYNTAX_TABLE_FORWARD(from));
3264concludes that these operations take only as much time as it takes to 2951 }/*update_syntax_table_forward*/
3265send the commands at whatever line speed you are using. You must
3266fix the termcap entry to specify, for the `al' and `dl', as much
3267time as the operations really take.
3268 2952
3269Currently Emacs thinks in terms of serial lines which send characters 2953Then replace all references to UPDATE_SYNTAX_TABLE_FORWARD in syntax.c
3270at a fixed rate, so that any operation which takes time for the 2954with a call to the function update_syntax_table_forward.
3271terminal to execute must also be padded. With bit-map terminals
3272operated across networks, often the network provides some sort of
3273flow control so that padding is never needed no matter how slow
3274an operation is. You must still specify a padding time if you want
3275Emacs to realize that the operation takes a long time. This will
3276cause padding characters to be sent unnecessarily, but they do
3277not really cost much. They will be transmitted while the scrolling
3278is happening and then discarded quickly by the terminal.
3279 2955
3280Most bit-map terminals provide commands for inserting or deleting 2956*** Solaris 2.x
3281multiple lines at once. Define the `AL' and `DL' strings in the
3282termcap entry to say how to do these things, and you will have
3283fast output without wasted padding characters. These strings should
3284each contain a single %-spec saying how to send the number of lines
3285to be scrolled. These %-specs are like those in the termcap
3286`cm' string.
3287 2957
3288You should also define the `IC' and `DC' strings if your terminal 2958**** Strange results from format %d in a few cases, on a Sun.
3289has a command to insert or delete multiple characters. These
3290take the number of positions to insert or delete as an argument.
3291 2959
3292A `cs' string to set the scrolling region will reduce the amount 2960Sun compiler version SC3.0 has been found to miscompile part of
3293of motion you see on the screen when part of the screen is scrolled. 2961editfns.c. The workaround is to compile with some other compiler such
2962as GCC.
3294 2963
3295* Your Delete key sends a Backspace to the terminal, using an AIXterm. 2964**** On Solaris, Emacs dumps core if lisp-complete-symbol is called.
3296 2965
3297The solution is to include in your .Xdefaults the lines: 2966If you compile Emacs with the -fast or -xO4 option with version 3.0.2
2967of the Sun C compiler, Emacs dumps core when lisp-complete-symbol is
2968called. The problem does not happen if you compile with GCC.
3298 2969
3299 *aixterm.Translations: #override <Key>BackSpace: string(0x7f) 2970**** On Solaris, Emacs crashes if you use (display-time).
3300 aixterm*ttyModes: erase ^?
3301 2971
3302This makes your Backspace key send DEL (ASCII 127). 2972This can happen if you configure Emacs without specifying the precise
2973version of Solaris that you are using.
3303 2974
3304* You type Control-H (Backspace) expecting to delete characters. 2975**** Solaris 2.3 and 2.4: Unpredictable segmentation faults.
3305 2976
3306Put `stty dec' in your .login file and your problems will disappear 2977A user reported that this happened in 19.29 when it was compiled with
3307after a day or two. 2978the Sun compiler, but not when he recompiled with GCC 2.7.0.
3308 2979
3309The choice of Backspace for erasure was based on confusion, caused by 2980We do not know whether something in Emacs is partly to blame for this.
3310the fact that backspacing causes erasure (later, when you type another
3311character) on most display terminals. But it is a mistake. Deletion
3312of text is not the same thing as backspacing followed by failure to
3313overprint. I do not wish to propagate this confusion by conforming
3314to it.
3315 2981
3316For this reason, I believe `stty dec' is the right mode to use, 2982**** Solaris 2.4: Emacs dumps core on startup.
3317and I have designed Emacs to go with that. If there were a thousand
3318other control characters, I would define Control-h to delete as well;
3319but there are not very many other control characters, and I think
3320that providing the most mnemonic possible Help character is more
3321important than adapting to people who don't use `stty dec'.
3322 2983
3323If you are obstinate about confusing buggy overprinting with deletion, 2984Bill Sebok says that the cause of this is Solaris 2.4 vendor patch
3324you can redefine Backspace in your .emacs file: 2985102303-05, which extends the Solaris linker to deal with the Solaris
3325 (global-set-key "\b" 'delete-backward-char) 2986Common Desktop Environment's linking needs. You can fix the problem
3326You can probably access help-command via f1. 2987by removing this patch and installing patch 102049-02 instead.
2988However, that linker version won't work with CDE.
3327 2989
3328* Editing files through RFS gives spurious "file has changed" warnings. 2990Solaris 2.5 comes with a linker that has this bug. It is reported that if
3329It is possible that a change in Emacs 18.37 gets around this problem, 2991you install all the latest patches (as of June 1996), the bug is fixed.
3330but in case not, here is a description of how to fix the RFS bug that 2992We suspect the crucial patch is one of these, but we don't know
3331causes it. 2993for certain.
3332 2994
3333 There was a serious pair of bugs in the handling of the fsync() system 2995 103093-03: [README] SunOS 5.5: kernel patch (2140557 bytes)
3334 call in the RFS server. 2996 102832-01: [README] OpenWindows 3.5: Xview Jumbo Patch (4181613 bytes)
2997 103242-04: [README] SunOS 5.5: linker patch (595363 bytes)
3335 2998
3336 The first is that the fsync() call is handled as another name for the 2999(One user reports that the bug was fixed by those patches together
3337 close() system call (!!). It appears that fsync() is not used by very 3000with patches 102980-04, 103279-01, 103300-02, and 103468-01.)
3338 many programs; Emacs version 18 does an fsync() before closing files
3339 to make sure that the bits are on the disk.
3340 3001
3341 This is fixed by the enclosed patch to the RFS server. 3002If you can determine which patch does fix the bug, please tell
3003bug-gnu-emacs@gnu.org.
3342 3004
3343 The second, more serious problem, is that fsync() is treated as a 3005Meanwhile, the GNU linker links Emacs properly on both Solaris 2.4 and
3344 non-blocking system call (i.e., it's implemented as a message that 3006Solaris 2.5.
3345 gets sent to the remote system without waiting for a reply). Fsync is
3346 a useful tool for building atomic file transactions. Implementing it
3347 as a non-blocking RPC call (when the local call blocks until the sync
3348 is done) is a bad idea; unfortunately, changing it will break the RFS
3349 protocol. No fix was supplied for this problem.
3350 3007
3351 (as always, your line numbers may vary) 3008**** Solaris 2.4: Dired hangs and C-g does not work. Or Emacs hangs
3009forever waiting for termination of a subprocess that is a zombie.
3352 3010
3353 % rcsdiff -c -r1.2 serversyscall.c 3011casper@fwi.uva.nl says the problem is in X11R6. Rebuild libX11.so
3354 RCS file: RCS/serversyscall.c,v 3012after changing the file xc/config/cf/sunLib.tmpl. Change the lines
3355 retrieving revision 1.2 3013
3356 diff -c -r1.2 serversyscall.c 3014 #if ThreadedX
3357 *** /tmp/,RCSt1003677 Wed Jan 28 15:15:02 1987 3015 #define SharedX11Reqs -lthread
3358 --- serversyscall.c Wed Jan 28 15:14:48 1987 3016 #endif
3359 *************** 3017
3360 *** 163,169 **** 3018to:
3361 /* 3019
3362 * No return sent for close or fsync! 3020 #if OSMinorVersion < 4
3363 */ 3021 #if ThreadedX
3364 ! if (syscall == RSYS_close || syscall == RSYS_fsync) 3022 #define SharedX11Reqs -lthread
3365 proc->p_returnval = deallocate_fd(proc, msg->m_args[0]); 3023 #endif
3366 else 3024 #endif
3367 { 3025
3368 --- 166,172 ---- 3026Be sure also to edit x/config/cf/sun.cf so that OSMinorVersion is 4
3369 /* 3027(as it should be for Solaris 2.4). The file has three definitions for
3370 * No return sent for close or fsync! 3028OSMinorVersion: the first is for x86, the second for SPARC under
3371 */ 3029Solaris, and the third for SunOS 4. Make sure to update the
3372 ! if (syscall == RSYS_close) 3030definition for your type of machine and system.
3373 proc->p_returnval = deallocate_fd(proc, msg->m_args[0]); 3031
3374 else 3032Then do `make Everything' in the top directory of X11R6, to rebuild
3375 { 3033the makefiles and rebuild X. The X built this way work only on
3034Solaris 2.4, not on 2.3.
3035
3036For multithreaded X to work it is necessary to install patch
3037101925-02 to fix problems in header files [2.4]. You need
3038to reinstall gcc or re-run just-fixinc after installing that
3039patch.
3040
3041However, Frank Rust <frust@iti.cs.tu-bs.de> used a simpler solution:
3042he changed
3043 #define ThreadedX YES
3044to
3045 #define ThreadedX NO
3046in sun.cf and did `make World' to rebuild X11R6. Removing all
3047`-DXTHREAD*' flags and `-lthread' entries from lib/X11/Makefile and
3048typing 'make install' in that directory also seemed to work.
3049
3050**** Solaris 2.x: GCC complains "64 bit integer types not supported".
3051
3052This suggests that GCC is not installed correctly. Most likely you
3053are using GCC 2.7.2.3 (or earlier) on Solaris 2.6 (or later); this
3054does not work without patching. To run GCC 2.7.2.3 on Solaris 2.6 or
3055later, you must patch fixinc.svr4 and reinstall GCC from scratch as
3056described in the Solaris FAQ
3057<http://www.wins.uva.nl/pub/solaris/solaris2.html>. A better fix is
3058to upgrade to GCC 2.8.1 or later.
3059
3060**** Solaris 2.7: Building Emacs with WorkShop Compilers 5.0 98/12/15
3061C 5.0 failed, apparently with non-default CFLAGS, most probably due to
3062compiler bugs. Using Sun Solaris 2.7 Sun WorkShop 6 update 1 C
3063release was reported to work without problems. It worked OK on
3064another system with Solaris 8 using apparently the same 5.0 compiler
3065and the default CFLAGS.
3066
3067**** Solaris 2.x: Emacs dumps core when built with Motif.
3068
3069The Solaris Motif libraries are buggy, at least up through Solaris 2.5.1.
3070Install the current Motif runtime library patch appropriate for your host.
3071(Make sure the patch is current; some older patch versions still have the bug.)
3072You should install the other patches recommended by Sun for your host, too.
3073You can obtain Sun patches from ftp://sunsolve.sun.com/pub/patches/;
3074look for files with names ending in `.PatchReport' to see which patches
3075are currently recommended for your host.
3076
3077On Solaris 2.6, Emacs is said to work with Motif when Solaris patch
3078105284-12 is installed, but fail when 105284-15 is installed.
3079105284-18 might fix it again.
3080
3081*** Solaris 2.6 and 7: the Compose key does not work.
3082
3083This is a bug in Motif in Solaris. Supposedly it has been fixed for
3084the next major release of Solaris. However, if someone with Sun
3085support complains to Sun about the bug, they may release a patch.
3086If you do this, mention Sun bug #4188711.
3087
3088One workaround is to use a locale that allows non-ASCII characters.
3089For example, before invoking emacs, set the LC_ALL environment
3090variable to "en_US" (American English). The directory /usr/lib/locale
3091lists the supported locales; any locale other than "C" or "POSIX"
3092should do.
3093
3094pen@lysator.liu.se says (Feb 1998) that the Compose key does work
3095if you link with the MIT X11 libraries instead of the Solaris X11
3096libraries.
3097
3098*** Ultrix and Digital Unix
3099
3100**** Ultrix 4.2: `make install' fails on install-doc with `Error 141'.
3101
3102This happens on Ultrix 4.2 due to failure of a pipeline of tar
3103commands. We don't know why they fail, but the bug seems not to be in
3104Emacs. The workaround is to run the shell command in install-doc by
3105hand.
3106
3107**** Digital Unix 4.0: Garbled display on non-X terminals when Emacs runs.
3108
3109So far it appears that running `tset' triggers this problem (when TERM
3110is vt100, at least). If you do not run `tset', then Emacs displays
3111properly. If someone can tell us precisely which effect of running
3112`tset' actually causes the problem, we may be able to implement a fix
3113in Emacs.
3114
3115**** Ultrix: `expand-file-name' fails to work on any but the machine you dumped Emacs on.
3116
3117On Ultrix, if you use any of the functions which look up information
3118in the passwd database before dumping Emacs (say, by using
3119expand-file-name in site-init.el), then those functions will not work
3120in the dumped Emacs on any host but the one Emacs was dumped on.
3121
3122The solution? Don't use expand-file-name in site-init.el, or in
3123anything it loads. Yuck - some solution.
3124
3125I'm not sure why this happens; if you can find out exactly what is
3126going on, and perhaps find a fix or a workaround, please let us know.
3127Perhaps the YP functions cache some information, the cache is included
3128in the dumped Emacs, and is then inaccurate on any other host.
3129
3130*** SVr4
3131
3132**** SVr4: On some variants of SVR4, Emacs does not work at all with X.
3133
3134Try defining BROKEN_FIONREAD in your config.h file. If this solves
3135the problem, please send a bug report to tell us this is needed; be
3136sure to say exactly what type of machine and system you are using.
3137
3138**** SVr4: After running emacs once, subsequent invocations crash.
3139
3140Some versions of SVR4 have a serious bug in the implementation of the
3141mmap () system call in the kernel; this causes emacs to run correctly
3142the first time, and then crash when run a second time.
3143
3144Contact your vendor and ask for the mmap bug fix; in the mean time,
3145you may be able to work around the problem by adding a line to your
3146operating system description file (whose name is reported by the
3147configure script) that reads:
3148#define SYSTEM_MALLOC
3149This makes Emacs use memory less efficiently, but seems to work around
3150the kernel bug.
3151
3152*** Linux 1.x
3153
3154**** Linux 1.0-1.04: Typing C-c C-c in Shell mode kills your X server.
3155
3156This happens with Linux kernel 1.0 thru 1.04, approximately. The workaround is
3157to define SIGNALS_VIA_CHARACTERS in config.h and recompile Emacs.
3158Newer Linux kernel versions don't have this problem.
3159
3160**** Linux 1.3: Output from subprocess (such as man or diff) is randomly
3161truncated on GNU/Linux systems.
3162
3163This is due to a kernel bug which seems to be fixed in Linux version
31641.3.75.
3165
3166** MS-DOS
3167
3168*** When compiling with DJGPP on MS-Windows NT, "config msdos" fails.
3169
3170If the error message is "VDM has been already loaded", this is because
3171Windows has a program called `redir.exe' that is incompatible with a
3172program by the same name supplied with DJGPP, which is used by
3173config.bat. To resolve this, move the DJGPP's `bin' subdirectory to
3174the front of your PATH environment variable.
3175
3176*** When compiling with DJGPP on MS-Windows 95, Make fails for some targets
3177like make-docfile.
3178
3179This can happen if long file name support (the setting of environment
3180variable LFN) when Emacs distribution was unpacked and during
3181compilation are not the same. See the MSDOG section of INSTALL for
3182the explanation of how to avoid this problem.
3183
3184*** Emacs compiled with DJGPP complains at startup:
3185
3186 "Wrong type of argument: internal-facep, msdos-menu-active-face"
3187
3188This can happen if you define an environment variable `TERM'. Emacs
3189on MSDOS uses an internal terminal emulator which is disabled if the
3190value of `TERM' is anything but the string "internal". Emacs then
3191works as if its terminal were a dumb glass teletype that doesn't
3192support faces. To work around this, arrange for `TERM' to be
3193undefined when Emacs runs. The best way to do that is to add an
3194[emacs] section to the DJGPP.ENV file which defines an empty value for
3195`TERM'; this way, only Emacs gets the empty value, while the rest of
3196your system works as before.
3197
3198*** MS-DOS: Emacs crashes at startup.
3199
3200Some users report that Emacs 19.29 requires dpmi memory management,
3201and crashes on startup if the system does not have it. We don't yet
3202know why this happens--perhaps these machines don't have enough real
3203memory, or perhaps something is wrong in Emacs or the compiler.
3204However, arranging to use dpmi support is a workaround.
3205
3206You can find out if you have a dpmi host by running go32 without
3207arguments; it will tell you if it uses dpmi memory. For more
3208information about dpmi memory, consult the djgpp FAQ. (djgpp
3209is the GNU C compiler as packaged for MSDOS.)
3210
3211Compiling Emacs under MSDOS is extremely sensitive for proper memory
3212configuration. If you experience problems during compilation, consider
3213removing some or all memory resident programs (notably disk caches)
3214and make sure that your memory managers are properly configured. See
3215the djgpp faq for configuration hints.
3216
3217*** Emacs compiled with DJGPP for MS-DOS/MS-Windows cannot access files
3218in the directory with the special name `dev' under the root of any
3219drive, e.g. `c:/dev'.
3220
3221This is an unfortunate side-effect of the support for Unix-style
3222device names such as /dev/null in the DJGPP runtime library. A
3223work-around is to rename the problem directory to another name.
3224
3225*** MS-DOS+DJGPP: Problems on MS-DOG if DJGPP v2.0 is used to compile Emacs.
3226
3227There are two DJGPP library bugs which cause problems:
3228
3229 * Running `shell-command' (or `compile', or `grep') you get
3230 `Searching for program: permission denied (EACCES), c:/command.com';
3231 * After you shell to DOS, Ctrl-Break kills Emacs.
3232
3233To work around these bugs, you can use two files in the msdos
3234subdirectory: `is_exec.c' and `sigaction.c'. Compile them and link
3235them into the Emacs executable `temacs'; then they will replace the
3236incorrect library functions.
3237
3238*** MS-DOS: Emacs compiled for MSDOS cannot find some Lisp files, or other
3239run-time support files, when long filename support is enabled.
3240
3241Usually, this problem will manifest itself when Emacs exits
3242immediately after flashing the startup screen, because it cannot find
3243the Lisp files it needs to load at startup. Redirect Emacs stdout
3244and stderr to a file to see the error message printed by Emacs.
3245
3246Another manifestation of this problem is that Emacs is unable to load
3247the support for editing program sources in languages such as C and
3248Lisp.
3249
3250This can happen if the Emacs distribution was unzipped without LFN
3251support, thus causing long filenames to be truncated to the first 6
3252characters and a numeric tail that Windows 95 normally attaches to it.
3253You should unzip the files again with a utility that supports long
3254filenames (such as djtar from DJGPP or InfoZip's UnZip program
3255compiled with DJGPP v2). The MSDOG section of the file INSTALL
3256explains this issue in more detail.
3257
3258Another possible reason for such failures is that Emacs compiled for
3259MSDOS is used on Windows NT, where long file names are not supported
3260by this version of Emacs, but the distribution was unpacked by an
3261unzip program that preserved the long file names instead of truncating
3262them to DOS 8+3 limits. To be useful on NT, the MSDOS port of Emacs
3263must be unzipped by a DOS utility, so that long file names are
3264properly truncated.
3265
3266** Archaic window managers and toolkits
3267
3268*** OpenLook: Under OpenLook, the Emacs window disappears when you type M-q.
3269
3270Some versions of the Open Look window manager interpret M-q as a quit
3271command for whatever window you are typing at. If you want to use
3272Emacs with that window manager, you should try to configure the window
3273manager to use some other command. You can disable the
3274shortcut keys entirely by adding this line to ~/.OWdefaults:
3275
3276 OpenWindows.WindowMenuAccelerators: False
3277
3278**** twm: A position you specified in .Xdefaults is ignored, using twm.
3279
3280twm normally ignores "program-specified" positions.
3281You can tell it to obey them with this command in your `.twmrc' file:
3282
3283 UsePPosition "on" #allow clients to request a position
3284
3285** Bugs related to old DEC hardware
3286
3287*** The Compose key on a DEC keyboard does not work as Meta key.
3288
3289This shell command should fix it:
3290
3291 xmodmap -e 'keycode 0xb1 = Meta_L'
3292
3293*** Keyboard input gets confused after a beep when using a DECserver
3294as a concentrator.
3295
3296This problem seems to be a matter of configuring the DECserver to use
32977 bit characters rather than 8 bit characters.
3298
3299* Build problems on legacy systems
3300
3301** BSD/386 1.0: --with-x-toolkit option configures wrong.
3302
3303This problem is due to bugs in the shell in version 1.0 of BSD/386.
3304The workaround is to edit the configure file to use some other shell,
3305such as bash.
3306
3307** Digital Unix 4.0: Emacs fails to build, giving error message
3308 Invalid dimension for the charset-ID 160
3309
3310This is due to a bug or an installation problem in GCC 2.8.0.
3311Installing a more recent version of GCC fixes the problem.
3312
3313** Digital Unix 4.0: Failure in unexec while dumping emacs.
3314
3315This problem manifests itself as an error message
3316
3317 unexec: Bad address, writing data section to ...
3318
3319The user suspects that this happened because his X libraries
3320were built for an older system version,
3321
3322 ./configure --x-includes=/usr/include --x-libraries=/usr/shlib
3323
3324made the problem go away.
3325
3326** Sunos 4.1.1: there are errors compiling sysdep.c.
3327
3328If you get errors such as
3329
3330 "sysdep.c", line 2017: undefined structure or union
3331 "sysdep.c", line 2017: undefined structure or union
3332 "sysdep.c", line 2019: nodename undefined
3333
3334This can result from defining LD_LIBRARY_PATH. It is very tricky
3335to use that environment variable with Emacs. The Emacs configure
3336script links many test programs with the system libraries; you must
3337make sure that the libraries available to configure are the same
3338ones available when you build Emacs.
3339
3340** SunOS 4.1.1: You get this error message from GNU ld:
3341
3342 /lib/libc.a(_Q_sub.o): Undefined symbol __Q_get_rp_rd referenced from text segment
3343
3344The problem is in the Sun shared C library, not in GNU ld.
3345
3346The solution is to install Patch-ID# 100267-03 from Sun.
3347
3348** Sunos 4.1: Undefined symbols when linking using --with-x-toolkit.
3349
3350If you get the undefined symbols _atowc _wcslen, _iswprint, _iswspace,
3351_iswcntrl, _wcscpy, and _wcsncpy, then you need to add -lXwchar after
3352-lXaw in the command that links temacs.
3353
3354This problem seems to arise only when the international language
3355extensions to X11R5 are installed.
3356
3357** SunOS: Emacs gets error message from linker on Sun.
3358
3359If the error message says that a symbol such as `f68881_used' or
3360`ffpa_used' or `start_float' is undefined, this probably indicates
3361that you have compiled some libraries, such as the X libraries,
3362with a floating point option other than the default.
3363
3364It's not terribly hard to make this work with small changes in
3365crt0.c together with linking with Fcrt1.o, Wcrt1.o or Mcrt1.o.
3366However, the easiest approach is to build Xlib with the default
3367floating point option: -fsoft.
3368
3369** SunOS: Undefined symbols _dlopen, _dlsym and/or _dlclose.
3370
3371If you see undefined symbols _dlopen, _dlsym, or _dlclose when linking
3372with -lX11, compile and link against the file mit/util/misc/dlsym.c in
3373the MIT X11R5 distribution. Alternatively, link temacs using shared
3374libraries with s/sunos4shr.h. (This doesn't work if you use the X
3375toolkit.)
3376
3377If you get the additional error that the linker could not find
3378lib_version.o, try extracting it from X11/usr/lib/X11/libvim.a in
3379X11R4, then use it in the link.
3380
3381** VMS: Compilation errors on VMS.
3382
3383You will get warnings when compiling on VMS because there are
3384variable names longer than 32 (or whatever it is) characters.
3385This is not an error. Ignore it.
3386
3387VAX C does not support #if defined(foo). Uses of this construct
3388were removed, but some may have crept back in. They must be rewritten.
3389
3390There is a bug in the C compiler which fails to sign extend characters
3391in conditional expressions. The bug is:
3392 char c = -1, d = 1;
3393 int i;
3394
3395 i = d ? c : d;
3396The result is i == 255; the fix is to typecast the char in the
3397conditional expression as an (int). Known occurrences of such
3398constructs in Emacs have been fixed.
3376 3399
3377* Vax C compiler bugs affecting Emacs. 3400** Vax C compiler bugs affecting Emacs.
3378 3401
3379You may get one of these problems compiling Emacs: 3402You may get one of these problems compiling Emacs:
3380 3403
@@ -3407,22 +3430,22 @@ causes the problem to go away.
3407The `contents' field of a Lisp vector is an array of Lisp_Objects, 3430The `contents' field of a Lisp vector is an array of Lisp_Objects,
3408so you may see the problem happening with indexed references to that. 3431so you may see the problem happening with indexed references to that.
3409 3432
3410* 68000 C compiler problems 3433** 68000 C compiler problems
3411 3434
3412Various 68000 compilers have different problems. 3435Various 68000 compilers have different problems.
3413These are some that have been observed. 3436These are some that have been observed.
3414 3437
3415** Using value of assignment expression on union type loses. 3438*** Using value of assignment expression on union type loses.
3416This means that x = y = z; or foo (x = z); does not work 3439This means that x = y = z; or foo (x = z); does not work
3417if x is of type Lisp_Object. 3440if x is of type Lisp_Object.
3418 3441
3419** "cannot reclaim" error. 3442*** "cannot reclaim" error.
3420 3443
3421This means that an expression is too complicated. You get the correct 3444This means that an expression is too complicated. You get the correct
3422line number in the error message. The code must be rewritten with 3445line number in the error message. The code must be rewritten with
3423simpler expressions. 3446simpler expressions.
3424 3447
3425** XCONS, XSTRING, etc macros produce incorrect code. 3448*** XCONS, XSTRING, etc macros produce incorrect code.
3426 3449
3427If temacs fails to run at all, this may be the cause. 3450If temacs fails to run at all, this may be the cause.
3428Compile this test program and look at the assembler code: 3451Compile this test program and look at the assembler code:
@@ -3442,7 +3465,7 @@ In the XCONS, etc., macros in lisp.h you must replace (a).u.val with
3442This problem will not happen if the m-...h file for your type 3465This problem will not happen if the m-...h file for your type
3443of machine defines NO_UNION_TYPE. That is the recommended setting now. 3466of machine defines NO_UNION_TYPE. That is the recommended setting now.
3444 3467
3445* C compilers lose on returning unions 3468*** C compilers lose on returning unions.
3446 3469
3447I hear that some C compilers cannot handle returning a union type. 3470I hear that some C compilers cannot handle returning a union type.
3448Most of the functions in GNU Emacs return type Lisp_Object, which is 3471Most of the functions in GNU Emacs return type Lisp_Object, which is
@@ -3452,7 +3475,7 @@ This problem will not happen if the m-...h file for your type
3452of machine defines NO_UNION_TYPE. 3475of machine defines NO_UNION_TYPE.
3453 3476
3454 3477
3455Copyright 1987,88,89,93,94,95,96,97,98,1999,2001,2002 3478Copyright 1987,88,89,93,94,95,96,97,98,1999,2001,2002,2004
3456 Free Software Foundation, Inc. 3479 Free Software Foundation, Inc.
3457 3480
3458Copying and redistribution of this file with or without modification 3481Copying and redistribution of this file with or without modification
diff --git a/etc/TODO b/etc/TODO
index 4efeada3aa0..dc692db8965 100644
--- a/etc/TODO
+++ b/etc/TODO
@@ -62,6 +62,11 @@ to the FSF.
62 62
63* Other features we would like: 63* Other features we would like:
64 64
65** ange-ftp
66*** understand sftp
67*** ignore some irrelevant errors (like IPv6 and kerberos thingies).
68*** Use MLS for ange-ftp-insert-directory if a list of files is specified.
69
65** Ability to map a key, including all modified-combinations. 70** Ability to map a key, including all modified-combinations.
66 E.g map mouse-4 to wheel-up as well as M-mouse-4 -> M-wheel-up 71 E.g map mouse-4 to wheel-up as well as M-mouse-4 -> M-wheel-up
67 M-C-mouse-4 -> M-C-wheel-up, H-S-C-M-s-double-mouse-4 -> 72 M-C-mouse-4 -> M-C-wheel-up, H-S-C-M-s-double-mouse-4 ->
diff --git a/etc/TUTORIAL.es b/etc/TUTORIAL.es
index 9cd6100e84f..e4850649c7d 100644
--- a/etc/TUTORIAL.es
+++ b/etc/TUTORIAL.es
@@ -18,32 +18,8 @@ ocasión, usaremos las siguientes abreviaturas.
18Nota importante: para terminar la sesión de Emacs teclee C-x C-c (dos 18Nota importante: para terminar la sesión de Emacs teclee C-x C-c (dos
19caracteres). Los caracteres ">>" en el margen izquierdo indican 19caracteres). Los caracteres ">>" en el margen izquierdo indican
20instrucciones para que usted trate de usar un comando. Por ejemplo: 20instrucciones para que usted trate de usar un comando. Por ejemplo:
21 21<<Blank lines inserted around following line by help-with-tutorial>>
22 22[Mitad de página en blanco para propósitos didácticos. El texto continúa abajo]
23
24
25
26
27
28
29
30
31
32
33[Mitad de página en blanco para propósitos didácticos. El texto
34 continúa abajo]
35
36
37
38
39
40
41
42
43
44
45
46
47>> Ahora teclee C-v (ver la próxima pantalla) para desplazarse a la 23>> Ahora teclee C-v (ver la próxima pantalla) para desplazarse a la
48 siguiente pantalla (hágalo manteniendo la tecla control 24 siguiente pantalla (hágalo manteniendo la tecla control
49 oprimida mientras teclea v). Desde ahora debería hacer esto 25 oprimida mientras teclea v). Desde ahora debería hacer esto