diff options
-rw-r--r-- | git/diff.go | 4 | ||||
-rw-r--r-- | static/style.css | 4 | ||||
-rw-r--r-- | templates/commit.html | 11 |
3 files changed, 18 insertions, 1 deletions
diff --git a/git/diff.go b/git/diff.go index 063ac87..93c823a 100644 --- a/git/diff.go +++ b/git/diff.go @@ -21,6 +21,8 @@ type Diff struct { } TextFragments []TextFragment IsBinary bool + IsNew bool + IsDelete bool } // A nicer git diff representation. @@ -90,6 +92,8 @@ func (g *GitRepo) Diff() (*NiceDiff, error) { ndiff.Name.New = d.NewName ndiff.Name.Old = d.OldName ndiff.IsBinary = d.IsBinary + ndiff.IsNew = d.IsNew + ndiff.IsDelete = d.IsDelete for _, tf := range d.TextFragments { ndiff.TextFragments = append(ndiff.TextFragments, TextFragment{ diff --git a/static/style.css b/static/style.css index 1a59591..6d805a1 100644 --- a/static/style.css +++ b/static/style.css @@ -238,6 +238,10 @@ a:hover { overflow: scroll; } +.diff-type { + color: var(--gray); +} + .commit-info { color: var(--gray); padding-bottom: 1.5rem; diff --git a/templates/commit.html b/templates/commit.html index 65803b7..c37f850 100644 --- a/templates/commit.html +++ b/templates/commit.html @@ -46,8 +46,17 @@ {{ $repo := .name }} {{ $this := .commit.This }} {{ range .diff }} - <div class="diff"> <div id="{{ .Name.New }}"> + <div class="diff"> + {{ if .IsNew }} + <span class="diff-type">A</span> + {{ end }} + {{ if .IsDelete }} + <span class="diff-type">D</span> + {{ end }} + {{ if not (or .IsNew .IsDelete) }} + <span class="diff-type">M</span> + {{ end }} {{ if .Name.Old }} <a href="/{{ $repo }}/blob/{{ $this }}/{{ .Name.Old }}">{{ .Name.Old }}</a> {{ if .Name.New }} |