Commits

Anonymous committed 173d1fc

Remerge dumped lisp into the core

  • Participants
  • Parent commits 1151787

Comments (0)

Files changed (26)

+1999-02-17  SL Baur  <steve@xemacs.org>
+
+	* Makefile (ELCS): Move dumped Mule files into core (removes
+	arabic.el, canna-leim.el, chinese.el, cyrillic.el, english.el,
+	european.el, greek.el, hebrew.el, japanese.el, kinsoku.el,
+	korean.el, misc-lang.el, mule-category.el, mule-ccl.el,
+	mule-charset.el, mule-cmds.el, mule-coding.el, mule-files.el,
+	mule-help.el, mule-init.el, mule-misc.el, mule-tty-init.el,
+	mule-x-init.el, viet-chars.el).
+
 1998-12-05  SL Baur  <steve@altair.xemacs.org>
 
 	* mule-cmds.el (set-language-info): Spelling fix.
 # the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 # Boston, MA 02111-1307, USA.
 
-VERSION = 1.27
+VERSION = 1.28
 AUTHOR_VERSION =
 MAINTAINER = SL Baur <steve@altair.xemacs.org>
 PACKAGE = mule-base
 REQUIRES = fsf-compat xemacs-base
 CATEGORY = mule
 
-ELCS = arabic.elc canna-leim.elc canna.elc char-table.elc \
-	chartblxmas.elc china-util.elc chinese.elc \
-	cyril-util.elc cyrillic.elc english.elc european.elc greek.elc \
-	hebrew.elc isearch-mule.elc japan-util.elc \
-	japanese.elc kinsoku.elc korean.elc misc-lang.elc mule-category.elc \
-	mule-ccl.elc mule-charset.elc mule-cmds.elc mule-cne.elc \
-	mule-coding.elc mule-debug.elc mule-diag.elc mule-files.elc \
-	mule-help.elc mule-init.elc mule-keyboard.elc mule-misc.elc \
-	mule-trex.elc mule-util.elc mule-tty-init.elc mule-x-init.elc \
-	viet-chars.elc
+ELCS = canna.elc char-table.elc chartblxmas.elc china-util.elc \
+	cyril-util.elc isearch-mule.elc japan-util.elc mule-cne.elc \
+	mule-debug.elc mule-diag.elc mule-keyboard.elc mule-trex.elc \
+	mule-util.elc
 
 # The following haven't been ported yet.
 EXTRA_SOURCES = thai.el thai-util.el vietnamese.EL \

arabic.el

-;;; arabic.el --- pre-loaded support for Arabic.
-
-;; Copyright (C) 1992,93,94,95 Free Software Foundation, Inc.
-;; Copyright (C) 1995 Amdahl Corporation.
-;; Copyright (C) 1995 Sun Microsystems.
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the 
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Commentary:
-
-;; Synched up with: Mule 2.3.
-
-;;; Code:
-
-;; Three character sets for Arabic
-(make-charset 'arabic-digit "Arabic digits"
-	      '(registry "MuleArabic-0"
-		dimension 1
-		chars 94
-		final ?2
-		graphic 0
-		direction l2r
-		))
-
-(make-charset 'arabic-1-column "Arabic 1-column"
-	      '(registry "MuleArabic-1"
-		dimension 1
-		chars 94
-		final ?3
-		graphic 0
-		direction r2l
-		))
-
-(make-charset 'arabic-2-column "Arabic 2-column"
-	      '(registry "MuleArabic-2"
-		dimension 1
-		chars 94
-		final ?4
-		graphic 0
-		direction r2l
-		))
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;; ARABIC
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-;; (define-language-environment 'arabic
-;;   "Arabic"
-;;   (lambda ()
-;;     (require 'arabic)))
-
-;;; arabic.el ends here

canna-leim.el

-;;; canna-leim.el --- Canna-related code for LEIM
-;; Copyright (C) 1997  Stephen Turnbull <turnbull@sk.tsukuba.ac.jp>
-;; Copyright (C) 1997 Free Software Foundation, Inc.
-;;
-;; Shamelessly ripped off from
-;;
-;; skk-leim.el --- SKK related code for LEIM
-;; Copyright (C) 1997
-;; Murata Shuuichirou <mrt@mickey.ai.kyutech.ac.jp>
-;;
-;; Author: Stephen Turnbull <turnbull@sk.tsukuba.ac.jp>
-;; Version: canna-leim.el,v 1.2 1997/10/27 10:08:49 steve Exp
-;; Keywords: japanese, input method, LEIM
-;; Last Modified: 1997/10/27 10:08:49
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either versions 2, or (at your option)
-;; any later version.
-
-;; This program is distributed in the hope that it will be useful
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs, see the file COPYING.  If not, write to the Free
-;; Software Foundation Inc., 59 Temple Place - Suite 330, Boston,
-;; MA 02111-1307, USA.
-
-;;; TODO
-;;
-;;  Add pointers to Canna documentation in LEIM format
-
-(defun canna-activate (&optional name)
-  (if (featurep 'CANNA)
-      (require 'canna)
-    (error "Canna is not built into this XEmacs"))
-  (setq inactivate-current-input-method-function 'canna-inactivate)
-  (unless (featurep 'leim-canna-initialized)
-    (canna)
-    (provide 'leim-canna-initialized))
-  (canna-toggle-japanese-mode))
-
-(defun canna-inactivate ()
-  (cond (canna:*japanese-mode* (canna-toggle-japanese-mode))) )
-
-(register-input-method
- 'japanese-canna "Japanese"
- 'canna-activate nil
- "Canna - a kana to kanji conversion program" )
-
-(provide 'canna-leim)
-
-;;; canna-leim.el ends here

chinese.el

-;;; chinese.el --- Support for Chinese
-
-;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 1997 MORIOKA Tomohiko
-
-;; Keywords: multilingual, Chinese
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
-
-;;; Commentary:
-
-;; For Chinese, three character sets GB2312, BIG5, and CNS11643 are
-;; supported.
-
-;;; Code:
-
-;; Syntax of Chinese characters.
-(modify-syntax-entry 'chinese-gb2312 "w")
-(loop for row in '(33 34 41)
-      do (modify-syntax-entry `[chinese-gb2312 ,row] "."))
-;;(loop for row from 35 to  40
-;;      do (modify-syntax-entry `[chinese-gb2312 ,row] "w"))
-;;(loop for row from 42 to 126
-;;      do (modify-syntax-entry `[chinese-gb2312 ,row] "w"))
-
-(modify-syntax-entry 'chinese-cns11643-1  "w")
-(modify-syntax-entry 'chinese-cns11643-2  "w")
-(modify-syntax-entry 'chinese-big5-1 "w")
-(modify-syntax-entry 'chinese-big5-2 "w")
-
-;; CNS11643 Plane3 thru Plane7
-;; These represent more and more obscure Chinese characters.
-;; By the time you get to Plane 7, we're talking about characters
-;; that appear once in some ancient manuscript and whose meaning
-;; is unknown.
-
-(flet
-    ((make-chinese-cns11643-charset
-      (name plane final)
-      (make-charset
-       name (concat "CNS 11643 Plane " plane " (Chinese traditional)")
-       `(registry 
-         ,(concat "CNS11643[.-]\\(.*[.-]\\)?" plane "$")
-         dimension 2
-         chars 94
-         final ,final
-         graphic 0))
-      (modify-syntax-entry   name "w")
-      (modify-category-entry name ?t)
-      ))
-  (make-chinese-cns11643-charset 'chinese-cns11643-3 "3" ?I)
-  (make-chinese-cns11643-charset 'chinese-cns11643-4 "4" ?J)
-  (make-chinese-cns11643-charset 'chinese-cns11643-5 "5" ?K)
-  (make-chinese-cns11643-charset 'chinese-cns11643-6 "6" ?L)
-  (make-chinese-cns11643-charset 'chinese-cns11643-7 "7" ?M)
-  )
-
-;; ISO-IR-165 (CCITT Extended GB)
-;;    It is based on CCITT Recommendation T.101, includes GB 2312-80 +
-;;    GB 8565-88 table A4 + 293 characters.
-(make-charset
- 'chinese-isoir165
- "ISO-IR-165 (CCITT Extended GB; Chinese simplified)"
- `(registry "isoir165"
-   dimension 2
-   chars 94
-   final ?E
-   graphic 0))
-
-;; PinYin-ZhuYin
-(make-charset 'sisheng "PinYin-ZhuYin"
-	      '(registry "sisheng_cwnn\\|OMRON_UDC_ZH"
-		dimension 1
-		chars 94
-		final ?0
-		graphic 0
-		))
-
-;; If you prefer QUAIL to EGG, please modify below as you wish.
-;;(when (and (featurep 'egg) (featurep 'wnn))
-;;  (setq wnn-server-type 'cserver)
-;;  (load "pinyin")
-;;  (setq its:*standard-modes*
-;;        (cons (its:get-mode-map "PinYin") its:*standard-modes*)))
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;; Chinese (general)
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-;; (make-coding-system
-;;  'chinese-iso-7bit 2 ?C
-;;  "ISO 2022 based 7bit encoding for Chinese GB and CNS (MIME:ISO-2022-CN)"
-;;  '(ascii
-;;    (nil chinese-gb2312 chinese-cns11643-1)
-;;    (nil chinese-cns11643-2)
-;;    (nil chinese-cns11643-3 chinese-cns11643-4 chinese-cns11643-5
-;;         chinese-cns11643-6 chinese-cns11643-7)
-;;    nil ascii-eol ascii-cntl seven locking-shift single-shift nil nil nil
-;;    init-bol))
-
-;; (define-coding-system-alias 'iso-2022-cn 'chinese-iso-7bit)
-;; (define-coding-system-alias 'iso-2022-cn-ext 'chinese-iso-7bit)
-
-;; (define-prefix-command 'describe-chinese-environment-map)
-;; (define-key-after describe-language-environment-map [Chinese]
-;;   '("Chinese" . describe-chinese-environment-map)
-;;   t)
-
-;; (define-prefix-command 'setup-chinese-environment-map)
-;; (define-key-after setup-language-environment-map [Chinese]
-;;   '("Chinese" . setup-chinese-environment-map)
-;;   t)
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;; Chinese GB2312 (simplified) 
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-;; (make-coding-system
-;;  'chinese-iso-8bit 2 ?c
-;;  "ISO 2022 based EUC encoding for Chinese GB2312 (MIME:CN-GB-2312)"
-;;  '((ascii t) chinese-gb2312 chinese-sisheng nil
-;;    nil ascii-eol ascii-cntl nil nil single-shift nil))
-
-(make-coding-system
- 'cn-gb-2312 'iso2022
- "Coding-system of Chinese EUC (Extended Unix Code)."
- '(charset-g0 ascii
-   charset-g1 chinese-gb2312
-   charset-g2 sisheng
-   charset-g3 t
-   mnemonic "Zh-GB/EUC"
-   ))
-
-;; (define-coding-system-alias 'cn-gb-2312 'chinese-iso-8bit)
-;; (define-coding-system-alias 'euc-china 'chinese-iso-8bit)
-
-(copy-coding-system 'cn-gb-2312 'gb2312)
-(copy-coding-system 'cn-gb-2312 'chinese-euc)
-
-;; (make-coding-system
-;;  'chinese-hz 0 ?z
-;;  "Hz/ZW 7-bit encoding for Chinese GB2312 (MIME:HZ-GB-2312)"
-;;  nil)
-;; (put 'chinese-hz 'post-read-conversion 'post-read-decode-hz)
-;; (put 'chinese-hz 'pre-write-conversion 'pre-write-encode-hz)
-
-(make-coding-system
- 'hz-gb-2312 'no-conversion
- "Coding-system of Hz/ZW used for Chinese."
- '(mnemonic "Zh-GB/Hz"
-   eol-type lf
-   post-read-conversion post-read-decode-hz
-   pre-write-conversion pre-write-encode-hz))
-
-;; (define-coding-system-alias 'hz-gb-2312 'chinese-hz)
-;; (define-coding-system-alias 'hz 'chinese-hz)
-
-(copy-coding-system 'hz-gb-2312 'hz)
-(copy-coding-system 'hz-gb-2312 'chinese-hz)
-
-(defun post-read-decode-hz (len)
-  (let ((pos (point)))
-    (decode-hz-region pos (+ pos len))))
-
-(defun pre-write-encode-hz (from to)
-  (let ((buf (current-buffer))
-	(work (get-buffer-create " *pre-write-encoding-work*")))
-    (set-buffer work)
-    (erase-buffer)
-    (if (stringp from)
-	(insert from)
-      (insert-buffer-substring buf from to))
-    (encode-hz-region 1 (point-max))
-    nil))
-	   
-(set-language-info-alist
- "Chinese-GB" '((setup-function . (setup-chinese-gb-environment
-				   . setup-chinese-environment-map))
-		(charset . (chinese-gb2312 sisheng))
-		(coding-system
-		 . (cn-gb-2312 iso-2022-7bit hz-gb-2312))
-		(sample-text . "Chinese ($AVPND(B,$AFUM(;0(B,$A::So(B)	$ADc:C(B")
-		(documentation . ("Support for Chinese GB2312 character set."
-				  . describe-chinese-environment-map))
-		))
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; Chinese BIG5 (traditional)
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-;; (make-coding-system
-;;  'chinese-big5 3 ?B "BIG5 8-bit encoding for Chinese (MIME:CN-BIG5)")
-
-(make-coding-system
- 'big5 'big5
- "Coding-system of BIG5."
- '(mnemonic "Zh/Big5"))
-
-;; (define-coding-system-alias 'big5 'chinese-big5)
-;; (define-coding-system-alias 'cn-big5 'chinese-big5)
-
-(copy-coding-system 'big5 'cn-big5)
-(copy-coding-system 'big5 'chinese-big5)
-
-;; Big5 font requires special encoding.
-(define-ccl-program ccl-encode-big5-font
-  `(0
-    ;; In:  R0:chinese-big5-1 or chinese-big5-2
-    ;;      R1:position code 1
-    ;;      R2:position code 2
-    ;; Out: R1:font code point 1
-    ;;      R2:font code point 2
-    ((r2 = ((((r1 - ?\x21) * 94) + r2) - ?\x21))
-     (if (r0 == ,(charset-id 'chinese-big5-2)) (r2 += 6280))
-     (r1 = ((r2 / 157) + ?\xA1))
-     (r2 %= 157)
-     (if (r2 < ?\x3F) (r2 += ?\x40) (r2 += ?\x62))))
-  "CCL program to encode a Big5 code to code point of Big5 font.")
-
-;; (setq font-ccl-encoder-alist
-;;       (cons (cons "big5" ccl-encode-big5-font) font-ccl-encoder-alist))
-
-(set-charset-ccl-program 'chinese-big5-1 ccl-encode-big5-font)
-(set-charset-ccl-program 'chinese-big5-2 ccl-encode-big5-font)
-
-(set-language-info-alist
- "Chinese-BIG5" '((setup-function . (setup-chinese-big5-environment
-				     . setup-chinese-environment-map))
-		  (charset . (chinese-big5-1 chinese-big5-2))
-		  (coding-system . (big5 iso-2022-7bit))
-		  (sample-text . "Cantonese ($(0GnM$(B,$(0N]0*Hd(B)	$(0*/=((B, $(0+$)p(B")
-		  (documentation . ("Support for Chinese Big5 character set."
-				    . describe-chinese-environment-map))
-		  ))
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; Chinese CNS11643 (traditional)
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-;; (set-language-info-alist
-;;  "Chinese-CNS" '((setup-function . (setup-chinese-cns-environment
-;;                                     . setup-chinese-environment-map))
-;;                  (charset . (chinese-cns11643-1 chinese-cns11643-2
-;;                              chinese-cns11643-3 chinese-cns11643-4
-;;                              chinese-cns11643-5 chinese-cns11643-6
-;;                              chinese-cns11643-7))
-;;                  (coding-system . (chinese-iso-7bit))
-;;                  (documentation . ("Support for Chinese CNS character sets."
-;;                                    . describe-chinese-environment-map))
-;;                  ))
-
-;;; chinese.el ends here

cyrillic.el

-;;; cyrillic.el --- Support for languages which use Cyrillic characters
-
-;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 1997 MORIOKA Tomohiko
-
-;; Keywords: multilingual, Cyrillic
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
-
-;;; Commentary:
-
-;; The character set ISO8859-5 is supported.  KOI-8 and ALTERNATIVNYJ
-;; are converted to ISO8859-5 internally.
-
-;;; Code:
-
-;; For syntax of Cyrillic
-(modify-syntax-entry 'cyrillic-iso8859-5 "w")
-(modify-syntax-entry ?,L-(B ".")
-(modify-syntax-entry ?,Lp(B ".")
-(modify-syntax-entry ?,L}(B ".")
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;; CYRILLIC
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-;; (define-prefix-command 'describe-cyrillic-environment-map)
-;; (define-key-after describe-language-environment-map [Cyrillic]
-;;   '("Cyrillic" . describe-cyrillic-environment-map)
-;;   t)
-
-;; (define-prefix-command 'setup-cyrillic-environment-map)
-;; (define-key-after setup-language-environment-map [Cyrillic]
-;;   '("Cyrillic" . setup-cyrillic-environment-map)
-;;   t)
-
-
-;; ISO-8859-5 staff
-
-;; (make-coding-system
-;;  'cyrillic-iso-8bit 2 ?5
-;;  "ISO 2022 based 8-bit encoding for Cyrillic script (MIME:ISO-8859-5)"
-;;  '((ascii t) (cyrillic-iso8859-5 t) nil nil
-;;    nil ascii-eol ascii-cntl nil nil nil nil))
-
-;; (define-coding-system-alias 'iso-8859-5 'cyrillic-iso-8bit)
-
-(make-coding-system
- 'iso-8859-5 'iso2022
- "MIME ISO-8859-5"
- '(charset-g0 ascii
-   charset-g1 cyrillic-iso8859-5
-   charset-g2 t
-   charset-g3 t
-   mnemonic "ISO8/Cyr"
-   ))
-
-(set-language-info-alist
- "Cyrillic-ISO" '((setup-function . (setup-cyrillic-iso-environment
-				     . setup-cyrillic-environment-map))
-		  (charset . (cyrillic-iso8859-5))
-		  (tutorial . "TUTORIAL.ru")
-		  (coding-system . (iso-8859-5))
-		  (sample-text . "Russian (,L@caaZXY(B)	,L7T`PRabRcYbU(B!")
-		  (documentation . ("Support for Cyrillic ISO-8859-5."
-				    . describe-cyrillic-environment-map))))
-
-;; KOI-8 staff
-
-(define-ccl-program ccl-decode-koi8
-  '(3
-    ((read r0)
-     (loop
-       (write-read-repeat
-	r0
-	[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-	   16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
-	   32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
-	   48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
-	   64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
-	   80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
-	   96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
-	   112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
-	   128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
-	   144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
-	    32  32  32 ?,Lq(B   32  32  32  32  32  32  32  32  32  32  32  32
-	    32  32  32 ?,L!(B   32  32  32  32  32  32  32  32  32  32  32  32
-	   ?,Ln(B  ?,LP(B  ?,LQ(B  ?,Lf(B  ?,LT(B  ?,LU(B  ?,Ld(B  ?,LS(B  ?,Le(B  ?,LX(B  ?,LY(B  ?,LZ(B  ?,L[(B  ?,L\(B  ?,L](B  ?,L^(B 
-	   ?,L_(B  ?,Lo(B  ?,L`(B  ?,La(B  ?,Lb(B  ?,Lc(B  ?,LV(B  ?,LR(B  ?,Ll(B  ?,Lk(B  ?,LW(B  ?,Lh(B  ?,Lm(B  ?,Li(B  ?,Lg(B  ?,Lj(B 
-	   ?,LN(B  ?,L0(B  ?,L1(B  ?,LF(B  ?,L4(B  ?,L5(B  ?,LD(B  ?,L3(B  ?,LE(B  ?,L8(B  ?,L9(B  ?,L:(B  ?,L;(B  ?,L<(B  ?,L=(B  ?,L>(B 
-	   ?,L?(B  ?,LO(B  ?,L@(B  ?,LA(B  ?,LB(B  ?,LC(B  ?,L6(B  ?,L2(B  ?,LL(B  ?,LK(B  ?,L7(B  ?,LH(B  ?,LM(B  ?,LI(B  ?,LG(B  ?,LJ(B ]))))
-  "CCL program to decode KOI8.")
-
-(define-ccl-program ccl-encode-koi8
-  `(1
-    ((read r0)
-     (loop
-       (if (r0 != ,(charset-id 'cyrillic-iso8859-5))
-	   (write-read-repeat r0)
-	 ((read r0)
-	  (r0 -= 160)
-	  (write-read-repeat
-	   r0
-	   [ 32 179  32  32  32  32  32  32  32  32  32  32  32  32  32  32
-		225 226 247 231 228 229 246 250 233 234 235 236 237 238 239 240
-		242 243 244 245 230 232 227 254 251 253 255 249 248 252 224 241
-		193 194 215 199 196 197 214 218 201 202 203 204 205 206 207 208
-		210 211 212 213 198 200 195 222 219 221 223 217 216 220 192 209
-		32 163  32  32  32  32  32  32  32  32  32  32  32  32  32  32])
-	  )))))
-  "CCL program to encode KOI8.")
-
-;(make-coding-system
-;  'cyrillic-koi8 4
-;  ;; We used to use ?K.  It is true that ?K is more strictly correct,
-;  ;; but it is also used for Korean.
-;  ;; So people who use koi8 for languages other than Russian
-;  ;; will have to forgive us.
-;  ?R "KOI8 8-bit encoding for Cyrillic (MIME: KOI8-R)"
-;  (cons ccl-decode-koi8 ccl-encode-koi8))
-
-;(define-coding-system-alias 'koi8-r 'cyrillic-koi8)
-;(define-coding-system-alias 'koi8 'cyrillic-koi8)
-
-(make-coding-system
- 'koi8-r 'ccl
- "Coding-system used for KOI8-R."
- `(decode ,ccl-decode-koi8
-   encode ,ccl-encode-koi8
-   mnemonic "KOI8"))
-
-;(define-coding-system-alias 'koi8-r 'koi8)
-
-;; (define-ccl-program ccl-encode-koi8-font
-;;   '(0
-;;     ((r1 -= 160)
-;;      (r1 = r1
-;;          [ 32 179  32  32  32  32  32  32  32  32  32  32  32  32  32  32
-;;               225 226 247 231 228 229 246 250 233 234 235 236 237 238 239 240
-;;               242 243 244 245 230 232 227 254 251 253 255 249 248 252 224 241
-;;               193 194 215 199 196 197 214 218 201 202 203 204 205 206 207 208
-;;               210 211 212 213 198 200 195 222 219 221 223 217 216 220 192 209
-;;               32 163  32  32  32  32  32  32  32  32  32  32  32  32  32  32])
-;;      ))
-;;   "CCL program to encode Cyrillic chars to KOI font.")
-
-;; (setq font-ccl-encoder-alist
-;;       (cons (cons "koi8" ccl-encode-koi8-font) font-ccl-encoder-alist))
-
-(set-language-info-alist
- "Cyrillic-KOI8" '((setup-function . (setup-cyrillic-koi8-environment
-				      . setup-cyrillic-environment-map))
-		   (charset . (cyrillic-iso8859-5))
-		   (coding-system . (koi8-r))
-		   (tutorial . "TUTORIAL.ru")
-		   (sample-text . "Russian (,L@caaZXY(B)	,L7T`PRabRcYbU(B!")
-		   (documentation . ("Support for Cyrillic KOI-8."
-				     . describe-cyrillic-environment-map))))
-
-;;; ALTERNATIVNYJ staff
-
-(define-ccl-program ccl-decode-alternativnyj
-  '(3
-    ((read r0)
-     (loop
-       (write-read-repeat
-	r0
-	[  0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
-	       16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31
-	       32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47
-	       48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63
-	       64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79
-	       80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95
-	       96  97  98  99 100 101 102 103 104 105 106 107 108 109 110 111
-	       112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
-	       ?,L0(B  ?,L1(B  ?,L2(B  ?,L3(B  ?,L4(B  ?,L5(B  ?,L6(B  ?,L7(B  ?,L8(B  ?,L9(B  ?,L:(B  ?,L;(B  ?,L<(B  ?,L=(B  ?,L>(B  ?,L?(B
-	       ?,L@(B  ?,LA(B  ?,LB(B  ?,LC(B  ?,LD(B  ?,LE(B  ?,LF(B  ?,LG(B  ?,LH(B  ?,LI(B  ?,LJ(B  ?,LK(B  ?,LL(B  ?,LM(B  ?,LN(B  ?,LO(B
-	       ?,LP(B  ?,LQ(B  ?,LR(B  ?,LS(B  ?,LT(B  ?,LU(B  ?,LV(B  ?,LW(B  ?,LX(B  ?,LY(B  ?,LZ(B  ?,L[(B  ?,L\(B  ?,L](B  ?,L^(B  ?,L_(B
-	       32  32  32  32  32  32  32  32  32  32  32  32  32  32  32  32
-	       32  32  32  32  32  32  32  32  32  32  32  32  32  32  32  32
-	       32  32  32  32  32  32  32  32  32  32  32  32  32  32  32  32
-	       ?,L`(B  ?,La(B  ?,Lb(B  ?,Lc(B  ?,Ld(B  ?,Le(B  ?,Lf(B  ?,Lg(B  ?,Lh(B  ?,Li(B  ?,Lj(B  ?,Lk(B  ?,Ll(B  ?,Lm(B  ?,Ln(B  ?,Lo(B
-	       ?,L!(B  ?,Lq(B   32  32  32  32  32  32  32  32  32  32  32  32  32 ?,Lp(B]))))
-  "CCL program to decode Alternativnyj.")
-
-(define-ccl-program ccl-encode-alternativnyj
-  `(1
-    ((read r0)
-     (loop
-       (if (r0 != ,(charset-id 'cyrillic-iso8859-5))
-	   (write-read-repeat r0)
-	 ((read r0)
-	  (r0 -= 160)
-	  (write-read-repeat
-	   r0
-	   [ 32 240  32  32  32  32  32  32  32  32  32  32  32  32  32  32
-		128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
-		144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
-		160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
-		224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
-		255 241  32  32  32  32  32  32  32  32  32  32  32  32  32  32])
-	  )))))
-  "CCL program to encode Alternativnyj.")
-
-;; (make-coding-system
-;;  'alternativnyj 4
-;;  ?A "Coding-system used for Alternativnyj"
-;;  (cons ccl-decode-alternativnyj ccl-encode-alternativnyj))
-
-(make-coding-system
- 'alternativnyj 'ccl
- "Coding-system used for Alternativnyj"
- `(decode ,ccl-decode-alternativnyj
-   encode ,ccl-encode-alternativnyj
-   mnemonic "Cy.Alt"))
-
-;; (define-ccl-program ccl-encode-alternativnyj-font
-;;   '(0
-;;     ((r1 -= 160)
-;;      (r1 = r1
-;;       [ 32 240  32  32  32  32  32  32  32  32  32  32  32  32  32  32
-;;        128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
-;;        144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
-;;        160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
-;;        224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
-;;        255 241  32  32  32  32  32  32  32  32  32  32  32  32  32  32])
-;;      ))
-;;   "CCL program to encode Cyrillic chars to Alternativnyj font.")
-
-;; (setq font-ccl-encoder-alist
-;;       (cons (cons "alternativnyj" ccl-encode-alternativnyj-font)
-;;             font-ccl-encoder-alist))
-
-(set-language-info-alist
- "Cyrillic-ALT" '((setup-function . (setup-cyrillic-alternativnyj-environment
-				     . setup-cyrillic-environment-map))
-		  (charset . (cyrillic-iso8859-5))
-		  (coding-system . (alternativnyj))
-		  (tutorial . "TUTORIAL.ru")
-		  (sample-text . "Russian (,L@caaZXY(B)	,L7T`PRabRcYbU(B!")
-		  (documentation . ("Support for Cyrillic ALTERNATIVNYJ."
-				    . describe-cyrillic-environment-map))))
-
-;;; GENERAL
-
-(defun setup-cyrillic-environment ()
-  "Setup multilingual environment for Cyrillic users."
-  (interactive)
-  (setq primary-language "Cyrillic")
-
-  (setq coding-category-iso-8-1 'iso-8859-5)
-
-  (set-coding-priority
-   '(coding-category-iso-7
-     coding-category-iso-8-1))
-
-  (setq-default buffer-file-coding-system 'iso-8859-5)
-  (set-terminal-coding-system 'iso-8859-5)
-  (set-keyboard-coding-system 'iso-8859-5)
-
-  (setq default-input-method '("Cyrillic" . "quail-yawerty"))
-  )
-
-(defun describe-cyrillic-support ()
-  "Describe how Emacs support Cyrillic."
-  (interactive)
-  (describe-language-support-internal "Cyrillic"))
-
-(set-language-info-alist
- "Cyrillic" '((setup-function . setup-cyrillic-environment)
-              (describe-function . describe-cyrillic-support)
-              (charset . (cyrillic-iso8859-5))
-	      (tutorial . "TUTORIAL.ru")
-              (coding-system . (iso-8859-5 koi8-r alternativnyj))
-              (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!")
-              (documentation . nil)))
-
-;;; cyrillic.el ends here

english.el

-;;; english.el --- English support
-
-;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 1997 MORIOKA Tomohiko
-
-;; Keywords: multibyte character, character set, syntax, category
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
-
-;;; Commentary:
-
-;; We need nothing special to support English on Emacs.  Selecting
-;; English as a language environment is one of the ways to reset
-;; various multilingual environment to the original settting.
-
-;; modified for XEmacs by MORIOKA Tomohiko
-
-;;; Code
-
-(defun setup-english-environment ()
-  "Reset multilingual environment of Emacs to the default status.
-The default status is as follows.
-
-  The default value of enable-multibyte-characters is t.
-
-  The default value of buffer-file-coding-system is nil.
-  The coding system for terminal output is nil.
-  The coding system for keyboard input is nil.
-
-  The order of priorities of coding categories and the coding system
-  bound to each category are as follows
-	coding category			coding system
-	--------------------------------------------------
-	coding-category-iso-7		iso-2022-7bit
-	coding-category-iso-8-1		iso-8859-1
-	coding-category-iso-8-2		iso-8859-1
-	coding-category-iso-7-else	iso-2022-7bit-lock
-	coding-category-iso-8-else	iso-2022-8bit-ss2
-	coding-category-emacs-mule 	no-conversion
-	coding-category-sjis		japanese-shift-jis
-	coding-category-big5		chinese-big5
-	coding-category-binarry		no-conversion
-"
-  (interactive)
-  ;; (setq-default enable-multibyte-characters t)
-
-  ;; (setq coding-category-iso-7           'iso-2022-7bit
-  ;;       coding-category-iso-8-1         'iso-8859-1
-  ;;       coding-category-iso-8-2         'iso-8859-1
-  ;;       coding-category-iso-7-else      'iso-2022-7bit-lock
-  ;;       coding-category-iso-8-else      'iso-2022-8bit-ss2
-  ;;       coding-category-emacs-mule      'no-conversion
-  ;;       coding-category-sjis            'japanese-shift-jis
-  ;;       coding-category-big5            'chinese-big5
-  ;;       coding-category-binary          'binary)
-  (set-coding-category-system 'iso-7		'iso-2022-7bit)
-  (set-coding-category-system 'iso-8-1		'iso-8859-1)
-  (set-coding-category-system 'iso-8-2		'iso-8859-1)
-  (set-coding-category-system 'iso-lock-shift	'iso-2022-lock)
-  (set-coding-category-system 'iso-8-designate	'ctext)
-  (set-coding-category-system 'no-conversion	'no-conversion)
-  (set-coding-category-system 'shift-jis	'shift_jis)
-  (set-coding-category-system 'big5		'big5)
-  
-  ;; (set-coding-priority
-  ;;  '(coding-category-iso-7
-  ;;    coding-category-iso-8-2
-  ;;    coding-category-iso-8-1
-  ;;    coding-category-iso-7-else
-  ;;    coding-category-iso-8-else
-  ;;    coding-category-emacs-mule 
-  ;;    coding-category-raw-text
-  ;;    coding-category-sjis
-  ;;    coding-category-big5
-  ;;    coding-category-binary))
-  (set-coding-priority-list
-   '(iso-7
-     iso-8-2
-     iso-8-1
-     iso-8-designate
-     iso-lock-shift
-     no-conversion
-     shift-jis
-     big5))
-  
-  (set-default-coding-systems nil)
-  ;; Don't alter the terminal and keyboard coding systems here.
-  ;; The terminal still supports the same coding system
-  ;; that it supported a minute ago.
-;;;  (set-terminal-coding-system-internal nil)
-;;;  (set-keyboard-coding-system-internal nil)
-
-  ;;(setq nonascii-insert-offset 0)
-  )
-
-(set-language-info-alist
- "English" '((setup-function . setup-english-environment)
-	     (tutorial . "TUTORIAL")
-	     (charset . (ascii))
-	     (sample-text . "Hello!, Hi!, How are you?")
-	     (documentation . "\
-Nothing special is needed to handle English.")
-	     ))
-
-;; Make "ASCII" an alias of "English" language environment.
-(set-language-info-alist
- "ASCII" (cdr (assoc "English" language-info-alist)))
-
-;;; english.el ends here

european.el

-;;; european.el --- Support for European languages
-
-;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 1997 MORIOKA Tomohiko
-
-;; Keywords: multilingual, European
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
-
-;;; Commentary:
-
-;; For Europeans, five character sets ISO8859-1,2,3,4,9 are supported.
-
-;;; Code:
-
-;; For syntax of Latin-1 characters.
-(loop for c from 64 to 127              ; from ',A@(B' to ',A(B'
-      do (modify-syntax-entry (make-char 'latin-iso8859-1 c) "w"))
-
-(modify-syntax-entry (make-char 'latin-iso8859-1 32) "w") ; no-break space
-(modify-syntax-entry ?,AW(B "_")
-(modify-syntax-entry ?,Aw(B "_")
-
-;; For syntax of Latin-2
-(loop for c in '(?,B!(B ?,B#(B ?,B%(B ?,B&(B ?,B)(B ?,B*(B ?,B+(B ?,B,(B ?,B.(B ?,B/(B ?,B1(B ?,B3(B ?,B5(B ?,B6(B ?,B9(B ?,B:(B ?,B;(B ?,B<(B)
-      do (modify-syntax-entry c "w"))
-
-(loop for c from 62 to 126
-      do (modify-syntax-entry (make-char 'latin-iso8859-2 c) "w"))
-
-(modify-syntax-entry (make-char 'latin-iso8859-2 32) "w") ; no-break space
-(modify-syntax-entry ?,BW(B ".")
-(modify-syntax-entry ?,Bw(B ".")
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;; EUROPEANS
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-;; (define-prefix-command 'describe-european-environment-map)
-;; (define-key-after describe-language-environment-map [European]
-;;   '("European" . describe-european-environment-map)
-;;   t)
-
-;; (define-prefix-command 'setup-european-environment-map)
-;; (define-key-after setup-language-environment-map [European]
-;;   '("European" . setup-european-environment-map)
-;;   t)
-
-;; Setup for LANGAUGE which uses one-byte 8-bit CHARSET, one-byte
-;; 8-bit CODING-SYSTEM, and INPUT-METHOD.
-(defun setup-8-bit-environment (language charset coding-system input-method)
-  (setup-english-environment)
-  (set-default-coding-systems coding-system)
-  ;; (setq coding-category-iso-8-1 coding-system
-  ;;       coding-category-iso-8-2 coding-system)
-  (set-coding-category-system 'iso-8-1 coding-system)
-  (set-coding-category-system 'iso-8-2 coding-system)
-
-  ;; (if charset
-  ;;     (let ((nonascii-offset (- (make-char charset) 128)))
-  ;;       ;; Set up for insertion of characters in this character set
-  ;;       ;; when codes 0200 - 0377 are typed in.
-  ;;       (setq nonascii-insert-offset nonascii-offset)))
-
-  (if input-method
-      (setq default-input-method input-method))
-
-  ;; If this is a Latin-N character set, set up syntax for it in
-  ;; single-byte mode.  We can't use require because the file
-  ;; must be eval'd each time in case we change from one Latin-N to another.
-  ;; (if (string-match "^Latin-\\([1-9]\\)$" language)
-  ;;     (load (downcase language) nil t))
-  )
-
-;; Latin-1 (ISO-8859-1)
-
-;; (make-coding-system
-;;  'iso-latin-1 2 ?1
-;;  "ISO 2022 based 8-bit encoding (MIME:ISO-8859-1, Compound Text Encoding)"
-;;  '((ascii t) (latin-iso8859-1 t) nil nil
-;;    nil ascii-eol ascii-cntl nil nil nil nil nil nil nil nil nil t))
-
-;; (define-coding-system-alias 'iso-8859-1 'iso-latin-1)
-;; (define-coding-system-alias 'latin-1 'iso-latin-1)
-;; (define-coding-system-alias 'ctext 'iso-latin-1)
-
-(defun setup-latin1-environment ()
-  "Set up multilingual environment (MULE) for European Latin-1 users."
-  (interactive)
-  (setup-8-bit-environment "Latin-1" 'latin-iso8859-1 'iso-8859-1
-			   "latin-1-prefix"))
-
-(set-language-info-alist
- "Latin-1" '((setup-function . (setup-latin1-environment
-				. setup-european-environment-map))
-	     (charset . (ascii latin-iso8859-1))
-	     (coding-system . (iso-8859-1))
-	     (sample-text
-	      . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!")
-	     (documentation . ("\
-These languages are supported with the Latin-1 (ISO-8859-1) character set:
- Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic,
- Irish, Italian, Norwegian, Portuguese, Spanish, and Swedish.
-" . describe-european-environment-map))
-	     ))
-
-(set-language-info-alist
- "German" '((setup-function . (setup-latin1-environment
-				. setup-european-environment-map))
-	     (charset . (ascii latin-iso8859-1))
-	     (coding-system . (iso-8859-1))
-	     (tutorial . "TUTORIAL.de")
-	     (sample-text
-	      . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!")
-	     (documentation . ("\
-These languages are supported with the Latin-1 (ISO-8859-1) character set:
- Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic,
- Irish, Italian, Norwegian, Portuguese, Spanish, and Swedish.
-" . describe-european-environment-map))
-	     ))
-
-(set-language-info-alist
- "French" '((setup-function . (setup-latin1-environment
-				. setup-european-environment-map))
-	     (charset . (ascii latin-iso8859-1))
-	     (coding-system . (iso-8859-1))
-	     (tutorial . "TUTORIAL.fr")
-	     (sample-text
-	      . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!")
-	     (documentation . ("\
-These languages are supported with the Latin-1 (ISO-8859-1) character set:
- Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic,
- Irish, Italian, Norwegian, Portuguese, Spanish, and Swedish.
-" . describe-european-environment-map))
-	     ))
-
-(set-language-info-alist
- "Norwegian" '((setup-function . (setup-latin1-environment
-				. setup-european-environment-map))
-	     (charset . (ascii latin-iso8859-1))
-	     (coding-system . (iso-8859-1))
-	     (tutorial . "TUTORIAL.no")
-	     (sample-text
-	      . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!")
-	     (documentation . ("\
-These languages are supported with the Latin-1 (ISO-8859-1) character set:
- Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic,
- Irish, Italian, Norwegian, Portuguese, Spanish, and Swedish.
-" . describe-european-environment-map))
-	     ))
-
-;; Latin-2 (ISO-8859-2)
-
-;; (make-coding-system
-;;  'iso-latin-2 2 ?2
-;;  "ISO 2022 based 8-bit encoding (MIME:ISO-8859-2)"
-;;  '((ascii t) (latin-iso8859-2 t) nil nil
-;;    nil ascii-eol ascii-cntl nil nil nil nil))
-
-;; (define-coding-system-alias 'iso-8859-2 'iso-latin-2)
-;; (define-coding-system-alias 'latin-2 'iso-latin-2)
-
-(make-coding-system
- 'iso-8859-2 'iso2022 "MIME ISO-8859-2"
- '(charset-g0 ascii
-   charset-g1 latin-iso8859-2
-   charset-g2 t
-   charset-g3 t
-   mnemonic "MIME/Ltn-2"
-   ))
-
-(defun setup-latin2-environment ()
-  "Set up multilingual environment (MULE) for European Latin-2 users."
-  (interactive)
-  (setup-8-bit-environment "Latin-2" 'latin-iso8859-2 'iso-8859-2
-			   "latin-2-prefix"))
-
-(set-language-info-alist
- "Latin-2" '((setup-function . (setup-latin2-environment
-				. setup-european-environment-map))
-	     (charset . (ascii latin-iso8859-2))
-	     (coding-system . (iso-8859-2))
-	     (documentation . ("\
-These languages are supported with the Latin-2 (ISO-8859-2) character set:
- Albanian, Czech, English, German, Hungarian, Polish, Romanian,
- Serbian, Croatian, Slovak, Slovene, and Swedish.
-" . describe-european-environment-map))
-	     ))
-
-(set-language-info-alist
- "Croatian" '((setup-function . (setup-latin2-environment
-				. setup-european-environment-map))
-	      (charset . (ascii latin-iso8859-2))
-	      (tutorial . "TUTORIAL.hr")
-	      (coding-system . (iso-8859-2))
-	      (documentation . ("\
-These languages are supported with the Latin-2 (ISO-8859-2) character set:
- Albanian, Czech, English, German, Hungarian, Polish, Romanian,
- Serbian, Croatian, Slovak, Slovene, and Swedish.
-" . describe-european-environment-map))
-	      ))
-
-(set-language-info-alist
- "Polish" '((setup-function . (setup-latin2-environment
-				. setup-european-environment-map))
-	      (charset . (ascii latin-iso8859-2))
-	      (tutorial . "TUTORIAL.pl")
-	      (coding-system . (iso-8859-2))
-	      (documentation . ("\
-These languages are supported with the Latin-2 (ISO-8859-2) character set:
- Albanian, Czech, English, German, Hungarian, Polish, Romanian,
- Serbian, Croatian, Slovak, Slovene, and Swedish.
-" . describe-european-environment-map))
-	      ))
-
-(set-language-info-alist
- "Romanian" '((setup-function . (setup-latin2-environment
-				 . setup-european-environment-map))
-	      (charset . (ascii latin-iso8859-2))
-	      (tutorial . "TUTORIAL.ro")
-	      (coding-system . (iso-8859-2))
-	      (documentation . ("\
-These languages are supported with the Latin-2 (ISO-8859-2) character set:
- Albanian, Czech, English, German, Hungarian, Polish, Romanian,
- Serbian, Croatian, Slovak, Slovene, and Swedish.
-" . describe-european-environment-map))
-	      ))
-
-;; Latin-3 (ISO-8859-3)
-
-;; (make-coding-system
-;;  'iso-latin-3 2 ?3
-;;  "ISO 2022 based 8-bit encoding (MIME:ISO-8859-3)"
-;;  '((ascii t) (latin-iso8859-3 t) nil nil
-;;    nil ascii-eol ascii-cntl nil nil nil nil))
-
-;; (define-coding-system-alias 'iso-8859-3 'iso-latin-3)
-;; (define-coding-system-alias 'latin-3 'iso-latin-3)
-
-(make-coding-system
- 'iso-8859-3 'iso2022 "MIME ISO-8859-3"
- '(charset-g0 ascii
-   charset-g1 latin-iso8859-3
-   charset-g2 t
-   charset-g3 t
-   mnemonic "MIME/Ltn-3"
-   ))
-
-(defun setup-latin3-environment ()
-  "Set up multilingual environment (MULE) for European Latin-3 users."
-  (interactive)
-  (setup-8-bit-environment "Latin-3" 'latin-iso8859-3 'iso-8859-3
-			   "latin-3-prefix"))
-
-(set-language-info-alist
- "Latin-3" '((setup-function . (setup-latin3-environment
-				. setup-european-environment-map))
-	     (charset . (ascii latin-iso8859-3))
-	     (coding-system . (iso-8859-3))
-	     (documentation . ("\
-These languages are supported with the Latin-3 (ISO-8859-3) character set:
- Afrikaans, Catalan, Dutch, English, Esperanto, French, Galician,
- German, Italian, Maltese, Spanish, and Turkish.
-" . describe-european-environment-map))
-	     ))
-
-;; Latin-4 (ISO-8859-4)
-
-;; (make-coding-system
-;;  'iso-latin-4 2 ?4
-;;  "ISO 2022 based 8-bit encoding (MIME:ISO-8859-4)"
-;;  '((ascii t) (latin-iso8859-4 t) nil nil
-;;    nil ascii-eol ascii-cntl nil nil nil nil))
-
-;; (define-coding-system-alias 'iso-8859-4 'iso-latin-4)
-;; (define-coding-system-alias 'latin-4 'iso-latin-4)
-
-(make-coding-system
- 'iso-8859-4 'iso2022 "MIME ISO-8859-4"
- '(charset-g0 ascii
-   charset-g1 latin-iso8859-4
-   charset-g2 t
-   charset-g3 t
-   mnemonic "MIME/Ltn-4"
-   ))
-
-(defun setup-latin4-environment ()
-  "Set up multilingual environment (MULE) for European Latin-4 users."
-  (interactive)
-  (setup-8-bit-environment "Latin-4" 'latin-iso8859-4 'iso-8859-4
-			   "latin-4-prefix"))
-
-(set-language-info-alist
- "Latin-4" '((setup-function . (setup-latin4-environment
-				. setup-european-environment-map))
-	     (charset . (ascii latin-iso8859-4))
-	     (coding-system . (iso-8859-4))
-	     (documentation . ("\
-These languages are supported with the Latin-4 (ISO-8859-4) character set:
- Danish, English, Estonian, Finnish, German, Greenlandic, Lappish,
- Latvian, Lithuanian, and Norwegian.
-" . describe-european-environment-map))
-	     ))
-
-;; Latin-5 (ISO-8859-9)
-
-;; (make-coding-system
-;;  'iso-latin-5 2 ?9
-;;  "ISO 2022 based 8-bit encoding (MIME:ISO-8859-9)"
-;;  '((ascii t) (latin-iso8859-9 t) nil nil
-;;    nil ascii-eol ascii-cntl nil nil nil nil))
-
-;; (define-coding-system-alias 'iso-8859-9 'iso-latin-5)
-;; (define-coding-system-alias 'latin-5 'iso-latin-5)
-
-(make-coding-system
- 'iso-8859-9 'iso2022 "MIME ISO-8859-9"
- '(charset-g0 ascii
-   charset-g1 latin-iso8859-9
-   charset-g2 t
-   charset-g3 t
-   mnemonic "MIME/Ltn-5"
-   ))
-
-(defun setup-latin5-environment ()
-  "Set up multilingual environment (MULE) for European Latin-5 users."
-  (interactive)
-  (setup-8-bit-environment "Latin-5" 'latin-iso8859-9 'iso-8859-5
-			   "latin-5-prefix"))
-
-(set-language-info-alist
- "Latin-5" '((setup-function . (setup-latin5-environment
-				. setup-european-environment-map))
-	     (charset . (ascii latin-iso8859-9))
-	     (coding-system . (iso-8859-5))
-	     (documentation . ("\
-These languages are supported with the Latin-5 (ISO-8859-9) character set.
-" . describe-european-environment-map))
-	     ))
-
-;; (defun setup-european-environment ()
-;;   "Setup multilingual environment (MULE) for European languages users.
-;; It actually reset MULE to the default status, and
-;; set quail-latin-1 as the default input method to be selected.
-;; See also the documentation of setup-english-environment."
-;;   (setup-english-environment)
-;;   (setq default-input-method '("European" . "quail-latin-1")))
-
-;; (defun describe-european-support ()
-;;   "Describe how Emacs support European languages."
-;;   (interactive)
-;;   (describe-language-support-internal "European"))
-
-;; (set-language-info-alist
-;;  "European" '((setup-function . setup-european-environment)
-;;               (describe-function . describe-european-support)
-;;               (charset . (ascii latin-iso8859-1 latin-iso8859-2
-;;                           latin-iso8859-3 latin-iso8859-4 latin-iso8859-9))
-;;               (coding-system . (iso-8859-1 iso-8859-2 iso-8859-3
-;;                                 iso-8859-4 iso-8859-9))
-;;               (sample-text
-;;                . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!")
-;;               (documentation . "\
-;; Almost all of European languages are supported by the character sets and
-;; coding systems listed below.
-;; To input them, LEIM (Libraries for Emacs Input Methods) should have been
-;; installed.")
-;;               ))
-
-;;; european.el ends here

greek.el

-;;; greek.el --- Support for Greek
-
-;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 1997 MORIOKA Tomohiko
-
-;; Keywords: multilingual, Greek
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
-
-;;; Commentary:
-
-;; For Greek, the character set ISO8859-7 is supported.
-
-;;; Code:
-
-;; For syntax of Greek
-(loop for c from 54 to 126
-      do (modify-syntax-entry (make-char 'greek-iso8859-7 c) "w"))
-(modify-syntax-entry (make-char 'greek-iso8859-7 32) "w") ; no-break space
-(modify-syntax-entry ?,F7(B ".")
-(modify-syntax-entry ?,F;(B ".")
-(modify-syntax-entry ?,F=(B ".")
-
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;; GREEK
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-;; (define-language-environment 'greek
-;;   "Greek"
-;;   (lambda ()
-;;     (set-coding-category-system 'iso-8-designate 'iso-8859-7)
-;;     (set-coding-priority-list '(iso-8-designate iso-8-1))
-;;     (set-default-buffer-file-coding-system 'iso-8859-7)
-;;     (setq terminal-coding-system 'iso-8859-7)
-;;     (setq keyboard-coding-system 'iso-8859-7)
-;;     ;; (setq-default quail-current-package
-;;     ;;               (assoc "greek" quail-package-alist))
-;;     ))
-
-;; (make-coding-system
-;;  'iso-8859-7 2 ?7 "MIME ISO-8859-7"
-;;  '((ascii t) (greek-iso8859-7 t) nil nil
-;;    nil ascii-eol ascii-cntl nil nil nil nil))
-
-(make-coding-system
- 'iso-8859-7 'iso2022 "MIME ISO-8859-7"
- '(charset-g0 ascii
-   charset-g1 greek-iso8859-7
-   charset-g2 t
-   charset-g3 t
-   mnemonic "Grk"
-   ))
-
-(defun setup-greek-environment ()
-  "Setup multilingual environment (MULE) for Greek."
-  (interactive)
-  (setup-8-bit-environment "Greek" 'greek-iso8859-7 'iso-8859-7 "greek")
-  )
-
-(set-language-info-alist
- "Greek" '((setup-function . setup-greek-environment)
-	   (charset . (greek-iso8859-7))
-	   (coding-system . (iso-8859-7))
-	   (sample-text . "Greek (,FGkk]mija(B)	,FCei\(B ,Fsar(B")
-	   (documentation . t)))
-
-;;; greek.el ends here

hebrew.el

-;;; hebrew.el --- Support for Hebrew
-
-;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-
-;; Keywords: multilingual, Hebrew
-
-;; This file is part of GNU Emacs.
-
-;; GNU Emacs is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; GNU Emacs is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU General Public License for more details.
-
-;; 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.
-
-;;; Commentary:
-
-;; For Hebrew, the character sets ISO8859-8 is supported.
-
-;;; Code:
-
-;; Syntax of Hebrew characters
-(loop for c from 96 to 122
-      do (modify-syntax-entry (make-char 'hebrew-iso8859-8 c) "w"))
-(modify-syntax-entry (make-char 'hebrew-iso8859-8 32) "w") ; no-break space
-
-
-;; (make-coding-system
-;;  'hebrew-iso-8bit 2 ?8
-;;  "ISO 2022 based 8-bit encoding for Hebrew (MIME:ISO-8859-8)"
-;;  '((ascii t) (hebrew-iso8859-8 t) nil nil
-;;    nil ascii-eol ascii-cntl nil nil nil nil nil t))
-
-;; (define-coding-system-alias 'iso-8859-8 'hebrew-iso-8bit)
-
-(make-coding-system
- 'iso-8859-8 'iso2022
- "MIME ISO-8859-8"
- '(charset-g0 ascii
-   charset-g1 hebrew-iso8859-8
-   charset-g2 t
-   charset-g3 t
-   no-iso6429 t
-   mnemonic "MIME/Hbrw"
-))
-
-(make-coding-system
- 'ctext-hebrew 'iso2022
- "Coding-system of Hebrew."
- '(charset-g0 ascii
-   charset-g1 hebrew-iso8859-8
-   charset-g2 t
-   charset-g3 t
-   mnemonic "CText/Hbrw"
-   ))
-
-(defun setup-hebrew-environment ()
-  "Setup multilingual environment (MULE) for Hebrew.
-But, please note that right-to-left writing is not yet supported."
-  (interactive)
-  (setup-8-bit-environment "Hebrew" 'hebrew-iso8859-8 'iso-8859-8
-			   "hebrew")
-  (set-coding-category-system 'iso-8-designate 'iso-8859-8)
-  (set-coding-priority-list
-   '(iso-8-designate
-     iso-8-1
-     iso-7
-     iso-8-2
-     iso-lock-shift
-     no-conversion
-     shift-jis
-     big5))
-  )
-
-(set-language-info-alist
- "Hebrew" '((setup-function . setup-hebrew-environment)
-	    (describe-function . describe-hebrew-support)
-	    (charset . (hebrew-iso8859-8))
-	    (coding-system . (iso-8859-8))
-	    (sample-text . "Hebrew	,Hylem(B")
-	    (documentation . "Right-to-left writing is not yet supported.")
-	    ))
-
-;;; hebrew.el ends here

japanese.el

-;;; japanese.el --- Japanese support
-
-;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 1997 MORIOKA Tomohiko
-
-;; Keywords: multilingual, Japanese
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
-
-;;; Commentary:
-
-;; For Japanese, character sets JISX0201, JISX0208, JISX0212 are
-;; supported.
-
-;;; Code:
-
-;;; Syntax of Japanese characters.
-(modify-syntax-entry 'katakana-jisx0201 "w")
-(modify-syntax-entry 'japanese-jisx0212 "w")
-
-(modify-syntax-entry 'japanese-jisx0208 "w")
-(loop for row in '(33 34 40)
-      do (modify-syntax-entry `[japanese-jisx0208 ,row] "_"))
-(loop for char in '(?$B!<(B ?$B!+(B ?$B!,(B ?$B!3(B ?$B!4(B ?$B!5(B ?$B!6(B ?$B!7(B ?$B!8(B ?$B!9(B ?$B!:(B ?$B!;(B)
-      do (modify-syntax-entry char "w"))
-(modify-syntax-entry ?\$B!J(B "($B!K(B")
-(modify-syntax-entry ?\$B!N(B "($B!O(B")
-(modify-syntax-entry ?\$B!P(B "($B!Q(B")
-(modify-syntax-entry ?\$B!V(B "($B!W(B")
-(modify-syntax-entry ?\$B!X(B "($B!Y(B")
-(modify-syntax-entry ?\$B!K(B ")$B!J(B")
-(modify-syntax-entry ?\$B!O(B ")$B!N(B")
-(modify-syntax-entry ?\$B!Q(B ")$B!P(B")
-(modify-syntax-entry ?\$B!W(B ")$B!V(B")
-(modify-syntax-entry ?\$B!Y(B ")$B!X(B")
-
-;;; Character categories S, A, H, K, G, Y, and C
-(define-category ?S "Japanese 2-byte symbol character.")
-(modify-category-entry [japanese-jisx0208 33] ?S)
-(modify-category-entry [japanese-jisx0208 34] ?S)
-(modify-category-entry [japanese-jisx0208 40] ?S)
-(define-category ?A "Japanese 2-byte Alphanumeric character.")
-(modify-category-entry [japanese-jisx0208 35] ?A)
-(define-category ?H "Japanese 2-byte Hiragana character.")
-(modify-category-entry [japanese-jisx0208 36] ?H)
-(define-category ?K "Japanese 2-byte Katakana character.")
-(modify-category-entry [japanese-jisx0208 37] ?K)
-(define-category ?G "Japanese 2-byte Greek character.")
-(modify-category-entry [japanese-jisx0208 38] ?G)
-(define-category ?Y "Japanese 2-byte Cyrillic character.")
-(modify-category-entry [japanese-jisx0208 39] ?Y)
-(define-category ?C "Japanese 2-byte Kanji characters.")
-(loop for row from 48 to 126
-      do (modify-category-entry `[japanese-jisx0208 ,row] ?C))
-(loop for char in '(?$B!<(B ?$B!+(B ?$B!,(B)
-      do (modify-category-entry char ?K)
-         (modify-category-entry char ?H))
-(loop for char in '(?$B!3(B ?$B!4(B ?$B!5(B ?$B!6(B ?$B!7(B ?$B!8(B ?$B!9(B ?$B!:(B ?$B!;(B)
-      do (modify-category-entry char ?C))
-(modify-category-entry 'japanese-jisx0212 ?C)
-
-(defvar japanese-word-regexp
-  "\\cA+\\cH*\\|\\cK+\\cH*\\|\\cC+\\cH*\\|\\cH+\\|\\ck+\\|\\sw+"
-  "Regular expression used to match a Japanese word.")
-
-(set-word-regexp japanese-word-regexp)
-(setq forward-word-regexp  "\\w\\>")
-(setq backward-word-regexp "\\<\\w")
-
-;;; Paragraph setting
-(setq sentence-end
-      (concat
-       "\\("
-       "\\("
-       "[.?!][]\"')}]*"
-       "\\|"
-       "[$B!%!)!*(B][$B!O!I!G!K!Q!M!S!U!W!Y(B]*"
-       "\\)"
-       "\\($\\|\t\\|  \\)"
-       "\\|"
-       "$B!#(B"
-       "\\)"
-       "[ \t\n]*"))
-(setq paragraph-start    "^[ $B!!(B\t\n\f]")
-(setq paragraph-separate "^[ $B!!(B\t\f]*$")
-
-;; EGG specific setup
-(define-egg-environment 'japanese
-  "Japanese settings for egg."
-  (lambda ()
-    (when (not (featurep 'egg-jpn))
-      (load "its-hira")
-      (load "its-kata")
-      (load "its-hankaku")
-      (load "its-zenkaku")
-      (setq its:*standard-modes*
-	    (append
-	     (list (its:get-mode-map "roma-kana")
-		   (its:get-mode-map "roma-kata")
-		   (its:get-mode-map "downcase")
-		   (its:get-mode-map "upcase")
-		   (its:get-mode-map "zenkaku-downcase")
-		   (its:get-mode-map "zenkaku-upcase"))
-	     its:*standard-modes*))
-      (provide 'egg-jpn))
-    (setq wnn-server-type 'jserver)
-    ;; Can't do this here any more.  Must do it when selecting egg-wnn
-    ;; or egg-sj3
-    ;; (setq egg-default-startup-file "eggrc-wnn")
-    (setq-default its:*current-map* (its:get-mode-map "roma-kana"))))
-
-;; stuff for providing gramatic processing of Japanese text
-;; something like this should probably be created for all environments...
-
-(defvar aletter (concat "\\(" ascii-char "\\|" kanji-char "\\)"))
-(defvar kanji-space-insertable (concat 
-	   "$B!"(B" aletter                   "\\|"
-	   "$B!#(B" aletter                   "\\|"
-	   aletter "$B!J(B"                   "\\|"
-	   "$B!K(B" aletter                   "\\|"
-	   ascii-alphanumeric  kanji-kanji-char "\\|"
-	   kanji-kanji-char    ascii-alphanumeric ))
-
-(defvar space-insertable (concat " " aletter "\\|" kanji-space-insertable)
-  "Regexp for finding points that can have spaces inserted into them for justification")
-
-;; (make-coding-system
-;;  'iso-2022-jp 2 ?J
-;;  "ISO 2022 based 7bit encoding for Japanese (MIME:ISO-2022-JP)"
-;;  '((ascii japanese-jisx0208-1978 japanese-jisx0208
-;;           latin-jisx0201 japanese-jisx0212 katakana-jisx0201 t) nil nil nil
-;;    short ascii-eol ascii-cntl seven))
-
-;; (define-coding-system-alias 'junet 'iso-2022-jp)
-
-(make-coding-system
- 'iso-2022-jp 'iso2022
- "Coding-system used for communication with mail and news in Japan."
- '(charset-g0 ascii
-   short t
-   seven t
-   input-charset-conversion ((latin-jisx0201 ascii)
-			     (japanese-jisx0208-1978 japanese-jisx0208))
-   mnemonic "MULE/7bit"
-   ))
-
-(copy-coding-system 'iso-2022-jp 'junet)
-
-;; (make-coding-system
-;;  'shift_jis 1 ?S
-;;  "Coding-system of Shift-JIS used in Japan." t)
-
-(make-coding-system
- 'shift_jis 'shift-jis
- "Coding-system of Shift-JIS used in Japan."
- '(mnemonic "Ja/SJIS"))
-
-;;(define-coding-system-alias 'shift_jis 'sjis)
-
-(copy-coding-system 'shift_jis 'sjis)
-
-;; (make-coding-system
-;;  'iso-2022-jp-1978-irv 2 ?J
-;;  "Coding-system used for old jis terminal."
-;;  '((ascii t) nil nil nil
-;;    short ascii-eol ascii-cntl seven nil nil use-roman use-oldjis))
-
-(make-coding-system
- 'iso-2022-jp-1978-irv 'iso2022
- "Coding-system used for old JIS terminal."
- '(charset-g0 ascii
-   short t
-   seven t
-   output-charset-conversion ((ascii latin-jisx0201)
-			      (japanese-jisx0208 japanese-jisx0208-1978))
-   mnemonic "Ja-78/7bit"
-   ))
-
-;;(define-coding-system-alias 'iso-2022-jp-1978-irv 'old-jis)
-
-(copy-coding-system 'iso-2022-jp-1978-irv 'old-jis)
-
-;; (make-coding-system
-;;  'euc-japan-1990 2 ?E
-;;  "Coding-system of Japanese EUC (Extended Unix Code)."
-;;  '(ascii japanese-jisx0208 katakana-jisx0201 japanese-jisx0212
-;;          short ascii-eol ascii-cntl nil nil single-shift))
-
-(make-coding-system
- 'euc-jp 'iso2022
- "Coding-system of Japanese EUC (Extended Unix Code)."
- '(charset-g0 ascii
-   charset-g1 japanese-jisx0208
-   charset-g2 katakana-jisx0201
-   charset-g3 japanese-jisx0212
-   short t
-   mnemonic "Ja/EUC"
-   ))
-
-;;(define-coding-system-alias 'euc-japan-1990 'euc-japan)
-
-(copy-coding-system 'euc-jp 'euc-japan) ; only for w3
-(copy-coding-system 'euc-jp 'japanese-euc)
-
-(set-language-info-alist
- "Japanese" '((setup-function . setup-japanese-environment)
-	      (tutorial . "TUTORIAL.ja")
-	      (charset . (japanese-jisx0208 japanese-jisx0208-1978
-			  japanese-jisx0212 latin-jisx0201
-			  katakana-jisx0201))
-	      (coding-system . (iso-2022-jp euc-jp
-				shift_jis iso-2022-jp-1978-irv))
-	      (sample-text . "Japanese ($BF|K\8l(B)		$B$3$s$K$A$O(B, (I:]FAJ(B")
-	      (documentation . t)))
-
-;;; japanese.el ends here

kinsoku.el

-;; kinsoku.el -- Kinsoku (line wrap) processing for XEmacs/Mule
-
-;; Copyright (C) 1997 Free Software Foundation, Inc.
-;; This file is part of Mule (MULtilingual Enhancement of XEmacs).
-;; This file contains Japanese and Chinese characters.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the 
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;; Written by Jareth Hein (jhod@po.iijnet.or.jp) based off of
-;; code by S.Tomura, Electrotechnical Lab. (tomura@etl.go.jp) from
-;; Mule-2.3
-
-;;;    Special characters for JIS code
-;;;     "$B!!!"!#!$!%!&!'!'!(!)!*!+!,!-!.!/(B"
-;;;   "$B!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?(B"
-;;;   "$B!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O(B"
-;;;   "$B!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_(B"
-;;;   "$B!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o(B"
-;;;   "$B!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~(B"
-;;;     "$B"!"""#"$"%"&"'"(")"*"+","-".(B "
-;;;     "$B&!&"&#&$&%&&&'&(&)&*&+&,&-&.&/(B"
-;;;   "$B&0&1&2&3&4&5&6&7&8(B"
-;;;     "$B&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O(B"
-;;;   "$B&P&Q&R&S&T&U&V&W&X(B"
-;;;     "$B'!'"'#'$'%'&'''(')'*'+','-'.'/(B"
-;;;   "$B'0'1'2'3'4'5'6'7'8'9':';'<'='>'?(B"
-;;;   "$B'@'A(B"
-;;;     "$B'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_!I(B
-;;;   "$B'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o(B"
-;;;   "$B'p'q(B"
-;;;    $B#0#1#2#3#4#5#6#7#8#9#A#B#C#D#E#F(B
-;;;   "$B$!$#$%$'$)$C$c$e$g$n(B"
-;;;   "$B%!%#%%%'%)%C%c%e%g%n%u%v(B"
-
-;;; Special characters for GB
-;;;
-;;;  $A!!!"!#!$!%!&!'!(!)!*!+!,!-!.!/(B
-;;;$A!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?(B
-;;;$A!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O(B
-;;;$A!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_(B
-;;;$A!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o(B
-;;;$A!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~(B
-;;;  $A"1"2"3"4"5"6"7"8"9":";"<"=">"?(B
-;;;$A"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O(B
-;;;$A"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_(B
-;;;$A"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o(B
-;;;$A"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~(B
-;;;  $A#!#"###$#%#&#'#(#)#*#+#,#-#.#/(B
-;;;$A#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?(B
-;;;$A#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O(B
-;;;$A#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_(B
-;;;$A#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o(B
-;;;$A#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~(B
-;;;  $A$!$"$#$$$%$&$'$($)$*$+$,$-$.$/(B
-;;;$A$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?(B
-;;;$A$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
-;;;$A$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_(B
-;;;$A$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o(B
-;;;$A$p$q$r$s$t$u$v$w$x$y$z${$|$}$~(B
-;;;  $A%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/(B
-;;;$A%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?(B
-;;;$A%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
-;;;$A%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_(B
-;;;$A%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o(B
-;;;$A%p%q%r%s%t%u%v%w%x%y%z%{%|%}%~(B
-;;;  $A&!&"&#&$&%&&&'&(&)&*&+&,&-&.&/(B
-;;;$A&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?(B
-;;;$A&@&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O(B
-;;;$A&P&Q&R&S&T&U&V&W&X&Y&Z&[&\&]&^&_(B
-;;;$A&`&a&b&c&d&e&f&g&h&i&j&k&l&m&n&o(B
-;;;$A&p&q&r&s&t&u&v&w&x&y&z&{&|&}&~(B
-;;;  $A'!'"'#'$'%'&'''(')'*'+','-'.'/(B
-;;;$A'0'1'2'3'4'5'6'7'8'9':';'<'='>'?(B
-;;;$A'@'A'B'C'D'E'F'G'H'I'J'K'L'M'N'O(B
-;;;$A'P'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_(B
-;;;$A'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o(B
-;;;$A'p'q'r's't'u'v'w'x'y'z'{'|'}'~(B
-;;;  $A(!("(#($(%(&('((()(*(+(,(-(.(/(B
-;;;$A(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(B
-;;;$A(@(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(B
-;;;$A(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(B
-;;;$A(`(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(B
-
-;;; Special characters for BIG5
-;;;
-;;;  $(0!!!"!#!$!%!&!'!(!)!*!+!,!-!.!/(B
-;;;$(0!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?(B
-;;;$(0!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O(B
-;;;$(0!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_(B
-;;;$(0!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o(B
-;;;$(0!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~(B
-;;;  $(0"!"""#"$"%"&"'"(")"*"+","-"."/(B
-;;;$(0"0"1"2"3"4"5"6"7"8"9":";"<"=">"?(B
-;;;$(0"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O(B
-;;;$(0"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_(B
-;;;$(0"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o(B
-;;;$(0"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~(B
-;;;  $(0#!#"###$#%#&#'#(#)#*#+#,#-#.#/(B
-;;;$(0#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?(B
-;;;$(0#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O(B
-;;;$(0#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_(B
-;;;$(0#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o(B
-;;;$(0#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~(B
-;;;  $(0$!$"$#$$$%$&$'$($)$*$+$,$-$.$/(B
-;;;$(0$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?(B
-;;;$(0$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
-;;;$(0$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_(B
-;;;$(0$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o(B
-;;;$(0$p$q$r$s$t$u$v$w$x$y$z${$|$}$~(B
-;;;  $(0%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/(B
-;;;$(0%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?(B
-
-(defvar kinsoku-ascii nil "Do kinsoku-processing for ASCII.")
-(make-variable-buffer-local 'kinsoku-ascii)
-(set-default 'kinsoku-ascii nil)
-(defvar kinsoku-jis t "Do kinsoku-processing for JISX0208.")
-(make-variable-buffer-local 'kinsoku-jis)
-(set-default 'kinsoku-jis t)
-(defvar kinsoku-gb t "Do kinsoku-processing for GB2312.")
-(make-variable-buffer-local 'kinsoku-gb)
-(set-default 'kinsoku-gb t)
-(defvar kinsoku-big5 t "Do kinsoku-processing for Big5..")
-(make-variable-buffer-local 'kinsoku-big5)
-(set-default 'kinsoku-big5 t)
-
-(defvar kinsoku-ascii-bol "!)-_~}]:;',.?" "BOL kinsoku for ASCII.")
-(defvar kinsoku-ascii-eol "({[" "EOL kinsoku for ASCII.")
-(defvar kinsoku-jis-bol
-  (concat  "$B!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>(B"
-	   "$B!?!@!A!B!C!D!E!G!I!K!M!O!Q!S!U!W!Y![!k!l!m!n(B"
-	   "$B$!$#$%$'$)$C$c$e$g$n%!%#%%%'%)%C%c%e%g%n%u%v(B")
-  "BOL kinsoku for JISX0208.")
-(defvar kinsoku-jis-eol
-  "$B!F!H!J!L!N!P!R!T!V!X!Z!k!l!m!n!w!x(B"
-  "EOL kinsoku for JISX0208.")
-(defvar kinsoku-gb-bol
-  (concat  "$A!"!##.#,!$!%!&!'!(!)!*!+!,!-!/!1#)!3!5!7!9!;!=(B"
-	   "$A!?#;#:#?#!!@!A!B!C!c!d!e!f#/#\#"#_#~#|(e(B")
-  "BOL kinsoku for GB2312.")
-(defvar kinsoku-gb-eol
-  (concat "$A!.!0#"#(!2!4!6!8!:!<!>!c!d!e#@!f!l(B"
-	  "$A(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(h(B")
-  "EOL kinsoku for GB2312.")
-(defvar kinsoku-big5-bol
-  (concat  "$(0!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2(B"
- 	   "$(0!3!4!5!6!7!8!9!:!;!<!=!?!A!C!E!G!I!K(B"
- 	   "$(0!M!O!Q(B	$(0!S!U!W!Y![!]!_!a!c!e!g!i!k!q(B"
- 	   "$(0"#"$"%"&"'"(")"*"+","2"3"4"j"k"l"x%7(B")
-  "BOL kinsoku for BIG5.")
-(defvar kinsoku-big5-eol
-  (concat "$(0!>!@!B!D!F!H!J!L!N!P!R!T!V!X!Z!\!^!`!b(B"
- 	  "$(0!d!f!h!j!k!q!p"i"j"k"n"x$u$v$w$x$y$z${(B"
- 	  "$(0$|$}$~%!%"%#%$%%%&%'%(%)%*%+%:(B")
-  "EOL kinsoku for BIG5.")
-
-(define-category ?s "Kinsoku forbidden start of line characters")
-(define-category ?e "Kinsoku forbidden end of line characters")
-
-;; kinsoku ascii
-(loop for char in (string-to-char-list kinsoku-ascii-bol)
-      do (modify-category-entry char ?s))
-(loop for char in kinsoku-ascii-eol
-      do (modify-category-entry char ?e))
-;; kinsoku-jis
-(loop for char in (string-to-char-list kinsoku-jis-bol)
-      do (modify-category-entry char ?s))
-(loop for char in (string-to-char-list kinsoku-jis-eol)
-      do (modify-category-entry char ?e))
-;; kinsoku-gb
-(loop for char in kinsoku-gb-bol
-      do (modify-category-entry char ?s))
-(loop for char in kinsoku-gb-eol
-      do (modify-category-entry char ?e))
-;; kinsoku-big5
-(loop for char in kinsoku-big5-bol
-      do (modify-category-entry char ?s))
-(loop for char in kinsoku-big5-eol
-      do (modify-category-entry char ?e))
-
-(defun kinsoku-bol-p ()
-  "Check if point would break forbidden beginning-of-line rules
-Uses category \'s\' to check.
-point$B$G2~9T$9$k$H9TF,6XB'$K?($l$k$+$I$&$+$r$+$($9!#(B
-$B9TF,6XB'J8;z$O(B\'s\'$B$N(Bcategory$B$G;XDj$9$k!#(B"
-  (let ((ch (char-after)))
-    (if (and ch
-	     (or
-	      (and kinsoku-ascii (char-in-category-p ch ?a))
-	      (and kinsoku-jis (char-in-category-p ch ?j))
-	      (and kinsoku-gb (char-in-category-p ch ?c))
-	      (and kinsoku-big5 (char-in-category-p ch ?t))))
-	(char-in-category-p ch ?s)
-      nil)))
-
-(defun kinsoku-eol-p ()
-  "Check if point would break forbidden end-of-line rules
-Uses category \'e\' to check.
-point$B$G2~9T$9$k$H9TKv6XB'$K?($l$k$+$I$&$+$r$+$($9!#(B
-$B9TKv6XB'J8;z$O(B\'s\'$B$N(Bcategory$B$G;XDj$9$k!#(B"
-  (let ((ch (char-before)))
-    (if (and ch
-	     (or
-	      (and kinsoku-ascii (char-in-category-p ch ?a))
-	      (and kinsoku-jis (char-in-category-p ch ?j))
-	      (and kinsoku-gb (char-in-category-p ch ?c))
-	      (and kinsoku-big5 (char-in-category-p ch ?t))))
-	(char-in-category-p ch ?e)
-      nil)))
-
-(defvar kinsoku-extend-limit nil
-  "Defines how many characters kinsoku will search forward before giving up.
-A value of nil equates to infinity.
-$B6XB'=hM}$G9T$r?-$P$7$FNI$$H>3QJ8;z?t$r;XDj$9$k!#(B
-$BHsIi@0?t0J30$N>l9g$OL58BBg$r0UL#$9$k!#(B")
-
-(defun kinsoku-process ()
-  "Move to a point that will not break forbidden line break rules.
-$B6XB'$K?($l$J$$E@$X0\F0$9$k!#(B
-point$B$,9TF,6XB'$K?($l$k>l9g$O9T$r?-$P$7$F!"6XB'$K?($l$J$$E@$rC5$9!#(B
-point$B$,9TKv6XB'$K?($l$k>l9g$O9T$r=L$a$F!"6XB'$K?($l$J$$E@$rC5$9!#(B
-$B$?$@$7!"9T?-$P$7H>3QJ8;z?t$,(Bkinsoku-extend-limit$B$r1[$($k$H!"(B
-$B9T$r=L$a$F6XB'$K?($l$J$$E@$rC5$9!#(B"
-  (let ((bol-kin nil) (eol-kin nil))
-    (if (and (not (bolp))
-	     (not (eolp))
-	     (or (setq bol-kin (kinsoku-bol-p))
-		 (setq eol-kin (kinsoku-eol-p))))
-	(cond(bol-kin (kinsoku-process-extend))
-	     (eol-kin (kinsoku-process-shrink))))))
-
-(defun kinsoku-process-extend ()
-  "Move point forward to a permissable for line-breaking.
-$B9T$r?-$P$7$F6XB'$K?($l$J$$E@$X0\F0$9$k!#(B"
-  (let ((max-column (+ fill-column 
-		       (if (and (numberp kinsoku-extend-limit)
-				(>= kinsoku-extend-limit 0))
-			   kinsoku-extend-limit
-			 10000)))  ;;; 10000 is deliberatly unreasonably large
-	ch1 ch2)
-    (while (and (setq ch1 (char-after))
-		(<= (+ (current-column)
-		       (char-width ch1 ))
-		    max-column)
-		(not (bolp))
-		(not (eolp))
-		(or (kinsoku-eol-p)
-		    (kinsoku-bol-p)
-	            ;;; don't break in the middle of an English word
-		    (and (char-in-category-p ch1 ?a)
-			 (setq ch2 (char-before))
-			 (char-in-category-p ch2 ?a)
-			 (= ?w (char-syntax ch2))
-			 (= ?w (char-syntax ch1)))))
-      (forward-char))
-    (if (or (kinsoku-eol-p) (kinsoku-bol-p))
-	(kinsoku-process-shrink))))
-
-(defun kinsoku-process-shrink ()
-  "Move point backward to a point permissable for line-breaking.
-$B9T$r=L$a$F6XB'$K?($l$J$$E@$X0\F0$9$k!#(B"
-  (let (ch1 ch2)
-    (while (and (not (bolp))
-		(not (eolp))
-		(or (kinsoku-bol-p)
-		    (kinsoku-eol-p)
-		;;; don't break in the middle of an English word
-		    (and
-		     (char-in-category-p (setq ch1 (following-char)) ?a)
-		     (char-in-category-p (setq ch2 (preceding-char)) ?a)
-		     (= ?w (char-syntax ch2))
-		     (= ?w (char-syntax ch1)))))
-      (backward-char))))

korean.el

-;;; korean.el --- Support for Korean
-
-;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 1997 MORIOKA Tomohiko
-
-;; Keywords: multilingual, Korean
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
-
-;;; Commentary:
-
-;; For Korean, the character set KSC5601 is supported.
-
-;;; Code:
-
-;; Syntax of Korean characters.
-(loop for row from 33 to  34 do
-      (modify-syntax-entry `[korean-ksc5601 ,row] "."))
-(loop for row from 35 to  37 do
-      (modify-syntax-entry `[korean-ksc5601 ,row] "w"))
-(loop for row from 38 to  41 do
-      (modify-syntax-entry `[korean-ksc5601 ,row] "."))
-(loop for row from 42 to 126 do
-      (modify-syntax-entry `[korean-ksc5601 ,row] "w"))
-
-;; Setting for coding-system and quail were moved to
-;; language/korean.el.
-
-(make-coding-system
- 'iso-2022-int-1 'iso2022
- "ISO-2022-INT-1"
- '(charset-g0 ascii
-   charset-g1 korean-ksc5601
-   short t
-   seven t
-   lock-shift t
-   mnemonic "INT-1"))
-
-;; EGG specific setup
-(define-egg-environment 'korean
-  "Korean settings for egg"
-  (lambda ()
-    (when (not (featurep 'egg-kor))
-      (load "its-hangul")
-      (setq its:*standard-modes*
-	    (cons (its:get-mode-map "hangul") its:*standard-modes*))
-      (provide 'egg-kor))
-    (setq wnn-server-type 'kserver)
-    (setq egg-default-startup-file "eggrc-wnn")
-    (setq-default its:*current-map* (its:get-mode-map "hangul"))))
-
-;; (make-coding-system
-;;  'euc-kr 2 ?K
-;;  "Coding-system of Korean EUC (Extended Unix Code)."
-;;  '((ascii t) korean-ksc5601 nil nil
-;;    nil ascii-eol ascii-cntl))
-
-(make-coding-system
- 'euc-kr 'iso2022
- "Coding-system of Korean EUC (Extended Unix Code)."
- '(charset-g0 ascii
-   charset-g1 korean-ksc5601
-   mnemonic "ko/EUC"
-   eol-type nil))
-
-;;(define-coding-system-alias 'euc-kr 'euc-korea)
-
-(copy-coding-system 'euc-kr 'korean-euc)
-
-;; (make-coding-system
-;;  'iso-2022-kr 2 ?k
-;;  "MIME ISO-2022-KR"
-;;  '(ascii (nil korean-ksc5601) nil nil
-;;          nil ascii-eol ascii-cntl seven locking-shift nil nil nil nil nil
-;;          designation-bol))
-
-(make-coding-system
- 'iso-2022-kr 'iso2022
- "Coding-System used for communication with mail in Korea."
- '(charset-g0 ascii
-   charset-g1 korean-ksc5601
-   force-g1-on-output t
-   seven t
-   lock-shift t
-   mnemonic "Ko/7bit"
-   eol-type lf))
-
-(defun setup-korean-environment ()
-  "Setup multilingual environment (MULE) for Korean."
-  (interactive)
-  (setup-english-environment)
-  ;; (setq coding-category-iso-8-2 'euc-kr)
-  (set-coding-category-system 'iso-8-2 'euc-kr)
-
-  ;; (set-coding-priority
-  ;;  '(coding-category-iso-7
-  ;;    coding-category-iso-8-2
-  ;;    coding-category-iso-8-1))
-  (set-coding-priority-list
-   '(iso-8-2
-     iso-7
-     iso-8-1
-     iso-8-designate
-     iso-lock-shift
-     no-conversion
-     shift-jis
-     big5))
-
-  (set-default-coding-systems 'euc-kr)
-
-  ;; (when (eq 'x (device-type (selected-device)))
-  ;;   (x-use-halfwidth-roman-font 'korean-ksc5601 "ksc5636"))
-
-  ;; EGG specific setup 97.02.05 jhod
-  (when (featurep 'egg)
-    (when (not (featurep 'egg-kor))
-      (provide 'egg-kor)
-      (load "its-hangul")
-      (setq its:*standard-modes*
-	    (cons (its:get-mode-map "hangul") its:*standard-modes*)))
-    (setq-default its:*current-map* (its:get-mode-map "hangul")))
-
-  (setq default-input-method "korean-hangul"))
-
-(set-language-info-alist
- "Korean" '((setup-function . setup-korean-environment)
-	    (tutorial . "TUTORIAL.ko")
-	    (charset . (korean-ksc5601))
-	    (coding-system . (iso-2022-kr euc-kr))
-	    (sample-text . "Hangul ($(CGQ1[(B)	$(C>H3gGO<<?d(B, $(C>H3gGO=J4O1n(B")
-	    (documentation . t)))
-
-;;; korean.el ends here

misc-lang.el

-;;; misc-lang.el --- support for miscellaneous languages (characters)
-
-;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-;; Copyright (C) 1997 MORIOKA Tomohiko
-
-;; Keywords: multilingual, character set, coding system
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
-
-;;; Code:
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;; IPA (International Phonetic Alphabet)
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-(make-charset 'ipa "International Phonetic Alphabet"
-	      '(registry "MuleIPA"
-		dimension 1
-		chars 96
-		final ?0
-		graphic 1
-		))		; for XEmacs
-
-(defun setup-ipa-environment ()
-  "Setup multilingual environment (MULE) for IPA."
-  (interactive)
-  (setup-english-environment))
-
-(set-language-info-alist
- "IPA" '((setup-function . setup-ipa-environment)
-	 (charset . (ipa))
-	 (documentation . "\
-IPA is International Phonetic Alphabet for English, French, German
-and Italian.")))
-
-;;; misc-lang.el ends here

mule-category.el

-;;; mule-category.el --- category functions for XEmacs/Mule.
-
-;; Copyright (C) 1992,93,94,95 Free Software Foundation, Inc.
-;; Copyright (C) 1995 Amdahl Corporation.
-;; Copyright (C) 1995 Sun Microsystems.
-
-;; This file is part of XEmacs.
-
-;; XEmacs is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; XEmacs is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; see the file COPYING.  If not, write to the 
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Commentary:
-
-;; Functions for working with category tables, which are a particular
-;; type of char table.  Some function names / arguments should be
-;; parallel with syntax tables.
-
-;; Written by Ben Wing <wing@666.com>.  The initialization code
-;; at the end of this file comes from Mule.
-;; Some bugfixes by Jareth Hein <jhod@po.iijnet.or.jp>
-
-;;; Code:
-
-(defvar defined-category-hashtable (make-hashtable 50))
-
-(defun define-category (designator doc-string)
-  "Make a new category whose designator is DESIGNATOR.
-DESIGNATOR should be a visible letter of ' ' thru '~'.
-STRING is a doc string for the category.
-Letters of 'a' thru 'z' are already used or kept for the system."
-  (check-argument-type 'category-designator-p designator)
-  (check-argument-type 'stringp doc-string)