Aliases are a way to shorten long or complicated commands or to easily add additional arguments when running commands.
Common aliases are gs
for git status
, a
for artisan
and dr
for drush
.
I've been experimenting with Zellij today and have written aliases like zl
for zellij list-sessions
, but have also added extra arguments such as zellij list-sessions | sort | grep -v EXITED
to sort the sessions and filter any exited sessions.
Running these aliases means it's easier and quicker for me to run these commands.
The issue with aliases, I think, is that you can forget that the underlying commands are if you only type gs
or zl
.
It's also not easy when giving demos, pair programming for others to see and understand the commands that are being run.
Instead of aliases, I mostly use abbreviations that expand automatically after pressing the space key.
That way, I and others get to see and understand the commands being run.
Note: I originally saw this done by Sebastian Daschner and I originally used his ZSH expansion code, but now use zsh-abbr. There are settings for this in Nix/Home Manager.