emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r105550: international/ucs-normalize.


From: Kenichi Handa
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r105550: international/ucs-normalize.el: If decomposition property of CHAR is the default one (i.e. a list of CHAR itself), treat it as nil.
Date: Wed, 24 Aug 2011 16:35:29 +0900
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 105550 [merge]
committer: Kenichi Handa <address@hidden>
branch nick: trunk
timestamp: Wed 2011-08-24 16:35:29 +0900
message:
  international/ucs-normalize.el: If decomposition property of CHAR is the 
default one (i.e. a list of CHAR itself), treat it as nil.
modified:
  lisp/ChangeLog
  lisp/international/ucs-normalize.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2011-08-24 01:55:10 +0000
+++ b/lisp/ChangeLog    2011-08-24 07:33:55 +0000
@@ -1,3 +1,10 @@
+2011-08-24  Kenichi Handa  <address@hidden>
+
+       * international/ucs-normalize.el: If decomposition property of
+       CHAR is the default one (i.e. a list of CHAR itself), treat it as
+       nil.
+       (nfd, nfkd): Likewise.
+
 2011-08-24  Stefan Monnier  <address@hidden>
 
        * mpc.el (mpc--proc-filter): Don't signal mpc-proc-error since signals

=== modified file 'lisp/international/ucs-normalize.el'
--- a/lisp/international/ucs-normalize.el       2011-02-28 01:07:29 +0000
+++ b/lisp/international/ucs-normalize.el       2011-08-24 07:33:55 +0000
@@ -139,14 +139,17 @@
   (defun nfd (char)
     (let ((decomposition
            (get-char-code-property char 'decomposition)))
-      (if (and decomposition (numberp (car decomposition)))
+      (if (and decomposition (numberp (car decomposition))
+              (or (> (length decomposition) 1)
+                  (/= (car decomposition) char)))
           decomposition)))
 
   (defun nfkd (char)
     (let ((decomposition
            (get-char-code-property char 'decomposition)))
       (if (symbolp (car decomposition)) (cdr decomposition)
-        decomposition)))
+        (if (or (> (length decomposition) 1)
+               (/= (car decomposition) char)) decomposition))))
 
   (defun hfs-nfd (char)
     (when (or (and (>= char 0) (< char #x2000))
@@ -180,6 +183,9 @@
          (setq ccc (ucs-normalize-ccc char))
          (setq decomposition (get-char-code-property
                               char 'decomposition))
+        (if (and (= (length decomposition) 1)
+                 (= (car decomposition) char))
+            (setq decomposition nil))
          (if (and ccc (/= 0 ccc)) (add-to-list 'combining-chars char))
          (if (and (numberp (car decomposition))
                   (/= (ucs-normalize-ccc (car decomposition))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]