]> git.eshelyaron.com Git - emacs.git/commitdiff
(terminal-composition-modification): New function.
authorKenichi Handa <handa@m17n.org>
Fri, 10 Nov 2006 06:34:30 +0000 (06:34 +0000)
committerKenichi Handa <handa@m17n.org>
Fri, 10 Nov 2006 06:34:30 +0000 (06:34 +0000)
(terminal-composition-function): Create composition with the above
modification function.

lisp/composite.el

index 30010f0f56d89d23b371833da49b038bf1e9e17d..b6626ecc8dde4bd46180972d1c562c25f0f1c950 100644 (file)
@@ -427,6 +427,11 @@ See also the command `toggle-auto-composition'.")
 
 (put 'save-buffer-state 'lisp-indent-function 1)
 
+;; This function is called when a composition created by
+;; terminal-composition-function is partially modified.
+(defun terminal-composition-modification (from to)
+  (terminal-composition-function from))
+
 (defun terminal-composition-function (pos &optional string)
   "General composition function used on terminal.
 Non-spacing characters are composed with the preceding spacing
@@ -441,13 +446,13 @@ character.  All non-spacing characters has this function in
                  (= (aref char-width-table (char-after pos)) 0))
        (setq pos (1+ pos)))
       (if (and (>= from (point-min))
-              (= (aref (symbol-name (get-char-code-property (char-after from)
-                                                            'general-category))
-                       0)
-                 ?L))
+              (= (aref (symbol-name (get-char-code-property
+                                     (char-after from)
+                                     'general-category)) 0) ?L))
          (compose-region from pos (buffer-substring from pos))
        (compose-region (1+ from) pos
-                       (concat " " (buffer-substring (1+ from) pos))))
+                       (concat " " (buffer-substring (1+ from) pos))
+                       'terminal-composition-modification))
       pos)))
 
 (defvar terminal-composition-function-table