Recently I've been doing a little tuning of my shell environment, swapping old tools for new ones and tweaking various settings. I thought I'd highlight a few of them.
Ghostty
For years I used iTerm2 as a replacement for the default Mac OS Terminal app. Recently I've switched to Ghostty. It's just as configurable in the ways I care about as iTerm2, but much, much faster. I sometimes have reason to paste a decent amount of text into the terminal and Ghostty handles it much faster than iTerm2. Overall it just feels more modern and slicker than iTerm2.
Starship
In the screenshot above you can see a few shell prompts showing what Starship can do. For example, when you're in a folder containing a programming project, it will show you the language in use. For example in the "sshaws_rust" folder you can see "🦀 v1.97.1", which shows my current version of Rust installed. Similarly you can see "☕️ v17.0.8" for Java, "🆂 v3.8.4" for Scala, and "🐍 v3.12.12" for Python. It also shows you stats about your machine (e.g. free RAM), what directory you're currently in, or how long a command took to run.
In the screenshot below, you can see the "🌏 marzipan" which shows that this is a remote machine named "marzipan," which helps prevent confusion about what machine you're on.
zoxide
I haven't been using this very long, and I'm still getting used to it, but
zoxide is a handy way to navigate
around your folder hierarchy.
In the first screenshot above you can see that z core took me straight to that
directory and zi opens an interactive search function.
fzf
Like most, I'm sure, I end up typing the same or very similar commands repeatedly. "Ctrl-r" is the standard way of searching for previous commands. fzf turbo-charges this and works very well.
bat
The Unix/Linux command cat is
over fifty years old, and I've been using it for almost thirty.
bat replaces it and includes syntax
highlighting and line numbers.
Because I've been using cat for so long, and have muscle memory for cat,
I've set an
alias
from cat to bat.
eza
Combined with a Nerd Font
(I use "Inconsolata Nerd Font Mono"),
eza replaces the built in
ls and ls -l with a much fancier directory listing.
In the screenshot above you can see that each document type gets a little
icon, and there are far more color codes than plain ls.
The columns shown in the -l view can also be customized much more than
vanilla ls.
ripgrep
Many years ago I started using grin
which is (was?) a recursive grep utility.
Being a Python 2 utility
and Python 2 reached end-of-life in 2020,
I switched to grin3.
Now I'm getting used to using
ripgrep, which A) is faster than
grin3, and B) is maintained while grin3 is not.
oh my zsh
I've been using zsh for years, and oh my zsh helps configure it with all kinds of goodies.
Raycast
It's not a command line utilty, but Raycast has proven invaluable. It's a supercharged Spotlight replacement. It has many useful features, not least of which is the Clipboard History. The Calculator is great for quick math and unit conversion.
Confguration Files
If you want to see my configuration files, just drop me a line!





