Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Multi-Root Pane ManagerNew to Visual Studio Code? Get it now.
Multi-Root Pane Manager

Multi-Root Pane Manager

Shane Main

| (0) | Free
Automatically splits panes in multi-root workspaces and routes new tabs to specific panes
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Multi-Root Pane Manager

Automatically organizes multi-root workspaces so each folder gets its own editor pane, labeled tabs, dedicated terminals, and keyboard navigation. Every feature is independently configurable -- use it all out of the box, or turn off what you don't need.

Features

Pane Management

  • Automatic Layout -- Opens each workspace folder in its own editor pane. Choose from three layout modes: primary-focus, grid, or all-right.
  • Smart Tab Routing -- Files automatically open in their folder's pane. Single-clicked previews are pinned to prevent replacement. Exclude specific files or patterns from routing with glob rules.
  • Tab Sorting -- Sorts all open tabs into their correct panes on startup and on demand
  • Sticky Tabs -- Manually moved tabs stay where you put them and won't be auto-routed again. Toggle this per-workspace if needed.
  • Lazy Panes -- Panes are created on demand as you open files, avoiding empty editor groups. Disable to pre-create all panes on startup.

Tab Labels

Tabs are labeled to show which workspace folder they belong to. Pick the format that works for you:

Format Example
emoji-dir-file (default) 🔵 backend / server.ts
emoji-file 🔵 server.ts
dir-file backend / server.ts
none server.ts (VS Code default)

Supply your own emoji per folder with customEmoji (e.g. ["🔴", "🔵", "🟢"]), or leave it empty for the built-in palette.

Visual Cues

  • Pane Tinting -- Each editor pane gets a subtle background tint based on its workspace folder. Disable with colorPanes.
  • Explorer Badges -- Files in the explorer show emoji badges by folder. Disable with colorTabs.

Both are on by default and can be toggled independently.

Terminals

  • Auto-Switch -- Switching panes automatically switches to that folder's terminal. Disable with colorTerminals.
  • Eager Creation -- Creates a terminal for every workspace folder on startup, adopting existing ones. Disable with eagerTerminals if you prefer to create terminals manually.
  • Layout -- Arrange folder terminals as separate tabs (default) or split side-by-side in one panel.

Navigation

  • Ctrl+Alt+1 through Ctrl+Alt+6 -- Jump to pane 1-6
  • Ctrl+Alt+Left/Right -- Cycle through panes
  • Ctrl+Alt+N -- New file in the active folder
  • Status Bar -- Shows current folder name and tab count. Click to jump to any folder's pane.

All keybindings are customizable via VS Code's keyboard shortcuts settings.

Layout Modes

Primary-focus (default) -- First folder gets 70% width, others share 30%:

| F1 (70%) | F2 | F3 | (30%) |

Grid -- Balanced two-row layout:

2 folders: | F1 | F2 |
3 folders: | F1 | F2 | / | F3 |
4 folders: | F1 | F2 | / | F3 | F4 |

All-right -- Linear horizontal split:

| F1 | F2 | F3 | F4 |

Commands

Command Description
Toggle Enable/disable pane management
Reset Pane Assignments Re-apply layout and sort all tabs
Sort All Tabs Move all open tabs to their correct panes
Focus Pane 1-6 Jump to a specific pane
Cycle Pane Left/Right Navigate between panes
Jump to Folder Pane Quick-pick menu to select a folder
Open in Correct Pane Right-click a file in explorer to open it in the right pane
New File in Active Folder Create a file in the active pane's folder

All commands are prefixed with Multi-Root Pane Manager: in the command palette.

Settings

Everything is on by default. Turn off what you don't want.

Setting Default Description
enabled true Master switch for pane management
layout "primary-focus" Layout mode: "primary-focus", "grid", or "all-right"
lazyPanes true Only create panes as files are opened. Set false to pre-create all panes.
tabLabelFormat "emoji-dir-file" Tab label format: "emoji-dir-file", "emoji-file", "dir-file", or "none"
colorPanes true Subtle background tint on editor panes by folder
colorTabs true Emoji badges on files in the explorer
customEmoji [] Custom emoji per folder (e.g. ["🔴", "🔵", "🟢"]). Empty uses defaults.
colorTerminals true Auto-switch terminal when changing panes
eagerTerminals true Create a terminal for every folder on startup
terminalLayout "tabs" Terminal arrangement: "tabs" or "split"
excludePatterns [] Glob patterns to skip auto-routing (e.g. ["**/.vscode/**"])
sortOnStartup true Sort tabs into correct panes on startup
enableStickyTabs true Remember manually moved tabs
showWelcome true Show welcome notification on first activation

All settings are prefixed with multiRootPaneManager. in settings.json.

Installation

Search for Multi-Root Pane Manager in the VS Code Extensions marketplace, or install from Open VSX.

From Source

git clone https://github.com/ShaneMain/vscode-multi-root-pane-manager.git
cd vscode-multi-root-pane-manager
npm install && npm run compile
npx vsce package
code --install-extension multi-root-pane-manager-*.vsix

Requirements

  • VS Code 1.75.0+
  • A multi-root workspace (2+ folders)

Diagnostics

Open the Output panel and select Pane Manager to see logs for tab events, moves, layout changes, and navigation.

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft