# HG changeset patch # User Karl Fogel # Date 795278829 0 # Node ID 83b6c53268c3f671902be56127ccf97d4215b648 # Parent 0951bb12c8ee20fe3b5669a1af4eebc2cfc38e22 (bookmark-bmenu-2-window): go to correct position as well as correct buffer. (bookmark-bmenu-other-window): same. (bookmark-bmenu-switch-other-window): same. diff -r 0951bb12c8ee -r 83b6c53268c3 lisp/bookmark.el --- a/lisp/bookmark.el Wed Mar 15 01:58:01 1995 +0000 +++ b/lisp/bookmark.el Wed Mar 15 14:47:09 1995 +0000 @@ -5,7 +5,7 @@ ;; Author: Karl Fogel ;; Maintainer: Karl Fogel ;; Created: July, 1993 -;; Author's Update Number: 2.6.8 +;; Author's Update Number: 2.6.9 ;; Keywords: bookmarks, placeholders, annotations ;;; Summary: @@ -1706,8 +1706,11 @@ (pop-up-windows t)) (delete-other-windows) (switch-to-buffer (other-buffer)) - (let ((buff (car (bookmark-jump-noselect bmrk)))) - (pop-to-buffer buff)) + (let* ((pair (bookmark-jump-noselect bmrk)) + (buff (car pair)) + (pos (cdr pair))) + (pop-to-buffer buff) + (goto-char pos)) (bury-buffer menu)))) @@ -1723,8 +1726,31 @@ (interactive) (let ((bookmark (bookmark-bmenu-bookmark))) (if (bookmark-bmenu-check-position) - (let ((buff (car (bookmark-jump-noselect bookmark)))) + (let* ((pair (bookmark-jump-noselect bookmark)) + (buff (car pair)) + (pos (cdr pair))) (switch-to-buffer-other-window buff) + (goto-char pos) + (set-window-point (get-buffer-window buff) pos) + (bookmark-show-annotation bookmark))))) + + +(defun bookmark-bmenu-switch-other-window () + "Make the other window select this line's bookmark. +The current window remains selected." + (interactive) + (let ((bookmark (bookmark-bmenu-bookmark))) + (if (bookmark-bmenu-check-position) + (let* ((pair (bookmark-jump-noselect bookmark)) + (buff (car pair)) + (pos (cdr pair))) + (display-buffer buff) + (let ((o-buffer (current-buffer))) + ;; save-excursion won't do + (set-buffer buff) + (goto-char pos) + (set-window-point (get-buffer-window buff) pos) + (set-buffer o-buffer)) (bookmark-show-annotation bookmark))))) @@ -1750,17 +1776,6 @@ (bookmark-edit-annotation bookmark)))) -(defun bookmark-bmenu-switch-other-window () - "Make the other window select this line's bookmark. -The current window remains selected." - (interactive) - (let ((bookmark (bookmark-bmenu-bookmark))) - (if (bookmark-bmenu-check-position) - (let ((buff (car (bookmark-jump-noselect bookmark)))) - (display-buffer buff) - (bookmark-show-annotation bookmark))))) - - (defun bookmark-bmenu-quit () "Quit the bookmark menu." (interactive)