You cannot automatically split panes on Windows Terminal startup because the application does not support a native "split pane" action in its settings or command line interface. The terminal launches individual profiles, and while you can open multiple tabs or windows, there is no built-in mechanism to divide a single window into side-by-side views during initialization. To achieve this workflow, you must rely on external scripting or manual configuration after the terminal has loaded.
Understanding the Limitation
Many users attempt to find a setting like
splitPane or a flag such as
--split in the
settings.json file, but these do not exist in the Windows Terminal architecture. The terminal is designed to manage distinct instances of shell processes within tabs or separate windows. It lacks a compositor that can dynamically resize and split an existing console buffer upon launch. This design choice simplifies the rendering engine but requires power users to adopt different strategies for multi-pane workflows. If you are experiencing font issues while trying to configure your environment, you might want to check
Fixing Nerd Font Error in Windows Terminal on Windows 11 to ensure your visual setup is correct before proceeding with automation.
Using PowerShell Scripts for Automation
The most reliable method to simulate a split-pane experience is to use a PowerShell script that launches multiple Windows Terminal instances simultaneously. You can create a script that opens two separate windows, each running a specific profile. While this results in two distinct window frames rather than one divided window, it provides the simultaneous access you need.
Create a new file named
split-startup.ps1 and add the following logic:
# Launch first instance
Start-Process wt.exe -ArgumentList "-p", "PowerShell"
# Launch second instance
Start-Process wt.exe -ArgumentList "-p", "Command Prompt"
Run this script using PowerShell. Ensure that
wt.exe is in your system PATH. This approach creates two independent terminal windows. You can manually arrange them side-by-side using Windows Snap features (Win + Left Arrow and Win + Right Arrow). This is the closest approximation to splitting panes at startup without third-party tools.
Configuring Multiple Tabs via Profile Settings
If you prefer staying within a single window, you can configure Windows Terminal to open multiple tabs automatically. Although this does not split the view horizontally or vertically, it allows you to run different shells concurrently in one window. Edit your
settings.json file located in the AppData folder. Look for the
profiles section and define multiple default actions.
However, Windows Terminal does not have a direct "open on startup" list for multiple tabs in the current stable release. You must use a workaround involving the
commandline property in a custom profile or use the CLI to open tabs sequentially. For advanced usage, such as starting a new tab with a specific shell like Fish, refer to
Windows Terminal - Start a new tab using the cli and run a command with fish. This article details how to leverage the command-line interface to automate tab creation, which can be scripted to mimic a multi-pane environment.
Alternative: Using tmux or WSL
For true split-pane functionality, consider using a terminal multiplexer inside WSL (Windows Subsystem for Linux) or Git Bash. Tools like
tmux or
screen allow you to split windows into regions within a single session. You can configure your Windows Terminal to launch directly into a
tmux session by setting the default profile’s command line to start
tmux.
Inside
tmux, you can split panes using keyboard shortcuts (e.g., Ctrl+B then % for vertical split). This provides the exact layout many developers expect. Note that this requires installing WSL and a Linux distribution, which adds complexity. If you are dealing with environment variable resolution issues when launching these complex setups, see
Why does Windows Terminal in Windows 11 doesn't resolve environment variables when opened using context menu? to troubleshoot common configuration pitfalls.
Manual Workflow Recommendations
Since automatic splitting is not supported, establish a consistent manual workflow. Pin your frequently used terminals to the taskbar for quick access. Use the Snap Layouts feature in Windows 11 to instantly arrange multiple terminal windows. Create a desktop shortcut that runs a small batch script if you need to open specific combinations regularly. This reduces the friction of manual arrangement and makes the lack of native splitting less impactful.
Frequently Asked Questions
Can I split panes in Windows Terminal using a keyboard shortcut?
No, Windows Terminal does not support keyboard shortcuts for splitting panes natively. Shortcuts like Ctrl+Shift+D are used to duplicate tabs, not divide the view. You must use external tools or snap layouts to achieve a similar effect.
Does Windows Terminal support horizontal and vertical splits like VS Code?
No, the terminal emulator itself does not render split views. It manages full-width tabs or separate windows. Any split functionality must be handled by the shell or multiplexer running inside the terminal, such as tmux or zsh plugins.
How do I open two terminals side by side automatically?
You can write a PowerShell script that calls
Start-Process wt.exe twice. Arrange the resulting windows using Windows Snap keys. There is no single command to launch a pre-split window, so scripting is required for automation.
Is there a plugin for Windows Terminal to enable splitting?
Currently, there are no official or community plugins that add pane splitting to Windows Terminal. The architecture focuses on tab management and performance. Third-party terminal emulators like Alacritty or Kitty may offer more flexible tiling options if this feature is critical to your workflow.
Why does my environment variable change when I split using tmux?
When using tmux inside WSL, child panes inherit the environment from the parent session. If you modify variables in one pane, they will reflect in others unless explicitly unset. Ensure your scripts source the correct environment files to maintain consistency across split regions.