You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
fx/keymap.go

137 lines
3.4 KiB
Go

package main
import "github.com/charmbracelet/bubbles/key"
type KeyMap struct {
Quit key.Binding
PageDown key.Binding
PageUp key.Binding
HalfPageUp key.Binding
HalfPageDown key.Binding
GotoTop key.Binding
GotoBottom key.Binding
Down key.Binding
Up key.Binding
Expand key.Binding
Collapse key.Binding
ExpandRecursively key.Binding
CollapseRecursively key.Binding
ExpandAll key.Binding
CollapseAll key.Binding
NextSibling key.Binding
PrevSibling key.Binding
ToggleWrap key.Binding
9 months ago
Yank key.Binding
Search key.Binding
9 months ago
SearchNext key.Binding
SearchPrev key.Binding
9 months ago
Dig key.Binding
}
var keyMap KeyMap
func init() {
keyMap = KeyMap{
Quit: key.NewBinding(
key.WithKeys("q", "ctrl+c", "esc"),
key.WithHelp("", "exit program"),
),
PageDown: key.NewBinding(
key.WithKeys("pgdown", " ", "f"),
key.WithHelp("pgdown, space, f", "page down"),
),
PageUp: key.NewBinding(
key.WithKeys("pgup", "b"),
key.WithHelp("pgup, b", "page up"),
),
HalfPageUp: key.NewBinding(
key.WithKeys("u", "ctrl+u"),
key.WithHelp("", "half page up"),
),
HalfPageDown: key.NewBinding(
key.WithKeys("d", "ctrl+d"),
key.WithHelp("", "half page down"),
),
GotoTop: key.NewBinding(
key.WithKeys("g"),
key.WithHelp("", "goto top"),
),
GotoBottom: key.NewBinding(
key.WithKeys("G"),
key.WithHelp("", "goto bottom"),
),
Down: key.NewBinding(
key.WithKeys("down", "j"),
key.WithHelp("", "down"),
),
Up: key.NewBinding(
key.WithKeys("up", "k"),
key.WithHelp("", "up"),
),
Expand: key.NewBinding(
9 months ago
key.WithKeys("right", "l", "enter"),
key.WithHelp("", "expand"),
),
Collapse: key.NewBinding(
9 months ago
key.WithKeys("left", "h", "backspace"),
key.WithHelp("", "collapse"),
),
ExpandRecursively: key.NewBinding(
9 months ago
key.WithKeys("L", "shift+right"),
key.WithHelp("", "expand recursively"),
),
CollapseRecursively: key.NewBinding(
9 months ago
key.WithKeys("H", "shift+left"),
key.WithHelp("", "collapse recursively"),
),
ExpandAll: key.NewBinding(
key.WithKeys("e"),
key.WithHelp("", "expand all"),
),
CollapseAll: key.NewBinding(
key.WithKeys("E"),
key.WithHelp("", "collapse all"),
),
NextSibling: key.NewBinding(
9 months ago
key.WithKeys("J", "shift+down"),
key.WithHelp("", "next sibling"),
),
PrevSibling: key.NewBinding(
9 months ago
key.WithKeys("K", "shift+up"),
key.WithHelp("", "previous sibling"),
),
ToggleWrap: key.NewBinding(
key.WithKeys("z"),
key.WithHelp("", "toggle strings wrap"),
),
9 months ago
Yank: key.NewBinding(
key.WithKeys("y"),
key.WithHelp("", "yank/copy"),
),
Search: key.NewBinding(
key.WithKeys("/"),
key.WithHelp("", "search regexp"),
),
9 months ago
SearchNext: key.NewBinding(
key.WithKeys("n"),
key.WithHelp("", "next search result"),
),
9 months ago
SearchPrev: key.NewBinding(
key.WithKeys("N"),
key.WithHelp("", "prev search result"),
),
9 months ago
Dig: key.NewBinding(
key.WithKeys("."),
key.WithHelp("", "dig json"),
),
}
}
9 months ago
var (
yankValue = key.NewBinding(key.WithKeys("y"))
yankKey = key.NewBinding(key.WithKeys("k"))
yankPath = key.NewBinding(key.WithKeys("p"))
arrowUp = key.NewBinding(key.WithKeys("up"))
arrowDown = key.NewBinding(key.WithKeys("down"))
9 months ago
)