A simple BubbleTea bubble component to generate marquees.
First, initialize a new marquee, then set the text to display, and optionally the width. If width is not defined, it's assumed from the text's length.
func NewMyModel() MyModel {
m := marquee.New()
m.SetText("Hello World")
m.SetWidth(100) // optional
return MyModel{marquee: m}
}
It supports two scrolling directions, left and right.
m.ScrollDirection = marquee.Right
You can also specify the scrolling speed (defaults to 250ms).
m.ScrollSpeed = 50 * time.Millisecond
And you can make it continuous:
m.SetContinuous(true)
Then, call scroll in your Init()
.
func(m MyModel) Init() tea.Cmd {
return m.marquee.Scroll
}
That's it. Check the documentation and the example directory for more detailed usage.
See LICENSE.