]> git.eshelyaron.com Git - emacs.git/commitdiff
Display shorter dates in Git annotate output
authorDmitry Gutov <dgutov@yandex.ru>
Sat, 16 May 2015 23:45:51 +0000 (02:45 +0300)
committerDmitry Gutov <dgutov@yandex.ru>
Sat, 16 May 2015 23:47:17 +0000 (02:47 +0300)
* lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
format (when not overridden with vc-git-annotate-switches).
(vc-git-annotate-time): Support the short format, as well as ISO
8601 that has been used until now (bug#5428).

lisp/vc/vc-git.el

index 059f34eb4466991430e524e1ceaae71c4271d8b3..cbf3da3003fe2e7cff74f19c50ec476bbfe70c3f 100644 (file)
@@ -1054,17 +1054,19 @@ or BRANCH^ (where \"^\" can be repeated)."
 
 (defun vc-git-annotate-command (file buf &optional rev)
   (let ((name (file-relative-name file)))
-    (apply #'vc-git-command buf 'async nil "blame" "--date=iso"
+    (apply #'vc-git-command buf 'async nil "blame" "--date=short"
           (append (vc-switches 'git 'annotate)
                   (list rev "--" name)))))
 
 (declare-function vc-annotate-convert-time "vc-annotate" (&optional time))
 
 (defun vc-git-annotate-time ()
-  (and (re-search-forward "[0-9a-f]+[^()]+(.* \\([0-9]+\\)-\\([0-9]+\\)-\\([0-9]+\\) \\([0-9]+\\):\\([0-9]+\\):\\([0-9]+\\) \\([-+0-9]+\\) +[0-9]+) " nil t)
+  (and (re-search-forward "^[0-9a-f]+[^()]+(.*?\\([0-9]+\\)-\\([0-9]+\\)-\\([0-9]+\\) \\(:?\\([0-9]+\\):\\([0-9]+\\):\\([0-9]+\\) \\([-+0-9]+\\)\\)? *[0-9]+) " nil t)
        (vc-annotate-convert-time
         (apply #'encode-time (mapcar (lambda (match)
-                                       (string-to-number (match-string match)))
+                                       (if (match-beginning match)
+                                           (string-to-number (match-string match))
+                                         0))
                                      '(6 5 4 3 2 1 7))))))
 
 (defun vc-git-annotate-extract-revision-at-line ()