From 41059d6295dbaa207b2203fb6b78003de4888714 Mon Sep 17 00:00:00 2001 From: "Diogo F. S. Ramos" Date: Tue, 11 Apr 2017 12:42:24 -0300 Subject: [PATCH] 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(-) 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) -- 2.11.4.GIT