forked from lug/matterbridge
		
	
		
			
				
	
	
		
			66 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
/*
 | 
						|
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
 | 
						|
	i = inverse
 | 
						|
 | 
						|
Wikipedia ANSI escape codes [Colors](http://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
 | 
						|
*/
 | 
						|
package ansi
 |