8:05 Bash has support for arrays, rather than doing tr, you can use branches=($(git branch)) This will take branches as an array Then use for for branch in {branches[@]}; do echo "the branch is $branch"; done
Just a reminder, while it may not look as fancy, bash does have the built-in _select_ operator for simple menu choices. select branch in "${branches[@]}"; do echo "$branch" break done Other comments below detail how to get the input into an array. But you could also just use an unquoted $(git branch) in this case, and rely on IFS word splitting to break up the list.
Also, any time you start to call up tr, think about using parameter substitution instead. Ignoring the array stuff for now: branches=$(git branch) echo "${branches// /$' '}" And to handle unset parameters, you can simply set a default value. limit=${1:-1}
@@andrew-burgess it's super!! Could listen to this all day 👍🏻 On a slightly unrelated note, your pacing is really good too! I feel like you took just the right amount of time to explain what you were doing, that even though I haven't touched bash in 3 years, I was able to follow and learn a ton!
@@andrew-burgess you are in for a treat, dmenu and rofi has so many wide use cases other than just app launching. I'll add some examples here, when I am on my PC
Great videos, I have looking for something to level up my scripts, and looks like this a very good and fun option. Btw, your keyboard sounds pretty good. What's the model? :) Cheers!
красивый мужик, знает баш и работает в виме, надо его срочно замуж выдавать. если он показал всё что делает гам то получается он умеет форматировать текст и создавать чекбоксы. ахуеть конечно функционал. за собой он наверное тащит ncurses а что же еще. честно говоря, если мне захочется пользоваться псевдографическим интерфейсом, я наверное сам руками его напишу потому что это весело, но гам тоже установлю, потому что мне тоже будет нужен ncurses. кто будет пользовааться гамом кроме самой чарм и тех кто его рекламирует? наверное никто, в этом наверное и смысл этих программ, это симулякры НО вот я например посомтрел это видео налюбовался на двойной подбородок этого красавицы мужчины и теперь мне тоже хочется начать писать на баш. баш вообще крутой язык, совершенно неинтуитивный, но некоторые решения там сделаны так как я бы сам сделал если бы изобретал собственный баш. лаконичный язык.
Great video. Gum does look really nice, I've done this sort of stuff before using the old ncurses based dialog command and it's pretty painful. However: "Bash doesn't really have great support for lists or arrays" ... not _entirely_ true, here's another way to skin that particular spud... #!/bin/bash get_branches() { echo "branch_one branch_two branch_three" } read -r -a branches
We're so flattered! Thanks for the awesome video on Gum
8:05 Bash has support for arrays, rather than doing tr, you can use
branches=($(git branch))
This will take branches as an array
Then use for
for branch in {branches[@]}; do echo "the branch is $branch"; done
it's such a pleasure seeing you going through your thinking process and coding things out
fyi you can use `gum filter --no-limit` and use the fuzzy finder too. Then you would use Tab instead of Space for the multi selection :)
Just a reminder, while it may not look as fancy, bash does have the built-in _select_ operator for simple menu choices.
select branch in "${branches[@]}"; do
echo "$branch"
break
done
Other comments below detail how to get the input into an array. But you could also just use an unquoted $(git branch) in this case, and rely on IFS word splitting to break up the list.
Also, any time you start to call up tr, think about using parameter substitution instead. Ignoring the array stuff for now:
branches=$(git branch)
echo "${branches// /$'
'}"
And to handle unset parameters, you can simply set a default value.
limit=${1:-1}
Pleasantly surprised with this content!! Seriously cool and had never heard about this before!
Thanks!
BTW, what do you think of the audio on this one? Made some changes to my mic setup and my post processing!
@@andrew-burgess it's super!! Could listen to this all day 👍🏻 On a slightly unrelated note, your pacing is really good too! I feel like you took just the right amount of time to explain what you were doing, that even though I haven't touched bash in 3 years, I was able to follow and learn a ton!
@@mmmikem That means a lot to me! Thanks so much, glad to have you watching :)
Nice! I think it would be helpfull in my next bash task! Thank you!
Gum's use case looks somewhat similar to that of dmenu and rofi, will definitely give this a try by updating some of my existing dmenu scripts to gum
That’s cool, I’ve only heard of dmenu and rofi in the context of Linux app launchers. Are you referring yo something else?
@@andrew-burgess you are in for a treat, dmenu and rofi has so many wide use cases other than just app launching. I'll add some examples here, when I am on my PC
@@blank001 2 months ago...
@@leo848 it can work as app launcher, clipboard manager, emoji picker, network manager, logout manager, maybe more, But I use it for these only.
@@blank001You on that PC yet?... 😔
How do you to always make interesting topics video.
This is amazing tool.
what are the options for doing this in python? I've seen rich but it doesn't seem quite as powerful as this or bubbletea.
very cool and useful
great, I am too dumb to ask how its predicting and giving suggestions in vim? any plugins?
Yep! Check out shaky.sh/tools/
@@andrew-burgess awesome I will check it out also , just for this prompt response , u got my sub :)
Great videos, I have looking for something to level up my scripts, and looks like this a very good and fun option.
Btw, your keyboard sounds pretty good. What's the model? :) Cheers!
Thanks! I’m using the Drop ALT keyboard.
Not a fan of how the echo data stays on screen.
Very nice
красивый мужик, знает баш и работает в виме, надо его срочно замуж выдавать. если он показал всё что делает гам то получается он умеет форматировать текст и создавать чекбоксы. ахуеть конечно функционал. за собой он наверное тащит ncurses а что же еще. честно говоря, если мне захочется пользоваться псевдографическим интерфейсом, я наверное сам руками его напишу потому что это весело, но гам тоже установлю, потому что мне тоже будет нужен ncurses. кто будет пользовааться гамом кроме самой чарм и тех кто его рекламирует? наверное никто, в этом наверное и смысл этих программ, это симулякры НО вот я например посомтрел это видео налюбовался на двойной подбородок этого красавицы мужчины и теперь мне тоже хочется начать писать на баш. баш вообще крутой язык, совершенно неинтуитивный, но некоторые решения там сделаны так как я бы сам сделал если бы изобретал собственный баш. лаконичный язык.
its so good
Great video. Gum does look really nice, I've done this sort of stuff before using the old ncurses based dialog command and it's pretty painful.
However: "Bash doesn't really have great support for lists or arrays" ... not _entirely_ true, here's another way to skin that particular spud...
#!/bin/bash
get_branches() {
echo "branch_one branch_two branch_three"
}
read -r -a branches
You look like Linus Torvalds in thumbnail
Pleas don't fall in love that much with linux..
Lol
Awesome
A working example would have been a bit nicer, more productive, I think. Maybe do some research upfront as well?
Rewriting Magit huh? Just use Doom Emacs