Function: quail-map-from-table-2
quail-map-from-table-2 is a byte-compiled function defined in
quail.el.gz.
Signature
(quail-map-from-table-2 STATE-ALIST ELEMENT)
Source Code
;; Defined in /usr/src/emacs/lisp/international/quail.el.gz
;; ELEMENT is one element of STATE-ALIST. ELEMENT is a nested alist;
;; the form is:
;; (STATE (CHAR NESTED-ALIST) ...)
;; NESTED-ALIST is a nested alist; the form is:
;; (TRANS (CHAR NESTED-ALIST) ...)
;; or
;; (TRANS (CHAR NESTED-ALIST) ... . (STATE-x))
;; Here, the task is to replace all occurrences of (STATE-x) with:
;; (cdr (assq STATE-x STATE-ALIST))
(defun quail-map-from-table-2 (state-alist element)
(let ((prev element)
(tail (cdr element))
elt)
(while (cdr tail)
(setq elt (car tail) prev tail tail (cdr tail))
(quail-map-from-table-2 state-alist (cdr elt)))
(setq elt (car tail))
(if (consp elt)
(quail-map-from-table-2 state-alist (cdr elt))
(setcdr prev (cdr (assq elt state-alist))))))