package tui import ( "charm.land/bubbles/v2/key" ) type KeyMap struct { Quit key.Binding Clear key.Binding SwitchLang key.Binding ScrollUp key.Binding ScrollDown key.Binding ScrollTop key.Binding ScrollBottom key.Binding } func NewKeyMap() KeyMap { return KeyMap{ Quit: key.NewBinding( key.WithKeys("ctrl+c", "esc"), key.WithHelp("Ctrl+C", "退出"), ), Clear: key.NewBinding( key.WithKeys("ctrl+l"), key.WithHelp("Ctrl+L", "清空输入"), ), SwitchLang: key.NewBinding( key.WithKeys("ctrl+t"), key.WithHelp("Ctrl+T", "切换语言"), ), ScrollUp: key.NewBinding( key.WithKeys("up", "ctrl+up"), key.WithHelp("↑/Ctrl+↑", "上滚"), ), ScrollDown: key.NewBinding( key.WithKeys("down", "ctrl+down"), key.WithHelp("↓/Ctrl+↓", "下滚"), ), ScrollTop: key.NewBinding( key.WithKeys("home"), key.WithHelp("Home", "顶部"), ), ScrollBottom: key.NewBinding( key.WithKeys("end"), key.WithHelp("End", "底部"), ), } }