]> Sergey Matveev's repositories - sgblog.git/commitdiff
Optimize and simplify templates v0.7.1
authorSergey Matveev <stargrave@stargrave.org>
Mon, 27 Jul 2020 15:31:23 +0000 (18:31 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Mon, 27 Jul 2020 16:09:21 +0000 (19:09 +0300)
cmd/sgblog/gopher.go
cmd/sgblog/http.go
common.go

index d8e4fe4bc62e413bcd4babef51dcfcf89269fb65..59e2607644ec8d8c9da44175283fb2e54c592ffb 100644 (file)
@@ -38,18 +38,20 @@ import (
 )
 
 const (
-       TmplGopherMenu = `{{$Cfg := .Cfg}}{{$CR := .CR}}i{{.Cfg.Title}} ({{.Offset}}-{{.OffsetNext}})   err     {{.Cfg.GopherDomain}}   70{{.CR}}
-{{if .Cfg.AboutURL}}hAbout     URL:{{.Cfg.AboutURL}}   {{.Cfg.GopherDomain}}   70{{.CR}}{{end}}
-{{if .Offset}}1Prev    offset/{{.OffsetPrev}}  {{.Cfg.GopherDomain}}   70{{.CR}}{{end}}
-{{if not .LogEnded}}1Next      offset/{{.OffsetNext}}  {{.Cfg.GopherDomain}}   70{{.CR}}{{end -}}
-{{- $yearPrev := 0}}{{$monthPrev := 0}}{{$dayPrev := 0 -}}
-{{- range .Entries }}{{$yearCur := .Commit.Author.When.Year}}{{$monthCur := .Commit.Author.When.Month}}{{$dayCur := .Commit.Author.When.Day -}}
-{{- if or (ne $dayCur $dayPrev) (ne $monthCur $monthPrev) (ne $yearCur $yearPrev)}}{{$dayPrev = $dayCur}}{{$monthPrev = $monthCur}}{{$yearPrev = $yearCur}}
-i{{$yearCur | printf "%04d"}}-{{$monthCur | printf "%02d"}}-{{$dayCur | printf "%02d"}}        err     {{$Cfg.GopherDomain}}   70{{$CR}}{{end}}
-0[{{.Commit.Author.When.Hour | printf "%02d"}}:{{.Commit.Author.When.Minute | printf "%02d"}}] {{.Title}} ({{.LinesNum}}L){{if .CommentsNum}} ({{.CommentsNum}}C){{end}}       /{{.Commit.Hash.String}}        {{$Cfg.GopherDomain}}   70{{$CR}}{{end}}
-iGenerated by: SGBlog {{.Version}}     err     {{.Cfg.GopherDomain}}   70{{.CR}}
-.{{.CR}}
-`
+       TmplGopherMenu = `{{$CR := printf "\r"}}{{$CRLF := printf "\r\n" -}}
+{{- define "domainPort" }}     {{.GopherDomain}}       70{{end}}{{$Cfg := .Cfg -}}
+i{{.Cfg.Title}} ({{.Offset}}-{{.OffsetNext}})  err{{template "domainPort" .Cfg}}{{$CRLF -}}
+{{- if .Cfg.AboutURL}}hAbout   URL:{{.Cfg.AboutURL}}{{template "domainPort" .Cfg}}{{$CRLF}}{{end -}}
+{{- if .Offset}}1Prev  offset/{{.OffsetPrev}}{{template "domainPort" .Cfg}}{{$CRLF}}{{end -}}
+{{- if not .LogEnded}}1Next    offset/{{.OffsetNext}}{{template "domainPort" .Cfg}}{{$CRLF}}{{end -}}
+{{- $datePrev := "0001-01-01" -}}
+{{- range .Entries -}}
+{{- $dateCur := .Commit.Author.When.Format "2006-01-02" -}}
+{{- if ne $dateCur $datePrev}}{{$datePrev = $dateCur}}
+i{{$dateCur}}  err{{template "domainPort" $Cfg}}{{$CR}}{{end}}
+0[{{.Commit.Author.When.Format "15:04"}}] {{.Title}} ({{.LinesNum}}L){{with .CommentsNum}} ({{.}}C){{end}}     /{{.Commit.Hash.String}}{{template "domainPort" $Cfg}}{{$CR}}{{end}}
+iGenerated by: SGBlog {{.Version}}     err{{template "domainPort" .Cfg}}{{$CR}}
+.{{$CRLF}}`
        TmplGopherEntry = `What: {{.Commit.Hash.String}}
 When: {{.When}}
 ------------------------------------------------------------------------
@@ -152,7 +154,6 @@ func serveGopher() {
                        LogEnded   bool
                        Entries    []TableMenuEntry
                        Version    string
-                       CR         string
                }{
                        Cfg:        cfg,
                        Offset:     offset,
@@ -161,7 +162,6 @@ func serveGopher() {
                        LogEnded:   logEnded,
                        Entries:    entries,
                        Version:    sgblog.Version,
-                       CR:         "\r",
                })
                if err != nil {
                        log.Fatalln(err)
index 0c09f2b440af44e7bc7be2a5772005d949636e04..312c02b715d4ec3f496d40f576db27517ec7588f 100644 (file)
@@ -54,10 +54,9 @@ const (
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <meta name="generator" content="SGBlog {{.Version}}">
        <title>{{.Cfg.Title}} ({{.Offset}}-{{.OffsetNext}})</title>
-       {{if .Cfg.CSS}}<link rel="stylesheet" type="text/css" href="{{.Cfg.CSS}}">{{end}}
-       {{if .Cfg.Webmaster}}<link rev="made" href="mailto:{{.Cfg.Webmaster}}">{{end -}}
-       {{- range .Cfg.GitURLs}}
-       <link rel="vcs-git" href="{{.}}" title="Git repository">{{end}}
+       {{with .Cfg.CSS}}<link rel="stylesheet" type="text/css" href="{{.}}">{{end}}
+       {{with .Cfg.Webmaster}}<link rev="made" href="mailto:{{.}}">{{end}}
+       {{range .Cfg.GitURLs}}<link rel="vcs-git" href="{{.}}" title="Git repository">{{end}}
        <link rel="top" href="{{.Cfg.URLPrefix}}/" title="top">
        <link rel="alternate" title="Posts feed" href="{{.Cfg.AtomBaseURL}}{{.Cfg.URLPrefix}}/{{.AtomPostsFeed}}" type="application/atom+xml">
        {{if .CommentsEnabled}}<link rel="alternate" title="Comments feed" href="{{.Cfg.AtomBaseURL}}{{.Cfg.URLPrefix}}/{{.AtomCommentsFeed}}" type="application/atom+xml">{{end}}
@@ -65,38 +64,35 @@ const (
        {{if not .LogEnded}}<link rel="next" href="{{.Cfg.URLPrefix}}/?offset={{.OffsetNext}}" title="next">{{end}}
 </head>
 <body>
-{{if .Cfg.AboutURL}}[<a href="{{.Cfg.AboutURL}}">about</a>]{{end}}
+{{with .Cfg.AboutURL}}[<a href="{{.}}">about</a>]{{end}}
 {{block "links" .}}
 {{if .Offset}}[<a href="{{.Cfg.URLPrefix}}/{{if .OffsetPrev}}?offset={{.OffsetPrev}}{{end}}">prev</a>]{{end}}
 {{if not .LogEnded}}[<a href="{{.Cfg.URLPrefix}}/?offset={{.OffsetNext}}">next</a>]{{end}}
 {{end}}
 {{- $Cfg := .Cfg -}}
-{{- $yearPrev := 0 -}}
-{{- $monthPrev := 0 -}}
-{{- $dayPrev := 0}}
+{{- $datePrev := "0001-01-01" -}}
 <table border=1>
 <tr>
        <th>N</th><th>When</th><th>Title</th>
        <th size="5%"><a title="Lines">L</a></th>
        <th size="5%"><a title="Comments">C</a></th>
        <th>Linked to</th>
-</tr>{{range .Entries -}}
-{{- $yearCur := .Commit.Author.When.Year -}}
-{{- $monthCur := .Commit.Author.When.Month -}}
-{{- $dayCur := .Commit.Author.When.Day -}}
-{{- if or (ne $dayCur $dayPrev) (ne $monthCur $monthPrev) (ne $yearCur $yearPrev) -}}
-<tr><td colspan=6><center><tt>{{$yearCur | printf "%04d"}}-{{$monthCur | printf "%02d"}}-{{$dayCur | printf "%02d"}}</tt></center></td></tr>
-{{- $dayPrev = $dayCur}}{{$monthPrev = $monthCur}}{{$yearPrev = $yearCur -}}
+</tr>
+{{range .Entries -}}
+{{- $dateCur := .Commit.Author.When.Format "2006-01-02" -}}
+{{- if ne $dateCur $datePrev -}}
+       <tr><td colspan=6><center><tt>{{$dateCur}}</tt></center></td></tr>
+       {{- $datePrev = $dateCur -}}
 {{- end -}}
 <tr>
        <td>{{.Num}}</td>
-       <td><tt>{{.Commit.Author.When.Hour | printf "%02d" -}}:{{- .Commit.Author.When.Minute | printf "%02d"}}</tt></td>
+       <td><tt>{{.Commit.Author.When.Format "15:04"}}</tt></td>
        <td><a href="{{$Cfg.URLPrefix}}/{{.Commit.Hash.String}}">{{.Title}}</a></td>
        <td>{{.LinesNum}}</td>
        <td>{{if .CommentsNum}}{{.CommentsNum}}{{else}}&nbsp;{{end}}</td>
-       <td>{{range .DomainURLs}} {{.}} {{end}}</td>
+       <td>{{if .DomainURLs}}{{range .DomainURLs}} {{.}} {{end}}{{else}}&nbsp;{{end}}</td>
 </tr>
-{{end}}</table>
+{{end}}</table>
 {{template "links" .}}
 </body>
 </html>
@@ -106,8 +102,8 @@ const (
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <meta name="generator" content="SGBlog {{.Version}}">
        <title>{{.Title}} ({{.When}})</title>
-       {{if .Cfg.CSS}}<link rel="stylesheet" type="text/css" href="{{.Cfg.CSS}}">{{end}}
-       {{if .Cfg.Webmaster}}<link rev="made" href="mailto:{{.Cfg.Webmaster}}">{{end -}}
+       {{with .Cfg.CSS}}<link rel="stylesheet" type="text/css" href="{{.}}">{{end}}
+       {{with .Cfg.Webmaster}}<link rev="made" href="mailto:{{.}}">{{end -}}
        {{- range .Cfg.GitURLs}}
        <link rel="vcs-git" href="{{.}}" title="Git repository">{{end}}
        <link rel="top" href="{{.Cfg.URLPrefix}}/" title="top">
@@ -115,7 +111,7 @@ const (
        {{if .Parent}}<link rel="prev" href="{{.Cfg.URLPrefix}}/{{.Parent}}" title="prev">{{end}}
 </head>
 <body>
-{{if .Cfg.AboutURL}}[<a href="{{.Cfg.AboutURL}}">about</a>]{{end}}
+{{with .Cfg.AboutURL}}[<a href="{{.}}">about</a>]{{end}}
 [<a href="{{.Cfg.URLPrefix}}/">index</a>]
 {{if .Parent}}[<a href="{{.Cfg.URLPrefix}}/{{.Parent}}">prev</a>]{{end}}
 [<tt><a title="When">{{.When}}</a></tt>]
index f0558f11ada08ef312b1cc6034d11ea29e7c7522..5f80a471a8faedde7a4dfa81c6b5fca8159523c5 100644 (file)
--- a/common.go
+++ b/common.go
@@ -2,6 +2,6 @@
 package sgblog
 
 const (
-       Version = "0.7.0"
+       Version = "0.7.1"
        WhenFmt = "2006-01-02 15:04:05Z07:00"
 )