]> git.eshelyaron.com Git - emacs.git/commitdiff
Move compose-gstring-for-variation-glyph
authorRobert Pluim <rpluim@gmail.com>
Tue, 21 Sep 2021 15:46:32 +0000 (17:46 +0200)
committerRobert Pluim <rpluim@gmail.com>
Fri, 24 Sep 2021 11:10:48 +0000 (13:10 +0200)
It logically belongs in composite.el, not japanese.el

* lisp/language/japanese.el (compose-gstring-for-variation-glyph):
Remove from here.
* lisp/composite.el (compose-gstring-for-variation-glyph): And add here.

lisp/composite.el
lisp/language/japanese.el

index a16c0cc2370849e10a6b6646aacad5f456eaec73..859253ec7e2ed08a154d94c8abda3c412b939797 100644 (file)
@@ -815,6 +815,28 @@ prepending a space before it."
              (setq i (1+ i)))))))
     gstring))
 
+(defun compose-gstring-for-variation-glyph (gstring _direction)
+  "Compose glyph-string GSTRING for graphic display.
+GSTRING must have two glyphs; the first is a glyph for a han character,
+and the second is a glyph for a variation selector."
+  (let* ((font (lgstring-font gstring))
+        (han (lgstring-char gstring 0))
+        (vs (lgstring-char gstring 1))
+        (glyphs (font-variation-glyphs font han))
+        (g0 (lgstring-glyph gstring 0))
+        (g1 (lgstring-glyph gstring 1)))
+    (catch 'tag
+      (dolist (elt glyphs)
+       (if (= (car elt) vs)
+           (progn
+             (lglyph-set-code g0 (cdr elt))
+             (lglyph-set-from-to g0 (lglyph-from g0) (lglyph-to g1))
+             (lgstring-set-glyph gstring 1 nil)
+             (throw 'tag gstring)))))))
+
+(let ((elt '([".." 1 compose-gstring-for-variation-glyph])))
+  (set-char-table-range composition-function-table '(#xFE00 . #xFE0F) elt)
+  (set-char-table-range composition-function-table '(#xE0100 . #xE01EF) elt))
 
 (defun auto-compose-chars (func from to font-object string direction)
   "Compose the characters at FROM by FUNC.
index bd8ef6ec857d01c95b43a303eb44d3576e670ef0..d9bd42093a04e6b4468c67c9c34580ecab5286f3 100644 (file)
@@ -264,29 +264,6 @@ eucJP-ms is defined in <http://www.opengroup.or.jp/jvc/cde/appendix.html>."
   (define-translation-table 'unicode-to-jisx0213
     (char-table-extra-slot table 0)))
 
-(defun compose-gstring-for-variation-glyph (gstring _direction)
-  "Compose glyph-string GSTRING for graphic display.
-GSTRING must have two glyphs; the first is a glyph for a han character,
-and the second is a glyph for a variation selector."
-  (let* ((font (lgstring-font gstring))
-        (han (lgstring-char gstring 0))
-        (vs (lgstring-char gstring 1))
-        (glyphs (font-variation-glyphs font han))
-        (g0 (lgstring-glyph gstring 0))
-        (g1 (lgstring-glyph gstring 1)))
-    (catch 'tag
-      (dolist (elt glyphs)
-       (if (= (car elt) vs)
-           (progn
-             (lglyph-set-code g0 (cdr elt))
-             (lglyph-set-from-to g0 (lglyph-from g0) (lglyph-to g1))
-             (lgstring-set-glyph gstring 1 nil)
-             (throw 'tag gstring)))))))
-
-(let ((elt '([".." 1 compose-gstring-for-variation-glyph])))
-  (set-char-table-range composition-function-table '(#xFE00 . #xFE0F) elt)
-  (set-char-table-range composition-function-table '(#xE0100 . #xE01EF) elt))
-
 (provide 'japanese)
 
 ;;; japanese.el ends here