Documentation ¶
Overview ¶
Package format contains utilities for working with Matrix HTML, specifically methods to parse Markdown into HTML and to parse Matrix HTML into text or markdown.
https://spec.matrix.org/v1.2/client-server-api/#mroommessage-msgtypes
Index ¶
- Variables
- func DefaultPillConverter(displayname, mxid, eventID string, _ Context) string
- func Digits(num int) int
- func HTMLToContent(html string) event.MessageEventContent
- func HTMLToMarkdown(html string) string
- func HTMLToText(html string) string
- func RenderMarkdown(text string, allowMarkdown, allowHTML bool) event.MessageEventContent
- func RenderMarkdownCustom(text string, renderer goldmark.Markdown) event.MessageEventContent
- func UnwrapSingleParagraph(html string) string
- type CodeBlockConverter
- type ColorConverter
- type Context
- type HTMLParser
- type LinkConverter
- type PillConverter
- type SpoilerConverter
- type TaggedString
- type TextConverter
Constants ¶
This section is empty.
Variables ¶
var BlockTags = []string{"p", "h1", "h2", "h3", "h4", "h5", "h6", "ol", "ul", "pre", "blockquote", "div", "hr", "table"}
var Extensions = goldmark.WithExtensions(extension.Strikethrough, extension.Table, mdext.Spoiler)
var HTMLOptions = goldmark.WithRendererOptions(html.WithHardWraps(), html.WithUnsafe())
Functions ¶
func DefaultPillConverter ¶
func HTMLToContent ¶
func HTMLToContent(html string) event.MessageEventContent
func HTMLToMarkdown ¶
HTMLToMarkdown converts Matrix HTML into markdown with the default settings.
Currently, the only difference to HTMLToText is how links are formatted.
func HTMLToText ¶
HTMLToText converts Matrix HTML into text with the default settings.
func RenderMarkdown ¶
func RenderMarkdown(text string, allowMarkdown, allowHTML bool) event.MessageEventContent
func RenderMarkdownCustom ¶
func RenderMarkdownCustom(text string, renderer goldmark.Markdown) event.MessageEventContent
func UnwrapSingleParagraph ¶
UnwrapSingleParagraph removes paragraph tags surrounding a string if the string only contains a single paragraph.
Types ¶
type CodeBlockConverter ¶
type ColorConverter ¶
type HTMLParser ¶
type HTMLParser struct { PillConverter PillConverter TabsToSpaces int Newline string HorizontalLine string BoldConverter TextConverter ItalicConverter TextConverter StrikethroughConverter TextConverter UnderlineConverter TextConverter LinkConverter LinkConverter SpoilerConverter SpoilerConverter ColorConverter ColorConverter MonospaceBlockConverter CodeBlockConverter MonospaceConverter TextConverter TextConverter TextConverter }
HTMLParser is a somewhat customizable Matrix HTML parser.
type LinkConverter ¶
type PillConverter ¶
type SpoilerConverter ¶
type TaggedString ¶
type TaggedString struct {
// contains filtered or unexported fields
}
TaggedString is a string that also contains a HTML tag.