diff options
Diffstat (limited to 'cmd/generate/main.go')
-rw-r--r-- | cmd/generate/main.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/cmd/generate/main.go b/cmd/generate/main.go index e26120d..7ed67cf 100644 --- a/cmd/generate/main.go +++ b/cmd/generate/main.go @@ -7,6 +7,7 @@ import ( "os" "sort" "strings" + "time" "html/template" @@ -35,6 +36,9 @@ func main() { //go:embed imworkingon.html.tmpl var htmlTmplStr string +var timeTagTmpl = template.Must(template.New("time.tag.tmpl"). + Parse(`<time datetime="{{ .Machine }}" title="{{ .HumanVerbose }}">{{ .HumanPretty }}</time>`)) + func mainWithError() error { contribs, err := ReadContribs("imworkingon/contribs.yml") if err != nil { @@ -63,6 +67,15 @@ func mainWithError() error { tmpl := template.Must(template.New("imworkingon.html.tmpl"). Funcs(template.FuncMap{ + "timeTag": func(ts time.Time, prettyFmt string) (template.HTML, error) { + var out strings.Builder + err := timeTagTmpl.Execute(&out, map[string]string{ + "Machine": ts.Format(time.RFC3339), + "HumanVerbose": ts.Format("2006-01-02 15:04:05Z07:00"), + "HumanPretty": ts.Format(prettyFmt), + }) + return template.HTML(out.String()), err + }, "md2html": MarkdownToHTML, "getUpstream": func(c Contribution) Upstream { // First try any of the documented upstreams. |