From bffaaae6d2e752d2e6844e7f590945f4d54ea31a Mon Sep 17 00:00:00 2001 From: "Diogo F. S. Ramos" Date: Tue, 11 Apr 2017 12:42:24 -0300 Subject: Preserve the position of (point) after evaling After evaling the last expression, if not inserting its value into buffer, leave (point) at its original position. --- elisp/geiser-mode.el | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'elisp/geiser-mode.el') diff --git a/elisp/geiser-mode.el b/elisp/geiser-mode.el index b5c2029..0d00662 100644 --- a/elisp/geiser-mode.el +++ b/elisp/geiser-mode.el @@ -149,11 +149,12 @@ With a prefix, revert the effect of `geiser-mode-eval-last-sexp-to-buffer' " (setq bosexp (point)) (forward-sexp) (point))) - (ret (geiser-eval-region bosexp ;beginning of sexp - eosexp ;end of sexp - nil - t - print-to-buffer-p)) + (ret (save-excursion + (geiser-eval-region bosexp ;beginning of sexp + eosexp ;end of sexp + nil + t + print-to-buffer-p))) (err (geiser-eval--retort-error ret)) (will-eval-to-buffer (if print-to-buffer-p (not geiser-mode-eval-last-sexp-to-buffer) -- cgit v1.2.3