Customizing the OS X Terminal
I’m noticing more and more these days that the majority of my work happens within the terminal. Navigation through my project folders is much easier using ZSH plugins such as Z and autocomplete, and more recently I’ve had sass watch and a Ghost web server running on localhost while building Jarv.ski.
To cut a long story short — I love my terminal. So why not make it mine?
You can find the feature list for iTerm 2 here
Next we need to replace our bash shell with ZSH. From the github repo read-me: Oh My Zsh is a way of life!
Once again, feature list in the form of plugins for ZSH can be found here
Now we have a solid foundation.
So, you want to have a unique startup to your terminal? You came to the right place.
I always had an motd on my terminal, but it never went more than simply ‘Welcome Adam’. After spicing up my terminal, I knew it was time to become creative. So I did research.
The fruits of my labour was the following:
This is how we create the moose with the speech bubble. To install cowsay, simply:
brew install cowsay
The arguments allow us to change the output greatly, for example I use it to change the output from the default cow to a vader cow via:
cowsay -f vader
Random quotes every time. What could be better? Fortune is an old program dating back to the original days of Unix. To install:
brew install fortune
Pipe this into cowsay, and you start to get close to my own terminal output:
Fortune | cowsay -f vader
Random, but fun.
gem install lolcat
This makes our text output very… colorful.
Fortune | cowsay -f vader | lolcat
Finally, Artii. This creates large ascii style text from what text we enter into the program. Install via:
gem install artii
We can create text within the terminal via:
artii “Hello world!”
Putting it altogether
We now need to get this into our motd, but we first need to make our motd a script instead of just a .txt file that our terminal outputs on login.
sudo mv /etc/motd /etc/motd.sh
Next we add the script to the end of our .zshrc file so that it runs at login.
An example motd.sh would be:
artii "Welcome" | lolcat fortune | cowsay
I hope you found this guide useful. Feel free to tweet me with any questions you have or simply to show me what you came up with!
Originally published at jarv.ski on March 27, 2016.