wiki/markdown.go

37 lines
692 B
Go
Raw Normal View History

2020-05-24 18:43:42 +00:00
package main
import (
"bytes"
"gitlab.com/golang-commonmark/markdown"
"github.com/yuin/goldmark"
"github.com/yuin/goldmark/extension"
"github.com/yuin/goldmark/renderer/html"
)
func renderMarkdown(pageText string) string {
md := markdown.New(
markdown.HTML(true),
markdown.XHTMLOutput(true),
)
pageText = md.RenderToString([]byte(pageText))
return pageText
}
func renderMarkdown2(pageText string) string {
md := goldmark.New(
goldmark.WithExtensions(extension.GFM),
goldmark.WithRendererOptions(
html.WithXHTML(),
html.WithUnsafe(),
),
)
var buf bytes.Buffer
if err := md.Convert([]byte(pageText), &buf); err != nil {
panic(err)
}
return buf.String()
}