- 升级 charm.land/lipgloss/v2 v1.1.0 -> v2.0.2 - 升级 charm.land/bubbletea/v2 v1.3.10 -> v2.0.2 - 升级 charm.land/bubbles/v2 -> v2.1.0 - 新增翻译卡片组件:元信息行(Tokens/耗时/模型)、用户输入(碳黑背景)、翻译结果 - 卡片组件间距 5px - 重构 model.go 适配 v2 API - 更新 keys.go, messages.go, styles.go
49 lines
1.0 KiB
Go
49 lines
1.0 KiB
Go
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", "底部"),
|
|
),
|
|
}
|
|
}
|