Function: calc-embedded-find-bounds
calc-embedded-find-bounds is a byte-compiled function defined in
calc-embed.el.gz.
Signature
(calc-embedded-find-bounds &optional PLAIN)
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calc-embed.el.gz
(defun calc-embedded-find-bounds (&optional plain)
;; (while (and (bolp) (eq (following-char) ?\n))
;; (forward-char 1))
(and (eolp) (bolp) (not (eq (char-after (- (point) 2)) ?\n))
(forward-char -1))
(let ((home (point)))
(or (and (looking-at calc-embedded-open-formula)
(not (looking-at calc-embedded-close-formula)))
(re-search-backward calc-embedded-open-formula nil t)
(error "Can't find start of formula"))
(and (eq (preceding-char) ?\$) ; backward search for \$\$? won't back
(eq (following-char) ?\$) ; up over a second $, so do it by hand.
(forward-char -1))
(setq calc-embed-outer-top (point))
(goto-char (match-end 0))
(if (looking-at "[ \t]*$")
(end-of-line))
(if (eq (following-char) ?\n)
(forward-char 1))
(or (bolp)
(while (eq (following-char) ?\ )
(forward-char 1)))
(or (eq plain 'plain)
(if (looking-at (regexp-quote calc-embedded-open-plain))
(progn
(goto-char (match-end 0))
(search-forward calc-embedded-close-plain))))
(setq calc-embed-top (point))
(or (re-search-forward calc-embedded-close-formula nil t)
(error "Can't find end of formula"))
(if (< (point) home)
(error "Not inside a formula"))
(and (eq (following-char) ?\n) (not (bolp))
(forward-char 1))
(setq calc-embed-outer-bot (point))
(goto-char (match-beginning 0))
(if (eq (preceding-char) ?\n)
(backward-char 1))
(or (eolp)
(while (eq (preceding-char) ?\ )
(backward-char 1)))
(setq calc-embed-bot (point))))