Introduction
If you’re using vterm in Emacs, you’ve probably encountered situations where you need multiple terminal instances running simultaneously.
This article shows you how to leverage buffer renaming to open multiple vterm instances in Emacs.
The Problem: Can You Only Open One vterm?
By default, when you run M-x vterm to start a vterm session and then execute M-x vterm again, it simply switches to the existing vterm buffer instead of opening a new terminal.
This behavior leads many users to believe that “you can only run one vterm instance at a time.”
The Solution: Rename Your Buffers
The trick is simple: by renaming the existing vterm buffer, you can create additional vterm instances.
Step-by-Step Guide
- Launch your first vterm with
M-x vterm - Execute
C-x x rorM-x rename-buffer - Enter a new buffer name (e.g.,
*vterm-dev*,*vterm-git*, etc.) - Run
M-x vtermagain to open a new vterm instance
Repeat these steps as many times as needed to create multiple vterm buffers.
Real-World Use Cases
Here’s how I use this workflow in my daily development:
- vterm-copilot: Interactive development with GitHub Copilot CLI
- vterm-main: General command execution and file operations
By managing multiple vterm instances, you can complete all your work without ever leaving Emacs.
Conclusion
With the rise of AI-powered CLI tools, terminal-based workflows are becoming increasingly important. For Emacs users, mastering vterm is more valuable than ever.
I hope this article helps you boost your development productivity in Emacs!
Note: The review and translation were assisted by an AI generative model. The author is responsible for the final content.