# HG changeset patch # User Miles Bader # Date 1211150604 0 # Node ID a55ebc729fea6682331fce51126aa844f4ecb4c8 # Parent 241ad02f83c7233e15dfbbecbc3f782b391f49b0# Parent 8c0cc53e82349a854135a690ba67d88b001bce2e Merge from emacs--rel--22 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-1169 diff -r 241ad02f83c7 -r a55ebc729fea lisp/ChangeLog --- 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 (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 * calc/calc-yank.el (calc-register-alist): New variable. diff -r 241ad02f83c7 -r a55ebc729fea lisp/vc-hg.el --- 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))))