Andrey Listopadov has an interesting post that advances the notion that you don’t need a terminal emulator. To developers, that’s already an idea worthy of being included as a Red Meat Friday offering but the real reason this is a Red Meat Friday item is the diagram at the top of Listopadov’s post. Vim users aren’t going to like it and VS Code users are really going to hate it.
But fun and games aside, Listopadov is advancing a serious proposition: power users don’t need a terminal emulator. Well, at least if those power users are Emacs users. One thing you can say for Listopadov is that he’s walking the walk. He deleted vterm
from his configuration and tries to do everything from within Emacs.
His basic method is to use async-shell-command
for most situations where a terminal user would use an interactive command. He has other strategies as well so it’s well worth taking a look at his post to see how he works without a terminal emulator. Particularly noteworthy is his use of Tramp. Using it, he says, eliminates the need to use SSH.
The first time I read his post, I was unconvinced. I could see his point but I thought, “That’s not for me.” Then I realized that I don’t use a terminal emulator either. I have vterm
installed but I can’t remember the last time I used it. I do have an iTerm
instance but I use it only to bring up the mbsync
log so I can practice using ed
. When I need to invoke an extra-Emacs application, I use eshell
, which, as Listopadov says, is a shell not a terminal emulator.
Emacs users may or may not embrace his workflow but it’s definitely worth taking at look at them. Who knows, perhaps you’ll find a new way of working.