# HG changeset patch # User Kenichi Handa # Date 917151914 0 # Node ID 67f80db6c62e5a18b688fa7a6545c2e54c42eb70 # Parent 7d0dbc0a2f03a8f3dd4d1206ba7ee93f33b41fe6 (tibetan-vertical-stacking): If the arg FIRST is a composite character, decompose it at first. diff -r 7d0dbc0a2f03 -r 67f80db6c62e lisp/language/tibet-util.el --- a/lisp/language/tibet-util.el Sat Jan 23 22:09:19 1999 +0000 +++ b/lisp/language/tibet-util.el Sun Jan 24 04:25:14 1999 +0000 @@ -194,9 +194,15 @@ (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.