Creating an Asynchronous Zsh Theme

Pure bliss

I converted to Zsh a while back, when I first saw the Oh-My-Zsh framework. OMZ is really just a long chain of source calls with some logic to turn groups of features on or off. I’ve since changed to Zplugin (not to be confused with a similar framework, zplug), a wonderful framework which supports asynchronous plugin loading. This has better than halved the load time for Zsh on my Pi and phone (Termux).

However, my theme had not changed, it still has to wait until (relatively) expensive git calls have completed before redrawing the prompt. Now is the time to change this.

[Read More]
zsh  code