Documentation ¶
Overview ¶
Package cell implements cell options and attributes.
A cell is the smallest point on the terminal.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Buffer ¶
type Buffer [][]*Cell
Buffer is a 2-D buffer of cells. The axes increase right and down. Uninitialized buffer is invalid, use NewBuffer to create an instance. Don't set cells directly, use the SetCell method instead which safely handles limits and wide unicode characters.
func (Buffer) IsPartial ¶
IsPartial returns true if the cell at the specified point holds a part of a full width rune from a previous cell. See http://www.unicode.org/reports/tr11/.
func (Buffer) RemWidth ¶
RemWidth returns the remaining width (horizontal row of cells) available from and inclusive of the specified point.
func (Buffer) SetCell ¶
SetCell sets the rune of the specified cell in the buffer. Returns the number of cells the rune occupies, wide runes can occupy multiple cells when printed on the terminal. See http://www.unicode.org/reports/tr11/. Use the options to specify which attributes to modify, if an attribute option isn't specified, the attribute retains its previous value.
type Cell ¶
type Cell struct { // Rune is the rune stored in the cell. Rune rune // Opts are the cell options. Opts *Options }
Cell represents a single cell on the terminal.
type Color ¶
type Color int
Color is the color of a cell.
const ( ColorDefault Color = iota // 8 "system" colors. ColorBlack ColorRed ColorGreen ColorYellow ColorBlue ColorMagenta ColorCyan ColorWhite )
The supported terminal colors.
func ColorNumber ¶
ColorNumber sets a color using its number. Make sure your terminal is set to a terminalapi.ColorMode that supports the target color. The provided value must be in the range 0-255. Larger or smaller values will be reset to the default color.
For reference on these colors see the Xterm number in: https://jonasjacek.github.io/colors/
func ColorRGB24 ¶
ColorRGB24 sets a color using the 24 bit web color scheme. Make sure your terminal is set to the terminalapi.ColorMode256 mode. The provided values (r, g, b) must be in the range 0-255. Larger or smaller values will be reset to the default color.
For reference on these colors see the RGB column in: https://jonasjacek.github.io/colors/
func ColorRGB6 ¶
ColorRGB6 sets a color using the 6x6x6 terminal color. Make sure your terminal is set to the terminalapi.ColorMode256 mode. The provided values (r, g, b) must be in the range 0-5. Larger or smaller values will be reset to the default color.
For reference on these colors see: https://superuser.com/questions/783656/whats-the-deal-with-terminal-colors
Directories ¶
Path | Synopsis |
---|---|
Package runewidth is a wrapper over github.com/mattn/go-runewidth which gives different treatment to certain runes with ambiguous width.
|
Package runewidth is a wrapper over github.com/mattn/go-runewidth which gives different treatment to certain runes with ambiguous width. |