]> code.delx.au - gnu-emacs/blobdiff - leim/quail/latin-ltx.el
* mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH): Update for
[gnu-emacs] / leim / quail / latin-ltx.el
index e686d7bc04bd3dbca798b8a3d594fb9b4fa8c8d0..2179e6264a25441ebbd3037b4592cf6929d5aacb 100644 (file)
@@ -248,14 +248,18 @@ system, including many technical ones.  Examples:
         (string (if (match-end 2) ?^ ?_) basechar))))
   "\\(.*\\)SU\\(?:B\\|\\(PER\\)\\)SCRIPT \\(.*\\)")
 
- ("^\\gamma" ?ˠ)
-
  ((lambda (name char)
-    (let* ((base (format "LATIN %s LETTER %s"
-                         (match-string 1 name) (match-string 2 name)))
-           (basechar (cdr (assoc base (ucs-names)))))
-      (when (latin-ltx--ascii-p basechar)
-        (string ?^ basechar))))
+    (let* ((basename (match-string 2 name))
+           (lbase (format "LATIN %s LETTER %s"
+                          (match-string 1 name) basename))
+           (gbase (format "GREEK %s LETTER %s"
+                          (match-string 1 name) basename))
+           tmp)
+      (cond
+       ((assoc gbase (ucs-names)) (concat "^\\" (downcase basename)))
+       ((latin-ltx--ascii-p (setq tmp (cdr (assoc lbase (ucs-names)))))
+        (string ?^ tmp))
+       (t (message "Unknown modifier letter %s" basename)))))
   "MODIFIER LETTER \\(SMALL\\|CAPITAL\\) \\(.*\\)")
  
  ;; ((lambda (name char) (format "^%s" (downcase (match-string 1 name))))