tamago-current.diff.gz in [tamago:00423] is applied.
[elisp/tamago.git] / its / jeonkak.el
1 ;;; its/jeonkak.el --- Jeonkak ASCII Input in Egg Input Method Architecture
2
3 ;; Copyright (C) 1999,2000 PFU LIMITED
4
5 ;; Author: KATAYAMA Yoshio <kate@pfu.co.jp>
6
7 ;; Maintainer: TOMURA Satoru <tomura@etl.go.jp>
8
9 ;; Keywords: mule, multilingual, input method
10
11 ;; This file is part of EGG.
12
13 ;; EGG is free software; you can redistribute it and/or modify
14 ;; it under the terms of the GNU General Public License as published by
15 ;; the Free Software Foundation; either version 2, or (at your option)
16 ;; any later version.
17
18 ;; EGG is distributed in the hope that it will be useful,
19 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21 ;; GNU General Public License for more details.
22
23 ;; You should have received a copy of the GNU General Public License
24 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
25 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
26 ;; Boston, MA 02111-1307, USA.
27
28 ;;; Commentary:
29
30
31 ;;; Code:
32
33
34
35 (eval-when-compile
36   (require 'its))
37
38 (define-its-state-machine its-jeonkak-up-map
39   "jeonkak-upcase" "\e$(C#A\e(B" Korean
40   "Map for jeonkak-upcase input."
41
42   (dolist (ascii '(("1" . "\e$(C#1\e(B")  ("2" . "\e$(C#2\e(B")  ("3" . "\e$(C#3\e(B")  ("4" . "\e$(C#4\e(B")
43                    ("5" . "\e$(C#5\e(B")  ("6" . "\e$(C#6\e(B")  ("7" . "\e$(C#7\e(B")  ("8" . "\e$(C#8\e(B")
44                    ("9" . "\e$(C#9\e(B")  ("0" . "\e$(C#0\e(B")
45                    (" " . "\e$(C!!\e(B")  ("!" . "\e$(C#!\e(B")  ("@" . "\e$(C#@\e(B")  ("#" . "\e$(C##\e(B")
46                    ("$" . "\e$(C#$\e(B")  ("%" . "\e$(C#%\e(B")  ("^" . "\e$(C#^\e(B")  ("&" . "\e$(C#&\e(B")
47                    ("*" . "\e$(C#*\e(B")  ("(" . "\e$(C#(\e(B")  (")" . "\e$(C#)\e(B")
48                    ("-" . "\e$(C#-\e(B")  ("=" . "\e$(C#=\e(B")  ("`" . "\e$(C#`\e(B")  ("\\" . "\e$(C#\\e(B")
49                    ("|" . "\e$(C#|\e(B")  ("_" . "\e$(C#_\e(B")  ("+" . "\e$(C#+\e(B")  ("~" . "\e$(C#~\e(B")
50                    ("[" . "\e$(C!8\e(B")  ("]" . "\e$(C!9\e(B")  ("{" . "\e$(C#{\e(B")  ("}" . "\e$(C#}\e(B")
51                    (":" . "\e$(C#:\e(B")  (";" . "\e$(C#;\e(B")  ("\"" . "\e$(C#"\e(B") ("'" . "\e$(C#'\e(B")
52                    ("<" . "\e$(C#<\e(B")  (">" . "\e$(C#>\e(B")  ("?" . "\e$(C#?\e(B")  ("/" . "\e$(C#/\e(B")
53                    ("," . "\e$(C#,\e(B")  ("." . "\e$(C#.\e(B")
54                    ("a" . "\e$(C#A\e(B")  ("b" . "\e$(C#B\e(B")  ("c" . "\e$(C#C\e(B")  ("d" . "\e$(C#D\e(B")
55                    ("e" . "\e$(C#E\e(B")  ("f" . "\e$(C#F\e(B")  ("g" . "\e$(C#G\e(B")  ("h" . "\e$(C#H\e(B")
56                    ("i" . "\e$(C#I\e(B")  ("j" . "\e$(C#J\e(B")  ("k" . "\e$(C#K\e(B")  ("l" . "\e$(C#L\e(B")
57                    ("m" . "\e$(C#M\e(B")  ("n" . "\e$(C#N\e(B")  ("o" . "\e$(C#O\e(B")  ("p" . "\e$(C#P\e(B")
58                    ("q" . "\e$(C#Q\e(B")  ("r" . "\e$(C#R\e(B")  ("s" . "\e$(C#S\e(B")  ("t" . "\e$(C#T\e(B")
59                    ("u" . "\e$(C#U\e(B")  ("v" . "\e$(C#V\e(B")  ("w" . "\e$(C#W\e(B")  ("x" . "\e$(C#X\e(B")
60                    ("y" . "\e$(C#Y\e(B")  ("z" . "\e$(C#Z\e(B")
61                    ("A" . "\e$(C#A\e(B")  ("B" . "\e$(C#B\e(B")  ("C" . "\e$(C#C\e(B")  ("D" . "\e$(C#D\e(B")
62                    ("E" . "\e$(C#E\e(B")  ("F" . "\e$(C#F\e(B")  ("G" . "\e$(C#G\e(B")  ("H" . "\e$(C#H\e(B")
63                    ("I" . "\e$(C#I\e(B")  ("J" . "\e$(C#J\e(B")  ("K" . "\e$(C#K\e(B")  ("L" . "\e$(C#L\e(B")
64                    ("M" . "\e$(C#M\e(B")  ("N" . "\e$(C#N\e(B")  ("O" . "\e$(C#O\e(B")  ("P" . "\e$(C#P\e(B")
65                    ("Q" . "\e$(C#Q\e(B")  ("R" . "\e$(C#R\e(B")  ("S" . "\e$(C#S\e(B")  ("T" . "\e$(C#T\e(B")
66                    ("U" . "\e$(C#U\e(B")  ("V" . "\e$(C#V\e(B")  ("W" . "\e$(C#W\e(B")  ("X" . "\e$(C#X\e(B")
67                    ("Y" . "\e$(C#Y\e(B")  ("Z" . "\e$(C#Z\e(B")))
68     (let ((in (car ascii)) (out (cdr ascii)))
69       (its-defrule in out))))
70
71 (define-its-state-machine-append its-jeonkak-up-map)
72
73 (define-its-state-machine its-jeonkak-down-map
74   "jeonkak-downcase" "\e$(C#a\e(B" Korean
75   "Map for jeonkak-downcase input."
76
77   (dolist (ascii '(("1" . "\e$(C#1\e(B")  ("2" . "\e$(C#2\e(B")  ("3" . "\e$(C#3\e(B")  ("4" . "\e$(C#4\e(B")
78                    ("5" . "\e$(C#5\e(B")  ("6" . "\e$(C#6\e(B")  ("7" . "\e$(C#7\e(B")  ("8" . "\e$(C#8\e(B")
79                    ("9" . "\e$(C#9\e(B")  ("0" . "\e$(C#0\e(B")
80                    (" " . "\e$(C!!\e(B")  ("!" . "\e$(C#!\e(B")  ("@" . "\e$(C#@\e(B")  ("#" . "\e$(C##\e(B")
81                    ("$" . "\e$(C#$\e(B")  ("%" . "\e$(C#%\e(B")  ("^" . "\e$(C#^\e(B")  ("&" . "\e$(C#&\e(B")
82                    ("*" . "\e$(C#*\e(B")  ("(" . "\e$(C#(\e(B")  (")" . "\e$(C#)\e(B")
83                    ("-" . "\e$(C#-\e(B")  ("=" . "\e$(C#=\e(B")  ("`" . "\e$(C#`\e(B")  ("\\" . "\e$(C#\\e(B")
84                    ("|" . "\e$(C#|\e(B")  ("_" . "\e$(C#_\e(B")  ("+" . "\e$(C#+\e(B")  ("~" . "\e$(C#~\e(B")
85                    ("[" . "\e$(C!8\e(B")  ("]" . "\e$(C!9\e(B")  ("{" . "\e$(C#{\e(B")  ("}" . "\e$(C#}\e(B")
86                    (":" . "\e$(C#:\e(B")  (";" . "\e$(C#;\e(B")  ("\"" . "\e$(C#"\e(B") ("'" . "\e$(C#'\e(B")
87                    ("<" . "\e$(C#<\e(B")  (">" . "\e$(C#>\e(B")  ("?" . "\e$(C#?\e(B")  ("/" . "\e$(C#/\e(B")
88                    ("," . "\e$(C#,\e(B")  ("." . "\e$(C#.\e(B")
89                    ("a" . "\e$(C#a\e(B")  ("b" . "\e$(C#b\e(B")  ("c" . "\e$(C#c\e(B")  ("d" . "\e$(C#d\e(B")
90                    ("e" . "\e$(C#e\e(B")  ("f" . "\e$(C#f\e(B")  ("g" . "\e$(C#g\e(B")  ("h" . "\e$(C#h\e(B")
91                    ("i" . "\e$(C#i\e(B")  ("j" . "\e$(C#j\e(B")  ("k" . "\e$(C#k\e(B")  ("l" . "\e$(C#l\e(B")
92                    ("m" . "\e$(C#m\e(B")  ("n" . "\e$(C#n\e(B")  ("o" . "\e$(C#o\e(B")  ("p" . "\e$(C#p\e(B")
93                    ("q" . "\e$(C#q\e(B")  ("r" . "\e$(C#r\e(B")  ("s" . "\e$(C#s\e(B")  ("t" . "\e$(C#t\e(B")
94                    ("u" . "\e$(C#u\e(B")  ("v" . "\e$(C#v\e(B")  ("w" . "\e$(C#w\e(B")  ("x" . "\e$(C#x\e(B")
95                    ("y" . "\e$(C#y\e(B")  ("z" . "\e$(C#z\e(B")
96                    ("A" . "\e$(C#A\e(B")  ("B" . "\e$(C#B\e(B")  ("C" . "\e$(C#C\e(B")  ("D" . "\e$(C#D\e(B")
97                    ("E" . "\e$(C#E\e(B")  ("F" . "\e$(C#F\e(B")  ("G" . "\e$(C#G\e(B")  ("H" . "\e$(C#H\e(B")
98                    ("I" . "\e$(C#I\e(B")  ("J" . "\e$(C#J\e(B")  ("K" . "\e$(C#K\e(B")  ("L" . "\e$(C#L\e(B")
99                    ("M" . "\e$(C#M\e(B")  ("N" . "\e$(C#N\e(B")  ("O" . "\e$(C#O\e(B")  ("P" . "\e$(C#P\e(B")
100                    ("Q" . "\e$(C#Q\e(B")  ("R" . "\e$(C#R\e(B")  ("S" . "\e$(C#S\e(B")  ("T" . "\e$(C#T\e(B")
101                    ("U" . "\e$(C#U\e(B")  ("V" . "\e$(C#V\e(B")  ("W" . "\e$(C#W\e(B")  ("X" . "\e$(C#X\e(B")
102                    ("Y" . "\e$(C#Y\e(B")  ("Z" . "\e$(C#Z\e(B")))
103     (let ((in (car ascii)) (out (cdr ascii)))
104       (its-defrule in out))))
105
106 (define-its-state-machine-append its-jeonkak-down-map)
107
108 (provide 'its/jeonkak)