formatters

package
v2.10.1 Latest Latest
Warning

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

Go to latest
Published: Nov 8, 2023 License: MIT Imports: 8 Imported by: 48

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// NoOp formatter.
	NoOp = Register("noop", chroma.FormatterFunc(func(w io.Writer, s *chroma.Style, iterator chroma.Iterator) error {
		for t := iterator(); t != chroma.EOF; t = iterator() {
			if _, err := io.WriteString(w, t.Value); err != nil {
				return err
			}
		}
		return nil
	}))

	SVG = Register("svg", svg.New(svg.EmbedFont("Liberation Mono", svg.FontLiberationMono, svg.WOFF)))
)
View Source
var Fallback = NoOp

Fallback formatter.

View Source
var JSON = Register("json", chroma.FormatterFunc(func(w io.Writer, s *chroma.Style, it chroma.Iterator) error {
	fmt.Fprintln(w, "[")
	i := 0
	for t := it(); t != chroma.EOF; t = it() {
		if i > 0 {
			fmt.Fprintln(w, ",")
		}
		i++
		bytes, err := json.Marshal(t)
		if err != nil {
			return err
		}
		if _, err := fmt.Fprint(w, "  "+string(bytes)); err != nil {
			return err
		}
	}
	fmt.Fprintln(w)
	fmt.Fprintln(w, "]")
	return nil
}))

JSON formatter outputs the raw token structures as JSON.

View Source
var Registry = map[string]chroma.Formatter{}

Registry of Formatters.

View Source
var TTY = Register("terminal", &indexedTTYFormatter{ttyTables[8]})

TTY is an 8-colour terminal formatter.

The Lab colour space is used to map RGB values to the most appropriate index colour.

View Source
var TTY16 = Register("terminal16", &indexedTTYFormatter{ttyTables[16]})

TTY16 is a 16-colour terminal formatter.

It uses \033[3xm for normal colours and \033[90Xm for bright colours.

The Lab colour space is used to map RGB values to the most appropriate index colour.

View Source
var TTY16m = Register("terminal16m", chroma.FormatterFunc(trueColourFormatter))

TTY16m is a true-colour terminal formatter.

View Source
var TTY256 = Register("terminal256", &indexedTTYFormatter{ttyTables[256]})

TTY256 is a 256-colour terminal formatter.

The Lab colour space is used to map RGB values to the most appropriate index colour.

View Source
var TTY8 = Register("terminal8", &indexedTTYFormatter{ttyTables[8]})

TTY8 is an 8-colour terminal formatter.

The Lab colour space is used to map RGB values to the most appropriate index colour.

View Source
var Tokens = Register("tokens", chroma.FormatterFunc(func(w io.Writer, s *chroma.Style, it chroma.Iterator) error {
	for t := it(); t != chroma.EOF; t = it() {
		if _, err := fmt.Fprintln(w, t.GoString()); err != nil {
			return err
		}
	}
	return nil
}))

Tokens formatter outputs the raw token structures.

Functions

func Get

func Get(name string) chroma.Formatter

Get formatter by name.

If the given formatter is not found, the Fallback formatter will be returned.

func Names

func Names() []string

Names of registered formatters.

func Register

func Register(name string, formatter chroma.Formatter) chroma.Formatter

Register a named formatter.

Types

This section is empty.

Directories

Path Synopsis
Package svg contains an SVG formatter.
Package svg contains an SVG formatter.

Jump to

Keyboard shortcuts

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