Mercurial > hg > xemacs-beta
diff lisp/leim/quail.el @ 169:15872534500d r20-3b11
Import from CVS: tag r20-3b11
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:46:53 +0200 |
parents | 5a88923fcbfe |
children | 6075d714658b |
line wrap: on
line diff
--- a/lisp/leim/quail.el Mon Aug 13 09:45:48 2007 +0200 +++ b/lisp/leim/quail.el Mon Aug 13 09:46:53 2007 +0200 @@ -257,7 +257,9 @@ (if (local-variable-p 'minor-mode-map-alist nil) (let ((map (default-value 'minor-mode-map-alist))) (or (assq 'quail-mode map) - (set-default 'minor-mode-map-alist (cons 'quail-mode map))))) + ;; (set-default 'minor-mode-map-alist (cons 'quail-mode map))))) + (set-default 'minor-mode-map-alist + (cons (cons 'quail-mode quail-mode-map) map))))) (defvar quail-translation-keymap (let ((map (make-keymap)) @@ -504,15 +506,23 @@ ;; Let's turn on Quail mode. ;; At first, be sure that quail-mode is at the first element of ;; minor-mode-map-alist. - (or (eq (car minor-mode-map-alist) 'quail-mode) - (let ((l minor-mode-map-alist)) - (while (cdr l) - (if (eq (car (cdr l)) 'quail-mode) - (progn - (setcdr l (cdr (cdr l))) - (setq l nil)) - (setq l (cdr l)))) - (setq minor-mode-map-alist (cons 'quail-mode minor-mode-map-alist)))) + ;; The following code removed by slb because it corrupts the XEmacs + ;; minor-mode-map-alist +; (or (eq (car minor-mode-map-alist) 'quail-mode) +; (let ((l minor-mode-map-alist)) +; (while (cdr l) +; (if (eq (car (cdr l)) 'quail-mode) +; (progn +; (setcdr l (cdr (cdr l))) +; (setq l nil)) +; (setq l (cdr l)))) +; (setq minor-mode-map-alist (cons 'quail-mode minor-mode-map-alist)))) + ;; End bogus code removal. + (delete-if (lambda (item) (eq (car item) 'quail-mode)) + minor-mode-map-alist) + (setq minor-mode-map-alist + (cons (cons 'quail-mode quail-mode-map) minor-mode-map-alist)) + (if (null quail-current-package) ;; Quail package is not yet selected. Select one now. (let (name)