Documentation
¶
Overview ¶
Package colorit implements syntax highlighting for text using external cli tools.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Highlight ¶
func Highlight(text, syntax string, highlighters []Highlighter) string
Highlight tries each of provided highlighters until one of them successfully, highlights provided text with provided syntax or just returns original text if there is no suitable highlighters.
func HighlightStr ¶
HighlightStr highlights text for syntax using default highlighters slice.
Types ¶
type BatHighlighter ¶
type BatHighlighter struct{}
BatHighlighter implement syntax highlighting with bat cli tool.
func (BatHighlighter) Highlight ¶
func (p BatHighlighter) Highlight(text, syntax string) string
Highlight returns text highlighted for syntax or "" if faled.
type ChromaHighlighter ¶
type ChromaHighlighter struct{}
ChromaHighlighter implement syntax highlighting with chroma cli tool.
func (ChromaHighlighter) Highlight ¶
func (p ChromaHighlighter) Highlight(text, syntax string) string
Highlight returns text highlighted for syntax or "" if faled.
type Highlighter ¶
type Highlighter interface {
// Name should not return ""
Name() string
// If Highlight returns same text or "" it means that
// it cannot highlight it for given syntax
Highlight(text, syntax string) string
}
Highlighter implementation provides logic for syntax highlighting with ANSI Escape codes.
func DefaultHighlighters ¶
func DefaultHighlighters() []Highlighter
DefaultHighlighters returns slice of all builtin highlighters filtered with filter string from GO_COLORIT env var.
func FilterHighliters ¶
func FilterHighliters(filter string, src []Highlighter) []Highlighter
FilterHighliters filters and reorders highliters against filter string that contains names of highlighters separated by ";": "a;b;c". If filter string is "", returns all highlighters from src. It returns new slice.
type PygmentsHighlighter ¶
type PygmentsHighlighter struct{}
PygmentsHighlighter implement syntax highlighting with pygmentize cli tool.
func (PygmentsHighlighter) Highlight ¶
func (p PygmentsHighlighter) Highlight(text, syntax string) string
Highlight returns text highlighted for syntax or "" if faled.
func (PygmentsHighlighter) Name ¶
func (p PygmentsHighlighter) Name() string
Name returns "pygments".
type RichHighlighter ¶
type RichHighlighter struct{}
RichHighlighter implement syntax highlighting with rich cli tool.
func (RichHighlighter) Highlight ¶
func (p RichHighlighter) Highlight(text, syntax string) string
Highlight returns text highlighted for syntax or "" if faled.