Function: tpu-help
tpu-help is an interactive and byte-compiled function defined in
tpu-edt.el.gz.
Signature
(tpu-help)
Documentation
Display TPU-edt help.
Key Bindings
Aliases
Source Code
;; Defined in /usr/src/emacs/lisp/obsolete/tpu-edt.el.gz
(defvar tpu-help-p "p") ; tpu-help "p" symbol
(defun tpu-help nil
"Display TPU-edt help."
(interactive)
;; Save current window configuration
(save-window-excursion
;; Create and fill help buffer if necessary
(if (not (get-buffer "*TPU-edt Help*"))
(progn (generate-new-buffer "*TPU-edt Help*")
(switch-to-buffer "*TPU-edt Help*")
(insert tpu-help-keypad-map)
(insert tpu-help-text)
(setq buffer-read-only t)))
;; Display the help buffer
(switch-to-buffer "*TPU-edt Help*")
(delete-other-windows)
(tpu-move-to-beginning)
(forward-line 1)
(tpu-line-to-top-of-window)
;; Prompt for keys to describe, based on screen state (split/not split)
(let ((key nil) (fkey nil) (split nil))
(while (not (equal tpu-help-return fkey))
(if split
(setq key
(read-key-sequence
"Press the key you want help on (RET=exit, ENTER=redisplay, N=next, P=prev): "))
(setq key
(read-key-sequence
"Press the key you want help on (RET to exit, N next screen, P prev screen): ")))
;; Process the read key
;;
;; ENTER - Display just the help window
;; N or n - Next help or describe-key screen
;; P or p - Previous help or describe-key screen
;; RETURN - Exit from TPU-help
;; default - describe the key
;;
(setq fkey (format "%s" key))
(cond ((equal tpu-help-enter fkey)
(setq split nil)
(delete-other-windows))
((or (equal tpu-help-N fkey) (equal tpu-help-n fkey))
(cond (split
(condition-case nil
(scroll-other-window 8)
(error nil)))
(t
(forward-page)
(forward-line 1)
(tpu-line-to-top-of-window))))
((or (equal tpu-help-P fkey) (equal tpu-help-p fkey))
(cond (split
(condition-case nil
(scroll-other-window -8)
(error nil)))
(t
(forward-line -1)
(backward-page)
(forward-line 1)
(tpu-line-to-top-of-window))))
((not (equal tpu-help-return fkey))
(setq split t)
(describe-key key)
;; If the key is undefined, leave the
;; message in the mini-buffer for 3 seconds
(if (not (key-binding key)) (sit-for 3))))))))