Function: calc-kbd-skip-to-else-if

calc-kbd-skip-to-else-if is a byte-compiled function defined in calc-prog.el.gz.

Signature

(calc-kbd-skip-to-else-if ELSE-OKAY)

Source Code

;; Defined in /usr/src/emacs/lisp/calc/calc-prog.el.gz
(defun calc-kbd-skip-to-else-if (else-okay)
  (let ((count 0)
	ch)
    (while (>= count 0)
      (if (calc--at-end-of-kmacro-p)
	  (error "Unterminated Z[ in keyboard macro"))
      (setq ch (read-char))
      (if (= ch ?Z)
	  (progn
	    (setq ch (read-char))
	    (cond ((= ch ?\[)
		   (setq count (1+ count)))
		  ((= ch ?\])
		   (setq count (1- count)))
		  ((= ch ?\:)
		   (and (= count 0)
			else-okay
			(setq count -1)))
		  ((eq ch 7)
		   (keyboard-quit))))))
    (and defining-kbd-macro
	 (if (= ch ?\:)
	     (message "Else...")
	   (message "End-if...")))))