Create a struct with all of Hugo's config options

Primary motivation is documentation, but it will also hopefully simplify the code.

Also,

* Lower case the default output format names; this is in line with the custom ones (map keys) and how
it's treated all the places. This avoids doing `stringds.EqualFold` everywhere.

Closes #10896
Closes #10620
This commit is contained in:
Bjørn Erik Pedersen
2023-01-04 18:24:36 +01:00
parent 6aededf6b4
commit 241b21b0fd
337 changed files with 13377 additions and 14898 deletions

View File

@@ -17,14 +17,13 @@ import (
"testing"
qt "github.com/frankban/quicktest"
"github.com/gohugoio/hugo/media"
)
func TestCreatePlaceholders(t *testing.T) {
c := qt.New(t)
m := structToMap(media.CSSType)
m := structToMap(media.Builtin.CSSType)
insertFieldPlaceholders("foo", m, func(s string) string {
return "pre_" + s + "_post"
@@ -34,6 +33,7 @@ func TestCreatePlaceholders(t *testing.T) {
"IsZero": "pre_foo.IsZero_post",
"MarshalJSON": "pre_foo.MarshalJSON_post",
"Suffixes": "pre_foo.Suffixes_post",
"SuffixesCSV": "pre_foo.SuffixesCSV_post",
"Delimiter": "pre_foo.Delimiter_post",
"FirstSuffix": "pre_foo.FirstSuffix_post",
"IsText": "pre_foo.IsText_post",