mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-16 20:53:59 +02:00
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
This commit is contained in:
@@ -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
|
||||
|
@@ -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,
|
||||
|
Reference in New Issue
Block a user