;;; Code:
-(define-ccl-program ccl-encode-ethio-font
- '(0
- ;; In: R0:ethiopic (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 = #x12)
- (if (r2 < 448)
- ((r1 = #x13) (r2 -= 256))
- ((r1 = #xfd) (r2 -= 208))
- ))))
- "CCL program to encode an Ethiopic code to code point of Ethiopic font.")
-
-(setq font-ccl-encoder-alist
- (cons (cons "ethiopic" ccl-encode-ethio-font) font-ccl-encoder-alist))
-
(set-language-info-alist
"Ethiopic" '((setup-function . setup-ethiopic-environment-internal)
(exit-function . exit-ethiopic-environment)
doc: /* Vector of code conversion maps. */);
Vcode_conversion_map_vector = make_nil_vector (16);
- DEFVAR_LISP ("font-ccl-encoder-alist", Vfont_ccl_encoder_alist,
- doc: /* Alist of fontname patterns vs corresponding CCL program.
-Each element looks like (REGEXP . CCL-CODE),
- where CCL-CODE is a compiled CCL program.
-When a font whose name matches REGEXP is used for displaying a character,
- CCL-CODE is executed to calculate the code point in the font
- from the charset number and position code(s) of the character which are set
- in CCL registers R0, R1, and R2 before the execution.
-The code point in the font is set in CCL registers R1 and R2
- when the execution terminated.
- If the font is single-byte font, the register R2 is not used. */);
- Vfont_ccl_encoder_alist = Qnil;
-
DEFVAR_LISP ("translation-hash-table-vector", Vtranslation_hash_table_vector,
doc: /* Vector containing all translation hash tables ever defined.
Comprises pairs (SYMBOL . TABLE) where SYMBOL and TABLE were set up by calls