all repos — homestead @ 3dde69cd0394b0f1fa33f7a7a773acabfa8acaa2

Code for my website

domain/content/markdown/markdown.go (view raw)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package markdown

import (
	"io"

	"github.com/Southclaws/fault"
	fences "github.com/stefanfritsch/goldmark-fences"
	"github.com/yuin/goldmark"
	"github.com/yuin/goldmark/extension"
	"github.com/yuin/goldmark/parser"
	"github.com/yuin/goldmark/renderer/html"
)

var markdown = goldmark.New(
	goldmark.WithParserOptions(
		parser.WithAutoHeadingID(),
	),
	goldmark.WithRendererOptions(
		html.WithUnsafe(),
	),
	goldmark.WithExtensions(
		extension.GFM,
		extension.Footnote,
		extension.Typographer,
		&fences.Extender{},
	),
)

func Convert(content []byte, w io.Writer) error {
	return fault.Wrap(markdown.Convert(content, w))
}