;;; Time-stamp: <99/07/07 12:58:02 john> (defun eval-defun-display-result () "Evaluate the defun that point is in or before. Pop up a temporary buffer to show the result." (interactive) (save-excursion (if (if t (let ((tle-start-regexp "\\(^[(0-9'\"]\\)\\|\\(^'?[-a-z0-9]+$\\)")) (if (save-excursion (looking-at tle-start-regexp)) (progn (message "already at start") t) (progn (message "not yet at start") (re-search-backward tle-start-regexp (point-min) t)))) (progn (end-of-defun) (beginning-of-defun))) (let ((input-expr (read (point-marker)))) (with-output-to-temp-buffer "*Lisp evaluation result*" (princ "The result of evaluating:\n\n") (prin1 input-expr) (princ "\n\nis:\n\n") (prin1 (eval input-expr)) )) "Could not find start of expression"))) (define-key emacs-lisp-mode-map "\e\C-x" 'eval-defun-display-result) ;;; end of show-eval.el