# HG changeset patch # User Kenichi Handa # Date 983792218 0 # Node ID 3acc5c0fdb1d46adb9e427c1d9e7ee6e562fe0d5 # Parent aa4662e29968ecee43faf23f0be7f6ea122339b7 (quail-title): Fix for the case that a title of an input method is specified by a list of the same form as used in mode-line-format. diff -r aa4662e29968 -r 3acc5c0fdb1d lisp/international/quail.el --- a/lisp/international/quail.el Mon Mar 05 11:30:18 2001 +0000 +++ b/lisp/international/quail.el Mon Mar 05 11:36:58 2001 +0000 @@ -127,7 +127,22 @@ (nth 0 quail-current-package)) (defsubst quail-title () "Return the title of the current Quail package." - (nth 1 quail-current-package)) + (let ((title (nth 1 quail-current-package))) + ;; TITLE may be a string or a list. If it is a list, each element + ;; is a string or the form (VAR STR1 STR2), and the interpretation + ;; of the list is the same as that of mode-line-format. + (if (stringp title) + title + (condition-case nil + (mapconcat + (lambda (x) + (cond ((stringp x) x) + ((and (listp x) (symbolp (car x)) (= (length x) 3)) + (if (symbol-value (car x)) + (nth 1 x) (nth 2 x))) + (t ""))) + title "") + (error ""))))) (defsubst quail-map () "Return the translation map of the current Quail package." (nth 2 quail-current-package))