Skip to content

Commit 9db5c7f

Browse files
authored
fix: select all keybinding (#639)
* fix: select all keybinding Signed-off-by: Carlos Alexandro Becker <[email protected]> * chore(deps): update gum Signed-off-by: Carlos Alexandro Becker <[email protected]> --------- Signed-off-by: Carlos Alexandro Becker <[email protected]>
1 parent 046a4d3 commit 9db5c7f

File tree

3 files changed

+11
-8
lines changed

3 files changed

+11
-8
lines changed

choose/command.go

+8-5
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,9 @@ func (o Options) Run() error {
4444
theme.Focused.SelectedPrefix = o.SelectedItemStyle.ToLipgloss().SetString(o.SelectedPrefix)
4545
theme.Focused.UnselectedPrefix = o.ItemStyle.ToLipgloss().SetString(o.UnselectedPrefix)
4646

47+
keymap := huh.NewDefaultKeyMap()
48+
keymap.MultiSelect.ToggleAll.SetKeys("a", "ctrl+a")
49+
4750
for _, s := range o.Selected {
4851
for i, opt := range options {
4952
if s == opt.Key || s == opt.Value {
@@ -52,15 +55,15 @@ func (o Options) Run() error {
5255
}
5356
}
5457

55-
if o.NoLimit {
56-
o.Limit = len(o.Options)
57-
}
58-
5958
width := max(widest(o.Options)+
6059
max(lipgloss.Width(o.SelectedPrefix)+lipgloss.Width(o.UnselectedPrefix))+
6160
lipgloss.Width(o.Cursor)+1, lipgloss.Width(o.Header)+widthBuffer)
6261

63-
if o.Limit > 1 {
62+
if o.NoLimit {
63+
o.Limit = 0
64+
}
65+
66+
if o.Limit > 1 || o.NoLimit {
6467
var choices []string
6568

6669
field := huh.NewMultiSelect[string]().

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ require (
88
github.com/charmbracelet/bubbles v0.18.0
99
github.com/charmbracelet/bubbletea v0.26.7-0.20240716165615-7d708384a105
1010
github.com/charmbracelet/glamour v0.7.0
11-
github.com/charmbracelet/huh v0.5.2
11+
github.com/charmbracelet/huh v0.5.3-0.20240725170654-1926040ccf04
1212
github.com/charmbracelet/lipgloss v0.12.1
1313
github.com/charmbracelet/log v0.4.0
1414
github.com/charmbracelet/x/ansi v0.1.4

go.sum

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ github.com/charmbracelet/bubbletea v0.26.7-0.20240716165615-7d708384a105 h1:ye4X
2222
github.com/charmbracelet/bubbletea v0.26.7-0.20240716165615-7d708384a105/go.mod h1:gw7FxN8J9u7IAlwc1ab1GnbfOMGExC9iI0e1t2SHs6I=
2323
github.com/charmbracelet/glamour v0.7.0 h1:2BtKGZ4iVJCDfMF229EzbeR1QRKLWztO9dMtjmqZSng=
2424
github.com/charmbracelet/glamour v0.7.0/go.mod h1:jUMh5MeihljJPQbJ/wf4ldw2+yBP59+ctV36jASy7ps=
25-
github.com/charmbracelet/huh v0.5.2 h1:ofeNkJ4iaFnzv46Njhx896DzLUe/j0L2QAf8znwzX4c=
26-
github.com/charmbracelet/huh v0.5.2/go.mod h1:Sf7dY0oAn6N/e3sXJFtFX9hdQLrUdO3z7AYollG9bAM=
25+
github.com/charmbracelet/huh v0.5.3-0.20240725170654-1926040ccf04 h1:4gl2RNDqRh0x5vGO0EPKOLXH+iEyHwq+36KNeuQ1/YI=
26+
github.com/charmbracelet/huh v0.5.3-0.20240725170654-1926040ccf04/go.mod h1:Sf7dY0oAn6N/e3sXJFtFX9hdQLrUdO3z7AYollG9bAM=
2727
github.com/charmbracelet/lipgloss v0.12.1 h1:/gmzszl+pedQpjCOH+wFkZr/N90Snz40J/NR7A0zQcs=
2828
github.com/charmbracelet/lipgloss v0.12.1/go.mod h1:V2CiwIuhx9S1S1ZlADfOj9HmxeMAORuz5izHb0zGbB8=
2929
github.com/charmbracelet/log v0.4.0 h1:G9bQAcx8rWA2T3pWvx7YtPTPwgqpk7D68BX21IRW8ZM=

0 commit comments

Comments
 (0)