Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

All good until your ZSH gets heavyweight and slow. Started using fish and never looked back


I've never noticed slowness in OMZ, or really any shell. Or at least, when something feels slow I've always assumed it's the application I'm using, or network congestion, not the shell itself. In what situations do you notice a shell being slow?


Initializing a new session is not instantaneous. Even on my M3 Max it probably takes a couple hundred milliseconds, which is fine.

When I first tried it over a decade back, IIRC on an 11" Air, each new session was probably closer to a couple seconds. I recall there were a couple plugins in particular that were major bottlenecks. Replaced those and got the init speed to about half that but it annoyed me enough to do a clean zsh setup.


OMZ is fast even on my phone.

It turned slow for a whole after I installed anaconda. If you use conda and your shell is slow, try commenting out the code that loads conda, because it's probably that.

nvm likes to slow things down too. Not as bad as conda, but I did add some code to delay load it.

Do you know how fish would prevent getting slowed down by external scripts in its configuration file? Or does it just not support those scripts perhaps?


I switched from nvm to fnm a few years ago and have never looked back. Zero performance issues and it supports .nvmrc files.

https://github.com/Schniz/fnm


It's wild to me how slow conda is. Just in ordinary day to day use, with nothing weird, you sometimes need to wait insane amounts of time, even on incredibly fast systems. Whatever they're doing, it's wrong and bad.


I had exactly same experience: nvm and conda. Both are unrelated to oh-my-zsh completely: they were configured in .zshrc directly


I just skipped over zsh since I didn't want to spend time configuring it, as fish is pretty good out of the box.


Ditto. Added atuin.


ZSH + Zimfw + Powerlevel10k is probably the fastest "bling"-y shell I managed to put together. Would usually smoke Fish, but I haven't compared recently


I backtracked all the way to Bash. Because I seem to write some amounts of bash scripts, it seems living inside bash is helpful. And it's really not much I feel like I am missing in my use from zsh (or fish). Bash even supports CTRL+R for history with search nowadays.


I write bash scripts but use Fish interactively.

Yes, I've had to get clear where they differ, but the Fish experience is that much better that it seems worth it.

I've considered replacing more my bash scripts with Fish scripts, but it seems Fish has a slower start start-up time for scripting (not that it matters most of the time) and is more designed for interactive use.


I only script in fish anymore, all my devices use fish anyway (it's even pre-installed on steam deck).


Started using fish, moved back in 3 minutes. Remembered I have this awesome shortcut in Zsh where I type what I need to do, hit cmd+G, and some ChatGPT replaces my input with an example command.


oooh, what plugin is this?



My only issue with fish is that it has had a standing issue[1] for over 12 years where functions and blocks cannot be backgrounded. This makes backgrounding a series of commands in a script nearly impossible.

[1]: https://github.com/fish-shell/fish-shell/issues/238


Came here to say this. Fish shell is such a fresh beeeze compared to zsh.

Now it’s even rewritten in Rust!


You've got to install Fisher, then get z, sponge and a few others from the awsm.fish list.

Then you get trapped by the utility and struggle when you land on some remote server's bash shell.

https://github.com/jorgebucaran/fisher

https://github.com/jorgebucaran/awsm.fish#readme




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: