;;; vc-hg.el --- VC backend for the mercurial version control system
-;; Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+;; Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
;; Author: Ivan Kanis
;; Keywords: tools
standard-output
(setq status
(condition-case nil
- ;; Ignore all errors.
- (process-file
- "hg" nil t nil
- "log" "-l1" (file-relative-name file))
+ (let ((process-environment
+ ;; Avoid localization of messages so we can parse the output.
+ (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=")
+ process-environment)))
+ ;; Ignore all errors.
+ (process-file
+ "hg" nil t nil
+ "parent" "--template" "{rev}" (file-relative-name file)))
;; Some problem happened. E.g. We can't find an `hg'
;; executable.
(error nil)))))))
- (when (eq 0 status)
- (if (string-match "changeset: *\\([0-9]*\\)" out)
- (match-string 1 out)
- "0"))))
+ (when (eq 0 status) out)))
;;; History functions
(repeat :tag "Argument List" :value ("") string))
:group 'vc-hg)
-(defun vc-hg-print-log (files buffer &optional shortlog limit start-revision)
+(defun vc-hg-print-log (files buffer &optional shortlog start-revision limit)
"Get change log associated with FILES."
;; `vc-do-command' creates the buffer, but we need it before running
;; the command.