tui

package
v0.0.0-...-7e94697 Latest Latest
Warning

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

Go to latest
Published: Sep 5, 2023 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultKeyMap = KeyMap{
	Top: key.NewBinding(
		key.WithKeys("g"),
		key.WithHelp("g", "jump to top"),
	),
	Bottom: key.NewBinding(
		key.WithKeys("G"),
		key.WithHelp("G", "jump to bottom"),
	),
	Next: key.NewBinding(
		key.WithKeys("n"),
		key.WithHelp("n", "next comment"),
	),
	Prev: key.NewBinding(
		key.WithKeys("p"),
		key.WithHelp("p", "next comment"),
	),
	Quit: key.NewBinding(
		key.WithKeys("q", "ctrl-c"),
		key.WithHelp("q", "quit"),
	),
	LinksView: key.NewBinding(
		key.WithKeys("l"),
		key.WithHelp("l", "links view"),
	),
	LinksOpen: key.NewBinding(
		key.WithKeys("o"),
		key.WithHelp("o", "open link"),
	),
	LinksOpenXDG: key.NewBinding(
		key.WithKeys("O"),
		key.WithHelp("O", "open link with xdg-open"),
	),
	LinksYank: key.NewBinding(
		key.WithKeys("y"),
		key.WithHelp("y", "yank current selected link"),
	),
}
View Source
var DefaultListKeyMap = list.KeyMap{

	CursorUp: key.NewBinding(
		key.WithKeys("up", "k", "ctrl+p", "p"),
		key.WithHelp("↑/k", "up"),
	),
	CursorDown: key.NewBinding(
		key.WithKeys("down", "j", "ctrl+n", "n"),
		key.WithHelp("↓/j", "down"),
	),
	PrevPage: key.NewBinding(
		key.WithKeys("left", "pgup", "alt+v"),
		key.WithHelp("←/h/pgup", "prev page"),
	),
	NextPage: key.NewBinding(
		key.WithKeys("right", "pgdown", "ctrl+v", " "),
		key.WithHelp("→/l/pgdn", "next page"),
	),
	GoToStart: key.NewBinding(
		key.WithKeys("home", "g"),
		key.WithHelp("g/home", "go to start"),
	),
	GoToEnd: key.NewBinding(
		key.WithKeys("end", "G"),
		key.WithHelp("G/end", "go to end"),
	),
	Filter: key.NewBinding(
		key.WithKeys("/", "ctrl+s"),
		key.WithHelp("/", "filter"),
	),
	ClearFilter: key.NewBinding(
		key.WithKeys("esc"),
		key.WithHelp("esc", "clear filter"),
	),

	CancelWhileFiltering: key.NewBinding(
		key.WithKeys("esc", "ctrl+g"),
		key.WithHelp("esc", "cancel"),
	),
	AcceptWhileFiltering: key.NewBinding(
		key.WithKeys("enter", "tab", "shift+tab", "ctrl+k", "up", "ctrl+j", "down"),
		key.WithHelp("enter", "apply filter"),
	),

	ShowFullHelp: key.NewBinding(
		key.WithKeys("?"),
		key.WithHelp("?", "more"),
	),
	CloseFullHelp: key.NewBinding(
		key.WithKeys("?"),
		key.WithHelp("?", "close help"),
	),

	ForceQuit: key.NewBinding(key.WithKeys("ctrl+c")),
}
View Source
var DefaultViewportKeyMap = viewport.KeyMap{
	Up: key.NewBinding(
		key.WithKeys("k", "up", "ctrl+p", "p"),
		key.WithHelp("↑/k", "move up"),
	),
	Down: key.NewBinding(
		key.WithKeys("j", "down", "ctrl+n", "n"),
		key.WithHelp("↓/j", "move down"),
	),
	PageDown: key.NewBinding(
		key.WithKeys("pgdown", " ", "f", "ctrl+v"),
		key.WithHelp("f/pgdn", "page down"),
	),
	PageUp: key.NewBinding(
		key.WithKeys("pgup", "b", "alt+v"),
		key.WithHelp("b/pgup", "page up"),
	),
}

Functions

func RenderLoop

func RenderLoop(p *tea.Program)

Types

type KeyMap

type KeyMap struct {
	Top          key.Binding
	Bottom       key.Binding
	Next         key.Binding
	Prev         key.Binding
	Quit         key.Binding
	LinksView    key.Binding
	LinksOpen    key.Binding // TODO: move this elsewhere
	LinksOpenXDG key.Binding
	LinksYank    key.Binding
}

type Model

type Model struct {
	IsReady bool

	Viewport viewport.Model

	RawContent string // used to scrape the links
	// contains filtered or unexported fields
}

func (Model) Init

func (m Model) Init() tea.Cmd

func (Model) Update

func (m Model) Update(msg tea.Msg) (Model, tea.Cmd)

func (Model) View

func (m Model) View() string

Jump to

Keyboard shortcuts

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