package extension

import "github.com/yuin/goldmark/extension"

Index

Variables

var DefinitionDescriptionAttributeFilter = html.GlobalAttributeFilter

DefinitionDescriptionAttributeFilter defines attribute names which dd elements can have.

var DefinitionList = &definitionList{}

DefinitionList is an extension that allow you to use PHP Markdown Extra Definition lists.

var DefinitionListAttributeFilter = html.GlobalAttributeFilter

DefinitionListAttributeFilter defines attribute names which dl elements can have.

var DefinitionTermAttributeFilter = html.GlobalAttributeFilter

DefinitionTermAttributeFilter defines attribute names which dd elements can have.

var Footnote = &footnote{}

Footnote is an extension that allow you to use PHP Markdown Extra Footnotes.

var GFM = &gfm{}

GFM is an extension that provides Github Flavored markdown functionalities.

var Linkify = &linkify{}

Linkify is an extension that allow you to parse text that seems like a URL.

var Strikethrough = &strikethrough{}

Strikethrough is an extension that allow you to use strikethrough expression like '~~text~~' .

var StrikethroughAttributeFilter = html.GlobalAttributeFilter

StrikethroughAttributeFilter defines attribute names which dd elements can have.

var Table = &table{}

Table is an extension that allow you to use GFM tables .

var TableAttributeFilter = html.GlobalAttributeFilter.Extend(
	[]byte("align"),
	[]byte("bgcolor"),
	[]byte("border"),
	[]byte("cellpadding"),
	[]byte("cellspacing"),
	[]byte("frame"),
	[]byte("rules"),
	[]byte("summary"),
	[]byte("width"),
)

TableAttributeFilter defines attribute names which table elements can have.

var TableHeaderAttributeFilter = html.GlobalAttributeFilter.Extend(
	[]byte("align"),
	[]byte("bgcolor"),
	[]byte("char"),
	[]byte("charoff"),
	[]byte("valign"),
)

TableHeaderAttributeFilter defines attribute names which <thead> elements can have.

var TableRowAttributeFilter = html.GlobalAttributeFilter.Extend(
	[]byte("align"),
	[]byte("bgcolor"),
	[]byte("char"),
	[]byte("charoff"),
	[]byte("valign"),
)

TableRowAttributeFilter defines attribute names which <tr> elements can have.

var TableTdCellAttributeFilter = html.GlobalAttributeFilter.Extend(
	[]byte("abbr"),
	[]byte("align"),
	[]byte("axis"),
	[]byte("bgcolor"),
	[]byte("char"),
	[]byte("charoff"),

	[]byte("colspan"),
	[]byte("headers"),

	[]byte("height"),

	[]byte("rowspan"),

	[]byte("scope"),
	[]byte("valign"),
	[]byte("width"),
)

TableTdCellAttributeFilter defines attribute names which table <td> cells can have.

var TableThCellAttributeFilter = html.GlobalAttributeFilter.Extend(
	[]byte("abbr"),

	[]byte("align"),
	[]byte("axis"),
	[]byte("bgcolor"),
	[]byte("char"),
	[]byte("charoff"),

	[]byte("colspan"),
	[]byte("headers"),

	[]byte("height"),

	[]byte("rowspan"),
	[]byte("scope"),

	[]byte("valign"),
	[]byte("width"),
)

TableThCellAttributeFilter defines attribute names which table <th> cells can have.

var TaskList = &taskList{}

TaskList is an extension that allow you to use GFM task lists.

var Typographer = &typographer{}

Typographer is an extension that replaces punctuations with typographic entities.

Functions

func NewDefinitionDescriptionParser

func NewDefinitionDescriptionParser() parser.BlockParser

NewDefinitionDescriptionParser return a new parser.BlockParser that can parse definition description starts with ':'.

func NewDefinitionListHTMLRenderer

func NewDefinitionListHTMLRenderer(opts ...html.Option) renderer.NodeRenderer

NewDefinitionListHTMLRenderer returns a new DefinitionListHTMLRenderer.

func NewDefinitionListParser

func NewDefinitionListParser() parser.BlockParser

NewDefinitionListParser return a new parser.BlockParser that can parse PHP Markdown Extra Definition lists.

func NewFootnoteASTTransformer

func NewFootnoteASTTransformer() parser.ASTTransformer

NewFootnoteASTTransformer returns a new parser.ASTTransformer that insert a footnote list to the last of the document.

func NewFootnoteBlockParser

func NewFootnoteBlockParser() parser.BlockParser

NewFootnoteBlockParser returns a new parser.BlockParser that can parse footnotes of the Markdown(PHP Markdown Extra) text.

func NewFootnoteHTMLRenderer

func NewFootnoteHTMLRenderer(opts ...html.Option) renderer.NodeRenderer

NewFootnoteHTMLRenderer returns a new FootnoteHTMLRenderer.

func NewFootnoteParser

func NewFootnoteParser() parser.InlineParser

NewFootnoteParser returns a new parser.InlineParser that can parse footnote links of the Markdown(PHP Markdown Extra) text.

func NewLinkify

func NewLinkify(opts ...LinkifyOption) goldmark.Extender

func NewLinkifyParser

func NewLinkifyParser(opts ...LinkifyOption) parser.InlineParser

NewLinkifyParser return a new InlineParser can parse text that seems like a URL.

func NewStrikethroughHTMLRenderer

func NewStrikethroughHTMLRenderer(opts ...html.Option) renderer.NodeRenderer

NewStrikethroughHTMLRenderer returns a new StrikethroughHTMLRenderer.

func NewStrikethroughParser

func NewStrikethroughParser() parser.InlineParser

NewStrikethroughParser return a new InlineParser that parses strikethrough expressions.

func NewTableHTMLRenderer

func NewTableHTMLRenderer(opts ...html.Option) renderer.NodeRenderer

NewTableHTMLRenderer returns a new TableHTMLRenderer.

func NewTableParagraphTransformer

func NewTableParagraphTransformer() parser.ParagraphTransformer

NewTableParagraphTransformer returns a new ParagraphTransformer that can transform paragraphs into tables.

func NewTaskCheckBoxHTMLRenderer

func NewTaskCheckBoxHTMLRenderer(opts ...html.Option) renderer.NodeRenderer

NewTaskCheckBoxHTMLRenderer returns a new TaskCheckBoxHTMLRenderer.

func NewTaskCheckBoxParser

func NewTaskCheckBoxParser() parser.InlineParser

NewTaskCheckBoxParser returns a new InlineParser that can parse checkboxes in list items. This parser must take precedence over the parser.LinkParser.

func NewTypographer

func NewTypographer(opts ...TypographerOption) goldmark.Extender

NewTypographer returns a new Extender that replaces punctuations with typographic entities.

func NewTypographerParser

func NewTypographerParser(opts ...TypographerOption) parser.InlineParser

NewTypographerParser return a new InlineParser that parses typographer expressions.

Types

type DefinitionListHTMLRenderer

type DefinitionListHTMLRenderer struct {
	html.Config
}

DefinitionListHTMLRenderer is a renderer.NodeRenderer implementation that renders DefinitionList nodes.

func (*DefinitionListHTMLRenderer) RegisterFuncs

RegisterFuncs implements renderer.NodeRenderer.RegisterFuncs.

type FootnoteHTMLRenderer

type FootnoteHTMLRenderer struct {
	html.Config
}

FootnoteHTMLRenderer is a renderer.NodeRenderer implementation that renders FootnoteLink nodes.

func (*FootnoteHTMLRenderer) RegisterFuncs

RegisterFuncs implements renderer.NodeRenderer.RegisterFuncs.

type LinkifyConfig

type LinkifyConfig struct {
	AllowedProtocols [][]byte
	URLRegexp        *regexp.Regexp
	WWWRegexp        *regexp.Regexp
	EmailRegexp      *regexp.Regexp
}

An LinkifyConfig struct is a data structure that holds configuration of the Linkify extension.

func (*LinkifyConfig) SetOption

func (c *LinkifyConfig) SetOption(name parser.OptionName, value interface{})

SetOption implements SetOptioner.

type LinkifyOption

type LinkifyOption interface {
	parser.Option
	SetLinkifyOption(*LinkifyConfig)
}

A LinkifyOption interface sets options for the LinkifyOption.

func WithLinkifyAllowedProtocols

func WithLinkifyAllowedProtocols(value [][]byte) LinkifyOption

WithLinkifyAllowedProtocols is a functional option that specify allowed protocols in autolinks. Each protocol must end with ':' like 'http:' .

func WithLinkifyEmailRegexp

func WithLinkifyEmailRegexp(value *regexp.Regexp) LinkifyOption

func WithLinkifyURLRegexp

func WithLinkifyURLRegexp(value *regexp.Regexp) LinkifyOption

WithLinkifyURLRegexp is a functional option that specify a pattern of the URL including a protocol.

func WithLinkifyWWWRegexp

func WithLinkifyWWWRegexp(value *regexp.Regexp) LinkifyOption

type StrikethroughHTMLRenderer

type StrikethroughHTMLRenderer struct {
	html.Config
}

StrikethroughHTMLRenderer is a renderer.NodeRenderer implementation that renders Strikethrough nodes.

func (*StrikethroughHTMLRenderer) RegisterFuncs

RegisterFuncs implements renderer.NodeRenderer.RegisterFuncs.

type TableHTMLRenderer

type TableHTMLRenderer struct {
	html.Config
}

TableHTMLRenderer is a renderer.NodeRenderer implementation that renders Table nodes.

func (*TableHTMLRenderer) RegisterFuncs

RegisterFuncs implements renderer.NodeRenderer.RegisterFuncs.

type TaskCheckBoxHTMLRenderer

type TaskCheckBoxHTMLRenderer struct {
	html.Config
}

TaskCheckBoxHTMLRenderer is a renderer.NodeRenderer implementation that renders checkboxes in list items.

func (*TaskCheckBoxHTMLRenderer) RegisterFuncs

RegisterFuncs implements renderer.NodeRenderer.RegisterFuncs.

type TypographerConfig

type TypographerConfig struct {
	Substitutions [][]byte
}

An TypographerConfig struct is a data structure that holds configuration of the Typographer extension.

func (*TypographerConfig) SetOption

func (b *TypographerConfig) SetOption(name parser.OptionName, value interface{})

SetOption implements SetOptioner.

type TypographerOption

type TypographerOption interface {
	parser.Option
	SetTypographerOption(*TypographerConfig)
}

A TypographerOption interface sets options for the TypographerParser.

func WithTypographicSubstitutions

func WithTypographicSubstitutions(values map[TypographicPunctuation][]byte) TypographerOption

WithTypographicSubstitutions is a functional otpion that specify replacement text for punctuations.

type TypographicPunctuation

type TypographicPunctuation int

TypographicPunctuation is a key of the punctuations that can be replaced with typographic entities.

const (
	// LeftSingleQuote is '
	LeftSingleQuote TypographicPunctuation = iota + 1
	// RightSingleQuote is '
	RightSingleQuote
	// LeftDoubleQuote is "
	LeftDoubleQuote
	// RightDoubleQuote is "
	RightDoubleQuote
	// EnDash is --
	EnDash
	// EmDash is ---
	EmDash
	// Ellipsis is ...
	Ellipsis
	// LeftAngleQuote is <<
	LeftAngleQuote
	// RightAngleQuote is >>
	RightAngleQuote
	// Apostrophe is '
	Apostrophe
)

type TypographicSubstitutions

type TypographicSubstitutions map[TypographicPunctuation][]byte

TypographicSubstitutions is a list of the substitutions for the Typographer extension.

Source Files

definition_list.go footnote.go gfm.go linkify.go strikethrough.go table.go tasklist.go typographer.go

Directories

PathSynopsis
extension/astPackage ast defines AST nodes that represents extension's elements
Version
v1.1.31
Published
May 22, 2020
Platform
js/wasm
Imports
13 packages
Last checked
1 month ago

Tools for package owners.