Documentation
¶
Index ¶
- func Sync(m Model) tea.Cmddeprecated
- func ViewDown(m Model, lines []string) tea.Cmd
- func ViewUp(m Model, lines []string) tea.Cmd
- type KeyMap
- type Model
- func (m Model) AtBottom() bool
- func (m Model) AtTop() bool
- func (m *Model) GotoBottom() (lines []string)
- func (m *Model) GotoTop() (lines []string)
- func (m *Model) HalfViewDown() (lines []string)
- func (m *Model) HalfViewUp() (lines []string)
- func (m Model) HorizontalScrollPercent() float64
- func (m Model) Init() tea.Cmd
- func (m *Model) LineDown(n int) (lines []string)
- func (m *Model) LineUp(n int) (lines []string)
- func (m *Model) MoveLeft(cols int)
- func (m *Model) MoveRight(cols int)
- func (m Model) PastBottom() bool
- func (m *Model) ResetIndent()
- func (m Model) ScrollPercent() float64
- func (m *Model) SetContent(s string)
- func (m *Model) SetHorizontalStep(n int)
- func (m *Model) SetYOffset(n int)
- func (m Model) TotalLineCount() int
- func (m Model) Update(msg tea.Msg) (Model, tea.Cmd)
- func (m Model) View() string
- func (m *Model) ViewDown() []string
- func (m *Model) ViewUp() []string
- func (m Model) VisibleLineCount() int
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Sync
deprecated
Sync tells the renderer where the viewport will be located and requests a render of the current state of the viewport. It should be called for the first render and after a window resize.
For high performance rendering only.
Deprecated: high performance rendering is deprecated in Bubble Tea.
Types ¶
type KeyMap ¶
type KeyMap struct {
PageDown key.Binding
PageUp key.Binding
HalfPageUp key.Binding
HalfPageDown key.Binding
Down key.Binding
Up key.Binding
Left key.Binding
Right key.Binding
}
KeyMap defines the keybindings for the viewport. Note that you don't necessary need to use keybindings at all; the viewport can be controlled programmatically with methods like Model.LineDown(1). See the GoDocs for details.
func DefaultKeyMap ¶
func DefaultKeyMap() KeyMap
DefaultKeyMap returns a set of pager-like default keybindings.
type Model ¶
type Model struct {
Width int
Height int
KeyMap KeyMap
// Whether or not to respond to the mouse. The mouse must be enabled in
// Bubble Tea for this to work. For details, see the Bubble Tea docs.
MouseWheelEnabled bool
// The number of lines the mouse wheel will scroll. By default, this is 3.
MouseWheelDelta int
// YOffset is the vertical scroll position.
YOffset int
// YPosition is the position of the viewport in relation to the terminal
// window. It's used in high performance rendering only.
YPosition int
// Style applies a lipgloss style to the viewport. Realistically, it's most
// useful for setting borders, margins and padding.
Style lipgloss.Style
// HighPerformanceRendering bypasses the normal Bubble Tea renderer to
// provide higher performance rendering. Most of the time the normal Bubble
// Tea rendering methods will suffice, but if you're passing content with
// a lot of ANSI escape codes you may see improved rendering in certain
// terminals with this enabled.
//
// This should only be used in program occupying the entire terminal,
// which is usually via the alternate screen buffer.
//
// Deprecated: high performance rendering is now deprecated in Bubble Tea.
HighPerformanceRendering bool
// contains filtered or unexported fields
}
Model is the Bubble Tea model for this viewport element.
func (Model) AtBottom ¶
AtBottom returns whether or not the viewport is at or past the very bottom position.
func (*Model) GotoBottom ¶
GotoBottom sets the viewport to the bottom position.
func (*Model) HalfViewDown ¶
HalfViewDown moves the view down by half the height of the viewport.
func (*Model) HalfViewUp ¶
HalfViewUp moves the view up by half the height of the viewport.
func (Model) HorizontalScrollPercent ¶
HorizontalScrollPercent returns the amount horizontally scrolled as a float between 0 and 1.
func (*Model) LineUp ¶
LineUp moves the view down by the given number of lines. Returns the new lines to show.
func (Model) PastBottom ¶
PastBottom returns whether or not the viewport is scrolled beyond the last line. This can happen when adjusting the viewport height.
func (Model) ScrollPercent ¶
ScrollPercent returns the amount scrolled as a float between 0 and 1.
func (*Model) SetContent ¶
SetContent set the pager's text content.
func (*Model) SetHorizontalStep ¶
SetHorizontalStep sets the amount of cells that the viewport moves in the default viewport keymapping. If set to 0 or less, horizontal scrolling is disabled.
func (Model) TotalLineCount ¶
TotalLineCount returns the total number of lines (both hidden and visible) within the viewport.
func (*Model) ViewDown ¶
ViewDown moves the view down by the number of lines in the viewport. Basically, "page down".
func (*Model) ViewUp ¶
ViewUp moves the view up by one height of the viewport. Basically, "page up".
func (Model) VisibleLineCount ¶
VisibleLineCount returns the number of the visible lines within the viewport.