4 ms·
As a long time Linux + bash user I switched to zsh three months ago when I was forced to use a Mac at a new job. In every previous job I was able to insist on L
by raffraffraff 1y ago
As a long time Linux + bash user I switched to zsh three months ago when I was forced to use a Mac at a new job. In every previous job I was able to insist on Linux, but this one is very corporate. I decided not to fight it, except to install AltTab, Karabiner, Rectangle and a script that detects which screen my mouse is on so I can alt-tab through ALL the stuff on that screen (sane XFCE / KDE behaviour).
I can't get used to the atrocious keyboard shortcuts but I have gotten used to the "non-UK UK keyboard layout".
And zsh. I honestly don't know why I didn't just brew install bash right from the start. Without even realising I was doing it, I fought with this bloated bastard for 2 months before finally asking what the fuck I was doing.
I sped up my shell by switching back to bash.
- soraminazuki 1y agoWhat on earth are you talking about? zsh isn't bloated by any stretch, nor is it any slower than bash in any meaningful way. Chances are, like in the article, you installed oh-my-zsh, a third party configuration framework.
- deleted 1y ago[deleted]
- cb321 1y agoSome data in support of @soraminazuki (who makes good points throughout this thread) on an i7-1370P linux laptop running Linux 6.15.7: $ tim 'bash -lic logout' 'zsh -lic logout' 55.3 +- 3.7 μs (AlreadySubtracted)Overhead 7454 +- 26 μs bash -lic logout 7934 +- 39 μs zsh -lic logout (Using https://github.com/c-blake/bu/blob/main/doc/tim.md https://github.com/c-blake/bu/blob/main/doc/tim.md) About 20,000 entries in the Zsh history slowing it a little. All completion activated (but zcompile'd, along with a very large digraphs.zwc). I think most would not be troubled by taking 1.06X longer, though, especially at this 8 ms scale and for interactive session initiation. Note this test upper bounds Time To First Prompt { a different "TTFP" from Time To First Plot ;-) }, since it also exits as part of the `-c`.
- homebrewer 1y agoPure zsh is alright, it's pretty much just bash with fantastic autocomplete that usually provides short form documentation right there along with the options. So no need to remember (or look up) what -X -d -f stands for. Get rid of oh-my-zsh and give the proper shell another chance.
- saagarjha 1y agoI actually like bash's autocomplete better (maybe there's a way to configure how zsh does it, I haven't looked into it).
- opk 1y agoIf you've only compared against zsh's out-of-the-box completion then you're comparing against the fully backward compatible with how things were in 1993 state. Turn on compinit, and a half-dozen styles to enable descriptions at the very least. The content of `StartupFiles/zshrc` from zsh sources is more than enough, no need for a bloated framework like oh-my-zsh.
- saagarjha 1y agoYeah I'm comparing bash-completion with compinit (at least I think so). I just didn't really like how it "picks" an option for you
- raffraffraff 1y agoI'm being downvoted because I equated zsh with oh-my-zsh (or actually, maybe because I hate MacOS?), but if you look through the rest of the comments you'll notice that most people are asking for a lighter weight omz or wishing that some omz alternative hasn't been discontinued. But think about trying to onboard with a shell. Imagine the type of help you'll get online, and where that inevitably pushes you. Consider these two things: 1. The number of people using pure zsh config Vs plugin systems like OMZ. 2. The number of people using pure bash config Vs some plugin system (can't even name one).... With bash, when you try to figure out how to do something, the internet will usually spit out a snippet of pure bash. The same search on zsh will generally tell you which plugin you need to add to OMZ. Zsh would likely be easier to adopt, and overall better off, if it didn't have an extremely bloated plugin system almost synonymous with it. I'm sure if I started from scratch with zsh years ago I'd have a great zshrc. Or if I had the time and energy to devote to getting zsh working to my taste without plugins, I'd do that. But vanilla zsh wasn't to my liking and I took, what seemed like, the path of least resistance. For a short while it I stuck it out, trying to gradually tweak it into shape. But I couldn't figure out how to correct some "fucking weird" behaviour, and digging into a bunch of insanely complex plugins was just way harder that looking at a zshrc. I eventually dumped the whole lot for bash and never looked back. Could I have dumped OMZ and started clean? Yep. But I was tired, and bash works.