changeset 19149:0a0aa1629e83

(cyrillic-language-alist): New variable. (standard-display-cyrillic-translit): Add autoload cookie.
author Kenichi Handa <handa@m17n.org>
date Tue, 05 Aug 1997 01:10:07 +0000
parents 7c41b30f50ce
children b953b98ae007
files lisp/language/cyril-util.el
diffstat 1 files changed, 139 insertions(+), 114 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/language/cyril-util.el	Mon Aug 04 19:42:32 1997 +0000
+++ b/lisp/language/cyril-util.el	Tue Aug 05 01:10:07 1997 +0000
@@ -36,131 +36,156 @@
 
 ;; Written by Valery Alexeev <valery@math.uga.edu>.
 
-(defun standard-display-cyrillic-translit (cyrillic-language)
+(defvar cyrillic-language-alist
+      (list '("Bulgarian") '("Macedonian") '("Serbocroatian")
+	    '("Russian")  '("Ukrainian"))
+      "*List of known cyrillic languages")
+
+(setq standard-display-table (make-display-table))
+
+;;;###autoload
+(defun standard-display-cyrillic-translit (&optional cyrillic-language)
   "Display a cyrillic buffer using a transliteration.
 For readability, the table is slightly
 different from the one used for the input method `cyrillic-translit'.
 
-The argument specifies which language you are using;
+The argument is a string which specifies which language you are using;
 that affects the choice of transliterations slightly.
-Possible values are `ukranian', `bulgarian' or t (any other language).
+Possible values are listed in 'cyrillic-language-alist'.
+If the argument is t, we use the default cyrillic transliteration.
 If the argument is nil, we return the display table to its standard state."
+  (interactive)
+  (if (interactive-p)
+      (let* ((completion-ignore-case t))
+	(setq cyrillic-language 
+	      (completing-read
+	       "Cyrillic language (default nil): "
+	       cyrillic-language-alist nil t nil nil nil))))
+
+  (if (equal cyrillic-language "")
+      (setq cyrillic-language nil))
+
   (if (null cyrillic-language)
       (setq standard-display-table (make-display-table))
-    (aset standard-display-table ?  [?a])
-    (aset standard-display-table ?  [?b])
-    (aset standard-display-table ?  [?v])
-    (aset standard-display-table ?  [?g])
-    (aset standard-display-table ?  [?d])
-    (aset standard-display-table ?  [?e])
-    (aset standard-display-table ?  [?y?o])
-    (aset standard-display-table ?  [?z?h])
-    (aset standard-display-table ?  [?z])
-    (aset standard-display-table ?  [?i])
-    (aset standard-display-table ?  [?j])
-    (aset standard-display-table ?  [?k])
-    (aset standard-display-table ?  [?l])
-    (aset standard-display-table ?  [?m])
-    (aset standard-display-table ?  [?n])
-    (aset standard-display-table ?  [?o])
-    (aset standard-display-table ?  [?p])
-    (aset standard-display-table ?  [?r])
-    (aset standard-display-table ?  [?s])
-    (aset standard-display-table ?  [?t])
-    (aset standard-display-table ?  [?u])
-    (aset standard-display-table ?  [?f])
-    (aset standard-display-table ?  [?k?h])
-    (aset standard-display-table ?  [?t?s])
-    (aset standard-display-table ?  [?c?h])
-    (aset standard-display-table ?  [?s?h])
-    (aset standard-display-table ?  [?s?c?h])
-    (aset standard-display-table ?  [?~])
-    (aset standard-display-table ?  [?y])
-    (aset standard-display-table ?  [?'])
-    (aset standard-display-table ?  [?e?'])
-    (aset standard-display-table ?  [?y?u])
-    (aset standard-display-table ?  [?y?a])
-  
-    (aset standard-display-table ?  [?A])
-    (aset standard-display-table ?  [?B])
-    (aset standard-display-table ?  [?V])
-    (aset standard-display-table ?  [?G])
-    (aset standard-display-table ?  [?D])
-    (aset standard-display-table ?  [?E])
-    (aset standard-display-table ?  [?Y?o])
-    (aset standard-display-table ?  [?Z?h])
-    (aset standard-display-table ?  [?Z])
-    (aset standard-display-table ?  [?I])
-    (aset standard-display-table ?  [?J])
-    (aset standard-display-table ?  [?K])
-    (aset standard-display-table ?\  [?L])
-    (aset standard-display-table ?  [?M])
-    (aset standard-display-table ?  [?N])
-    (aset standard-display-table ?  [?O])
-    (aset standard-display-table ?  [?P])
-    (aset standard-display-table ?  [?R])
-    (aset standard-display-table ?  [?S])
-    (aset standard-display-table ?  [?T])
-    (aset standard-display-table ?  [?U])
-    (aset standard-display-table ?  [?F])
-    (aset standard-display-table ?  [?K?h])
-    (aset standard-display-table ?  [?T?s])
-    (aset standard-display-table ?  [?C?h])
-    (aset standard-display-table ?  [?S?h])
-    (aset standard-display-table ?  [?S?c?h])
-    (aset standard-display-table ?  [?~])
-    (aset standard-display-table ?  [?Y])
-    (aset standard-display-table ?  [?'])
-    (aset standard-display-table ?  [?E?'])
-    (aset standard-display-table ?  [?Y?u])
-    (aset standard-display-table ?  [?Y?a])
+    (aset standard-display-table ?,LP(B  [?a])
+    (aset standard-display-table ?,LQ(B  [?b])
+    (aset standard-display-table ?,LR(B  [?v])
+    (aset standard-display-table ?,LS(B  [?g])
+    (aset standard-display-table ?,LT(B  [?d])
+    (aset standard-display-table ?,LU(B  [?e])
+    (aset standard-display-table ?,Lq(B  [?y?o])
+    (aset standard-display-table ?,LV(B  [?z?h])
+    (aset standard-display-table ?,LW(B  [?z])
+    (aset standard-display-table ?,LX(B  [?i])
+    (aset standard-display-table ?,LY(B  [?j])
+    (aset standard-display-table ?,LZ(B  [?k])
+    (aset standard-display-table ?,L[(B  [?l])
+    (aset standard-display-table ?,L\(B  [?m])
+    (aset standard-display-table ?,L](B  [?n])
+    (aset standard-display-table ?,L^(B  [?o])
+    (aset standard-display-table ?,L_(B  [?p])
+    (aset standard-display-table ?,L`(B  [?r])
+    (aset standard-display-table ?,La(B  [?s])
+    (aset standard-display-table ?,Lb(B  [?t])
+    (aset standard-display-table ?,Lc(B  [?u])
+    (aset standard-display-table ?,Ld(B  [?f])
+    (aset standard-display-table ?,Le(B  [?k?h])
+    (aset standard-display-table ?,Lf(B  [?t?s])
+    (aset standard-display-table ?,Lg(B  [?c?h])
+    (aset standard-display-table ?,Lh(B  [?s?h])
+    (aset standard-display-table ?,Li(B  [?s?c?h])
+    (aset standard-display-table ?,Lj(B  [?~])
+    (aset standard-display-table ?,Lk(B  [?y])
+    (aset standard-display-table ?,Ll(B  [?'])
+    (aset standard-display-table ?,Lm(B  [?e?'])
+    (aset standard-display-table ?,Ln(B  [?y?u])
+    (aset standard-display-table ?,Lo(B  [?y?a])
+    
+    (aset standard-display-table ?,L0(B  [?A])
+    (aset standard-display-table ?,L1(B  [?B])
+    (aset standard-display-table ?,L2(B  [?V])
+    (aset standard-display-table ?,L3(B  [?G])
+    (aset standard-display-table ?,L4(B  [?D])
+    (aset standard-display-table ?,L5(B  [?E])
+    (aset standard-display-table ?,L!(B  [?Y?o])
+    (aset standard-display-table ?,L6(B  [?Z?h])
+    (aset standard-display-table ?,L7(B  [?Z])
+    (aset standard-display-table ?,L8(B  [?I])
+    (aset standard-display-table ?,L9(B  [?J])
+    (aset standard-display-table ?,L:(B  [?K])
+    (aset standard-display-table ?,L;(B  [?L])
+    (aset standard-display-table ?,L<(B  [?M])
+    (aset standard-display-table ?,L=(B  [?N])
+    (aset standard-display-table ?,L>(B  [?O])
+    (aset standard-display-table ?,L?(B  [?P])
+    (aset standard-display-table ?,L@(B  [?R])
+    (aset standard-display-table ?,LA(B  [?S])
+    (aset standard-display-table ?,LB(B  [?T])
+    (aset standard-display-table ?,LC(B  [?U])
+    (aset standard-display-table ?,LD(B  [?F])
+    (aset standard-display-table ?,LE(B  [?K?h])
+    (aset standard-display-table ?,LF(B  [?T?s])
+    (aset standard-display-table ?,LG(B  [?C?h])
+    (aset standard-display-table ?,LH(B  [?S?h])
+    (aset standard-display-table ?,LI(B  [?S?c?h])
+    (aset standard-display-table ?,LJ(B  [?~])
+    (aset standard-display-table ?,LK(B  [?Y])
+    (aset standard-display-table ?,LL(B  [?'])
+    (aset standard-display-table ?,LM(B  [?E?'])
+    (aset standard-display-table ?,LN(B  [?Y?u])
+    (aset standard-display-table ?,LO(B  [?Y?a])
+    
+    (aset standard-display-table ?,Lt(B  [?i?e])
+    (aset standard-display-table ?,Lw(B  [?i])
+    (aset standard-display-table ?,L~(B  [?u])
+    (aset standard-display-table ?,Lr(B  [?d?j])
+    (aset standard-display-table ?,L{(B  [?c?h?j])
+    (aset standard-display-table ?,Ls(B  [?g?j])
+    (aset standard-display-table ?,Lu(B  [?s])
+    (aset standard-display-table ?,L|(B  [?k])
+    (aset standard-display-table ?,Lv(B  [?i])
+    (aset standard-display-table ?,Lx(B  [?j])
+    (aset standard-display-table ?,Ly(B  [?l?j])
+    (aset standard-display-table ?,Lz(B  [?n?j])
+    (aset standard-display-table ?,L(B  [?d?z])
+    
+    (aset standard-display-table ?,L$(B  [?Y?e])
+    (aset standard-display-table ?,L'(B  [?Y?i])
+    (aset standard-display-table ?,L.(B  [?U])
+    (aset standard-display-table ?,L"(B  [?D?j])
+    (aset standard-display-table ?,L+(B  [?C?h?j])
+    (aset standard-display-table ?,L#(B  [?G?j])
+    (aset standard-display-table ?,L%(B  [?S])
+    (aset standard-display-table ?,L,(B  [?K])
+    (aset standard-display-table ?,L&(B  [?I])
+    (aset standard-display-table ?,L((B  [?J])
+    (aset standard-display-table ?,L)(B  [?L?j])
+    (aset standard-display-table ?,L*(B  [?N?j])
+    (aset standard-display-table ?,L/(B  [?D?j])
+    
+    (when (equal cyrillic-language "Bulgarian")
+      (aset standard-display-table ?,Li(B [?s?h?t])
+      (aset standard-display-table ?,LI(B [?S?h?t])
+      (aset standard-display-table ?,Ln(B [?i?u])
+      (aset standard-display-table ?,LN(B [?I?u])
+      (aset standard-display-table ?,Lo(B [?i?a])
+      (aset standard-display-table ?,LO(B [?I?a]))
+    
+    (when (equal cyrillic-language "Ukrainian") ; based on the official 
+					; transliteration table
+      (aset standard-display-table ?,LX(B [?y])
+      (aset standard-display-table ?,L8(B [?Y])
+      (aset standard-display-table ?,LY(B [?i])
+      (aset standard-display-table ?,L9(B [?Y])
+    (aset standard-display-table ?,Ln(B [?i?u])
+    (aset standard-display-table ?,Lo(B [?i?a]))))
 
-    (aset standard-display-table ?  [?i?e])
-    (aset standard-display-table ?  [?i])
-    (aset standard-display-table ?  [?u])
-    (aset standard-display-table ?  [?d?j])
-    (aset standard-display-table ?  [?c?h?j])
-    (aset standard-display-table ?  [?g?j])
-    (aset standard-display-table ?  [?s])
-    (aset standard-display-table ?  [?k])
-    (aset standard-display-table ?  [?i])
-    (aset standard-display-table ?  [?j])
-    (aset standard-display-table ?  [?l?j])
-    (aset standard-display-table ?  [?n?j])
-    (aset standard-display-table ?  [?d?z])
-
-    (aset standard-display-table ?  [?Y?e])
-    (aset standard-display-table ?  [?Y?i])
-    (aset standard-display-table ?  [?U])
-    (aset standard-display-table ?  [?D?j])
-    (aset standard-display-table ?\  [?C?h?j])
-    (aset standard-display-table ?  [?G?j])
-    (aset standard-display-table ?  [?S])
-    (aset standard-display-table ?  [?K])
-    (aset standard-display-table ?  [?I])
-    (aset standard-display-table ?  [?J])
-    (aset standard-display-table ?  [?L?j])
-    (aset standard-display-table ?  [?N?j])
-    (aset standard-display-table ?  [?D?j])
-
-    (when (eq cyrillic-language 'bulgarian)
-      (aset standard-display-table ? [?s?h?t])
-      (aset standard-display-table ? [?S?h?t])
-      (aset standard-display-table ? [?i?u])
-      (aset standard-display-table ? [?I?u])
-      (aset standard-display-table ? [?i?a])
-      (aset standard-display-table ? [?I?a]))
-
-    (when (eq cyrillic-language 'ukranian) ; based on the official
-					; transliteration table
-      (aset standard-display-table ? [?y])
-      (aset standard-display-table ? [?Y])
-      (aset standard-display-table ? [?i])
-      (aset standard-display-table ? [?Y])
-      (aset standard-display-table ? [?i?u])
-      (aset standard-display-table ? [?i?a]))))
 
 ;;
 (provide 'cyril-util)
 
 ;;; cyril-util.el ends here
+
+;; Local Variables:
+;; buffer-file-coding-system: iso-2022-7bit
+;; End: