Mercurial > repos > public > wdown
diff wdown.go @ 7:a5aa39557726
Add parsing of YAML frontmatter
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Wed, 17 Jun 2020 12:23:56 +0200 |
parents | a5f397e25cb7 |
children | 4a25b534c81c 1ffe6e4f933c |
line wrap: on
line diff
--- a/wdown.go Tue Jun 16 22:10:31 2020 +0200 +++ b/wdown.go Wed Jun 17 12:23:56 2020 +0200 @@ -11,6 +11,7 @@ "github.com/cbroglie/mustache" "github.com/yuin/goldmark" highlighting "github.com/yuin/goldmark-highlighting" + meta "github.com/yuin/goldmark-meta" "github.com/yuin/goldmark/extension" "github.com/yuin/goldmark/parser" ) @@ -47,6 +48,7 @@ goldmark.WithExtensions( extension.GFM, highlighting.Highlighting, + meta.Meta, ), goldmark.WithParserOptions( parser.WithAutoHeadingID(), @@ -54,16 +56,17 @@ ) var htmlContent bytes.Buffer - err = md.Convert(source, &htmlContent) + parserContext := parser.NewContext() + err = md.Convert(source, &htmlContent, parser.WithContext(parserContext)) if err != nil { log.Fatal(err) } if useTemplate { - context := map[string]string{ - "content": htmlContent.String(), - } - err := tmpl.FRender(os.Stdout, context) + templateVars := meta.Get(parserContext) + templateVars["content"] = htmlContent.String() + + err := tmpl.FRender(os.Stdout, templateVars) if err != nil { log.Fatal(err) }