Function: quail-help-insert-keymap-description

quail-help-insert-keymap-description is a byte-compiled function defined in quail.el.gz.

Signature

(quail-help-insert-keymap-description KEYMAP &optional HEADER)

Source Code

;; Defined in /usr/src/emacs/lisp/international/quail.el.gz
(defun quail-help-insert-keymap-description (keymap &optional header)
  (defvar the-keymap)
  (let ((pos1 (point))
        (the-keymap keymap)
        pos2)
    (if header
	(insert header))
    (save-excursion
      (insert (substitute-command-keys "\\{the-keymap}")))
    ;; Skip headers "key bindings", etc.
    (forward-line 3)
    (setq pos2 (point))
    (with-syntax-table emacs-lisp-mode-syntax-table
      (while (re-search-forward "\\sw\\(\\sw\\|\\s_\\)+" nil t)
	(let ((sym (intern-soft (buffer-substring (match-beginning 0)
						  (point)))))
	  (if (and sym (fboundp sym)
		   (or (eq (get sym 'quail-help) 'hide)
		       (and (quail-deterministic)
			    (eq (get sym 'quail-help) 'non-deterministic))))
	      (delete-region (line-beginning-position)
			     (1+ (line-end-position)))))))
    (goto-char pos2)
    (while (not (eobp))
      (if (looking-at "[ \t]*$")
	  (delete-region (point) (1+ (line-end-position)))
	(forward-line 1)))
    (goto-char pos2)
    (if (eobp)
	(delete-region pos1 (point)))
    (goto-char (point-max))))