[PATCH packages] [Bug: 21.4.19] XEmacs hangs at exit with "No
such coding system: iso-2022-8"
Murray Eisenberg
murray at math.umass.edu
Tue Jul 25 10:32:50 EDT 2006
That addition to init.el fixes the problem. Thank you!
I won't try to patch and recompile locally, since I have never before
compiled XEmacs from source. For now I'll leave the fix in init.el and
wait for the new package to be released.
Stephen J. Turnbull wrote:
>>>>>> "Murray" == Murray Eisenberg <murray at math.umass.edu> writes:
>
> Murray> At first I thought this was caused by AUCTeX, but AUCTeX
> Murray> expert David Kastrup says the problem is "very clearly an
> Murray> XEmacs-internal" one that has no particular relation to
> Murray> AUCTeX.
>
> Murray> Debugger entered--Lisp error: (error "No such coding system" iso-2022-8)
>
> Actually, the problem is not XEmacs-internal. It's due to a library
> that was coded by somebody who assumed that Mule facilities are always
> available, but XEmacs 21.4 on Windows doesn't support Mule well, and
> it's almost never available in that configuration.
>
> The included patch should work. To test without patching and
> recompiling, you can put the following form in your init.el:
>
> (setq savehist-coding-system
> (if (featurep 'xemacs)
> (if (fboundp 'find-coding-system)
> (or (find-coding-system 'utf-8)
> (find-coding-system 'iso-2022-8)
> ;; support --with-file-coding
> (find-coding-system 'binary))
> ;; drop back 15 and punt!
> 'binary)
> ;; assume Emacs 20, at least
> 'utf-8))
>
> Please let me know if that does work for you. If so, I'll apply it to
> CVS and we should have a package release in short order.
>
> If you do decide to apply the patch locally, it will not interfere
> with future upgrades of the package in any way (but if you upgrade
> "too soon" you'll lose the patch). Don't forget to recompile with M-x
> byte-compile-file.
>
> Index: xemacs-packages/edit-utils/ChangeLog
> ===================================================================
> RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/edit-utils/ChangeLog,v
> retrieving revision 1.222
> diff -u -U0 -r1.222 ChangeLog
> --- xemacs-packages/edit-utils/ChangeLog 28 Jun 2006 07:58:06 -0000 1.222
> +++ xemacs-packages/edit-utils/ChangeLog 25 Jul 2006 04:28:16 -0000
> @@ -0,0 +1,5 @@
> +2006-07-25 Stephen J. Turnbull <stephen at xemacs.org>
> +
> + * savehist.el (savehist-coding-system): Get a usable value
> + regardless of presence of file-coding. Document the issue.
> +
>
> Index: xemacs-packages/edit-utils/savehist.el
> ===================================================================
> RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/edit-utils/savehist.el,v
> retrieving revision 1.4
> diff -u -r1.4 savehist.el
> --- xemacs-packages/edit-utils/savehist.el 14 Nov 2005 07:05:54 -0000 1.4
> +++ xemacs-packages/edit-utils/savehist.el 25 Jul 2006 04:28:21 -0000
> @@ -135,12 +135,23 @@
>
> ;; This should be capable of representing characters used by Emacs.
> ;; We prefer UTF-8 over ISO 2022 because it is well-known outside
> -;; Mule. XEmacs prir to 21.5 had UTF-8 provided by an external
> -;; package which may not be loaded, which is why we check for version.
> -(defvar savehist-coding-system (if (and (featurep 'xemacs)
> - (<= emacs-major-version 21)
> - (< emacs-minor-version 5))
> - 'iso-2022-8 'utf-8)
> +;; Mule.
> +;; XEmacs 21.1 or 21.4 may not have Mule, especially on Windows, so
> +;; we check for existence of *any* coding system at all.
> +;; #### Use of 'binary' as the fallback for non-Mule XEmacsen should
> +;; sort-of work because it's only used (a) as a coding cookie and (b) by
> +;; binding `coding-system-for-write', but maybe we should error if there
> +;; is a non-binary coding cookie in that case. Needs thought....
> +(defvar savehist-coding-system (if (featurep 'xemacs)
> + (if (fboundp 'find-coding-system)
> + (or (find-coding-system 'utf-8)
> + (find-coding-system 'iso-2022-8)
> + ;; support --with-file-coding
> + (find-coding-system 'binary))
> + ;; drop back 15 and punt!
> + 'binary)
> + ;; assume Emacs 20, at least
> + 'utf-8))
> "The coding system savehist uses for saving the minibuffer history.
> Changing this value while Emacs is running is supported, but considered
> unwise, unless you know what you are doing.")
>
>
--
Murray Eisenberg murray at math.umass.edu
Mathematics & Statistics Dept.
Lederle Graduate Research Tower phone 413 549-1020 (H)
University of Massachusetts 413 545-2859 (W)
710 North Pleasant Street fax 413 545-1801
Amherst, MA 01003-9305
More information about the XEmacs-Beta
mailing list