diff --git a/gitssg.go b/gitssg.go
index f70b546..2e75034 100644
--- a/gitssg.go
+++ b/gitssg.go
@@ -27,12 +27,12 @@ type RepoDir struct {
// ToDo: replace has* with the filename, as it can be bare or .md
type RepoInfo struct {
- Name string
- Description string
- Url string
- Readme string
- License string
- Contributing string
+ Name string
+ Description string
+ Url string
+ HasReadme bool
+ HasLicense bool
+ HasContributing bool
}
type CommitFile struct {
@@ -69,9 +69,6 @@ type CommitInfo struct {
var embedTmpl embed.FS
var timeShortFormatStr = "2006-01-02 15:04"
var timeLongFormatStr = time.RFC1123
-var readmeNames = []string{"README", "README.md", "README.txt"}
-var licenseNames = []string{"LICENSE", "LICENSE.txt"}
-var contributingNames = []string{"CONTRIBUTING", "CONTRIBUTING.txt"}
var funcMap = template.FuncMap{
"inc": func(i int) int {
return i + 1
@@ -81,16 +78,16 @@ var funcMap = template.FuncMap{
menu += " | Files"
menu += " | Refs"
- if repoInfo.Readme != "" {
- menu += " | README"
+ if repoInfo.HasReadme {
+ menu += "| README"
}
- if repoInfo.License != "" {
- menu += " | LICENSE"
+ if repoInfo.HasLicense {
+ menu += "| LICENSE"
}
- if repoInfo.Contributing != "" {
- menu += " | CONTRIBUTING"
+ if repoInfo.HasContributing {
+ menu += "| CONTRIBUTING"
}
return template.HTML(menu)
@@ -274,27 +271,7 @@ func generateRepo(path string, logLimit int) error {
return fmt.Errorf("cannot get commit for hash %s: %w", head.Hash(), err)
}
- // populate Readme, License and Contributing
- for _, name := range readmeNames {
- if _, err := c.File(name); err == nil {
- repoInfo.Readme = name
- break
- }
- }
-
- for _, name := range licenseNames {
- if _, err := c.File(name); err == nil {
- repoInfo.License = name
- break
- }
- }
-
- for _, name := range contributingNames {
- if _, err := c.File(name); err == nil {
- repoInfo.Contributing = name
- break
- }
- }
+ // ToDo: populate hasReadme, hasLicense and hasContributing
tree, err := c.Tree()
if err != nil {
@@ -385,7 +362,7 @@ func generateRepo(path string, logLimit int) error {
slog.Debug("Processing commit", "hash", c.Hash)
- if logLimit != 0 && i > logLimit {
+ if i > logLimit {
remaining++
slog.Debug("Limit reached while processing log", "iteration", i, "remaining", remaining)
continue