Matt Ray gave a very nice presentation to EmacsConf 2019 on Interactive Remote Debugging and Development with TRAMP Mode. One of the frequent complaints about Emacs is that it’s hard to work with remote files. Mostly that’s because the person complaining doesn’t know about Tramp. There are, of course, some situations where Tramp is not the best solution but it’s usually an excellent way of working with remote files.

It’s easy to think of Tramp simply as a way of editing remote files but it’s actually much more powerful than that. Ray demonstrates some of that power first by using Tramp to open a shell on a remote system and then by showing how he uses it to work with virtual machines on his own workstation. He uses the freely available tools Chef, Vagrant, and Kitchen to spin up a virtual instance of Debian and work with it all from the comfort of Emacs.

Even command-line aficionados will enjoy his video because although he stays in Emacs, he does a lot of the work using the shell command. He begins the video by showing why using the shell from Emacs can be a win over firing up a separate terminal. During the rest of the presentation, he just opens a shell on the remote machine—or virtual machine—when he needs to make a change to the remote environment.

The video is about 35 and half minutes so you’ll probably have to schedule some time but I found it worth the time.