--- bookmark.el 2015-03-20 12:08:33.477496667 -0400 +++ bookmark-new.el 2015-03-20 12:09:49.401494206 -0400 @@ -889,13 +889,24 @@ (bookmark-kill-line t) (forward-line 1))) ;; Take no chances with text properties. - (let ((annotation (buffer-substring-no-properties (point-min) (point-max))) - (bookmark-name bookmark-annotation-name)) + (let + ((annotation (buffer-substring-no-properties (point-min) (point-max))) + (bookmark-name bookmark-annotation-name) + (return-line + (with-current-buffer "*Bookmark List*" + (line-number-at-pos))) + (return-column + (with-current-buffer "*Bookmark List*" + (current-column)))) (bookmark-set-annotation bookmark-name annotation) (setq bookmark-alist-modification-count (1+ bookmark-alist-modification-count)) - (bookmark-bmenu-surreptitiously-rebuild-list)) - (kill-buffer (current-buffer))) + (kill-buffer (current-buffer)) + (pop-to-buffer (get-buffer "*Bookmark List*")) + (bookmark-bmenu-list) + (goto-char (point-min)) + (forward-line (1- return-line)) + (forward-char return-column))) (defun bookmark-edit-annotation (bookmark-name-or-record)