My shell of choice is bash.
Why? Because it's almost ubiquitous. There's pretty much no other reason. Everything people claim is "better" in things like zsh is either perfectly possible in bash or a crutch that will tempt me into making scripts that are even less portable.
I also steer clear of aliases unless I am already really familiar with what they're abbreviating. By this I mean I don't copy some esoteric string of options from a Stack Overflow answer into an alias without understanding what I'm doing; that would mean I'd be easily lost on a foreign system. I do alias things like foo='foo --color' for trivial settings for commands that don't use configuration files and so on, but that's about it.
Mine is zsh, it has a lot of plugings and certanly everything it doesn't do by default, there is a Plugin that does that, and it also so easy to customize the prompt, different of bash that you kinda need to know some witchcraft to change that LOL
Fish is also super cool, there is thing that I liked so much that I had to have it in zsh, like autosuggestions, command highlighting, but zsh still has my heart
I had used zsh in the past and was happy with it, but then a tweet from a colleague of mine at the time
Been using Fish Shell after @dan_abramov tweeted about it. Not going back.fishshell.com
08:12 AM - 17 Jan 2017
and Julia Evans article The fish shell is awesome prompted me to give Fish a go.
I love it.
P.S.: Here's the original @dan_abramov
tweet that my former colleague was referring to
To me, Fish is the Sublime of shells. Small details done right. Can you recommend a better shell?
23:24 PM - 16 Jan 2017
"The sublime of shells" is something that I would take as a recommendation to avoid!
Bash for me - it is installed everywhere and is simple. I used to be much more into having a good looking terminal with lots of functionality, but over time I question how much tools like that become a distraction to fiddle with over a legitimate use of time.
I use terminal git and vim on a daily basis. I try to question what the minimal configuration I need to get up and running is. Right now I could do a good amount of development on a machine with default vim, git and bash installed and if I pull in my git config, init.vim, and .bashrc I can get up and running with something very close to my everyday environment.
I do also use tmux, but I wouldn't say that is a requirement for me to use the tools I like - it just gives me a good way of organizing my workspaces.
Here is what my bash looks like:
I've almost always used tcsh. I can't recall if that was the default, or what one of my college professors told us to use. I even found a replacement on Windows that's similar to tcsh, called Nyaos
Uncustomized bash. It's everywhere and when I'm debugging server issues I don't have to worry about customization issues.
For those using zsh, here's a great tip from one of the talented devs at Unsplash, Oliver Ash.
ProTip for users of both Git and Zsh: Git's official completions for Zsh are very poor. Zsh maintains it's own (much better) completions. To use them, you have to manually delete the Git completions. (For Homebrew installs do `rm "$(brew --prefix)/share/zsh/site-functions/_git"`)
12:33 PM - 30 Nov 2018
Fish & Zsh, both heavily customized.
Here's my setup -- Zsh + iTerm!
Zsh because of customization and tab completion, iTerm because of the panes!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.