highlight

package
v0.0.0-...-42d6f5d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2023 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Overview

Package highlight provides code highlighting.

Index

Constants

This section is empty.

Variables

View Source
var DefaultConfig = Config{

	Style:              "monokai",
	LineNoStart:        1,
	CodeFences:         true,
	NoClasses:          true,
	LineNumbersInTable: true,
	TabWidth:           4,
}

Functions

func ApplyLegacyConfig

func ApplyLegacyConfig(cfg config.Provider, conf *Config) error

ApplyLegacyConfig applies legacy config from back when we had Pygments.

func WritePreEnd

func WritePreEnd(w io.Writer)

func WritePreStart

func WritePreStart(w io.Writer, language, styleAttr string)

Types

type Config

type Config struct {
	Style string

	CodeFences bool

	// Use inline CSS styles.
	NoClasses bool

	// No highlighting.
	NoHl bool

	// When set, line numbers will be printed.
	LineNos            bool
	LineNumbersInTable bool

	// When set, add links to line numbers
	AnchorLineNos bool
	LineAnchors   string

	// Start the line numbers from this value (default is 1).
	LineNoStart int

	// A space separated list of line numbers, e.g. “3-8 10-20”.
	Hl_Lines string

	// If set, the markup will not be wrapped in any container.
	Hl_inline bool

	// A parsed and ready to use list of line ranges.
	HL_lines_parsed [][2]int `json:"-"`

	// TabWidth sets the number of characters for a tab. Defaults to 4.
	TabWidth int

	GuessSyntax bool
}

type HighlightResult

type HighlightResult struct {
	// contains filtered or unexported fields
}

HighlightResult holds the result of an highlighting operation.

func (HighlightResult) Inner

func (h HighlightResult) Inner() template.HTML

Inner returns the highlighted code without the wrapping <div>, <pre> and <code> tag, suitable for inline use.

func (HighlightResult) Wrapped

func (h HighlightResult) Wrapped() template.HTML

Wrapped returns the highlighted code wrapped in a <div>, <pre> and <code> tag.

type Highlighter

type Highlighter interface {
	Highlight(code, lang string, opts any) (string, error)
	HighlightCodeBlock(ctx hooks.CodeblockContext, opts any) (HighlightResult, error)
	hooks.CodeBlockRenderer
	hooks.IsDefaultCodeBlockRendererProvider
}

func New

func New(cfg Config) Highlighter

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL