But that doesn’t mean development of terminal apps has stagnated. There are many open source terminal applications beyond those that are installed by default. So today I’d like to share some of the newer, or non-standard, tools that I use regularly.
Ranger is a terminal file manager. It’s great for when you want to get a visual overview of your files with a preview, and includes everything you’d expect of a modern file browser.
I often find it faster to fire up ranger than Finder. Among ranger’s many tricks is the ability to show true color previews of images and video thumbnails on modern terminal applications. Ranger uses Vim keybindings, so Vim uses will be right at home, and because it only implements a small subset of Vim’s keys, new users shouldn’t have any trouble.
Linux users will be familiar with top: a venerable process viewer, you can rely on top to be installed on every server you log-in to. Htop is similar to top, but it’s easier on the eye and more functional. If you’re not familiar with process viewers, think the MacOS Activity Monitor or the Windows task manager, but quicker to start and more amenable to keyboard control.
I’m a Vim user. I use Vim — neovim, for the time being — whenever I need to edit text, including to write this article. But no one would claim Vim is friendly to new users. Nano is an excellent alternative to Vim, but this relatively new editor is well worth taking for a spin. Slap is billed as a Sublime-like text editor that aims to make writing in the terminal easier.
Unlike Vim, Slap’s basic keybindings will be familiar to most people: ctrl+s to save, ctrl+z to undo, and so on. It also has excellent mouse support on modern terminals.
The Silver Searcher, better known as “ag”, is a grep replacement, a fast and powerful file searcher that prides itself on being more performant than its peers. I often use “ag” both on the command line and from within Vim to find contents in text files.
Tmux isn’t a new application, but it’s one of those tools that isn’t installed by default on most systems and should be. Tmux is a terminal multiplexer, which means that it allows terminal users to open multiple terminal sessions in the same window, but the big draw of tmux is its ability to detach sessions from the terminal and reattach them later.
That’s hard to visualize, but the upshot is you can SSH into a server, start a tmux session, open a bunch of windows for monitoring, looking at documentation, and running commands. You can then detach the session and disconnect from the server. The next time you log-in, you can reattach to the same session and everything you set up previously will still be running. It’s a huge time-saver.
That’s my five favorite non-default command line tools. There are hundreds more, so don’t hesitate to share your favorites in the comments.