Integrate git blame with highlighting.
This commit is contained in:
parent
ac4471bfc3
commit
83d0917e7a
5 changed files with 27 additions and 9 deletions
|
@ -355,7 +355,8 @@ specification.o: specification.import.scm
|
|||
specification.import.scm: $(SPECIFICATION-SOURCES)
|
||||
|
||||
UTIL-GIT-SOURCES=util-git.scm util-io.import.scm \
|
||||
util-dict-list.import.scm util-parser.import.scm
|
||||
util-dict-list.import.scm util-parser.import.scm \
|
||||
util-time.import.scm
|
||||
|
||||
util-git.o: util-git.import.scm
|
||||
util-git.import.scm: $(UTIL-GIT-SOURCES)
|
||||
|
|
|
@ -199,7 +199,12 @@
|
|||
post-str)
|
||||
""))
|
||||
(else
|
||||
"xxx")))
|
||||
(format "~A~A ~A"
|
||||
pre-str
|
||||
(if (ldict? line)
|
||||
(ldict-ref line key "--")
|
||||
"**")
|
||||
post-str))))
|
||||
keys)
|
||||
rtbl)))
|
||||
(loop (cdr lines)
|
||||
|
|
|
@ -180,7 +180,7 @@
|
|||
blame
|
||||
hls
|
||||
#:context -1
|
||||
#:keys '(commit number line comment)
|
||||
#:keys '(committer-time number line comment)
|
||||
)))
|
||||
|
||||
;; Prints nicely printed payments
|
||||
|
|
|
@ -38,7 +38,8 @@
|
|||
(chicken string)
|
||||
util-io
|
||||
util-dict-list
|
||||
util-parser)
|
||||
util-parser
|
||||
util-time)
|
||||
|
||||
;; Valid git operating modes
|
||||
(define git-modes
|
||||
|
@ -128,9 +129,15 @@
|
|||
blames))))
|
||||
(else
|
||||
;; Any header
|
||||
(let ((kv (parser-parse-line line)))
|
||||
(let* ((kv (parser-parse-line line))
|
||||
(k (car kv))
|
||||
(v (cdr kv))
|
||||
(v1 (case k
|
||||
((committer-time)
|
||||
(seconds->iso-date-string (string->number v)))
|
||||
(else v))))
|
||||
(loop (cdr lines)
|
||||
(ldict-set blame (car kv) (cdr kv))
|
||||
(ldict-set blame k v1)
|
||||
blames))))))))
|
||||
|
||||
)
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
util-time
|
||||
(
|
||||
current-util-milliseconds
|
||||
seconds->iso-date-string
|
||||
today/iso
|
||||
)
|
||||
|
||||
|
@ -49,9 +50,9 @@
|
|||
(else
|
||||
(current-process-milliseconds))))
|
||||
|
||||
;; Returns today as YYYY-MM-DD string
|
||||
(define (today/iso)
|
||||
(let ((d (seconds->local-time)))
|
||||
;; Converts seconds since epoch to ISO date string
|
||||
(define (seconds->iso-date-string . args)
|
||||
(let ((d (apply seconds->local-time args)))
|
||||
(format "~A-~A-~A"
|
||||
(number->string
|
||||
(+ 1900 (vector-ref d 5)))
|
||||
|
@ -64,5 +65,9 @@
|
|||
(+ 100 (vector-ref d 3)))
|
||||
1))))
|
||||
|
||||
;; Returns today as YYYY-MM-DD string
|
||||
(define (today/iso)
|
||||
(seconds->iso-date-string))
|
||||
|
||||
)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue