"io"
"io/ioutil"
"log"
+ "net/url"
"os"
"strconv"
"strings"
{{.Note}}{{end -}}
{{- if .Cfg.CommentsEmail}}
------------------------------------------------------------------------
-leave comment: mailto:{{.Cfg.CommentsEmail}}?subject={{.Commit.Hash.String}}
+leave comment: mailto:{{.Cfg.CommentsEmail}}?subject={{.TitleEscaped}}
{{end}}{{range $idx, $comment := .Comments}}
------------------------------------------------------------------------
comment {{$idx}}:
}
tmpl := template.Must(template.New("entry").Parse(TmplGopherEntry))
err = tmpl.Execute(os.Stdout, struct {
- Commit *object.Commit
- When string
- Cfg *Cfg
- Note string
- Comments []string
- Topics []string
- Version string
+ Commit *object.Commit
+ When string
+ Cfg *Cfg
+ Note string
+ Comments []string
+ Topics []string
+ Version string
+ TitleEscaped string
}{
Commit: commit,
When: commit.Author.When.Format(sgblog.WhenFmt),
Comments: parseComments(getNote(commentsTree, commit.Hash)),
Topics: parseTopics(getNote(topicsTree, commit.Hash)),
Version: sgblog.Version,
+ TitleEscaped: url.PathEscape(fmt.Sprintf(
+ "Re: %s (%s)", msgSplit(commit.Message)[0], commit.Hash,
+ )),
})
if err != nil {
log.Fatalln(err)