diff options
author | Kenichi Handa <handa@m17n.org> | 1999-01-24 04:25:14 +0000 |
---|---|---|
committer | Kenichi Handa <handa@m17n.org> | 1999-01-24 04:25:14 +0000 |
commit | 1d5021c352f9a5e7856e58f7edc8a93c2a2ed521 (patch) | |
tree | 628a6e385ce390c1dc4bbe5a55217d54227bb4f8 /lisp/language/tibet-util.el | |
parent | 2e92a8cb870d3d94b3e98332e296ca530f3ce99a (diff) | |
download | emacs-1d5021c352f9a5e7856e58f7edc8a93c2a2ed521.tar.gz emacs-1d5021c352f9a5e7856e58f7edc8a93c2a2ed521.tar.bz2 emacs-1d5021c352f9a5e7856e58f7edc8a93c2a2ed521.zip |
(tibetan-vertical-stacking): If the arg
FIRST is a composite character, decompose it at first.
Diffstat (limited to 'lisp/language/tibet-util.el')
-rw-r--r-- | lisp/language/tibet-util.el | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lisp/language/tibet-util.el b/lisp/language/tibet-util.el index e26f3779382..df2a0261212 100644 --- a/lisp/language/tibet-util.el +++ b/lisp/language/tibet-util.el @@ -194,9 +194,15 @@ Returns non-nil, if CH contains vowel/vowel modifiers." (defun tibetan-vertical-stacking (first second upward) "Return a vertically stacked composite char consisting of FIRST and SECOND. If UPWARD is non-nil, then SECOND is put above FIRST." - (if upward - (compose-chars first '(tc . bc) second) - (compose-chars first '(bc . tc) second))) + (let (l rule) + (if (cmpcharp first) + (setq l (decompose-composite-char first 'list t)) + (setq l (list first))) + (if upward + (setq rule (list '(tc . bc))) + (setq rule (list '(bc . tc)))) + (setq l (append l rule (list second))) + (apply 'compose-chars l))) ;;; This function makes a composite char from a string. ;;; Note that this function returns a string, not a char. |