changeset 95087:a55ebc729fea

Merge from emacs--rel--22 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-1169
author Miles Bader <miles@gnu.org>
date Sun, 18 May 2008 22:43:24 +0000
parents 241ad02f83c7 (current diff) 8c0cc53e8234 (diff)
children 524350e4961c
files lisp/ChangeLog lisp/vc-hg.el
diffstat 2 files changed, 13 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sun May 18 22:43:12 2008 +0000
+++ b/lisp/ChangeLog	Sun May 18 22:43:24 2008 +0000
@@ -1,3 +1,8 @@
+2008-05-18  David Hull <david@snap.com>  (tiny change)
+
+	* vc-hg.el (vc-hg-annotate-re): Recognize the output of --follow.
+	(vc-hg-annotate-command): Allow white space before version number.
+
 2008-05-18  Jay Belanger  <jay.p.belanger@gmail.com>
 
 	* calc/calc-yank.el (calc-register-alist): New variable.
--- a/lisp/vc-hg.el	Sun May 18 22:43:12 2008 +0000
+++ b/lisp/vc-hg.el	Sun May 18 22:43:24 2008 +0000
@@ -288,14 +288,18 @@
 		 (when revision (concat "-r" revision)))
   (with-current-buffer buffer
     (goto-char (point-min))
-    (re-search-forward "^[0-9]")
-    (delete-region (point-min) (1- (point)))))
+    (re-search-forward "^[ \t]*[0-9]")
+    (delete-region (point-min) (match-beginning 0))))
 
 
 ;; The format for one line output by "hg annotate -d -n" looks like this:
 ;;215 Wed Jun 20 21:22:58 2007 -0700: CONTENTS
 ;; i.e: VERSION_NUMBER DATE: CONTENTS
-(defconst vc-hg-annotate-re "^[ \t]*\\([0-9]+\\) \\(.\\{30\\}\\): ")
+;; If the user has set the "--follow" option, the output looks like:
+;;215 Wed Jun 20 21:22:58 2007 -0700 foo.c: CONTENTS
+;; i.e. VERSION_NUMBER DATE FILENAME: CONTENTS
+(defconst vc-hg-annotate-re
+  "^[ \t]*\\([0-9]+\\) \\(.\\{30\\}\\)[^:\n]*\\(:[^ \n][^:\n]*\\)*: ")
 
 (defun vc-hg-annotate-time ()
   (when (looking-at vc-hg-annotate-re)
@@ -306,7 +310,7 @@
 (defun vc-hg-annotate-extract-revision-at-line ()
   (save-excursion
     (beginning-of-line)
-    (if (looking-at vc-hg-annotate-re) (match-string-no-properties 1))))
+    (when (looking-at vc-hg-annotate-re) (match-string-no-properties 1))))
 
 (defun vc-hg-previous-revision (file rev)
   (let ((newrev (1- (string-to-number rev))))