tcell

package
v0.22.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 9, 2026 License: Apache-2.0 Imports: 10 Imported by: 63

Documentation

Index

Constants

View Source
const DefaultColorMode = terminalapi.ColorMode256

DefaultColorMode is the default value for the ColorMode option.

Variables

This section is empty.

Functions

This section is empty.

Types

type Option

type Option interface {
	// contains filtered or unexported methods
}

Option is used to provide options.

func ClearStyle

func ClearStyle(fg, bg cell.Color) Option

ClearStyle sets the style to use for tcell when clearing the screen. Defaults to ColorDefault for foreground and background.

func ColorMode

func ColorMode(cm terminalapi.ColorMode) Option

ColorMode sets the terminal color mode. Defaults to DefaultColorMode.

type Terminal

type Terminal struct {
	// contains filtered or unexported fields
}

Terminal provides input and output to a real terminal. Wraps the gdamore/tcell terminal implementation. This object is not thread-safe. Implements terminalapi.Terminal.

func New

func New(opts ...Option) (*Terminal, error)

New returns a new tcell based Terminal. Call Close() when the terminal isn't required anymore.

func (*Terminal) Clear

func (t *Terminal) Clear(opts ...cell.Option) error

Clear implements terminalapi.Terminal.Clear.

func (*Terminal) Close

func (t *Terminal) Close()

Close closes the terminal, should be called when the terminal isn't required anymore to return the screen to a sane state. Implements terminalapi.Terminal.Close.

func (*Terminal) DisableMouse added in v0.21.0

func (t *Terminal) DisableMouse()

DisableMouse disables mouse capture so the host terminal can select text.

func (*Terminal) EnableMouse added in v0.21.0

func (t *Terminal) EnableMouse()

EnableMouse enables mouse capture for focus and click handling.

func (*Terminal) EnableMouseMotion added in v0.21.0

func (t *Terminal) EnableMouseMotion()

EnableMouseMotion enables mouse capture including click and drag events. Standalone hover motion isn't enabled because Termdash represents tcell's ButtonNone event as a release, which would prematurely cancel drag gestures.

func (*Terminal) Event

func (t *Terminal) Event(ctx context.Context) terminalapi.Event

Event implements terminalapi.Terminal.Event.

func (*Terminal) Flush

func (t *Terminal) Flush() error

Flush implements terminalapi.Terminal.Flush.

func (*Terminal) HideCursor

func (t *Terminal) HideCursor()

HideCursor implements terminalapi.Terminal.HideCursor.

func (*Terminal) MouseEnabled added in v0.21.0

func (t *Terminal) MouseEnabled() bool

MouseEnabled reports whether mouse capture is currently enabled.

func (*Terminal) SetCell

func (t *Terminal) SetCell(p image.Point, r rune, opts ...cell.Option) error

SetCell implements terminalapi.Terminal.SetCell.

func (*Terminal) SetCursor

func (t *Terminal) SetCursor(p image.Point)

SetCursor implements terminalapi.Terminal.SetCursor.

func (*Terminal) Size

func (t *Terminal) Size() image.Point

Size implements terminalapi.Terminal.Size.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL