I obtain a similar thing by adding this snippet to my .zshrc[0]. Notice I use bat[1] and exa[2] as alternative to cat and ls.
This is the result: https://gfycat.com/brokengiantcockerspaniel
[0]: https://github.com/silvanocerza/dotfiles/blob/master/zsh/zsh...
Nice tips!! bat(1) is fantastic, wow. exa(1) seems neat, but the inconsiderate--and likely deliberate--lack of compatibility with ls(1) flags means I will never use it any time soon... I have decades' worth of aliases, scripts, and reflexive muscle-memory using GNU ls, so it's not even close to being worth the pain of changing.
You could try lsd(https://github.com/Peltoche/lsd) instead of exa.