Like many developers, I used iTerm2 for all my terminal needs without ever questioning why. Someone recommended it to me when I started at Atomic Object, and I just followed their lead. I became accustomed to it and started enjoying the tool, customizing it to look just how I wanted, and I set default tabs pointed to my project’s different repos. I even wrote a post about using iTerm2’s Python API to write some pretty cool scripts. One day as I was pairing with my colleague John Ruble, I noticed he was using a different terminal that looked really cool. He told me it was a new terminal called Warp that’s built in Rust and to check it out.
I ended up on Warp’s website and decided to try it out. Here are a couple of Warp’s features that have sold me on the terminal.
Modern Day Editing Features
Warp offers a few very useful editing features that make using it much easier than a traditional terminal like iTerm. For one, you can click anywhere on your current command line to insert your cursor at that spot. This might seem trivial to some, but it has helped out quite a few times when I have a verbose command with a typo way back at the beginning of the line.
Another feature I enjoy is the GUI that comes along with tab completion. In the past, I’d find myself typing a letter of a command I want to run, hitting tab, getting the wrong autocomplete, and then having to backspace until I could get more specific. Now with Warp, I can hit tab and see previous commands I’ve run and suggestions based on common commands related to what I’ve typed. I love this feature. These are the two main features I appreciate about Warp, but it is full of many others that I haven’t had the time to play around with yet. I encourage you to download it and look around for yourself!
Look and Feel
On top of the unique features Warp offers, I think it looks and feels amazing. When I saw John using it, it immediately stuck out to me because it looks really clean. So far, my favorite theme (there are many options) is Dracula. It also does a great job of pairing inputs with their outputs and highlighting them as you go back up your terminal history. This can make deciphering long outputs much easier on your eyes. On top of how it looks though, it also feels quick and snappy. If I had to guess, I’d say this has to do with it being written in Rust, but it just feels great to use.
One of the things I like most about programming is trying out new tools to make development feel smoother, and Warp does just that. If any of these features sound appealing to you, check Warp out! You can always go back to your previous terminal if you don’t like it as much as I do!
I’m excited about Warp and think it will eventually become my terminal of choice. I have been trialing Warp for a while now (since April 2022). I keep checking back every few weeks to see progress they are making. Some of the features in Warp are going to be very useful. However, I keep falling back to iTerm for the time being. There are a few things Warp hasn’t got quite right yet, particular around custom prompt formatting not supporting new lines/right side prompts, occasional delays in catching keyboard input when I type, window resizing when closing multiple tabs in quick succession, and incompatibility with some GUI/option selection type CLIs. But when they get round to fixing these, Warp will surely become my daily driver.
Thanks for you comment Kieran! I’m right there with you. It can still feel a little rough around some edges, but I’m glad to hear you’re following it and staying excited about it. Always searching for a better way of doing things is how we keep pushing the field forward!
One of my favorite features of Warp is the ability to get a notification when a long-running task finishes. Super nice to be able to let something run and not have to keep checking on it – more apps should have things like this!
I know right! We’ve got some long builds on our project and it’s nice to let them run in the background and get nudged when they’re complete.
iTerm2 has this too. I really like Rust so Warp is inherently interesting to me, and I like it.
However, right now there are a few things keeping me from using it seriously; the biggest technical limitation by far is the lack of tmux support. They’re working on this and it looks like they’re aiming for CC support, just like iTerm2. (Other things are minor, most of them insignificant appearance settings.)
Thanks for the comment Anton! I’m still a pretty green dev and actually just had to google what tmux is lol! It definitely sounds like some powerful technology and I’m happy to hear Warp is working on integrating it.
I think it has some neat features, but honestly? Would not create an account for them. I think that’s a horribly annoying trend that’s been going on. Doubt I would really click around in commands instead ctrl + arrow keys or home/end. The tab completion seems like it could be useful but Warp seems like features for the sake of features.