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

158 lines
4.0 KiB
Go

10 months ago
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
4 months ago
Help key.Binding
10 months ago
Expand key.Binding
Collapse key.Binding
ExpandRecursively key.Binding
CollapseRecursively key.Binding
ExpandAll key.Binding
CollapseAll key.Binding
CollapseLevel key.Binding
10 months ago
NextSibling key.Binding
PrevSibling key.Binding
ToggleWrap key.Binding
10 months ago
Yank key.Binding
10 months ago
Search key.Binding
10 months ago
SearchNext key.Binding
SearchPrev key.Binding
4 months ago
Preview key.Binding
4 months ago
Print key.Binding
10 months ago
Dig key.Binding
10 months ago
}
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", "home"),
10 months ago
key.WithHelp("", "goto top"),
),
GotoBottom: key.NewBinding(
key.WithKeys("G", "end"),
10 months ago
key.WithHelp("", "goto bottom"),
),
Down: key.NewBinding(
key.WithKeys("down", "j"),
key.WithHelp("", "down"),
),
Up: key.NewBinding(
key.WithKeys("up", "k"),
key.WithHelp("", "up"),
),
4 months ago
Help: key.NewBinding(
key.WithKeys("?"),
key.WithHelp("", "show help"),
),
10 months ago
Expand: key.NewBinding(
10 months ago
key.WithKeys("right", "l", "enter"),
10 months ago
key.WithHelp("", "expand"),
),
Collapse: key.NewBinding(
10 months ago
key.WithKeys("left", "h", "backspace"),
10 months ago
key.WithHelp("", "collapse"),
),
ExpandRecursively: key.NewBinding(
10 months ago
key.WithKeys("L", "shift+right"),
10 months ago
key.WithHelp("", "expand recursively"),
),
CollapseRecursively: key.NewBinding(
10 months ago
key.WithKeys("H", "shift+left"),
10 months ago
key.WithHelp("", "collapse recursively"),
),
ExpandAll: key.NewBinding(
key.WithKeys("e"),
key.WithHelp("", "expand all"),
),
CollapseAll: key.NewBinding(
key.WithKeys("E"),
key.WithHelp("", "collapse all"),
),
CollapseLevel: key.NewBinding(
key.WithKeys("1", "2", "3", "4", "5", "6", "7", "8", "9"),
key.WithHelp("", "collapse to nth level"),
),
10 months ago
NextSibling: key.NewBinding(
10 months ago
key.WithKeys("J", "shift+down"),
10 months ago
key.WithHelp("", "next sibling"),
),
PrevSibling: key.NewBinding(
10 months ago
key.WithKeys("K", "shift+up"),
10 months ago
key.WithHelp("", "previous sibling"),
),
ToggleWrap: key.NewBinding(
key.WithKeys("z"),
key.WithHelp("", "toggle strings wrap"),
),
10 months ago
Yank: key.NewBinding(
key.WithKeys("y"),
key.WithHelp("", "yank/copy"),
),
10 months ago
Search: key.NewBinding(
key.WithKeys("/"),
key.WithHelp("", "search regexp"),
),
10 months ago
SearchNext: key.NewBinding(
10 months ago
key.WithKeys("n"),
key.WithHelp("", "next search result"),
),
10 months ago
SearchPrev: key.NewBinding(
10 months ago
key.WithKeys("N"),
key.WithHelp("", "prev search result"),
),
4 months ago
Preview: key.NewBinding(
key.WithKeys("p"),
4 months ago
key.WithHelp("", "preview"),
),
Print: key.NewBinding(
key.WithKeys("P"),
key.WithHelp("", "print"),
4 months ago
),
10 months ago
Dig: key.NewBinding(
key.WithKeys("."),
4 months ago
key.WithHelp("", "dig"),
10 months ago
),
10 months ago
}
}
9 months ago
var (
yankValueY = key.NewBinding(key.WithKeys("y"))
yankValueV = key.NewBinding(key.WithKeys("v"))
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
)