summaryrefslogtreecommitdiff
path: root/lisp/vc-hg.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/vc-hg.el')
-rw-r--r--lisp/vc-hg.el13
1 files changed, 9 insertions, 4 deletions
diff --git a/lisp/vc-hg.el b/lisp/vc-hg.el
index ab4bdab8c50..1e01d50a670 100644
--- a/lisp/vc-hg.el
+++ b/lisp/vc-hg.el
@@ -68,7 +68,7 @@
;; - merge-news (file) NEEDED
;; - steal-lock (file &optional revision) NOT NEEDED
;; HISTORY FUNCTIONS
-;; * print-log (files buffer &optional shortlog) OK
+;; * print-log (files buffer &optional shortlog start-revision limit) OK
;; - log-view-mode () OK
;; - show-log-entry (revision) NOT NEEDED, DEFAULT IS GOOD
;; - comment-history (file) NOT NEEDED
@@ -167,9 +167,13 @@ If nil, use the value of `vc-diff-switches'. If t, use no switches."
(setq status
(condition-case nil
;; Ignore all errors.
- (process-file
+ (let ((process-environment
+ ;; Avoid localization of messages so we can parse the output.
+ (append (list "TERM=dumb" "LANGUAGE=C" "HGRC=") process-environment)))
+
+ (process-file
"hg" nil t nil
- "status" "-A" (file-relative-name file))
+ "status" "-A" (file-relative-name file)))
;; Some problem happened. E.g. We can't find an `hg'
;; executable.
(error nil)))))))
@@ -219,7 +223,7 @@ If nil, use the value of `vc-diff-switches'. If t, use no switches."
(repeat :tag "Argument List" :value ("") string))
:group 'vc-hg)
-(defun vc-hg-print-log (files buffer &optional shortlog limit)
+(defun vc-hg-print-log (files buffer &optional shortlog limit start-revision)
"Get change log associated with FILES."
;; `vc-do-command' creates the buffer, but we need it before running
;; the command.
@@ -231,6 +235,7 @@ If nil, use the value of `vc-diff-switches'. If t, use no switches."
buffer
(apply 'vc-hg-command buffer 0 files "log"
(append
+ (when start-revision (list (format "-r%s:" start-revision)))
(when limit (list "-l" (format "%s" limit)))
(when shortlog '("--style" "compact"))
vc-hg-log-switches)))))