Initial revision
authorKenichi Handa <handa@m17n.org>
Tue, 9 Dec 1997 04:19:13 +0000 (04:19 +0000)
committerKenichi Handa <handa@m17n.org>
Tue, 9 Dec 1997 04:19:13 +0000 (04:19 +0000)
leim/quail/hanja3.el [new file with mode: 0644]
lisp/language/korea-util.el [new file with mode: 0644]

diff --git a/leim/quail/hanja3.el b/leim/quail/hanja3.el
new file mode 100644 (file)
index 0000000..60272a5
--- /dev/null
@@ -0,0 +1,507 @@
+;;; quail/hanja3.el --- Quail-package for Korean Hanja (KSC5601)
+
+;; Copyright (C) 1997 Free Software Foundation, Inc.
+
+;; Author: Koaunghi Un <koanughi.un@zdv.uni-tuebingen.de>
+;; Keywords: mule, quail, multilingual, input method, Korean, Hanja
+
+;; 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.
+
+;;; Code:
+
+(require 'quail)
+
+(quail-define-package 
+ "korean-hanja3" "Korean" "\e$(CyS\e(B3" t
+ "3\e$(C9z=D\e(BKSC\e$(CySm.\e(B: \e$(Cz1SWGO4B\e(B \e$(CySm.@G\e(B \e$(Cj$@;\e(B \e$(CGQ1[\e(B3\e$(C9zcR@87N\e(B \e$(C{<usGO?)\e(B \e$(C`TwI\e(B"
+                     nil nil nil nil nil nil t)
+
+(quail-define-rules
+ ("kf" "\e$(CJ!J"J#J$J%J&J'J(J)J*J+J,J-J.J/J0J1J2J3J4J5J6J7J8J9J:J;J<J=\e(B")
+ ("kfx"        "\e$(CJ>J?J@JAJBJCJDJEJFJGJH\e(B")
+ ("kfs"        "\e$(CJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ[J\J]J^J_J`\e(B")
+ ("kfw"        "\e$(CJaJbJcJdJeJfJgJhJiJj\e(B")
+ ("kfz"        "\e$(CJkJlJmJnJoJpJqJrJsJtJuJvJwJxJyJzJ{J|J}J~\e(B")
+ ("kf3"        "\e$(CK!K"K#K$K%K&\e(B")
+ ("kfa"        "\e$(CK'K(K)K*K+K,K-K.K/K0K1K2K3K4K5K6K7K8K9K:K;K<K=K>\e(B")
+ ("kr" "\e$(CK?K@KAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKR\e(B")
+ ("krx"        "\e$(CKSKT\e(B")
+ ("kra"        "\e$(CKUKVKWKX\e(B")
+ ("k6x"        "\e$(CKY\e(B")
+ ("kt" "\e$(CKZK[K\K]K^K_K`KaKbKcKdKeKfKgKhKiKj\e(B")
+ ("kts"        "\e$(CKkKlKmKnKoKpKqKrKsKtKuKv\e(B")
+ ("ktw"        "\e$(CKwKxKyKz\e(B")
+ ("ktz"        "\e$(CK{K|K}K~L!L"L#\e(B")
+ ("kt3"        "\e$(CL$L%L&\e(B")
+ ("kc" "\e$(CL'L(L)\e(B")
+ ("kex"        "\e$(CL*L+L,L-L.L/L0\e(B")
+ ("kes"        "\e$(CL1L2L3L4L5L6L7L8L9L:L;\e(B")
+ ("kew"        "\e$(CL<L=L>L?L@LA\e(B")
+ ("kez"        "\e$(CLBLCLDLELFLG\e(B")
+ ("kea"        "\e$(CLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL[L\L]L^L_L`LaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLt\e(B")
+ ("k7" "\e$(CLuLvLwLxLyLzL{L|L}L~M!M"M#M$M%M&M'M(M)M*M+M,M-M.\e(B")
+ ("k/" "\e$(CM/M0M1M2M3M4M5M6M7M8M9M:M;M<M=M>M?M@MAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMU\e(B")
+ ("k/x"        "\e$(CMVMWMXMYMZM[M\\e(B")
+ ("k/s"        "\e$(CM]M^M_M`MaMbMcMdMeMf\e(B")
+ ("k/w"        "\e$(CMgMhMi\e(B")
+ ("k/a"        "\e$(CMjMkMlMmMnMoMpMqMrMsMtMuMvMwMxMy\e(B")
+ ("k/!"        "\e$(CMz\e(B")
+ ("k/f"        "\e$(CM{M|M}M~N!N"N#N$N%N&N'N(\e(B")
+ ("k/fx"       "\e$(CN)N*N+N,\e(B")
+ ("k/fs"       "\e$(CN-N.N/N0N1N2N3N4N5N6N7N8N9N:N;N<N=\e(B")
+ ("k/fw"       "\e$(CN>N?N@NA\e(B")
+ ("k/fa"       "\e$(CNBNCNDNENFNGNHNINJNKNLNMNN\e(B")
+ ("k/r"        "\e$(CNONPNQ\e(B")
+ ("k/d"        "\e$(CNRNSNTNUNVNWNXNYNZ\e(B")
+ ("k/da"       "\e$(CN[N\N]N^\e(B")
+ ("k4" "\e$(CN_N`NaNbNcNdNeNfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNuNvNw\e(B")
+ ("k9" "\e$(CNxNyNzN{N|N}N~O!O"O#O$O%O&O'O(O)O*O+O,O-O.O/O0O1O2O3O4O5O6O7O8O9O:O;O<O=O>O?O@OAOBOCODOEOFOGOHOIOJOKOLOMONOO\e(B")
+ ("k9x"        "\e$(COPOQOROSOTOU\e(B")
+ ("k9s"        "\e$(COVOWOXOYOZO[\e(B")
+ ("k9w"        "\e$(CO\O]O^O_\e(B")
+ ("k9a"        "\e$(CO`OaObOcOdOe\e(B")
+ ("k9ts"       "\e$(COfOgOhOiOjOkOlOmOnOo\e(B")
+ ("k9tw"       "\e$(COpOqOrOsOt\e(B")
+ ("k9c"        "\e$(COuOvOwOxOyOz\e(B")
+ ("k9d"        "\e$(CO{O|O}O~P!P"\e(B")
+ ("k5" "\e$(CP#P$P%P&P'P(P)P*P+P,P-P.P/P0P1\e(B")
+ ("k5s"        "\e$(CP2P3P4P5P6P7P8\e(B")
+ ("k5w"        "\e$(CP9\e(B")
+ ("kgx"        "\e$(CP:P;P<P=P>P?P@\e(B")
+ ("kgs"        "\e$(CPAPBPCPDPEPFPGPHPIPJPKPLPMPNPO\e(B")
+ ("kgw"        "\e$(CPP\e(B")
+ ("kgz"        "\e$(CPQPRPSPTPUPVPWPXPYPZP[P\P]P^\e(B")
+ ("kg3"        "\e$(CP_P`PaPbPcPdPe\e(B")
+ ("kga"        "\e$(CPfPgPhPi\e(B")
+ ("kd" "\e$(CPjPkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzP{P|P}P~Q!Q"Q#Q$Q%Q&Q'Q(Q)Q*Q+Q,Q-Q.Q/Q0Q1Q2Q3Q4Q5Q6Q7Q8Q9Q:Q;Q<Q=Q>Q?Q@QAQBQCQDQEQFQGQHQIQJQK\e(B")
+ ("kds"        "\e$(CQL\e(B")
+ ("kdw"        "\e$(CQMQNQOQP\e(B")
+ ("kdz"        "\e$(CQQ\e(B")
+ ("kkdx"       "\e$(CQR\e(B")
+ ("hf" "\e$(CQSQTQUQVQWQXQYQZQ[Q\Q]Q^Q_Q`Qa\e(B")
+ ("hfx"        "\e$(CQbQcQdQeQfQgQhQi\e(B")
+ ("hfs"        "\e$(CQjQkQlQmQnQoQpQqQr\e(B")
+ ("hfw"        "\e$(CQsQt\e(B")
+ ("hfz"        "\e$(CQuQvQwQxQyQzQ{Q|Q}\e(B")
+ ("hf3"        "\e$(CQ~R!R"R#R$\e(B")
+ ("hfa"        "\e$(CR%R&R'R(R)R*R+\e(B")
+ ("hr" "\e$(CR,R-R.R/R0R1\e(B")
+ ("hra"        "\e$(CR2\e(B")
+ ("he" "\e$(CR3\e(B")
+ ("hes"        "\e$(CR4R5R6\e(B")
+ ("hez"        "\e$(CR7R8R9R:\e(B")
+ ("hea"        "\e$(CR;R<\e(B")
+ ("h/" "\e$(CR=R>R?R@RARBRCRDRERFRGRHRIRJRKRLRMRN\e(B")
+ ("h/x"        "\e$(CRORPRQRRRSRT\e(B")
+ ("h/s"        "\e$(CRU\e(B")
+ ("h/a"        "\e$(CRVRWRXRYRZR[R\\e(B")
+ ("h/d"        "\e$(CR]R^R_R`RaRb\e(B")
+ ("h4" "\e$(CRc\e(B")
+ ("h9" "\e$(CRdReRfRgRhRiRjRk\e(B")
+ ("h9s"        "\e$(CRl\e(B")
+ ("h9w"        "\e$(CRm\e(B")
+ ("h5" "\e$(CRnRo\e(B")
+ ("hgx"        "\e$(CRpRq\e(B")
+ ("hgz"        "\e$(CRr\e(B")
+ ("hga"        "\e$(CRsRtRuRvRwRx\e(B")
+ ("hd" "\e$(CRyRz\e(B")
+ ("hdx"        "\e$(CR{R|\e(B")
+ ("uf" "\e$(CR}R~\e(B")
+ ("ufs"        "\e$(CS!S"S#S$S%S&S'S(S)S*S+S,S-S.S/S0S1S2S3S4\e(B")
+ ("ufw"        "\e$(CS5S6S7S8S9\e(B")
+ ("ufz"        "\e$(CS:S;S<S=S>S?S@SASBSCSDSESFSGSHSISJ\e(B")
+ ("uf3"        "\e$(CSKSLSMSNSO\e(B")
+ ("ufa"        "\e$(CSPSQSRSSSTSUSVSWSXSYSZ\e(B")
+ ("ur" "\e$(CS[S\S]S^S_S`SaSbScSdSeSfSgShSiSj\e(B")
+ ("urx"        "\e$(CSk\e(B")
+ ("utx"        "\e$(CSlSm\e(B")
+ ("u/" "\e$(CSnSoSpSqSrSsStSuSvSwSxSySzS{S|S}S~T!T"T#T$T%T&T'T(T)T*T+T,T-T.T/T0T1T2T3T4T5T6T7\e(B")
+ ("u/x"        "\e$(CT8T9T:T;T<T=T>T?T@TA\e(B")
+ ("u/s"        "\e$(CTBTCTDTETFTGTHTITJTK\e(B")
+ ("u/w"        "\e$(CTLTM\e(B")
+ ("u/a"        "\e$(CTNTOTPTQTRTSTTTUTVTWTXTYTZT[T\T]T^\e(B")
+ ("u9" "\e$(CT_T`TaTbTcTdTeTfTgThTi\e(B")
+ ("u9s"        "\e$(CTjTkTlTmTnTo\e(B")
+ ("ugx"        "\e$(CTp\e(B")
+ ("uga"        "\e$(CTqTrTsTtTuTvTwTxTy\e(B")
+ ("yf" "\e$(CTzT{T|T}T~U!U"U#U$\e(B")
+ ("yfx"        "\e$(CU%U&U'U(U)U*U+U,U-\e(B")
+ ("yfs"        "\e$(CU.U/U0U1U2U3U4U5U6\e(B")
+ ("yfw"        "\e$(CU7U8\e(B")
+ ("yfz"        "\e$(CU9U:U;U<U=U>U?U@UAUB\e(B")
+ ("yf3"        "\e$(CUCUDUE\e(B")
+ ("yfa"        "\e$(CUFUGUHUIUJUKULUM\e(B")
+ ("yr" "\e$(CUNUOUPUQ\e(B")
+ ("yra"        "\e$(CUR\e(B")
+ ("y6x"        "\e$(CUSUT\e(B")
+ ("y6a"        "\e$(CUUUVUWUXUYUZU[U\U]U^U_U`Ua\e(B")
+ ("ye" "\e$(CUbUcUdUeUfUgUhUiUjUkUlUmUnUoUpUqUrUs\e(B")
+ ("yex"        "\e$(CUtUuUvUwUxUyUz\e(B")
+ ("yes"        "\e$(CU{U|U}U~V!V"V#V$V%V&V'V(\e(B")
+ ("yew"        "\e$(CV)V*V+V,V-V.\e(B")
+ ("yez"        "\e$(CV/V0V1V2V3\e(B")
+ ("ye3"        "\e$(CV4\e(B")
+ ("yea"        "\e$(CV5V6V7V8V9V:V;V<V=V>V?V@VAVBVCVDVEVF\e(B")
+ ("y7" "\e$(CVGVHVIVJVK\e(B")
+ ("y/" "\e$(CVLVMVNVOVPVQVRVSVTVUVVVWVXVYVZV[V\V]\e(B")
+ ("y/x"        "\e$(CV^V_V`VaVbVcVd\e(B")
+ ("y/s"        "\e$(CVe\e(B")
+ ("y/a"        "\e$(CVfVgVhViVjVkVl\e(B")
+ ("y/d"        "\e$(CVmVnVoVpVqVrVsVt\e(B")
+ ("y4" "\e$(CVuVvVwVxVyVzV{V|V}V~W!W"\e(B")
+ ("y4a"        "\e$(CW#\e(B")
+ ("y9" "\e$(CW$W%W&W'W(W)W*W+W,W-W.W/W0\e(B")
+ ("y5" "\e$(CW1W2W3W4W5W6W7W8W9W:W;W<W=W>\e(B")
+ ("y5x"        "\e$(CW?W@WA\e(B")
+ ("y5s"        "\e$(CWBWCWDWEWFWG\e(B")
+ ("y5w"        "\e$(CWHWIWJWK\e(B")
+ ("y5a"        "\e$(CWL\e(B")
+ ("ygx"        "\e$(CWMWN\e(B")
+ ("ygz"        "\e$(CWO\e(B")
+ ("yga"        "\e$(CWPWQWRWSWTWU\e(B")
+ ("yd" "\e$(CWVWWWXWYWZW[W\W]W^W_W`WaWbWcWdWeWfWgWhWiWjWkWlWmWnWo\e(B")
+ ("yds"        "\e$(CWpWqWrWsWtWuWvWwWx\e(B")
+ ("ydz"        "\e$(CWyWzW{W|W}\e(B")
+ ("yd3"        "\e$(CW~X!X"X#\e(B")
+ ("if" "\e$(CX$X%X&X'X(X)X*X+\e(B")
+ ("ifx"        "\e$(CX,X-X.X/X0X1\e(B")
+ ("ifs"        "\e$(CX2X3X4X5X6X7X8X9X:X;X<X=X>X?X@XAXBXCXD\e(B")
+ ("ifw"        "\e$(CXEXFXGXHXIXJXK\e(B")
+ ("ifa"        "\e$(CXLXMXNXOXPXQXRXSXTXUXVXW\e(B")
+ ("ir" "\e$(CXXXYXZX[X\X]X^X_X`XaXbXcXdXe\e(B")
+ ("irx"        "\e$(CXfXgXhXiXj\e(B")
+ ("ira"        "\e$(CXkXlXmXnXoXp\e(B")
+ ("iex"        "\e$(CXqXr\e(B")
+ ("ies"        "\e$(CXsXtXuXvXwXxXyXzX{X|X}\e(B")
+ ("iew"        "\e$(CX~Y!\e(B")
+ ("iea"        "\e$(CY"Y#Y$Y%Y&Y'Y(Y)Y*Y+Y,Y-Y.Y/Y0\e(B")
+ ("i7" "\e$(CY1\e(B")
+ ("i/" "\e$(CY2Y3Y4Y5Y6Y7Y8Y9Y:Y;Y<Y=Y>Y?Y@YAYBYCYDYEYFYGYHYI\e(B")
+ ("i/x"        "\e$(CYJYKYLYMYNYOYP\e(B")
+ ("i/w"        "\e$(CYQYR\e(B")
+ ("i/a"        "\e$(CYSYTYU\e(B")
+ ("i4" "\e$(CYVYWYXYYYZY[Y\Y]Y^Y_Y`Ya\e(B")
+ ("i9" "\e$(CYbYcYdYeYfYgYhYiYjYkYlYmYnYoYpYqYrYsYtYuYvYw\e(B")
+ ("i9x"        "\e$(CYxYy\e(B")
+ ("i9s"        "\e$(CYzY{Y|Y}Y~Z!Z"Z#Z$Z%Z&Z'\e(B")
+ ("i9w"        "\e$(CZ(Z)Z*\e(B")
+ ("id" "\e$(CZ+Z,Z-Z.Z/Z0Z1Z2Z3Z4Z5Z6Z7Z8Z9Z:Z;Z<Z=\e(B")
+ ("ids"        "\e$(CZ>Z?Z@ZAZBZCZDZEZFZGZHZIZJ\e(B")
+ ("idw"        "\e$(CZKZLZM\e(B")
+ (";fx"        "\e$(CZNZOZPZQZRZSZTZUZVZWZXZYZZZ[Z\Z]Z^Z_Z`\e(B")
+ (";fs"        "\e$(CZaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZy\e(B")
+ (";fw"        "\e$(CZzZ{Z|Z}Z~[!["[#[$[%[&\e(B")
+ (";fa"        "\e$(C['[([)[*[+[,[-[.[/[0[1[2[3[4[5[6[7[8[9[:[;[<[=[>[?[@[A[B\e(B")
+ (";r" "\e$(C[C[D[E[F[G[H[I[J[K[L[M[N[O[P[Q[R[S[T[U[V\e(B")
+ (";rx"        "\e$(C[W[X[Y[Z[[[\[][^\e(B")
+ (";ts"        "\e$(C[_[`[a[b[c[d[e[f[g[h\e(B")
+ (";tw"        "\e$(C[i[j[k[l\e(B")
+ (";tz"        "\e$(C[m[n[o[p[q[r[s[t[u\e(B")
+ (";t3"        "\e$(C[v[w\e(B")
+ (";ex"        "\e$(C[x[y[z[{[|[}[~\!\"\#\$\e(B")
+ (";es"        "\e$(C\%\&\'\(\)\*\+\e(B")
+ (";ew"        "\e$(C\,\-\.\/\e(B")
+ (";ea"        "\e$(C\0\1\2\3\4\5\6\7\8\9\:\;\<\=\>\?\@\e(B")
+ (";/" "\e$(C\A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\e(B")
+ (";/x"        "\e$(C\Q\R\S\T\U\V\W\X\Y\Z\[\\\]\^\_\`\a\e(B")
+ (";/s"        "\e$(C\b\e(B")
+ (";/w"        "\e$(C\c\e(B")
+ (";/a"        "\e$(C\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\e(B")
+ (";9" "\e$(C\t\u\v\w\x\y\z\{\|\}\~]!]"]#]$]%]&]'](])]*]+],]-].]/]0]1]2]3]4]5]6]7]8]9]:];]<]=]>]?]@\e(B")
+ (";9x"        "\e$(C]A\e(B")
+ (";9s"        "\e$(C]B]C]D]E]F]G]H]I]J]K]L]M]N]O]P]Q]R]S]T\e(B")
+ (";9w"        "\e$(C]U]V]W]X]Y\e(B")
+ (";9a"        "\e$(C]Z][]\]]]^]_\e(B")
+ (";d" "\e$(C]`]a]b]c]d]e]f]g]h]i]j]k]l]m]n]o]p]q]r]s]t]u]v]w]x]y]z]{]|]}]~^!^"^#^$^%^&^'^(^)^*^+^,\e(B")
+ (";ds"        "\e$(C^-^.^/^0^1^2^3^4^5^6^7^8^9^:\e(B")
+ (";da"        "\e$(C^;^<^=^>\e(B")
+ ("nf" "\e$(C^?^@^A^B^C^D^E^F^G^H^I^J^K^L^M^N^O^P^Q^R^S^T^U^V^W^X^Y^Z^[^\^]^^^_^`^a^b^c^d^e^f^g^h^i^j^k^l^m^n^o^p^q^r^s^t^u^v^w^x^y^z\e(B")
+ ("nfx"        "\e$(C^{^|^}^~\e(B")
+ ("nfs"        "\e$(C_!_"_#_$_%_&_'_(_)_*_+_,\e(B")
+ ("nfw"        "\e$(C_-_._/_0_1\e(B")
+ ("nfz"        "\e$(C_2_3_4_5_6_7_8_9\e(B")
+ ("nf3"        "\e$(C_:_;_<_=\e(B")
+ ("nfa"        "\e$(C_>_?_@_A_B_C_D_E_F_G_H_I_J_K_L_M_N_O_P_Q_R_S_T_U_V_W_X_Y_Z_[_\\e(B")
+ ("nr" "\e$(C_]_^__\e(B")
+ ("nrx"        "\e$(C_`_a_b_c_d\e(B")
+ ("nra"        "\e$(C_e_f_g_h_i\e(B")
+ ("nt" "\e$(C_j_k_l_m_n_o_p_q_r_s_t_u_v_w_x_y_z_{_|_}_~`!`"`#`$`%`&`'`(`)\e(B")
+ ("ntx"        "\e$(C`*`+`,`-`.`/`0`1`2`3`4`5`6`7`8\e(B")
+ ("nts"        "\e$(C`9`:`;`<`=`>`?`@`A`B`C`D`E`F`G`H`I`J`K`L`M`N`O`P`Q`R`S`T`U`V`W`X\e(B")
+ ("ntw"        "\e$(C`Y`Z`[`\`]`^`_```a`b`c`d`e\e(B")
+ ("ntz"        "\e$(C`f`g`h`i`j`k`l`m\e(B")
+ ("nt3"        "\e$(C`n`o`p`q\e(B")
+ ("nta"        "\e$(C`r`s`t`u`v`w`x`y`z`{`|`}`~a!a"a#a$a%\e(B")
+ ("nc" "\e$(Ca&a'a(a)a*a+a,a-a.\e(B")
+ ("n/" "\e$(Ca/a0a1a2a3a4a5a6a7a8a9a:a;a<a=a>a?a@aAaBaCaDaEaFaGaHaIaJaKaLaMaNaOaPaQaRaS\e(B")
+ ("n/x"        "\e$(CaTaUaVaWaXaYaZa[a\\e(B")
+ ("n/s"        "\e$(Ca]a^a_a`aaab\e(B")
+ ("n/w"        "\e$(Cac\e(B")
+ ("n/a"        "\e$(Cadaeafagahaiajak\e(B")
+ ("n/r"        "\e$(Calamanaoap\e(B")
+ ("n/d"        "\e$(Caqar\e(B")
+ ("n9" "\e$(Casatauavawaxayaza{a|a}a~b!b"b#b$b%b&b'b(b)b*b+b,b-b.b/b0b1b2b3b4b5b6b7b8b9b:b;b<b=b>b?b@bAbBbCbDbEbFbGbHbIbJbKbLbMbNbObPbQ\e(B")
+ ("n9x"        "\e$(CbRbSbTbUbVbWbXbYbZb[b\b]\e(B")
+ ("n9s"        "\e$(Cb^b_b`babbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbx\e(B")
+ ("n9w"        "\e$(Cbybzb{b|\e(B")
+ ("n9a"        "\e$(Cb}b~c!\e(B")
+ ("ngw"        "\e$(Cc"c#c$\e(B")
+ ("ng3"        "\e$(Cc%c&c'c(c)\e(B")
+ ("nga"        "\e$(Cc*c+c,c-c.c/c0c1c2c3\e(B")
+ ("nd" "\e$(Cc4c5c6c7c8c9c:c;c<c=c>c?c@cAcBcCcDcEcFcGcHcIcJcKcLcMcNcO\e(B")
+ ("ndx"        "\e$(CcPcQcRcScTcUcVcWcXcYcZc[c\c]c^\e(B")
+ ("nds"        "\e$(Cc_c`cacbcccdcecfcgchcicjckclcmcncocpcqcrcsctcucv\e(B")
+ ("ndw"        "\e$(Ccwcxcycz\e(B")
+ ("ndz"        "\e$(Cc{c|c}c~d!d"d#d$d%d&\e(B")
+ ("nd3"        "\e$(Cd'd(d)\e(B")
+ ("nnfa"       "\e$(Cd*\e(B")
+ ("nnd"        "\e$(Cd+\e(B")
+ ("jf" "\e$(Cd,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=\e(B")
+ ("jfx"        "\e$(Cd>d?d@dAdBdCdDdEdFdGdHdIdJdK\e(B")
+ ("jfs"        "\e$(CdLdMdNdOdPdQdRdSdTdU\e(B")
+ ("jfw"        "\e$(CdVdWdXdY\e(B")
+ ("jfz"        "\e$(CdZd[d\d]d^d_d`da\e(B")
+ ("jf3"        "\e$(Cdbdcddde\e(B")
+ ("jfa"        "\e$(Cdfdgdhdidjdkdl\e(B")
+ ("jr" "\e$(Cdmdndodpdqdrdsdtdudvdw\e(B")
+ ("jrx"        "\e$(Cdxdydzd{d|d}d~\e(B")
+ ("jra"        "\e$(Ce!e"e#e$\e(B")
+ ("j6" "\e$(Ce%e&e'e(e)e*e+e,e-e.e/\e(B")
+ ("j6x"        "\e$(Ce0e1e2e3e4e5e6e7e8\e(B")
+ ("j6a"        "\e$(Ce9e:e;e<e=e>e?e@eAeBeCeDeEeFeGeHeIeJeKeLeMeNeOePeQeReSeTeUeVeW\e(B")
+ ("jt" "\e$(CeXeYeZe[e\e]e^e_e`ea\e(B")
+ ("jtx"        "\e$(Cebecedeeef\e(B")
+ ("jts"        "\e$(Cegeheiejekel\e(B")
+ ("jtw"        "\e$(Cemen\e(B")
+ ("jtz"        "\e$(Ceoepeqereset\e(B")
+ ("jt3"        "\e$(Ceuev\e(B")
+ ("jcs"        "\e$(Cew\e(B")
+ ("je" "\e$(Cexeyeze{e|e}e~f!f"f#f$f%f&f'f(f)f*f+f,f-f.f/f0f1\e(B")
+ ("jex"        "\e$(Cf2f3f4f5f6f7f8f9f:f;f<f=f>\e(B")
+ ("jes"        "\e$(Cf?f@fAfBfCfDfEfFfGfHfIfJfKfLfMfNfOfPfQfRfSfTfUfVfWfXfYfZf[f\f]f^f_f`fafbfcfdfefffgfhfi\e(B")
+ ("jew"        "\e$(Cfjfkflfmfnfofpfqfrfs\e(B")
+ ("jez"        "\e$(Cftfufvfwfxfyfzf{f|f}f~g!g"g#g$\e(B")
+ ("je3"        "\e$(Cg%g&g'g(\e(B")
+ ("jea"        "\e$(Cg)g*g+g,g-g.g/g0g1g2g3g4g5g6g7g8g9g:g;g<g=g>g?g@gAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgP\e(B")
+ ("j7" "\e$(CgQgRgSgTgUgVgWgXgYgZg[g\g]g^g_g`gagbgcgdgegfgggh\e(B")
+ ("j/" "\e$(Cgigjgkglgmgngogpgqgrgsgtgugvgwgxgygzg{g|g}g~h!h"h#h$h%h&h'h(\e(B")
+ ("j/x"        "\e$(Ch)h*h+h,h-\e(B")
+ ("j/s"        "\e$(Ch.h/h0h1h2h3\e(B")
+ ("j/w"        "\e$(Ch4\e(B")
+ ("j/a"        "\e$(Ch5h6h7h8h9h:h;h<h=\e(B")
+ ("j/f"        "\e$(Ch>h?h@hAhBhChDhE\e(B")
+ ("j/fs"       "\e$(ChFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhW\e(B")
+ ("j/fw"       "\e$(ChX\e(B")
+ ("j/fa"       "\e$(ChYhZh[h\h]\e(B")
+ ("j/r"        "\e$(Ch^h_h`ha\e(B")
+ ("j/d"        "\e$(Chbhchdhehf\e(B")
+ ("j4" "\e$(Chghhhihjhkhlhmhnhohphqhrhshthuhvhwhxhyhzh{h|h}h~i!i"i#i$i%i&i'i(i)i*i+i,i-i.\e(B")
+ ("j4x"        "\e$(Ci/i0i1i2i3i4\e(B")
+ ("j4a"        "\e$(Ci5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiL\e(B")
+ ("j9" "\e$(CiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikil\e(B")
+ ("j9x"        "\e$(Ciminioipiqirisitiu\e(B")
+ ("j9s"        "\e$(Civiwixiyizi{i|i}i~j!j"j#j$\e(B")
+ ("j9w"        "\e$(Cj%j&j'\e(B")
+ ("j9a"        "\e$(Cj(j)\e(B")
+ ("j9ts"       "\e$(Cj*j+j,j-j.j/j0j1j2j3j4j5j6j7j8j9j:j;j<j=j>j?j@jAjBjCjD\e(B")
+ ("j9tw"       "\e$(CjEjFjG\e(B")
+ ("j9d"        "\e$(CjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVjWjXjYjZj[j\j]j^j_j`\e(B")
+ ("j5" "\e$(Cjajbjcjdjejfjgjhjijjjkjljmjnjojpjqjrjsjtjujvjwjxjyjzj{j|j}j~k!k"k#k$k%k&k'k(k)k*k+k,k-k.k/k0k1k2k3k4k5k6k7k8k9k:\e(B")
+ ("j5x"        "\e$(Ck;k<k=k>k?k@kA\e(B")
+ ("j5s"        "\e$(CkBkCkDkEkFkGkHkIkJkKkLkMkN\e(B")
+ ("j5w"        "\e$(CkOkPkQkRkS\e(B")
+ ("j5a"        "\e$(CkTkUkVkWkX\e(B")
+ ("jgs"        "\e$(CkYkZk[k\k]k^k_\e(B")
+ ("jgw"        "\e$(Ck`\e(B")
+ ("jgz"        "\e$(Ckakbkckdkekf\e(B")
+ ("jg3"        "\e$(Ckgkhki\e(B")
+ ("jga"        "\e$(Ckjkkklkm\e(B")
+ ("j8" "\e$(Cknkokpkqkrksktkukvkwkxkykzk{k|k}k~l!l"\e(B")
+ ("jd" "\e$(Cl#l$l%l&l'l(l)l*l+l,l-l.l/l0l1l2l3l4l5l6l7l8l9l:l;l<l=l>l?l@lAlBlClDlElFlGlH\e(B")
+ ("jdx"        "\e$(ClIlJlKlLlMlNlOlP\e(B")
+ ("jds"        "\e$(ClQlRlSlTlUlVlWlXlYlZl[l\l]l^l_l`lalblcldlelflglh\e(B")
+ ("jdw"        "\e$(Cliljlklllmlnlolplq\e(B")
+ ("jdz"        "\e$(Clrlsltlulvlwlxlylzl{l|\e(B")
+ ("jd3"        "\e$(Cl}l~m!m"m#\e(B")
+ ("jda"        "\e$(Cm$m%m&m'\e(B")
+ ("lf" "\e$(Cm(m)m*m+m,m-m.m/m0m1m2m3m4m5m6m7m8m9m:m;m<m=m>m?m@mA\e(B")
+ ("lfx"        "\e$(CmBmCmDmEmFmGmHmImJmKmLmMmN\e(B")
+ ("lfs"        "\e$(CmOmPmQmRmS\e(B")
+ ("lfz"        "\e$(CmTmUmVmWmXmY\e(B")
+ ("lf3"        "\e$(CmZ\e(B")
+ ("lfa"        "\e$(Cm[m\m]m^m_m`mambmcmdmemfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymzm{m|m}m~n!\e(B")
+ (""   "\e$(Cn3n4n5n6\e(B")
+ ("lr" "\e$(Cn"n#n$n%n&n'n(n)n*n+n,n-n.n/n0n1n2\e(B")
+ ("lt" "\e$(Cn7n8n9n:n;n<n=n>n?n@nAnBnCnDnEnFnGnHnInJnKnLnMnNnOnPnQnR\e(B")
+ ("ltx"        "\e$(CnSnTnUnVnWnXnYnZn[n\n]n^n_n`nanbncndnenfngnhninjnk\e(B")
+ ("lts"        "\e$(Cnlnmnnnonpnqnrnsntnunvnwnxnynzn{n|n}n~o!o"o#o$o%o&o'o(o)o*o+o,o-o.o/o0o1o2o3o4o5o6\e(B")
+ ("ltw"        "\e$(Co7o8o9o:o;o<o=o>\e(B")
+ ("ltz"        "\e$(Co?o@oAoBoCoDoEoFoG\e(B")
+ ("lt3"        "\e$(CoHoIoJ\e(B")
+ ("lta"        "\e$(CoKoLoMoNoOoPoQoRoSoToUoVoWoXoYoZo[o\o]o^o_o`oaobocodoeofogohoiojokolomonooopoqorosotouovowoxoyozo{o|o}o~p!p"p#\e(B")
+ ("lc" "\e$(Cp$p%p&p'p(p)p*p+p,p-p.p/p0p1p2p3p4p5p6p7p8p9p:\e(B")
+ ("l/" "\e$(Cp;p<p=p>p?p@pApBpCpDpEpFpGpHpIpJpKpLpMpNpOpPpQpRpSpTpUpVpWpXpYpZp[p\p]p^p_p`papbpcpdpepfpgph\e(B")
+ ("l/x"        "\e$(Cpipjpkpl\e(B")
+ ("l/s"        "\e$(Cpmpn\e(B")
+ ("l/w"        "\e$(Cpopppq\e(B")
+ ("l/a"        "\e$(Cprpsptpupvpwpxpypzp{p|p}p~q!q"q#q$\e(B")
+ ("l/f"        "\e$(Cq%q&q'q(q)\e(B")
+ ("l/d"        "\e$(Cq*\e(B")
+ ("l9" "\e$(Cq+q,q-q.q/q0q1q2q3q4q5q6q7q8q9q:q;q<q=q>q?q@qAqBqCqDqEqFqGqHqIqJqKqLqMqNqOqPqQqR\e(B")
+ ("l9x"        "\e$(CqSqT\e(B")
+ ("l9s"        "\e$(CqUqVqWqXqYqZq[q\q]q^q_q`qaqbqcqdqeqfqg\e(B")
+ ("l9w"        "\e$(Cqh\e(B")
+ ("l9a"        "\e$(Cqiqjqkql\e(B")
+ ("lgx"        "\e$(Cqm\e(B")
+ ("lgw"        "\e$(Cqn\e(B")
+ ("lg3"        "\e$(Cqoqpqq\e(B")
+ ("lga"        "\e$(Cqrqsqtquqvqwqxqyqzq{q|\e(B")
+ ("ld" "\e$(Cq}q~r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:r;r<r=r>r?r@\e(B")
+ ("ldx"        "\e$(CrArBrCrDrE\e(B")
+ ("lds"        "\e$(CrFrGrHrIrJrKrLrMrNrOrPrQrRrSrTrUrVrWrXrYrZr[r\r]r^r_r`rarbrcrdrerfrgrh\e(B")
+ ("ldw"        "\e$(Crirjrkrlrmrnrorprqrrrsrtrurvrw\e(B")
+ ("ldz"        "\e$(Crxry\e(B")
+ ("ld3"        "\e$(Crzr{r|r}r~s!s"\e(B")
+ ("lda"        "\e$(Cs#s$s%\e(B")
+ ("of" "\e$(Cs&s's(s)s*s+s,s-s.s/s0s1s2s3s4\e(B")
+ ("ofx"        "\e$(Cs5s6s7s8s9s:s;\e(B")
+ ("ofs"        "\e$(Cs<s=s>s?s@sAsBsCsDsEsFsGsHsIsJ\e(B")
+ ("ofw"        "\e$(CsKsLsMsNsO\e(B")
+ ("ofz"        "\e$(CsPsQsRsSsTsUsVsWsXsY\e(B")
+ ("ofa"        "\e$(CsZs[s\s]s^s_s`sasbscsdsesfsgshsisjskslsmsnso\e(B")
+ ("or" "\e$(Cspsqsrssstsusvswsxsyszs{\e(B")
+ ("orx"        "\e$(Cs|s}s~t!\e(B")
+ ("ot" "\e$(Ct"t#t$t%\e(B")
+ ("otx"        "\e$(Ct&t't(t)t*t+t,t-t.t/t0t1t2t3t4\e(B")
+ ("ots"        "\e$(Ct5t6t7t8t9t:t;t<t=t>t?t@tAtBtCtDtEtFtG\e(B")
+ ("otw"        "\e$(CtHtItJtKtLtMtNtOtPtQ\e(B")
+ ("otz"        "\e$(CtRtStTtUtVtWtXtYtZt[\e(B")
+ ("ot3"        "\e$(Ct\t]t^t_t`tatbtctdte\e(B")
+ ("ota"        "\e$(Ctftgthtitjtktltm\e(B")
+ ("oc" "\e$(Ctntotptqtrtstttutvtw\e(B")
+ ("o/" "\e$(Ctxtytzt{t|t}t~u!u"u#u$u%u&u'u(u)u*u+u,u-u.u/u0u1u2u3u4\e(B")
+ ("o/x"        "\e$(Cu5u6u7u8u9u:\e(B")
+ ("o/s"        "\e$(Cu;u<u=u>\e(B")
+ ("o/a"        "\e$(Cu?u@uAuBuCuDuEuFuGuH\e(B")
+ ("o/fw"       "\e$(CuI\e(B")
+ ("o/d"        "\e$(CuJuKuL\e(B")
+ ("o9" "\e$(CuMuNuOuPuQuRuSuTuUuVuWuXuYuZu[u\u]u^u_u`uaubuc\e(B")
+ ("o9x"        "\e$(Cudueufuguhuiujukulumunuo\e(B")
+ ("o9s"        "\e$(Cupuqur\e(B")
+ ("o9w"        "\e$(Cusutuu\e(B")
+ ("o9a"        "\e$(Cuvuwuxuyuzu{\e(B")
+ ("o9c"        "\e$(Cu|u}u~v!\e(B")
+ ("o9d"        "\e$(Cv"v#v$v%v&v'v(v)v*v+v,v-v.v/\e(B")
+ ("ogx"        "\e$(Cv0v1v2v3v4\e(B")
+ ("oga"        "\e$(Cv5\e(B")
+ ("od" "\e$(Cv6v7v8v9v:v;v<v=v>v?v@vAvBvCvDvEvFvGvHvIvJvKvLvM\e(B")
+ ("odx"        "\e$(CvNvOvP\e(B")
+ ("ods"        "\e$(CvQ\e(B")
+ ("odw"        "\e$(CvRvSvT\e(B")
+ ("odz"        "\e$(CvUvVvWvXvYvZv[v\v]\e(B")
+ ("od3"        "\e$(Cv^\e(B")
+ ("oda"        "\e$(Cv_v`\e(B")
+ ("0/r"        "\e$(Cva\e(B")
+ ("'f" "\e$(Cvbvcvdvevfvgvhvivjvkvlvmvnvo\e(B")
+ ("'fx"        "\e$(Cvpvqvrvsvtvuvvvwvxvyvzv{v|v}v~w!\e(B")
+ ("'fs"        "\e$(Cw"w#w$w%w&w'w(w)w*w+\e(B")
+ ("'fw"        "\e$(Cw,w-\e(B")
+ ("'fz"        "\e$(Cw.w/w0w1\e(B")
+ ("'f3"        "\e$(Cw2w3w4\e(B")
+ ("'fa"        "\e$(Cw5w6w7w8w9\e(B")
+ ("'r" "\e$(Cw:w;w<w=w>w?w@wAwBwCwDwEwFwG\e(B")
+ ("'rx"        "\e$(CwHwIwJ\e(B")
+ ("'ra"        "\e$(CwK\e(B")
+ ("'t" "\e$(CwL\e(B")
+ ("'/" "\e$(CwMwNwOwP\e(B")
+ ("'/a"        "\e$(CwQwRwSwTwUwVwW\e(B")
+ ("'/d"        "\e$(CwXwYwZw[w\w]\e(B")
+ ("'9" "\e$(Cw^w_w`wawbwc\e(B")
+ ("'gx"        "\e$(Cwdwe\e(B")
+ ("'gz"        "\e$(Cwf\e(B")
+ ("pf" "\e$(Cwgwhwiwjwkwlwmwnwowpwqwrwswtwuwv\e(B")
+ ("pfs"        "\e$(Cwwwxwywzw{w|w}w~x!\e(B")
+ ("pfw"        "\e$(Cx"x#x$\e(B")
+ ("pr" "\e$(Cx%x&x'x(x)x*x+x,x-x.x/\e(B")
+ ("pra"        "\e$(Cx0x1x2x3\e(B")
+ ("p6x"        "\e$(Cx4\e(B")
+ ("pes"        "\e$(Cx5x6x7x8x9x:x;x<x=x>\e(B")
+ ("pez"        "\e$(Cx?\e(B")
+ ("pea"        "\e$(Cx@xAxBxCxD\e(B")
+ ("p7" "\e$(CxExFxGxHxIxJxKxLxMxN\e(B")
+ ("p/" "\e$(CxOxPxQxRxSxTxUxVxWxXxYxZx[x\x]x^x_x`xaxbxcxdxexfxgxhxixj\e(B")
+ ("p/x"        "\e$(Cxkxlxmxnxoxp\e(B")
+ ("p4" "\e$(Cxqxrxsxtxuxvxwxxxyxzx{x|x}x~\e(B")
+ ("p9z"        "\e$(Cy!y"\e(B")
+ ("p9a"        "\e$(Cy#y$y%y&y'\e(B")
+ ("pd" "\e$(Cy(y)y*y+y,y-y.\e(B")
+ ("pdw"        "\e$(Cy/y0y1y2y3y4y5y6y7y8\e(B")
+ ("pd3"        "\e$(Cy9y:\e(B")
+ ("mf" "\e$(Cy;y<y=y>y?y@yAyByCyDyEyFyGyH\e(B")
+ ("mfx"        "\e$(CyIyJyKyLyM\e(B")
+ ("mfs"        "\e$(CyNyOyPyQyRySyTyUyVyWyXyYyZy[\e(B")
+ ("mfw"        "\e$(Cy\y]\e(B")
+ ("mfz"        "\e$(Cy^y_y`yaybycydyeyfygyhyi\e(B")
+ ("mf3"        "\e$(Cyjykylymynyoyp\e(B")
+ ("mfa"        "\e$(Cyqyrysytyuyvywyxyyyzy{y|y}y~z!z"z#\e(B")
+ ("mr" "\e$(Cz$z%z&z'z(z)z*z+z,z-z.z/z0z1z2z3z4z5\e(B")
+ ("mrx"        "\e$(Cz6z7\e(B")
+ ("mra"        "\e$(Cz8z9z:z;z<\e(B")
+ ("m6a"        "\e$(Cz=z>z?z@zAzBzCzDzE\e(B")
+ ("mt" "\e$(CzFzGzHzI\e(B")
+ ("mts"        "\e$(CzJzKzLzM\e(B")
+ ("mtw"        "\e$(CzN\e(B")
+ ("mtz"        "\e$(CzOzP\e(B")
+ ("mex"        "\e$(CzQzRzSzT\e(B")
+ ("mes"        "\e$(CzUzVzWzXzYzZz[z\z]z^z_z`zazbzczdzezfzgzhzi\e(B")
+ ("mew"        "\e$(Czjzkzlzm\e(B")
+ ("mez"        "\e$(Czn\e(B")
+ ("me3"        "\e$(Czozpzqzrzsztzuzvzwzxzyzz\e(B")
+ ("mea"        "\e$(Cz{z|z}z~{!{"{#{${%{&{'{({){*{+{,{-{.{/{0\e(B")
+ ("m7" "\e$(C{1{2{3{4{5{6{7{8{9\e(B")
+ ("m/" "\e$(C{:{;{<{={>{?{@{A{B{C{D{E{F{G{H{I{J{K{L{M{N{O{P{Q{R{S{T{U{V{W{X{Y{Z{[{\{]{^{_{`{a{b\e(B")
+ ("m/x"        "\e$(C{c{d{e\e(B")
+ ("m/s"        "\e$(C{f{g{h{i{j{k\e(B")
+ ("m/w"        "\e$(C{l{m{n\e(B")
+ ("m/a"        "\e$(C{o{p{q{r{s{t{u{v{w{x\e(B")
+ ("m/f"        "\e$(C{y{z{{{|{}{~|!|"|#|$|%|&|'|(\e(B")
+ ("m/fx"       "\e$(C|)|*|+|,|-|.\e(B")
+ ("m/fs"       "\e$(C|/|0|1|2|3|4|5|6|7|8|9|:|;|<|=|>|?\e(B")
+ ("m/fw"       "\e$(C|@|A|B|C|D\e(B")
+ ("m/fa"       "\e$(C|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z|[|\\e(B")
+ ("m/d"        "\e$(C|]|^|_|`|a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p\e(B")
+ ("m/dx"       "\e$(C|q|r\e(B")
+ ("m/da"       "\e$(C|s|t|u\e(B")
+ ("m4" "\e$(C|v|w|x|y|z|{|||}|~}!}"}#}$\e(B")
+ ("m9" "\e$(C}%}&}'}(})}*}+},}-}.}/}0}1\e(B")
+ ("m9s"        "\e$(C}2}3}4}5}6}7}8}9}:};\e(B")
+ ("m9a"        "\e$(C}<\e(B")
+ ("m9ts"       "\e$(C}=}>}?}@\e(B")
+ ("m9c"        "\e$(C}A}B}C\e(B")
+ ("m9d"        "\e$(C}D}E}F}G}H}I}J}K\e(B")
+ ("m5" "\e$(C}L}M}N}O}P\e(B")
+ ("m5w"        "\e$(C}Q}R}S\e(B")
+ ("m5a"        "\e$(C}T}U}V}W}X\e(B")
+ ("mgx"        "\e$(C}Y\e(B")
+ ("mgs"        "\e$(C}Z}[}\}]\e(B")
+ ("mgw"        "\e$(C}^}_}`}a\e(B")
+ ("mgz"        "\e$(C}b}c}d\e(B")
+ ("mg3"        "\e$(C}e}f}g}h\e(B")
+ ("mga"        "\e$(C}i\e(B")
+ ("m8" "\e$(C}j}k}l}m}n}o}p}q}r}s}t}u}v}w}x}y}z}{}|}}\e(B")
+ ("mdw"        "\e$(C}~\e(B"))
diff --git a/lisp/language/korea-util.el b/lisp/language/korea-util.el
new file mode 100644 (file)
index 0000000..c9ca349
--- /dev/null
@@ -0,0 +1,101 @@
+;;; korea-util.el --- utilities for Korean
+
+;; Copyright (C) 1997 Free Software Foundation, Inc.
+
+;; Keywords: mule, multilingual, Korean
+
+;; 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.
+
+;;; Code:
+
+;;;###autoload
+(defvar default-korean-keyboard ""
+  "*The kind of Korean keyboard for Korean input method.
+\"\" for 2, \"3\" for 3.")
+
+;; functions useful for Korean text input
+
+(defun toggle-korean-input-method ()
+  "Turn on or off a Korean text input method for the current buffer."
+  (interactive)
+  (if current-input-method
+      (inactivate-input-method)
+    (activate-input-method
+     (concat "korean-hangul" default-korean-keyboard))))
+
+(defun quail-hangul-switch-symbol-ksc (&rest ignore)
+  "Swith to/from Korean symbol package."
+  (interactive "i")
+  (and current-input-method
+       (if (string-equal current-input-method "korean-symbol")
+          (activate-input-method (concat "korean-hangul"
+                                         default-korean-keyboard))
+        (activate-input-method "korean-symbol"))))
+
+(defun quail-hangul-switch-hanja (&rest ignore)
+  "Swith to/from Korean hanja package."
+  (interactive "i")
+  (and current-input-method
+       (if (string-match "korean-hanja" current-input-method)
+          (activate-input-method (concat "korean-hangul"
+                                         default-korean-keyboard))
+        (activate-input-method (concat "korean-hanja"
+                                       default-korean-keyboard)))))
+
+;; Information for exiting Korean environment.
+(defvar exit-korean-environment-data nil)
+
+;;;###autoload
+(defun setup-korean-environment ()
+  "Setup multilingual environment (MULE) for Korean."
+  (interactive)
+  (setup-english-environment)
+  (setq coding-category-iso-8-2 'korean-iso-8bit)
+
+  (set-coding-priority
+   '(coding-category-iso-7
+     coding-category-iso-8-2
+     coding-category-iso-8-1))
+
+  (set-default-coding-systems 'korean-iso-8bit)
+
+  (setq default-input-method "korean-hangul")
+
+  (let ((key-bindings '(([?\S- ] . toggle-korean-input-method)
+                       ([C-f9] . quail-hangul-switch-symbol-ksc)
+                       ([f9] . quail-hangul-switch-hanja))))
+    (while key-bindings
+      (let ((prev-binding (global-key-binding (car (car key-bindings)))))
+       (setq exit-korean-environment-data
+             (cons (cons (car (car key-bindings)) prev-binding)
+                   exit-korean-environment-data)))
+      (global-set-key (car (car key-bindings)) (cdr (car key-bindings)))
+      (setq key-bindings (cdr key-bindings)))))
+
+(defun exit-korean-environment ()
+  "Exit Korean language environment."
+  (while exit-korean-environment-data
+    (global-set-key (car (car exit-korean-environment-data))
+                   (cdr (car exit-korean-environment-data)))
+    (setq exit-korean-environment-data
+         (cdr exit-korean-environment-data))))
+
+;;
+(provide 'korea-util)
+
+;;; korean-util.el ends here