Releases: charmbracelet/gum
v0.14.1
What's Changed
- Show help with Huh? by @maaslalani in #587
- Support using the Home/End keys in pager by @lzm0 in #548
Fixes
- Handle
huh?
user aborted error by @MikaelFangel in #578 - Cursor styling by @MikaelFangel in #592
- Re-introduce ESC for
gum write
by @MikaelFangel in #579
New Contributors
- @CodeZea1ot made their first contribution in #542
- @camcui made their first contribution in #537
- @lzm0 made their first contribution in #548
Full Changelog: v0.14.0...v0.14.1
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or Slack.
v0.14.0
Gum + Huh?
Gum v0.14.0
is a major internal refactor which uses huh?
internally for choose
, confirm
, file
, input
, write
inputs!
All functionality remains the same, but you will notice some minor visual changes / improvements.
If you haven't already, check it out:
Changes
- Use Huh for Gum Choose by @maaslalani in #521
- Use Huh for Gum Confirm by @maaslalani in #522
- Use Huh for Gum File by @maaslalani in #523
- Use Huh for Gum Input by @maaslalani in #524
- Use Huh for Gum Write by @maaslalani in #525
- fix(spin): Output Pipes if Timeout Occurs by @hopefulTex in #461
- Document
gum log --time
by @ernstki in #472 - feat(spin): Add support for
--show-error
for the spinner. (rebase #440) by @pingiun in #518
New Contributors
- @ernstki made their first contribution in #472
- @pingiun made their first contribution in #518
- @dungle-scrubs made their first contribution in #513
Full Changelog: v0.13.0...v0.14.0
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or Slack.
v0.13.0
Changelog
New Features
Add --select-if-one
flag to gum choose
and gum filter
.
> gum choose --select-if-one "option"
> option
Bug fixes
- 5c65944: (fix): ShowOutput flag displays in realtime (#405) (@hopefulTex)
Verifying the artifacts
First, download the checksums.txt
file, for example, with wget
:
wget 'https://github.com/charmbracelet/gum/releases/download/v0.13.0/checksums.txt'
Then, verify it using cosign
:
cosign verify-blob \
--certificate-identity 'https://github.com/charmbracelet/meta/.github/workflows/goreleaser.yml@refs/heads/main' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
--cert 'https://github.com/charmbracelet/gum/releases/download/v0.13.0/checksums.txt.pem' \
--signature 'https://github.com/charmbracelet/gum/releases/download/v0.13.0/checksums.txt.sig' \
./checksums.txt
If the output is Verified OK
, you can safely use it to verify the checksums of other artifacts you downloaded from the release using sha256sum
:
sha256sum --ignore-missing -c checksums.txt
Done! You artifacts are now verified!
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.
v0.12.0
Gum Log πͺ΅
Version 0.12.0 of gum features a brand new log
command. Gum log
logs messages to the terminal at using different levels and styling using the charmbracelet/log
library.
To get started, simply run:
gum log
# Log some debug information.
gum log --structured --level debug "Creating file..." name file.txt
# DEBUG Unable to create file. name=temp.txt
# Log some error.
gum log --structured --level error "Unable to create file." name file.txt
# ERROR Unable to create file. name=temp.txt
See charmbracelet/log
for more usage.
What's Changed
- Pretty Table Print by @maaslalani in #436
- Log command by @aymanbagabas in #449
- Avoid reading from stdin if
--value
is being used by @piero-vic in #448 - Made filter work with lists as choose by @MikaelFangel in #424
New Contributors
- @cglong made their first contribution in #401
- @docwhat made their first contribution in #433
- @piero-vic made their first contribution in #448
Full Changelog: v0.11.0...v0.12.0
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.
v0.11.0
Pager Search, Timeouts, and Bug fixes
This release of Gum includes several features and bug fixes to make your Gum usage more smooooth! π§
Whatβs Changed
New
- Pager search functionality (by @MikaelFangel) in #321
- Strip ANSI for
gum filter
andgum choose
when output is not a TTY - Non-positive widths will cause
gum write
will use the entire terminal width GUM_FORMAT_THEME
/GUM_FORMAT_LANGUAGE
environment variables--no-sort
flag forgum filter
- Customizable cursor modes
- Customizable cursor line text
- Add
--timeout
flag to all subcommands (by @deicon)
Fixed
- Respect file path argument in filepicker
Other stuff
New Contributors
- @hopefulTex made their first contribution in #303
- @vahnrr made their first contribution in #374
- @kennyp made their first contribution in #387
Full Changelog: v0.10.0...v0.11.0
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.
v0.10.0
Truecolor Support
Gum historically was limited to ANSI256 colors, but no longer is this the case!
With v0.10.0
, gum
can now display truecolor if your terminal emulator supports it! π¨
Try it out with gum style
:
gum style --padding "3 10" --margin 2 --background "#6a51ff" --foreground "#ff6dff" "The best colors are true"
Windows Support
Windows users rejoice! Gum v0.10.0
solves a variety of issues allowing gum
to work on Powershell and Windows. πͺ
Don't believe us? Take a look for yourself:
Context Headers
With Gum v0.10.0
, you can add context with --header
flags in gum choose
and gum filter
. To get started:
gum choose --header "Pick your starter PokΓ©mon" "Bulbasaur" "Charmander" "Squirtle"
New Features
- Keep order of selected items in
gum choose
with the--ordered
flag. - Use page up / down key bindings in
gum file
gum choose
andgum filter
can select using ctrl+space--header
flags forgum choose
andgum filter
- Pass programming language for
gum format --type code
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.
v0.9.0
Customize Format Theme π
This brand new release of Gum features minor improvements and additional options, as well as some sweet bug fixes!
With v0.9.0
, you can now customize your glamour theme to make gum format
even more glamorous.
To get started just run one of the following:
gum format --theme dark < README.md
gum format --theme dracula < README.md
gum format --theme notty < README.md
Note
You can also pass your own custom glamour JSON theme file to the--theme
flag for even more customization.
New Features
gum choose
now supports ctrl+j / ctrl+k keybindingsgum choose
can use tab to toggle selection- add
--file
/--directory
flags to select each ingum file
- ability to add
--header
values for textinput gum pager
--soft-wrap
optiongum style
pass input to style over stdin- allow customization of glamour theme in
gum format
Bug fixes
--all
option defaults to false (matchingls
)- exit with status 130 if escape key press on
gum write
- symlink directory follows link in
gum file
- allow exact match (non-fuzzy) in
gum filter
Full Changelog: v0.8.0...v0.9.0
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.
v0.8.0
Brand New Flavours!
Version v0.8.0
of Gum comes packed with three brand-new gum
subcommands, as well as a handful of other fixes and improvements.
File
gum file [directory]
With this new gum
sub-command, you can prompt users to select a file, which returns the absolute path of the file selected.
The command will start in the current directory or the directory passed as an argument but users may traverse the file tree up or down.
Table
gum table < table.csv
Display and select a row of tabular data with gum table
.
Pager
gum pager < README.md
Scroll through long form content with gum pager
.
Changelog
New Features
- 2bea4dc: feat(file): gum file to pick files (@maaslalani)
- a82d5af: feat(filter): add reverse layout (#177) (@dhruvmanila)
- 430ab45: feat(pager): gum pager for scrolling through long documents (@maaslalani)
- bdd86d5: feat(table): gum table for tabular data (@maaslalani)
- f13b5b6: feat(write): use --header to display a label above the textarea (@keevan)
Bug fixes
Full Changelog: v0.7.0...v0.8.0
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Slack.
v0.7.0
Pre-selected Entries and Spinner Alignments!
- choose:
--selected
flag to preselect entries ingum choose
by @vanielf in #112 - filter: shift+tab toggles selection and moves up in
gum filter --no-limit
@dhruvmanila in #167 - spin:
--align (left|right)
places spinner to the right or left of the title by @gregkh in #164
Full Changelog: v0.6.0...v0.7.0
New Contributors
- @vanielf made their first contribution in #112
- @IllustratedMan-code made their first contribution in #123
- @eetann made their first contribution in #144
- @dependabot made their first contribution in #159
- @solomon-b made their first contribution in #160
- @NNBnh made their first contribution in #163
- @dhruvmanila made their first contribution in #167
- @mathaou made their first contribution in #166
- @gregkh made their first contribution in #164
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Slack.
v0.6.0
Gum Filter Multi-select
Gum filter can now accept a --limit
(defaults to 1) or --no-limit
flag for allowing multiple selections during a filter. If the limit is greater than 1 (or --no-limit
) you can press tab to select an item and press enter to confirm all the selections.
gum filter --no-limit
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Slack.