Mercurial > emacs
changeset 89659:91f056b94e70
(auto-compose-chars): Fix previous change.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Tue, 25 Nov 2003 08:07:41 +0000 |
parents | 6f848cbaeb52 |
children | e43b36fafd30 |
files | lisp/composite.el |
diffstat | 1 files changed, 22 insertions(+), 21 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/composite.el Mon Nov 24 08:29:16 2003 +0000 +++ b/lisp/composite.el Tue Nov 25 08:07:41 2003 +0000 @@ -405,16 +405,27 @@ This function is the default value of `auto-composition-function' (which see)." (save-buffer-state nil - (save-match-data - (let ((start pos) - (limit (if string (length string) (point-max))) - ch func newpos) - (setq limit (or (text-property-any pos limit 'auto-composed t string) - limit)) - (catch 'tag - (if string + (save-excursion + (save-match-data + (let ((start pos) + (limit (if string (length string) (point-max))) + ch func newpos) + (setq limit (or (text-property-any pos limit 'auto-composed t string) + limit)) + (catch 'tag + (if string + (while (< pos limit) + (setq ch (aref string pos)) + (if (= ch ?\n) + (throw 'tag nil)) + (setq func (aref composition-function-table ch)) + (if (and (functionp func) + (setq newpos (funcall func pos string)) + (> newpos pos)) + (setq pos newpos) + (setq pos (1+ pos)))) (while (< pos limit) - (setq ch (aref string pos)) + (setq ch (char-after pos)) (if (= ch ?\n) (throw 'tag nil)) (setq func (aref composition-function-table ch)) @@ -422,18 +433,8 @@ (setq newpos (funcall func pos string)) (> newpos pos)) (setq pos newpos) - (setq pos (1+ pos)))) - (while (< pos limit) - (setq ch (char-after pos)) - (if (= ch ?\n) - (throw 'tag nil)) - (setq func (aref composition-function-table ch)) - (if (and (functionp func) - (setq newpos (funcall func pos string)) - (> newpos pos)) - (setq pos newpos) - (setq pos (1+ pos)))))) - (put-text-property start pos 'auto-composed t string))))) + (setq pos (1+ pos)))))) + (put-text-property start pos 'auto-composed t string)))))) (setq auto-composition-function 'auto-compose-chars)