X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=mcs-e20.el;h=908dcad07fe1b8d47cc5179e9849dcffc8b7a001;hb=3b7f4f28c1a7d433dcc9ee4712fceaaa4729884f;hp=7eae5098833911d612474d084f0f16f6ff8b7b62;hpb=c1f8b4e5a65a60906038ae9ab9e1b76cc8fb91f6;p=elisp%2Fapel.git diff --git a/mcs-e20.el b/mcs-e20.el index 7eae509..908dcad 100644 --- a/mcs-e20.el +++ b/mcs-e20.el @@ -1,6 +1,6 @@ ;;; mcs-e20.el --- MIME charset implementation for Emacs 20.1 and 20.2 -;; Copyright (C) 1996,1997,1998,1999 Free Software Foundation, Inc. +;; Copyright (C) 1996,1997,1998,1999,2000 Free Software Foundation, Inc. ;; Author: MORIOKA Tomohiko ;; Keywords: emulation, compatibility, Mule @@ -19,8 +19,8 @@ ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +;; Boston, MA 02110-1301, USA. ;;; Commentary: @@ -28,10 +28,8 @@ ;;; Code: -(eval-when-compile - (require 'static) - (require 'poem) - ) +(require 'pces) +(eval-when-compile (require 'static)) (defsubst encode-mime-charset-region (start end charset &optional lbt) "Encode the text between START and END as MIME CHARSET." @@ -68,44 +66,50 @@ (defvar charsets-mime-charset-alist - '(((ascii) . us-ascii) - ((ascii latin-iso8859-1) . iso-8859-1) - ((ascii latin-iso8859-2) . iso-8859-2) - ((ascii latin-iso8859-3) . iso-8859-3) - ((ascii latin-iso8859-4) . iso-8859-4) -;;; ((ascii cyrillic-iso8859-5) . iso-8859-5) - ((ascii cyrillic-iso8859-5) . koi8-r) - ((ascii arabic-iso8859-6) . iso-8859-6) - ((ascii greek-iso8859-7) . iso-8859-7) - ((ascii hebrew-iso8859-8) . iso-8859-8) - ((ascii latin-iso8859-9) . iso-8859-9) - ((ascii latin-jisx0201 - japanese-jisx0208-1978 japanese-jisx0208) . iso-2022-jp) - ((ascii latin-jisx0201 - katakana-jisx0201 japanese-jisx0208) . shift_jis) - ((ascii korean-ksc5601) . euc-kr) - ((ascii chinese-gb2312) . gb2312) - ((ascii chinese-big5-1 chinese-big5-2) . big5) - ((ascii thai-tis620 composition) . tis-620) - ((ascii latin-iso8859-1 greek-iso8859-7 - latin-jisx0201 japanese-jisx0208-1978 - chinese-gb2312 japanese-jisx0208 - korean-ksc5601 japanese-jisx0212) . iso-2022-jp-2) -; ((ascii latin-iso8859-1 greek-iso8859-7 -; latin-jisx0201 japanese-jisx0208-1978 -; chinese-gb2312 japanese-jisx0208 -; korean-ksc5601 japanese-jisx0212 -; chinese-cns11643-1 chinese-cns11643-2) . iso-2022-int-1) -; ((ascii latin-iso8859-1 latin-iso8859-2 -; cyrillic-iso8859-5 greek-iso8859-7 -; latin-jisx0201 japanese-jisx0208-1978 -; chinese-gb2312 japanese-jisx0208 -; korean-ksc5601 japanese-jisx0212 -; chinese-cns11643-1 chinese-cns11643-2 -; chinese-cns11643-3 chinese-cns11643-4 -; chinese-cns11643-5 chinese-cns11643-6 -; chinese-cns11643-7) . iso-2022-int-1) - )) + (delq + nil + `(((ascii) . us-ascii) + ((ascii latin-iso8859-1) . iso-8859-1) + ((ascii latin-iso8859-2) . iso-8859-2) + ((ascii latin-iso8859-3) . iso-8859-3) + ((ascii latin-iso8859-4) . iso-8859-4) + ;;((ascii cyrillic-iso8859-5) . iso-8859-5) + ((ascii cyrillic-iso8859-5) . koi8-r) + ((ascii arabic-iso8859-6) . iso-8859-6) + ((ascii greek-iso8859-7) . iso-8859-7) + ((ascii hebrew-iso8859-8) . iso-8859-8) + ((ascii latin-iso8859-9) . iso-8859-9) + ,(if (find-coding-system 'iso-8859-14) + '((ascii latin-iso8859-14) . iso-8859-14)) + ,(if (find-coding-system 'iso-8859-15) + '((ascii latin-iso8859-15) . iso-8859-15)) + ((ascii latin-jisx0201 + japanese-jisx0208-1978 japanese-jisx0208) . iso-2022-jp) + ((ascii latin-jisx0201 + katakana-jisx0201 japanese-jisx0208) . shift_jis) + ((ascii korean-ksc5601) . euc-kr) + ((ascii chinese-gb2312) . gb2312) + ((ascii chinese-big5-1 chinese-big5-2) . big5) + ((ascii thai-tis620 composition) . tis-620) + ((ascii latin-iso8859-1 greek-iso8859-7 + latin-jisx0201 japanese-jisx0208-1978 + chinese-gb2312 japanese-jisx0208 + korean-ksc5601 japanese-jisx0212) . iso-2022-jp-2) + ;;((ascii latin-iso8859-1 greek-iso8859-7 + ;; latin-jisx0201 japanese-jisx0208-1978 + ;; chinese-gb2312 japanese-jisx0208 + ;; korean-ksc5601 japanese-jisx0212 + ;; chinese-cns11643-1 chinese-cns11643-2) . iso-2022-int-1) + ;;((ascii latin-iso8859-1 latin-iso8859-2 + ;; cyrillic-iso8859-5 greek-iso8859-7 + ;; latin-jisx0201 japanese-jisx0208-1978 + ;; chinese-gb2312 japanese-jisx0208 + ;; korean-ksc5601 japanese-jisx0212 + ;; chinese-cns11643-1 chinese-cns11643-2 + ;; chinese-cns11643-3 chinese-cns11643-4 + ;; chinese-cns11643-5 chinese-cns11643-6 + ;; chinese-cns11643-7) . iso-2022-int-1) + ))) (defun-maybe coding-system-get (coding-system prop) "Extract a value from CODING-SYSTEM's property list for property PROP." @@ -159,25 +163,25 @@ Return nil if corresponding MIME-charset is not found." )) (static-when (and (string= (decode-coding-string "\e.A\eN!" 'ctext) "\eN!") - (not (find-coding-system 'x-ctext))) - (require 'poem) - (or (find-coding-system 'x-ctext) - (make-coding-system - 'x-ctext 2 ?x - "Compound text based generic encoding for decoding unknown messages." - '((ascii t) (latin-iso8859-1 t) t t - nil ascii-eol ascii-cntl nil locking-shift single-shift nil nil nil - init-bol nil nil) - '((safe-charsets . t) - (mime-charset . x-ctext))) - )) + (or (not (find-coding-system 'x-ctext)) + (coding-system-get 'x-ctext 'apel))) + (unless (find-coding-system 'x-ctext) + (make-coding-system + 'x-ctext 2 ?x + "Compound text based generic encoding for decoding unknown messages." + '((ascii t) (latin-iso8859-1 t) t t + nil ascii-eol ascii-cntl nil locking-shift single-shift nil nil nil + init-bol nil nil) + '((safe-charsets . t) + (mime-charset . x-ctext))) + (coding-system-put 'x-ctext 'apel t) + )) ;;; @ end ;;; -(require 'mcs-20) - -(provide 'mcs-e20) +(require 'product) +(product-provide (provide 'mcs-e20) (require 'apel-ver)) ;;; mcs-e20.el ends here