mirror of
https://gitea.com/Sirherobrine23/tea.git
synced 2024-08-21 21:27:23 +00:00
fixes Use Survey For Interactions With User Add Vendor "github.com/AlecAivazis/survey/v2" Co-authored-by: Norwin Roosen <git@nroo.de> Co-authored-by: 6543 <6543@obermui.de> Reviewed-on: https://gitea.com/gitea/tea/pulls/186 Reviewed-by: techknowlogick <techknowlogick@gitea.io> Reviewed-by: Norwin <noerw@noreply.gitea.io>
122 lines
2.3 KiB
Markdown
122 lines
2.3 KiB
Markdown
# ansi
|
|
|
|
Package ansi is a small, fast library to create ANSI colored strings and codes.
|
|
|
|
## Install
|
|
|
|
Get it
|
|
|
|
```sh
|
|
go get -u github.com/mgutz/ansi
|
|
```
|
|
|
|
## Example
|
|
|
|
```go
|
|
import "github.com/mgutz/ansi"
|
|
|
|
// colorize a string, SLOW
|
|
msg := ansi.Color("foo", "red+b:white")
|
|
|
|
// create a FAST closure function to avoid computation of ANSI code
|
|
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
|
|
|
|
```go
|
|
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 project directory in terminal.
|
|
|
|
```sh
|
|
go test
|
|
```
|
|
|
|
## Style format
|
|
|
|
```go
|
|
"foregroundColor+attributes:backgroundColor+attributes"
|
|
```
|
|
|
|
Colors
|
|
|
|
* black
|
|
* red
|
|
* green
|
|
* yellow
|
|
* blue
|
|
* magenta
|
|
* cyan
|
|
* white
|
|
* 0...255 (256 colors)
|
|
|
|
Foreground Attributes
|
|
|
|
* B = Blink
|
|
* b = bold
|
|
* h = high intensity (bright)
|
|
* i = inverse
|
|
* s = strikethrough
|
|
* u = underline
|
|
|
|
Background Attributes
|
|
|
|
* h = high intensity (bright)
|
|
|
|
## Constants
|
|
|
|
* ansi.Reset
|
|
* ansi.DefaultBG
|
|
* ansi.DefaultFG
|
|
* ansi.Black
|
|
* ansi.Red
|
|
* ansi.Green
|
|
* ansi.Yellow
|
|
* ansi.Blue
|
|
* ansi.Magenta
|
|
* ansi.Cyan
|
|
* ansi.White
|
|
* ansi.LightBlack
|
|
* ansi.LightRed
|
|
* ansi.LightGreen
|
|
* ansi.LightYellow
|
|
* ansi.LightBlue
|
|
* ansi.LightMagenta
|
|
* ansi.LightCyan
|
|
* ansi.LightWhite
|
|
|
|
## References
|
|
|
|
Wikipedia ANSI escape codes [Colors](http://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
|
|
|
|
General [tips and formatting](http://misc.flogisoft.com/bash/tip_colors_and_formatting)
|
|
|
|
What about support on Windows? Use [colorable by mattn](https://github.com/mattn/go-colorable).
|
|
Ansi and colorable are used by [logxi](https://github.com/mgutz/logxi) to support logging in
|
|
color on Windows.
|
|
|
|
## MIT License
|
|
|
|
Copyright (c) 2013 Mario Gutierrez mario@mgutz.com
|
|
|
|
See the file LICENSE for copying permission.
|
|
|