From: Bruno Haible Date: Wed, 16 Oct 2002 13:09:57 +0000 (+0000) Subject: Simplify last change, and make it portable to XEmacs. X-Git-Tag: v0.12~1265 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5fb2ca25c7ad51bececc9dfb5854a617398a906d;p=thirdparty%2Fgettext.git Simplify last change, and make it portable to XEmacs. --- diff --git a/misc/ChangeLog b/misc/ChangeLog index 58acf99ee..278e3c1e3 100644 --- a/misc/ChangeLog +++ b/misc/ChangeLog @@ -1,3 +1,8 @@ +2002-10-16 Bruno Haible + + * po-compat.el: Remove call of codepage-setup of all support codepages. + (po-find-file-coding-system-guts): Avoid code duplication. + 2002-09-27 Karl Eichwalder * po-compat.el (po-content-type-charset-alist): Convert the diff --git a/misc/po-compat.el b/misc/po-compat.el index a06cbe4c5..8aee214c3 100644 --- a/misc/po-compat.el +++ b/misc/po-compat.el @@ -69,10 +69,6 @@ (and (buffer-name ,temp-buffer) (kill-buffer ,temp-buffer)))))))) -; Make the cpnnn codesets available. -(if po-EMACS20 - (mapcar #'codepage-setup (mapcar #'car (cp-supported-codepages)))) - (defconst po-content-type-charset-alist '(; Note: Emacs 21 doesn't support all encodings, thus the missing entries. ("ASCII" . undecided) @@ -199,22 +195,18 @@ Called through file-coding-system-alist, before the file is visited for real." (charset-lower (downcase charset)) (candidate (cdr (assoc charset-upper po-content-type-charset-alist))) - (try (or candidate (intern-soft charset-lower)))) - (list (cond ((and try (coding-system-p try)) - try) - ((and try + (try-symbol (or candidate (intern-soft charset-lower))) + (try-string + (if try-symbol (symbol-name try-symbol) charset-lower))) + (list (cond ((and try-symbol (coding-system-p try-symbol)) + try-symbol) + ((and po-EMACS20 (string-match "\\`cp[1-9][0-9][0-9]?\\'" - (symbol-name try)) - (assoc (substring (symbol-name try) 2) - (cp-supported-codepages))) - (codepage-setup (substring (symbol-name try) 2)) - try) - ((and (string-match "\\`cp[1-9][0-9][0-9]?\\'" - charset-lower) - (assoc (substring charset-lower 2) + try-string) + (assoc (substring try-string 2) (cp-supported-codepages))) - (codepage-setup (substring charset-lower 2)) - (intern charset-lower)) + (codepage-setup (substring try-string 2)) + (intern try-string)) (t 'no-conversion))))))))