Suggestion: Open a new terminal window with a collection of preconfigured tabs #12349

Closed
opened 2026-01-31 03:13:05 +00:00 by claunia · 5 comments
Owner

Originally created by @NeilMacMullen on GitHub (Feb 1, 2021).

Motivation:

If I perform a common task involving multiple tabs, I usually spend some time to color and name the tabs to make it it obvious which tab is which. For example.

colortabs

It would be convenient if I could store this particular configuration the next day and recall it.

From a user-perspective something like:--

  • Click on shell menu drop-down.
  • Select "Save Collection"
    • Configuration is saved to some config file

Next day...

  • Double click on configuration file
  • new Shell window opens with saved tabs

At a minimum the "collection/configuration" should recreate the number and types of tabs + header colors and names. It would be desirable if additional context for each tab could be maintained (cwd, buffer history, other?)

I'm pretty sure I can do most of this stuff already by writing some dedicated scripts - maybe a cheap implementation of this would be for the "config file" just to be a script that performs the required operations when the shell starts up?

Originally created by @NeilMacMullen on GitHub (Feb 1, 2021). Motivation: If I perform a common task involving multiple tabs, I usually spend some time to color and name the tabs to make it it obvious which tab is which. For example. ![colortabs](https://user-images.githubusercontent.com/9131337/106469408-234cb100-6497-11eb-9a65-0450ec816ba8.png) It would be *convenient* if I could store this particular configuration the next day and recall it. From a user-perspective something like:-- - Click on shell menu drop-down. - Select "Save Collection" - Configuration is saved to some config file Next day... - Double click on configuration file - new Shell window opens with saved tabs At a minimum the "collection/configuration" should recreate the number and types of tabs + header colors and names. It would be *desirable* if additional context for each tab could be maintained (cwd, buffer history, other?) I'm pretty sure I can do most of this stuff already by writing some dedicated scripts - maybe a cheap implementation of this would be for the "config file" just to be a script that performs the required operations when the shell starts up?
claunia added the Issue-FeatureResolution-Duplicate labels 2026-01-31 03:13:05 +00:00
Author
Owner

@WSLUser commented on GitHub (Feb 1, 2021):

Use the wt arguments. There is enhancement request to specify color names but colors are supported. See the docs: https://docs.microsoft.com/en-us/windows/terminal/command-line-arguments?tabs=windows.

Also, the docs are listed in the README. I highly advise looking through them before filing a feature request in the future.

@WSLUser commented on GitHub (Feb 1, 2021): Use the wt arguments. There is enhancement request to specify color names but colors are supported. See the docs: https://docs.microsoft.com/en-us/windows/terminal/command-line-arguments?tabs=windows. Also, the docs are listed in the README. I highly advise looking through them before filing a feature request in the future.
Author
Owner

@NeilMacMullen commented on GitHub (Feb 1, 2021):

Also, the docs are listed in the README. I highly advise looking through them before filing a feature request in the future.

Thanks for the useful information but I think the response is unnecessarily snarky :-( If you read my feature request in full you will see that I am suggesting that the current configuration could be saved automatically via a menu item or context action. That clearly is not provided today so I think that would be classed as a "new feature request"....

@NeilMacMullen commented on GitHub (Feb 1, 2021): >Also, the docs are listed in the README. I highly advise looking through them before filing a feature request in the future. Thanks for the useful information but I think the response is unnecessarily snarky :-( If you read my feature request in *full* you will see that I am suggesting that the current configuration could be saved *automatically* via a menu item or context action. That clearly is not provided today so I think that would be classed as a "new feature request"....
Author
Owner

@zadjii-msft commented on GitHub (Feb 1, 2021):

So for reference, I like to do like the following each time I boot up the Terminal in the morning:

        { "command": { "action": "wt", "commandline": "new-tab --title OpenConsole cmd.exe /k #work 15 ; split-pane -s .30 --title OpenConsole cmd.exe /k #work 15 ; split-pane  -s .25 -H cmd.exe /k media ; new-tab --title \"Symbols Script\" powershell dev\\symbols.ps1 ; new-tab -p \"Ubuntu 18.04\" ; new-tab -p \"microsoft/Terminal\" ; sp -V -p \"microsoft/Terminal\" ; sp -H -p \"microsoft/Terminal\" ; focus-tab -t 0" }, "name": "Good Morning" },

(you could probably make it shorter by replacing new-tab/split-pane with nt/sp, respectively).

I add that to the keybindings/actions, and invoke it with the Command Palette. That opens up a few tabs & panes, running various build environments. I like having it in a command rather than startupActions, because I only really want this in one terminal window, not every single one I launch. It's personal taste. It's probably the closest you'll get to what you want today.

As far as automatically saving the last window state, we've got #960, #961, #766. #766 is probably the one that most closely mirrors your ask.

I'd also check out #756, though that kinda just turned into startupActions, so I might close that one out.

/dup #766

@zadjii-msft commented on GitHub (Feb 1, 2021): So for reference, I like to do like the following each time I boot up the Terminal in the morning: ```json { "command": { "action": "wt", "commandline": "new-tab --title OpenConsole cmd.exe /k #work 15 ; split-pane -s .30 --title OpenConsole cmd.exe /k #work 15 ; split-pane -s .25 -H cmd.exe /k media ; new-tab --title \"Symbols Script\" powershell dev\\symbols.ps1 ; new-tab -p \"Ubuntu 18.04\" ; new-tab -p \"microsoft/Terminal\" ; sp -V -p \"microsoft/Terminal\" ; sp -H -p \"microsoft/Terminal\" ; focus-tab -t 0" }, "name": "Good Morning" }, ``` (you could probably make it shorter by replacing `new-tab`/`split-pane` with `nt`/`sp`, respectively). I add that to the `keybindings`/`actions`, and invoke it with the Command Palette. That opens up a few tabs & panes, running various build environments. I like having it in a command rather than `startupActions`, because I only really want this in _one_ terminal window, not _every single one I launch_. It's personal taste. It's probably the closest you'll get to what you want _today_. As far as automatically saving the last window state, we've got #960, #961, #766. #766 is probably the one that most closely mirrors your ask. I'd also check out #756, though that kinda just turned into `startupActions`, so I might close that one out. /dup #766
Author
Owner

@ghost commented on GitHub (Feb 1, 2021):

Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!

@ghost commented on GitHub (Feb 1, 2021): Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!
Author
Owner

@NeilMacMullen commented on GitHub (Feb 1, 2021):

Nice - thanks Mike. I agree that #766 covers it.

@NeilMacMullen commented on GitHub (Feb 1, 2021): Nice - thanks Mike. I agree that #766 covers it.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#12349