commit | 999d1bc55bf87f016f157d220ff6c0cedfd2ae50 | [log] [tgz] |
---|---|---|
author | Iain Lowe <iain.lowe@gmail.com> | Tue Dec 15 20:12:58 2015 |
committer | Iain Lowe <iain.lowe@gmail.com> | Tue Dec 15 20:12:58 2015 |
tree | 8ed346fa75db967e91be546cd75daac590d8a8bc | |
parent | c286dcecd19ff979eeb73ea444e479b903f2cfcb [diff] |
add support for strikethrough (not supported on all terminals)
Package ansi is a small, fast library to create ANSI colored strings and codes.
This install the color viewer and the package itself
go get -u github.com/mgutz/ansi/cmd/ansi-mgutz
import "github.com/mgutz/ansi" // 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 Color(s, "off") // turn off ansi codes
To view color combinations, from terminal.
ansi-mgutz
"foregroundColor+attributes:backgroundColor+attributes"
Colors
Attributes
b = bold foreground
B = Blink foreground
u = underline foreground
i = inverse
h = high intensity (bright) foreground, background
does not work with 256 colors
Wikipedia ANSI escape codes Colors
General tips and formatting
What about support on Windows? Use colorable by mattn. Ansi and colorable are used by logxi to support logging in color on Windows.
Copyright (c) 2013 Mario Gutierrez mario@mgutz.com
See the file LICENSE for copying permission.