aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa1998-06-20 02:59:51 +0000
committerKenichi Handa1998-06-20 02:59:51 +0000
commit22e382fda989339efde59bc5b1f14bc78a8fdeb7 (patch)
treef855e52098fba15ae770b0731d1531253ba4b218
parentb3c357b6a0df3d3026790dd6b29e398a23f388d3 (diff)
downloademacs-22e382fda989339efde59bc5b1f14bc78a8fdeb7.tar.gz
emacs-22e382fda989339efde59bc5b1f14bc78a8fdeb7.zip
Delete codes for ethio-mode, which
includes deletion of varialble ethio-mode, variable ethio-mode-map, and function ethio-mode. (exit-ethiopic-environment-data): New variable. (setup-ethiopic-environment): Recode information of changed key bindings in exit-ethiopic-environment-data. Add ethio-select-a-translation to quail-mode-hook. (exit-ethiopic-environment): New function. (ethio-find-file): Don't check ethio-mode. (ethio-write-file): Likewise.
-rw-r--r--lisp/language/ethio-util.el112
1 files changed, 46 insertions, 66 deletions
diff --git a/lisp/language/ethio-util.el b/lisp/language/ethio-util.el
index ec3bb538f8d..ff5c54aa090 100644
--- a/lisp/language/ethio-util.el
+++ b/lisp/language/ethio-util.el
@@ -26,71 +26,57 @@
26 26
27;;; Code: 27;;; Code:
28 28
29;; Information for exiting Ethiopic environment.
30(defvar exit-ethiopic-environment-data nil)
31
29;;;###autoload 32;;;###autoload
30(defun setup-ethiopic-environment () 33(defun setup-ethiopic-environment ()
31 "Setup multilingual environment for Ethiopic." 34 "Setup multilingual environment for Ethiopic."
32 (interactive) 35 (interactive)
33 (setup-english-environment) 36 (setup-english-environment)
34 (setq default-input-method "ethiopic")) 37 (setq default-input-method "ethiopic")
35 38
36;; 39 (let ((key-bindings '((" " . ethio-insert-space)
37;; Ethio minor mode 40 ([?\S- ] . ethio-insert-ethio-space)
38;; 41 ([?\C-'] . ethio-gemination)
39 42 ([f2] . ethio-toggle-space)
40(defvar ethio-mode nil "Non-nil if in Ethio minor mode.") 43 ([S-f2] . ethio-replace-space) ; as requested
41(make-variable-buffer-local 'ethio-mode) 44 ([f3] . ethio-toggle-punctuation)
42 45 ([f4] . ethio-sera-to-fidel-buffer)
43(or (assq 'ethio-mode minor-mode-alist) 46 ([S-f4] . ethio-sera-to-fidel-region)
44 (setq minor-mode-alist 47 ([C-f4] . ethio-sera-to-fidel-mail-or-marker)
45 (cons '(ethio-mode " Ethio") minor-mode-alist))) 48 ([f5] . ethio-fidel-to-sera-buffer)
46 49 ([S-f5] . ethio-fidel-to-sera-region)
47(defvar ethio-mode-map 50 ([C-f5] . ethio-fidel-to-sera-mail-or-marker)
48 (let ((map (make-sparse-keymap))) 51 ([f6] . ethio-modify-vowel)
49 (define-key map " " 'ethio-insert-space) 52 ([f7] . ethio-replace-space)
50 (define-key map [?\S- ] 'ethio-insert-ethio-space) 53 ([f8] . ethio-input-special-character)))
51 (define-key map [?\C-'] 'ethio-gemination) 54 kb)
52 (define-key map [f2] 'ethio-toggle-space) 55 (while key-bindings
53 (define-key map [S-f2] 'ethio-replace-space) ; as requested 56 (setq kb (car (car key-bindings)))
54 (define-key map [f3] 'ethio-toggle-punctuation) 57 (setq exit-ethiopic-environment-data
55 (define-key map [f4] 'ethio-sera-to-fidel-buffer) 58 (cons (cons kb (global-key-binding kb))
56 (define-key map [S-f4] 'ethio-sera-to-fidel-region) 59 exit-ethiopic-environment-data))
57 (define-key map [C-f4] 'ethio-sera-to-fidel-mail-or-marker) 60 (global-set-key kb (cdr (car key-bindings)))
58 (define-key map [f5] 'ethio-fidel-to-sera-buffer) 61 (setq key-bindings (cdr key-bindings))))
59 (define-key map [S-f5] 'ethio-fidel-to-sera-region) 62
60 (define-key map [C-f5] 'ethio-fidel-to-sera-mail-or-marker) 63 (add-hook 'quail-mode-hook 'ethio-select-a-translation)
61 (define-key map [f6] 'ethio-modify-vowel) 64 (add-hook 'find-file-hooks 'ethio-find-file)
62 (define-key map [f7] 'ethio-replace-space) 65 (add-hook 'write-file-hooks 'ethio-write-file)
63 (define-key map [f8] 'ethio-input-special-character) 66 (add-hook 'after-save-hook 'ethio-find-file))
64 map) 67
65 "Keymap for Ethio minor mode.") 68(defun exit-ethiopic-environment ()
66 69 "Exit Ethiopic language environment"
67(or (assq 'ethio-mode minor-mode-map-alist) 70 (while exit-ethiopic-environment-data
68 (setq minor-mode-map-alist 71 (global-set-key (car (car exit-ethiopic-environment-data))
69 (cons (cons 'ethio-mode ethio-mode-map) minor-mode-map-alist))) 72 (cdr (car exit-ethiopic-environment-data)))
70 73 (setq exit-ethiopic-environment-data
71;;;###autoload 74 (cdr exit-ethiopic-environment-data)))
72(defun ethio-mode (&optional arg) 75
73 "Toggle Ethio minor mode. 76 (remove-hook 'quail-mode-hook 'ethio-select-a-translation)
74With arg, turn Ethio mode on if and only if arg is positive. 77 (remove-hook 'find-file-hooks 'ethio-find-file)
75 78 (remove-hook 'write-file-hooks 'ethio-write-file)
76Also, Ethio minor mode is automatically turned on 79 (remove-hook 'after-save-hook 'ethio-find-file))
77when you activate the Ethiopic quail package.
78
79The keys that are defined in ethio-mode are:
80\\{ethio-mode-map}"
81
82 (interactive)
83 (setq ethio-mode
84 (if (null arg) (not ethio-mode)
85 (> (prefix-numeric-value arg) 0)))
86 (if ethio-mode
87 (progn
88 (add-hook 'find-file-hooks 'ethio-find-file)
89 (add-hook 'write-file-hooks 'ethio-write-file)
90 (add-hook 'after-save-hook 'ethio-find-file))
91 (remove-hook 'find-file-hooks 'ethio-find-file)
92 (remove-hook 'write-file-hooks 'ethio-write-file)
93 (remove-hook 'after-save-hook 'ethio-find-file)))
94 80
95;; 81;;
96;; ETHIOPIC UTILITY FUNCTIONS 82;; ETHIOPIC UTILITY FUNCTIONS
@@ -1826,9 +1812,6 @@ Otherwise, [0-9A-F]."
1826 "Transcribe file content into Ethiopic dependig on filename suffix." 1812 "Transcribe file content into Ethiopic dependig on filename suffix."
1827 (cond 1813 (cond
1828 1814
1829 ((null ethio-mode)
1830 nil)
1831
1832 ((string-match "\\.sera$" (buffer-file-name)) 1815 ((string-match "\\.sera$" (buffer-file-name))
1833 (save-excursion 1816 (save-excursion
1834 (ethio-sera-to-fidel-buffer nil 'force) 1817 (ethio-sera-to-fidel-buffer nil 'force)
@@ -1863,9 +1846,6 @@ Otherwise, [0-9A-F]."
1863 "Transcribe Ethiopic characters in ASCII depending on the file extension." 1846 "Transcribe Ethiopic characters in ASCII depending on the file extension."
1864 (cond 1847 (cond
1865 1848
1866 ((null ethio-mode)
1867 nil)
1868
1869 ((string-match "\\.sera$" (buffer-file-name)) 1849 ((string-match "\\.sera$" (buffer-file-name))
1870 (save-excursion 1850 (save-excursion
1871 (ethio-fidel-to-sera-buffer nil 'force) 1851 (ethio-fidel-to-sera-buffer nil 'force)