Fix license
[platform/core/uifw/anthy.git] / src-util / anthy-conf.el
1 ;; anthy-conf.el -- Anthy
2
3
4 ;; Copyright (C) 2002
5 ;; Author: Yusuke Tabata<yusuke@kmc.gr.jp>
6
7 ;; This file is part of Anthy
8
9 ;;; Commentary:
10 ;;
11
12 (defvar anthy-alt-char-map
13   '(("," "\e$B!$\e(B")
14     ("." "\e$B!%\e(B")))
15
16 (defvar anthy-kana-mode-hiragana-map
17   '(
18     ("3" . "\e$B$"\e(B")    ("e" . "\e$B$$\e(B")    ("4" . "\e$B$&\e(B")    ("5" . "\e$B$(\e(B")    ("6" . "\e$B$*\e(B")
19     ("#" . "\e$B$!\e(B")    ("E" . "\e$B$#\e(B")    ("$" . "\e$B$%\e(B")    ("%" . "\e$B$'\e(B")    ("&" . "\e$B$)\e(B")
20     ("t" . "\e$B$+\e(B")    ("g" . "\e$B$-\e(B")    ("h" . "\e$B$/\e(B")    (":" . "\e$B$1\e(B")    ("b" . "\e$B$3\e(B")
21     ("t@" . "\e$B$,\e(B")    ("g@" . "\e$B$.\e(B")    ("h@" . "\e$B$0\e(B")    (":@" . "\e$B$2\e(B")    ("b@" . "\e$B$4\e(B")
22     ("x" . "\e$B$5\e(B")    ("d" . "\e$B$7\e(B")    ("r" . "\e$B$9\e(B")    ("p" . "\e$B$;\e(B")    ("c" . "\e$B$=\e(B")
23     ("x@" . "\e$B$6\e(B")    ("d@" . "\e$B$8\e(B")    ("r@" . "\e$B$:\e(B")    ("p@" . "\e$B$<\e(B")    ("c@" . "\e$B$>\e(B")
24     ("q" . "\e$B$?\e(B")    ("a" . "\e$B$A\e(B")    ("z" . "\e$B$D\e(B")    ("w" . "\e$B$F\e(B")    ("s" . "\e$B$H\e(B")
25     ("q@" . "\e$B$@\e(B")    ("a@" . "\e$B$B\e(B")    ("z@" . "\e$B$E\e(B")    ("w@" . "\e$B$G\e(B")    ("s@" . "\e$B$I\e(B")
26     ("u" . "\e$B$J\e(B")    ("i" . "\e$B$K\e(B")    ("1" . "\e$B$L\e(B")    ("," . "\e$B$M\e(B")    ("k" . "\e$B$N\e(B")
27     ("f" . "\e$B$O\e(B")    ("v" . "\e$B$R\e(B")    ("2" . "\e$B$U\e(B")    ("^" . "\e$B$X\e(B")    ("-" . "\e$B$[\e(B")
28     ("f@" . "\e$B$P\e(B")    ("v@" . "\e$B$S\e(B")    ("2@" . "\e$B$V\e(B")    ("^@" . "\e$B$Y\e(B")    ("-@" . "\e$B$\\e(B")
29     ("f[" . "\e$B$Q\e(B")    ("v[" . "\e$B$T\e(B")    ("2[" . "\e$B$W\e(B")    ("^[" . "\e$B$Z\e(B")    ("-[" . "\e$B$]\e(B")
30     ("j" . "\e$B$^\e(B")    ("n" . "\e$B$_\e(B")    ("]" . "\e$B$`\e(B")    ("/" . "\e$B$a\e(B")    ("m" . "\e$B$b\e(B")
31     ("7" . "\e$B$d\e(B")    ("8" . "\e$B$f\e(B")    ("9" . "\e$B$h\e(B")
32     ("'" . "\e$B$c\e(B")    ("(" . "\e$B$e\e(B")    (")" . "\e$B$g\e(B")
33     ("o" . "\e$B$i\e(B")    ("l" . "\e$B$j\e(B")    ("." . "\e$B$k\e(B")    (";" . "\e$B$l\e(B")    ("\\" . "\e$B$m\e(B")
34     ("0" . "\e$B$o\e(B")    ("~" . "\e$B$r\e(B")
35
36     ;; \e$B:$$C$?$3$H$K\e(B \e$B%P%C%/%9%i%C%7%e$H1_$r6hJL$9$kJ}K!$,$o$+$i$J$$\e(B
37     ("|" . "\e$B!<\e(B")    ("_" . "\e$B!<\e(B")    ("<" . "\e$B!"\e(B")    (">" . "\e$B!#\e(B")
38     ("Z" . "\e$B$C\e(B")    ("y" . "\e$B$s\e(B")
39     ))
40
41 (defvar anthy-kana-mode-katakana-map
42   '(
43     ("3" . "\e$B%"\e(B")    ("e" . "\e$B%$\e(B")    ("4" . "\e$B%&\e(B")    ("5" . "\e$B%(\e(B")    ("6" . "\e$B%*\e(B")
44     ("#" . "\e$B%!\e(B")    ("E" . "\e$B%#\e(B")    ("$" . "\e$B%%\e(B")    ("%" . "\e$B%'\e(B")    ("&" . "\e$B%)\e(B")
45     ("t" . "\e$B%+\e(B")    ("g" . "\e$B%-\e(B")    ("h" . "\e$B%/\e(B")    (":" . "\e$B%1\e(B")    ("b" . "\e$B%3\e(B")
46     ("t@" . "\e$B%,\e(B")    ("g@" . "\e$B%.\e(B")    ("h@" . "\e$B%0\e(B")    (":@" . "\e$B%2\e(B")    ("b@" . "\e$B%4\e(B")
47     ("x" . "\e$B%5\e(B")    ("d" . "\e$B%7\e(B")    ("r" . "\e$B%9\e(B")    ("p" . "\e$B%;\e(B")    ("c" . "\e$B%=\e(B")
48     ("x@" . "\e$B%6\e(B")    ("d@" . "\e$B%8\e(B")    ("r@" . "\e$B%:\e(B")    ("p@" . "\e$B%<\e(B")    ("c@" . "\e$B%>\e(B")
49     ("q" . "\e$B%?\e(B")    ("a" . "\e$B%A\e(B")    ("z" . "\e$B%D\e(B")    ("w" . "\e$B%F\e(B")    ("s" . "\e$B%H\e(B")
50     ("q@" . "\e$B%@\e(B")    ("a@" . "\e$B%B\e(B")    ("z@" . "\e$B%E\e(B")    ("w@" . "\e$B%G\e(B")    ("s@" . "\e$B%I\e(B")
51     ("u" . "\e$B%J\e(B")    ("i" . "\e$B%K\e(B")    ("1" . "\e$B%L\e(B")    ("," . "\e$B%M\e(B")    ("k" . "\e$B%N\e(B")
52     ("f" . "\e$B%O\e(B")    ("v" . "\e$B%R\e(B")    ("2" . "\e$B%U\e(B")    ("^" . "\e$B%X\e(B")    ("-" . "\e$B%[\e(B")
53     ("f@" . "\e$B%P\e(B")    ("v@" . "\e$B%S\e(B")    ("2@" . "\e$B%V\e(B")    ("^@" . "\e$B%Y\e(B")    ("-@" . "\e$B%\\e(B")
54     ("f[" . "\e$B%Q\e(B")    ("v[" . "\e$B%T\e(B")    ("2[" . "\e$B%W\e(B")    ("^[" . "\e$B%Z\e(B")    ("-[" . "\e$B%]\e(B")
55     ("j" . "\e$B%^\e(B")    ("n" . "\e$B%_\e(B")    ("]" . "\e$B%`\e(B")    ("/" . "\e$B%a\e(B")    ("m" . "\e$B%b\e(B")
56     ("7" . "\e$B%d\e(B")    ("8" . "\e$B%f\e(B")    ("9" . "\e$B%h\e(B")
57     ("'" . "\e$B%c\e(B")    ("(" . "\e$B%e\e(B")    (")" . "\e$B%g\e(B")
58     ("o" . "\e$B%i\e(B")    ("l" . "\e$B%j\e(B")    ("." . "\e$B%k\e(B")    (";" . "\e$B%l\e(B")    ("\\" . "\e$B%m\e(B")
59     ("0" . "\e$B%o\e(B")    ("~" . "\e$B%r\e(B")
60
61     ;; \e$B:$$C$?$3$H$K\e(B \e$B%P%C%/%9%i%C%7%e$H1_$r6hJL$9$kJ}K!$,$o$+$i$J$$\e(B
62     ("|" . "\e$B!<\e(B")    ("_" . "\e$B!<\e(B")    ("<" . "\e$B!"\e(B")    (">" . "\e$B!#\e(B")
63     ("Z" . "\e$B%C\e(B")    ("y" . "\e$B%s\e(B")
64     ))
65
66 ;;
67 ;; map\e$B$NJQ99\e(B
68 ;;
69 (defun anthy-send-map-edit-command (mapno key str)
70   (if (not (stringp key))
71       (setq key (char-to-string key)))
72   (if (not (stringp str))
73       (setq str (char-to-string str)))
74   (anthy-send-recv-command
75    (concat " MAP_EDIT " (int-to-string mapno)
76            " " key " " str "\n")))
77 (defun anthy-change-hiragana-map (key str)
78   (anthy-send-map-edit-command 2 key str))
79 (defun anthy-change-katakana-map (key str)
80   (anthy-send-map-edit-command 3 key str))
81 (defun anthy-load-hiragana-map (map)
82   (mapcar (lambda (x)
83             (let ((key (car x))
84                   (str (cadr x)))
85               (anthy-change-hiragana-map key str))) map))
86 (defun anthy-clear-map ()
87   (anthy-send-recv-command
88    " MAP_CLEAR 0\n"))
89 ;;
90 ;; toggle\e$B$NJQ99\e(B
91 ;;
92 (defun anthy-send-change-toggle-command (str)
93   (anthy-send-recv-command
94    (concat " CHANGE_TOGGLE " str "\n")))
95
96 ;; should disable toggle
97 ;; (\e$B%m!<%^;z$G$O$J$/$F\e(B)\e$B$+$J%b!<%I$K$9$k\e(B
98 (defun anthy-kana-map-mode ()
99   (setq anthy-rkmap-keybind
100         '(
101           ;; \C-p
102           (("hiragana" . 16) . "katakana")
103           (("katakana" . 16) . "hiragana")))
104   (define-key anthy-mode-map (char-to-string 16) 'anthy-insert)
105   (anthy-send-recv-command " SET_PREEDIT_MODE 1\n")
106   (anthy-send-change-toggle-command "!")
107   (anthy-clear-map)
108   (mapcar (lambda (x)
109             (anthy-change-hiragana-map (car x) (cdr x)))
110           anthy-kana-mode-hiragana-map)
111   (mapcar (lambda (x)
112             (anthy-change-katakana-map (car x) (cdr x)))
113           anthy-kana-mode-katakana-map))
114 ;;
115 (defun anthy-set-break-into-roman (flag)
116   "\e$BFI$_$rF~NOCf$K%P%C%/%9%Z!<%9$rBG$D$H%m!<%^;z$^$G%P%i%P%i$K$9$k\e(B"
117   (anthy-send-recv-command
118    (if flag
119        " BREAK_INTO_ROMAN 1\n"
120      " BREAK_INTO_ROMAN 0\n")))
121
122 (provide 'anthy-conf)