add decode args, test, benchmark, example
rename builds
rename to zzcsi
Package zzcsi implements the Control Sequence Introducer (CSI) functions supported by Xterm-compatible terminals. The most commonly used functions are to erase a line or the screen, manipulate the cursor or set the display attributes such as foreground and background colors, bold or italics, but many more functions are available. See the xterm documentation for more information on CSI sequences.
See the package documentation for details, API reference and usage example (alternatively, on pkg.go.dev).
This is a package in the zzterm family of Go packages, which aim to help build terminal-based programs with a focus on speed and memory efficiency.
When using a buffer of sufficient capacity, CSI.AppendFunc
can append the
CSI escape sequence without allocation.
benchmark iter time/iter bytes alloc allocs
--------- ---- --------- ----------- ------
BenchmarkCSI/Func-4 9971707 116.00 ns/op 24 B/op 2 allocs/op
BenchmarkCSI/FuncString-4 8935776 135.00 ns/op 32 B/op 3 allocs/op
BenchmarkCSI/AppendFunc-4 20534767 58.80 ns/op 0 B/op 0 allocs/op
BenchmarkCSI/DecodeArgs-4 20537282 55.00 ns/op 0 B/op 0 allocs/op
The BSD 3-Clause license.