How to Open Multiple vterm Instances in Emacs Using Buffer Renaming

Created on: January 18, 2026 at UTC

Emacs

vterm

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

  1. Launch your first vterm with M-x vterm
  2. Execute C-x x r or M-x rename-buffer
  3. Enter a new buffer name (e.g., *vterm-dev*, *vterm-git*, etc.)
  4. Run M-x vterm again 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:

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.