package converter
import "github.com/gohugoio/hugo/markup/converter"
Index ¶
- Variables
- type AnchorNameSanitizer
- type Bytes
- type Converter
- type DocumentContext
- type DocumentInfo
- type ParseRenderer
- type Provider
- type ProviderConfig
- type ProviderProvider
- type RenderContext
- type ResultParse
- type ResultRender
- type TableOfContentsProvider
Variables ¶
var NopConverter = new(nopConverter)
Types ¶
type AnchorNameSanitizer ¶
AnchorNameSanitizer tells how a converter sanitizes anchor names.
type Bytes ¶
type Bytes []byte
Bytes holds a byte slice and implements the Result interface.
func (Bytes) Bytes ¶
Bytes returns itself
type Converter ¶
type Converter interface {
Convert(ctx RenderContext) (ResultRender, error)
}
Converter wraps the Convert method that converts some markup into another format, e.g. Markdown to HTML.
type DocumentContext ¶
type DocumentContext struct {
Document any // May be nil. Usually a page.Page
DocumentLookup func(uint64) any // May be nil.
DocumentID string
DocumentName string
Filename string
}
DocumentContext holds contextual information about the document to convert.
type DocumentInfo ¶
type DocumentInfo interface {
AnchorSuffix() string
}
DocumentInfo holds additional information provided by some converters.
type ParseRenderer ¶
type ParseRenderer interface {
Parse(RenderContext) (ResultParse, error)
Render(RenderContext, any) (ResultRender, error)
}
ParseRenderer is an optional interface. The Goldmark converter implements this, and this allows us to extract the ToC without having to render the content.
type Provider ¶
type Provider interface {
New(ctx DocumentContext) (Converter, error)
Name() string
}
Provider creates converters.
func NewProvider ¶
func NewProvider(name string, create func(ctx DocumentContext) (Converter, error)) Provider
NewProvider creates a new Provider with the given name.
type ProviderConfig ¶
type ProviderConfig struct {
Conf config.AllProvider // Site config
ContentFs afero.Fs
Logger loggers.Logger
Exec *hexec.Exec
highlight.Highlighter
}
ProviderConfig configures a new Provider.
func (ProviderConfig) MarkupConfig ¶
func (p ProviderConfig) MarkupConfig() markup_config.Config
type ProviderProvider ¶
type ProviderProvider interface {
New(cfg ProviderConfig) (Provider, error)
}
ProviderProvider creates converter providers.
type RenderContext ¶
type RenderContext struct {
// Ctx is the context.Context for the current Page render.
Ctx context.Context
// Src is the content to render.
Src []byte
// Whether to render TableOfContents.
RenderTOC bool
// GerRenderer provides hook renderers on demand.
GetRenderer hooks.GetRendererFunc
}
RenderContext holds contextual information about the content to render.
type ResultParse ¶
type ResultParse interface {
Doc() any
TableOfContents() *tableofcontents.Fragments
}
ResultParse represents the minimum returned from Parse.
type ResultRender ¶
type ResultRender interface {
Bytes() []byte
}
ResultRender represents the minimum returned from Convert and Render.
type TableOfContentsProvider ¶
type TableOfContentsProvider interface {
TableOfContents() *tableofcontents.Fragments
}
TableOfContentsProvider provides the content as a ToC structure.
Source Files ¶
Directories ¶
| Path | Synopsis |
|---|---|
| markup/converter/hooks |
- Version
- v0.153.4 (latest)
- Published
- Dec 28, 2025
- Platform
- linux/amd64
- Imports
- 11 packages
- Last checked
- 4 months ago –
Tools for package owners.