From: Anthony Fok Date: Fri, 30 Jan 2015 23:56:25 +0000 (-0700) Subject: Print template parsing errors to aid troubleshooting X-Git-Tag: v0.13~75 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=c50780930e1f30dec3c0a5356a5b18d0dc67e4b9;p=brevno-suite%2Fhugo Print template parsing errors to aid troubleshooting Added a new Template.PrintErrors() function call, used in hugolib/site.go#Process() so it does not clutter up `go test -v ./...` results. Special thanks to @tatsushid for mapping out the call trace which makes it a lot easier to find the appropriate places to place the Template.PrintErrors() call. Fixes #316 --- diff --git a/hugolib/site.go b/hugolib/site.go index 8c873569..37deacbc 100644 --- a/hugolib/site.go +++ b/hugolib/site.go @@ -269,6 +269,7 @@ func (s *Site) Process() (err error) { return } s.prepTemplates() + s.Tmpl.PrintErrors() s.timerStep("initialize & template prep") if err = s.CreatePages(); err != nil { return diff --git a/tpl/template.go b/tpl/template.go index 86e8ea2c..3377b9a3 100644 --- a/tpl/template.go +++ b/tpl/template.go @@ -50,6 +50,7 @@ type Template interface { AddTemplate(name, tpl string) error AddInternalTemplate(prefix, name, tpl string) error AddInternalShortcode(name, tpl string) error + PrintErrors() } type templateErr struct { @@ -1253,6 +1254,12 @@ func (t *GoHtmlTemplate) LoadTemplates(absPath string) { t.loadTemplates(absPath, "") } +func (t *GoHtmlTemplate) PrintErrors() { + for _, e := range t.errors { + jww.ERROR.Println(e.err) + } +} + func init() { funcMap = template.FuncMap{ "urlize": helpers.Urlize,