ansi – github.com/mgutz/ansi Index | Files | Directories

package ansi

import "github.com/mgutz/ansi"

Package ansi is a small, fast library to create ANSI colored strings and codes.

Installation

# this installs the color viewer and the package
go get -u github.com/mgutz/ansi/cmd/ansi-mgutz

Example

// colorize a string, SLOW
msg := ansi.Color("foo", "red+b:white")

// create a closure to avoid recalculating ANSI code compilation
phosphorize := ansi.ColorFunc("green+h:black")
msg = phosphorize("Bring back the 80s!")
msg2 := phospohorize("Look, I'm a CRT!")

// cache escape codes and build strings manually
lime := ansi.ColorCode("green+h:black")
reset := ansi.ColorCode("reset")

fmt.Println(lime, "Bring back the 80s!", reset)

Other examples

Color(s, "red")            // red
Color(s, "red+b")          // red bold
Color(s, "red+B")          // red blinking
Color(s, "red+u")          // red underline
Color(s, "red+bh")         // red bold bright
Color(s, "red:white")      // red on white
Color(s, "red+b:white+h")  // red bold on white bright
Color(s, "red+B:white+h")  // red blink on white bright

To view color combinations, from terminal

ansi-mgutz

Style format

"foregroundColor+attributes:backgroundColor+attributes"

Colors

black
red
green
yellow
blue
magenta
cyan
white

Attributes

b = bold foreground
B = Blink foreground
u = underline foreground
h = high intensity (bright) foreground, background
d = dim foreground
i = inverse

Wikipedia ANSI escape codes Colors(http://en.wikipedia.org/wiki/ANSI_escape_code#Colors)

Index

Constants

const (

	// Reset is the ANSI reset escape sequence
	Reset = "\033[0m"
	// DefaultBG is the default background
	DefaultBG = "\033[49m"
	// DefaultFG is the default foreground
	DefaultFG = "\033[39m"
)

Variables

var Black string

Black FG

var Blue string

Blue FG

var (

	// Colors maps common color names to their ANSI color code.
	Colors = map[string]int{
		"black":   black,
		"red":     red,
		"green":   green,
		"yellow":  yellow,
		"blue":    blue,
		"magenta": magenta,
		"cyan":    cyan,
		"white":   white,
		"default": defaultt,
	}
)
var Cyan string

Cyan FG

var Green string

Green FG

var LightBlack string

LightBlack FG

var LightBlue string

LightBlue FG

var LightCyan string

LightCyan FG

var LightGreen string

LightGreen FG

var LightMagenta string

LightMagenta FG

var LightRed string

LightRed FG

var LightWhite string

LightWhite FG

var LightYellow string

LightYellow FG

var Magenta string

Magenta FG

var Red string

Red FG

var White string

White FG

var Yellow string

Yellow FG

Functions

func Color

func Color(s, style string) string

Color colors a string based on the ANSI color code for style.

func ColorCode

func ColorCode(style string) string

ColorCode returns the ANSI color color code for style.

func ColorFunc

func ColorFunc(style string) func(string) string

ColorFunc creates a closure to avoid computation ANSI color code.

func DisableColors

func DisableColors(disable bool)

DisableColors disables ANSI color codes. The default is false (colors are on).

func PrintStyles

func PrintStyles()

PrintStyles prints all style combinations to the terminal.

Source Files

ansi.go doc.go print.go

Directories

PathSynopsis
cmd
cmd/ansi-mgutz
Version
v0.0.0-20200706080929-d51e80ef957d (latest)
Published
Jul 6, 2020
Platform
linux/amd64
Imports
6 packages
Last checked
1 month ago

Tools for package owners.