]> git.eshelyaron.com Git - emacs.git/commitdiff
(vc-annotate): Add new argument.
authorDan Nicolaescu <dann@ics.uci.edu>
Sat, 16 Feb 2008 15:54:37 +0000 (15:54 +0000)
committerDan Nicolaescu <dann@ics.uci.edu>
Sat, 16 Feb 2008 15:54:37 +0000 (15:54 +0000)
(vc-annotate-warp-revision): Pass the current line to vc-annotate.

lisp/ChangeLog
lisp/vc.el

index 073fdee2815f16b6313bda0e662ed42f3e7cba57..2509add2580ed90449e5deb89b3c8d8d19f94d04 100644 (file)
@@ -1,5 +1,8 @@
 2008-02-16  Dan Nicolaescu  <dann@ics.uci.edu>
 
+       * vc.el (vc-annotate): Add new argument.
+       (vc-annotate-warp-revision): Pass the current line to vc-annotate.
+
        * progmodes/hideshow.el: Remove the minor-mode bookkeeping. Move
        make-variable-buffer-local code after the corresponding defvar.
        (hs-minor-mode-map): Define and initialize in one step.
index cb569adcfb8b0dc76b9499059d5b26e8103dec2d..0bfafd976f5afae4158ab0b242bd91802665ff99 100644 (file)
@@ -3684,7 +3684,7 @@ use; you may override this using the second optional arg MODE."
                  vc-annotate-display-mode))))
 
 ;;;###autoload
-(defun vc-annotate (file rev &optional display-mode buf)
+(defun vc-annotate (file rev &optional display-mode buf move-point-to)
   "Display the edit history of the current file using colors.
 
 This command creates a buffer that shows, for each line of the current
@@ -3703,6 +3703,8 @@ should cover.  For example, a time span of 20 days means that changes
 over the past 20 days are shown in red to blue, according to their
 age, and everything that is older than that is shown in blue.
 
+If MOVE-POINT-TO is given, move the point to that line.
+
 Customization variables:
 
 `vc-annotate-menu-elements' customizes the menu elements of the
@@ -3730,7 +3732,7 @@ mode-specific menu.  `vc-annotate-color-map' and
          ;; If BUF is specified, we presume the caller maintains current line,
          ;; so we don't need to do it here.  This implementation may give
          ;; strange results occasionally in the case of REV != WORKFILE-REV.
-         (current-line (unless buf (line-number-at-pos))))
+         (current-line (or move-point-to (unless buf (line-number-at-pos)))))
     (message "Annotating...")
     ;; If BUF is specified it tells in which buffer we should put the
     ;; annotations.  This is used when switching annotations to another
@@ -3898,10 +3900,12 @@ revision."
       (when newrev
        (vc-annotate vc-annotate-parent-file newrev
                      vc-annotate-parent-display-mode
-                     buf)
-       (goto-line (min oldline (progn (goto-char (point-max))
-                                      (forward-line -1)
-                                      (line-number-at-pos))) buf)))))
+                     buf
+                    ;; Pass the current line so that vc-annotate will
+                    ;; place the point in the line.
+                    (min oldline (progn (goto-char (point-max))
+                                          (forward-line -1)
+                                          (line-number-at-pos))))))))
 
 (defun vc-annotate-compcar (threshold a-list)
   "Test successive cons cells of A-LIST against THRESHOLD.