diff options
author | Karl Heuer <kwzh@gnu.org> | 1997-02-20 07:02:49 +0000 |
---|---|---|
committer | Karl Heuer <kwzh@gnu.org> | 1997-02-20 07:02:49 +0000 |
commit | 4ed4686978bd18292e2bb7b87a7b0e0407ecb3b1 (patch) | |
tree | 860ad83f81c8c630fe7051e3c5379ca8a9658f69 /lisp/language/ethiopic.el | |
parent | adb572fb93ddfee88f9c5e9681434517fd241232 (diff) | |
download | emacs-4ed4686978bd18292e2bb7b87a7b0e0407ecb3b1.tar.gz |
Initial revision
Diffstat (limited to 'lisp/language/ethiopic.el')
-rw-r--r-- | lisp/language/ethiopic.el | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/lisp/language/ethiopic.el b/lisp/language/ethiopic.el new file mode 100644 index 00000000000..d08ca5b1a43 --- /dev/null +++ b/lisp/language/ethiopic.el @@ -0,0 +1,85 @@ +;;; ethiopic.el --- Support for Ethiopic + +;; Copyright (C) 1995 Free Software Foundation, Inc. +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. + +;; Keywords: multilingual, Ethiopic + +;; 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, 675 Mass Ave, Cambridge, MA 02139, USA. + +;;; Code: + +(define-ccl-program ccl-encode-ethio-font + '(0 + ;; In: R0:ethio (not checked) + ;; R1:position code 1 + ;; R2:position code 2 + ;; Out: R1:font code point 1 + ;; R2:font code point 2 + ((r1 -= 33) + (r2 -= 33) + (r1 *= 94) + (r2 += r1) + (if (r2 < 256) (r1 = 0) ((r2 -= 256) (r1 = 1))))) + "CCL program to encode an Ehitopic code to code point of Ehitopic font.") + +(setq font-ccl-encoder-alist + (cons (cons "ethio" ccl-encode-ethio-font) font-ccl-encoder-alist)) + +(register-input-method + "Ethiopic" '("quail-ethio" quail-use-package "quail/ethio")) + +(defun setup-ethio-environment () + (setq primary-language "Ethiopic") + + (setq default-input-method '("Ethiopic" . "quail-ethio")) + + ;; + ;; key bindings + ;; + (define-key global-map [f4] 'sera-to-fidel-buffer) + (define-key global-map [S-f4] 'sera-to-fidel-region) + (define-key global-map [C-f4] 'sera-to-fidel-marker) + (define-key global-map [f5] 'fidel-to-sera-buffer) + (define-key global-map [S-f5] 'fidel-to-sera-region) + (define-key global-map [C-f5] 'fidel-to-sera-marker) + (define-key global-map [f6] 'ethio-modify-vowel) + (define-key global-map [f7] 'ethio-replace-space) + (define-key global-map [S-f2] 'ethio-replace-space) ; as requested + (define-key global-map [f8] 'ethio-input-special-character) + + (add-hook + 'rmail-mode-hook + '(lambda () + (define-key rmail-mode-map [C-f4] 'sera-to-fidel-mail) + (define-key rmail-mode-map [C-f5] 'fidel-to-sera-mail))) + + (add-hook + 'mail-mode-hook + '(lambda () + (define-key mail-mode-map [C-f4] 'sera-to-fidel-mail) + (define-key mail-mode-map [C-f5] 'fidel-to-sera-mail))) + ) + +(set-language-info-alist + "Ethiopic" '((setup-function . setup-ethio-environment) + (charset . (ethiopic)) + (documentation . t) + (sample-text + . "Amharic ($(2"S!,!6!l(B) $(2#Q!$!.(B, Tigrigna ($(2!V#>!6!l(B) $(2"C!$!,!V(B"))) + +;;; ethiopic.el ends here |