git-preview @ main

static git web frontend but with images and html previews + code truncation

git: check for binary files
Mon, 19 Dec 2022
3 files changed, 13 insertions(+), 2 deletions(-)
M git/diff.go

@@ -20,6 +20,7 @@ Old string

New string } TextFragments []TextFragment + IsBinary bool } // A nicer git diff representation.

@@ -88,6 +89,7 @@ for _, d := range diffs {

ndiff := Diff{} ndiff.Name.New = d.NewName ndiff.Name.Old = d.OldName

… preview truncated

M git/git.go

@@ -76,7 +76,13 @@ if err != nil {

return "", err } - return file.Contents() + isbin, _ := file.IsBinary() + + if !isbin { + return file.Contents() + } else { + return "Not displaying binary file", nil

… preview truncated

M templates/commit.html

@@ -55,7 +55,9 @@ {{ else }}

<a href="/{{ $repo }}/blob/{{ $this }}/{{ .Name.New }}">{{ .Name.New }}</a> {{- end -}} </div> - + {{ if .IsBinary }} + <p>Not showing binary file.</p> + {{ else }} <pre> {{- range .TextFragments -}} <p>{{- .Header -}}</p>

… preview truncated