Sync to HEAD
[bpt/emacs.git] / leim / quail / viqr.el
1 ;;; viqr.el --- Quail packages for inputting Vietnamese with VIQR system -*-coding: iso-2022-7bit;-*-
2
3 ;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
4 ;; Licensed to the Free Software Foundation.
5
6 ;; Keywords: multilingual, input method, latin
7
8 ;; This file is part of GNU Emacs.
9
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
11 ;; it under the terms of the GNU General Public License as published by
12 ;; the Free Software Foundation; either version 2, or (at your option)
13 ;; any later version.
14
15 ;; GNU Emacs is distributed in the hope that it will be useful,
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 ;; GNU General Public License for more details.
19
20 ;; You should have received a copy of the GNU General Public License
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
23 ;; Boston, MA 02111-1307, USA.
24
25 ;;; Commentary:
26
27 ;;; Code:
28
29 (require 'quail)
30 (require 'viet-util)
31
32 ;; `viet-viqr-alist' is an alist of Vietnamese characters vs
33 ;; corresponding VIQR strings. We create Quail map which maps VIQR
34 ;; strings to corresponding Vietnamese characters.
35
36 (defmacro viet-quail-define-rules ()
37 (cons 'quail-define-rules
38 (let ((l viet-viqr-alist)
39 rules)
40 (while l
41 (setq rules (cons (list (cdr (car l)) (car (car l))) rules))
42 (setq l (cdr l)))
43 rules)))
44
45 (quail-define-package
46 "vietnamese-viqr" "Vietnamese" "VQ" t
47 "Vietnamese input method with VIQR mnemonic system
48
49 effect | postfix | examples
50 ------------+---------+----------
51 breve | ( | a( -> \e,1e\e(B
52 circumflex | ^ | a^ -> \e,1b\e(B
53 horn | + | o+ -> \e,1=\e(B
54 ------------+---------+----------
55 acute | ' | a' -> \e,1a\e(B
56 grave | ` | a` -> \e,1`\e(B
57 hook above | ? | a? -> \e,1d\e(B
58 tilde | ~ | a~ -> \e,1c\e(B
59 dot below | . | a. -> \e,1U\e(B
60 ------------+---------+----------
61 d bar | dd | dd -> \e,1p\e(B
62 ------------+---------+----------
63 no compose | \\ | a\\. -> a.
64 ------------+---------+----------
65 combination| (~ | a(~ -> \e,1G\e(B
66 " nil t t nil nil t nil nil nil nil t)
67
68
69 (viet-quail-define-rules)
70
71 ;;; arch-tag: d2c29221-5a2e-46b2-898b-0e56bc4eb858
72 ;;; viqr.el ends here