changeset 103367:8fb6a5d3b48d

(compose-gstring-for-terminal): For zero-width characters of Unicode category `Cf', simply replace it with SPC.
author Kenichi Handa <handa@m17n.org>
date Wed, 10 Jun 2009 00:34:19 +0000
parents 66652dbd881c
children b0b5c45d12f5
files lisp/composite.el
diffstat 1 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/composite.el	Tue Jun 09 18:47:46 2009 +0000
+++ b/lisp/composite.el	Wed Jun 10 00:34:19 2009 +0000
@@ -681,7 +681,14 @@
 	      (lglyph-set-from-to glyph i i)
 	      (setq i (1+ i))))
 	(if (= (lglyph-width glyph) 0)
-	    (progn
+	    (if (eq (get-char-code-property (lglyph-char glyph)
+					    'general-category)
+		    'Cf)
+		(progn
+		  ;; Compose by replacing with a space.
+		  (lglyph-set-char glyph 32)
+		  (lglyph-set-width glyph 1)
+		  (setq i (1+ i)))
 	      ;; Compose by prepending a space.
 	      (setq gstring (lgstring-insert-glyph gstring i
 						   (lglyph-copy glyph))