Function: calc-edit-finish
calc-edit-finish is an interactive and byte-compiled function defined
in calc-yank.el.gz.
Signature
(calc-edit-finish &optional KEEP)
Documentation
Finish calc-edit mode. Parse buffer contents and push them on the stack.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calc-yank.el.gz
(defun calc-edit-finish (&optional keep)
"Finish `calc-edit' mode. Parse buffer contents and push them on the stack."
(interactive "P")
(message "Working...")
(or (derived-mode-p 'calc-edit-mode)
(error "This command is valid only in buffers created by calc-edit"))
(let ((buf (current-buffer))
(original calc-original-buffer)
(return calc-return-buffer)
(one-window calc-one-window)
(calc-edit-disp-trail calc-restore-trail))
(save-excursion
(when (or (null (buffer-name original))
(progn
(set-buffer original)
(not (eq major-mode 'calc-mode))))
(error "Original calculator buffer has been corrupted")))
(goto-char calc-edit-top)
(if (buffer-modified-p)
(if (functionp calc-edit-handler)
(funcall calc-edit-handler)
(message "Deprecated handler expression in calc-edit-handler: %S"
calc-edit-handler)
(eval calc-edit-handler t)))
(if (and one-window (not (one-window-p t)))
(delete-window))
(if (get-buffer-window return)
(select-window (get-buffer-window return))
(switch-to-buffer return))
(if keep
(bury-buffer buf)
(kill-buffer buf))
(if calc-edit-disp-trail
(calc-wrapper
(calc-trail-display 1 t)))
(message "")))