From b4e3fc02963f60968d8b5971f017ef309afa7039 Mon Sep 17 00:00:00 2001 From: Carlos Alexandro Becker Date: Thu, 25 Jul 2024 12:38:52 -0400 Subject: [PATCH 1/2] fix: select all keybinding Signed-off-by: Carlos Alexandro Becker --- choose/command.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/choose/command.go b/choose/command.go index 89c25bd1d..c78b4735d 100644 --- a/choose/command.go +++ b/choose/command.go @@ -44,6 +44,9 @@ func (o Options) Run() error { theme.Focused.SelectedPrefix = o.SelectedItemStyle.ToLipgloss().SetString(o.SelectedPrefix) theme.Focused.UnselectedPrefix = o.ItemStyle.ToLipgloss().SetString(o.UnselectedPrefix) + keymap := huh.NewDefaultKeyMap() + keymap.MultiSelect.ToggleAll.SetKeys("a", "ctrl+a") + for _, s := range o.Selected { for i, opt := range options { if s == opt.Key || s == opt.Value { @@ -52,15 +55,15 @@ func (o Options) Run() error { } } - if o.NoLimit { - o.Limit = len(o.Options) - } - width := max(widest(o.Options)+ max(lipgloss.Width(o.SelectedPrefix)+lipgloss.Width(o.UnselectedPrefix))+ lipgloss.Width(o.Cursor)+1, lipgloss.Width(o.Header)+widthBuffer) - if o.Limit > 1 { + if o.NoLimit { + o.Limit = 0 + } + + if o.Limit > 1 || o.NoLimit { var choices []string field := huh.NewMultiSelect[string](). From d729d3a9da122016251d38f34beb9485d8e34b13 Mon Sep 17 00:00:00 2001 From: Carlos Alexandro Becker Date: Thu, 25 Jul 2024 13:07:39 -0400 Subject: [PATCH 2/2] chore(deps): update gum Signed-off-by: Carlos Alexandro Becker --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index f720d719b..c4d892790 100644 --- a/go.mod +++ b/go.mod @@ -8,7 +8,7 @@ require ( github.com/charmbracelet/bubbles v0.18.0 github.com/charmbracelet/bubbletea v0.26.7-0.20240716165615-7d708384a105 github.com/charmbracelet/glamour v0.7.0 - github.com/charmbracelet/huh v0.5.2 + github.com/charmbracelet/huh v0.5.3-0.20240725170654-1926040ccf04 github.com/charmbracelet/lipgloss v0.12.1 github.com/charmbracelet/log v0.4.0 github.com/charmbracelet/x/ansi v0.1.4 diff --git a/go.sum b/go.sum index 4c66da036..46ef29311 100644 --- a/go.sum +++ b/go.sum @@ -22,8 +22,8 @@ github.com/charmbracelet/bubbletea v0.26.7-0.20240716165615-7d708384a105 h1:ye4X github.com/charmbracelet/bubbletea v0.26.7-0.20240716165615-7d708384a105/go.mod h1:gw7FxN8J9u7IAlwc1ab1GnbfOMGExC9iI0e1t2SHs6I= github.com/charmbracelet/glamour v0.7.0 h1:2BtKGZ4iVJCDfMF229EzbeR1QRKLWztO9dMtjmqZSng= github.com/charmbracelet/glamour v0.7.0/go.mod h1:jUMh5MeihljJPQbJ/wf4ldw2+yBP59+ctV36jASy7ps= -github.com/charmbracelet/huh v0.5.2 h1:ofeNkJ4iaFnzv46Njhx896DzLUe/j0L2QAf8znwzX4c= -github.com/charmbracelet/huh v0.5.2/go.mod h1:Sf7dY0oAn6N/e3sXJFtFX9hdQLrUdO3z7AYollG9bAM= +github.com/charmbracelet/huh v0.5.3-0.20240725170654-1926040ccf04 h1:4gl2RNDqRh0x5vGO0EPKOLXH+iEyHwq+36KNeuQ1/YI= +github.com/charmbracelet/huh v0.5.3-0.20240725170654-1926040ccf04/go.mod h1:Sf7dY0oAn6N/e3sXJFtFX9hdQLrUdO3z7AYollG9bAM= github.com/charmbracelet/lipgloss v0.12.1 h1:/gmzszl+pedQpjCOH+wFkZr/N90Snz40J/NR7A0zQcs= github.com/charmbracelet/lipgloss v0.12.1/go.mod h1:V2CiwIuhx9S1S1ZlADfOj9HmxeMAORuz5izHb0zGbB8= github.com/charmbracelet/log v0.4.0 h1:G9bQAcx8rWA2T3pWvx7YtPTPwgqpk7D68BX21IRW8ZM=