emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master b1d6ddd 3/3: Push mark before goto-char in jump-to-


From: Artur Malabarba
Subject: [Emacs-diffs] master b1d6ddd 3/3: Push mark before goto-char in jump-to-register and check-parens
Date: Wed, 18 Feb 2015 16:37:20 +0000

branch: master
commit b1d6ddd44614c84746f5ee494e1f29cd9be8a2d8
Author: Kelly Dean <address@hidden>
Commit: Artur Malabarba <address@hidden>

    Push mark before goto-char in jump-to-register and check-parens
    
    * register.el (jump-to-register):
    * emacs-lisp/lisp.el (check-parens):
    Push mark before goto-char so user doesn't lose his previous place.
---
 lisp/ChangeLog          |    6 ++++++
 lisp/emacs-lisp/lisp.el |    3 ++-
 lisp/register.el        |    3 +++
 3 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index a15295f..b71b55d 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,11 @@
 2015-02-18  Kelly Dean  <address@hidden>
 
+       * register.el (jump-to-register):
+       * emacs-lisp/lisp.el (check-parens):
+       Push mark before goto-char so user doesn't lose his previous place.
+
+2015-02-18  Kelly Dean  <address@hidden>
+
        * rect.el (rectangle-mark-mode):
        Suppress superfluous "Mark set" message from push-mark.
 
diff --git a/lisp/emacs-lisp/lisp.el b/lisp/emacs-lisp/lisp.el
index fb631a7..67d1487 100644
--- a/lisp/emacs-lisp/lisp.el
+++ b/lisp/emacs-lisp/lisp.el
@@ -714,7 +714,8 @@ character."
   (condition-case data
       ;; Buffer can't have more than (point-max) sexps.
       (scan-sexps (point-min) (point-max))
-    (scan-error (goto-char (nth 2 data))
+    (scan-error (push-mark)
+               (goto-char (nth 2 data))
                ;; Could print (nth 1 data), which is either
                ;; "Containing expression ends prematurely" or
                ;; "Unbalanced parentheses", but those may not be so
diff --git a/lisp/register.el b/lisp/register.el
index 053657b..7afbc06 100644
--- a/lisp/register.el
+++ b/lisp/register.el
@@ -254,6 +254,9 @@ Interactively, reads the register using 
`register-read-with-preview'."
       (or (marker-buffer val)
          (user-error "That register's buffer no longer exists"))
       (switch-to-buffer (marker-buffer val))
+      (unless (or (= (point) (marker-position val))
+                  (eq last-command 'jump-to-register))
+        (push-mark))
       (goto-char val))
      ((and (consp val) (eq (car val) 'file))
       (find-file (cdr val)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]