Feature Request: Save current config as Initial #1410

Closed
opened 2026-01-30 22:25:24 +00:00 by claunia · 5 comments
Owner

Originally created by @Kryptryx on GitHub (May 29, 2019).

Summary of the new feature/enhancement

An option on the drop-down menu to save the current config as the initial config. In particular, the overall window position and size, and which tabs are open, and the current font size/rows/columns since it may be zoomed in/out.

I move the main window around. I resize it. I do the ctrl-scroll to get the font size where I need it. I open my preferred tabs in the preferred order. Then I want to say 'save this, and start here next time'. Not quite the same as 'restore how it was when I exited' (another fine feature).

I see there is an 'export settings' feature. This would be more of an 'export' followed by immediate import, presumably skipping the exported file.

Originally created by @Kryptryx on GitHub (May 29, 2019). # Summary of the new feature/enhancement An option on the drop-down menu to save the current config as the initial config. In particular, the overall window position and size, and which tabs are open, and the current font size/rows/columns since it may be zoomed in/out. I move the main window around. I resize it. I do the ctrl-scroll to get the font size where I need it. I open my preferred tabs in the preferred order. Then I want to say 'save this, and start here next time'. Not quite the same as 'restore how it was when I exited' (another fine feature). I see there is an 'export settings' feature. This would be more of an 'export' followed by immediate import, presumably skipping the exported file.
Author
Owner

@binarycrusader commented on GitHub (May 30, 2019):

This feels strongly related to #766 and #1043, although as Kryptryx suggested it's not exactly the same.

@binarycrusader commented on GitHub (May 30, 2019): This feels strongly related to #766 and #1043, although as Kryptryx suggested it's not exactly the same.
Author
Owner

@zadjii-msft commented on GitHub (Aug 27, 2019):

Hey so we discussed this yesterday.

We could maybe add a ShortcutAction that gets the runtime position, opacity, fontSize, etc, and writes them back to the profiles.json in the current state. We'd want to do this very carefully, because as of #2475, we're not in the business of re-serializing the settings, so we'd want to do a careful insertion.

By making it a ShortcutAction, we could pair it with #2046 / #2193.

I'd also want that action to be spec'd before work starts on it. What settings would be persisted? How do we handle global settings vs per-profile settings? There's much to work out here.

In fact, with #1142, we could maybe add an optional arg that specified which parts of the current state you wanted to save (though that might be overkill)

@zadjii-msft commented on GitHub (Aug 27, 2019): Hey so we discussed this yesterday. We could maybe add a `ShortcutAction` that gets the runtime position, opacity, fontSize, etc, and writes them back to the profiles.json in the current state. We'd want to do this _very_ carefully, because as of #2475, we're not in the business of re-serializing the settings, so we'd want to do a careful insertion. By making it a `ShortcutAction`, we could pair it with #2046 / #2193. I'd also want that action to be spec'd before work starts on it. What settings would be persisted? How do we handle global settings vs per-profile settings? There's much to work out here. In fact, with #1142, we could maybe add an optional arg that specified which parts of the current state you wanted to save (though that might be overkill)
Author
Owner

@fishzle commented on GitHub (Mar 11, 2020):

I think there are too many options and not one clear path through this wood.
KISS.

wt must not become a swiss-army knife of terminals. XTerm grew to have a billion options, so people wanted to have something lightweight and simple.

Please stay true to purpose. "a better cmd / console" (or whatever it was when you started).

@fishzle commented on GitHub (Mar 11, 2020): I think there are too many options and not one clear path through this wood. KISS. wt must not become a swiss-army knife of terminals. XTerm grew to have a billion options, so people wanted to have something lightweight and simple. Please stay true to purpose. "a better cmd / console" (or whatever it was when you started).
Author
Owner

@jamietre commented on GitHub (May 12, 2020):

There should be at least a way to restore the open tabs/window split state, and current directories of each terminal. This feature is found on popular terminals for other platforms, e.g. iTerm2 on OSX and Guake on Linux. Since this is a very small amount of data, it could easily just be stored in the config file, allowing users to self manage it.

@jamietre commented on GitHub (May 12, 2020): There should be at least a way to restore the open tabs/window split state, and current directories of each terminal. This feature is found on popular terminals for other platforms, e.g. iTerm2 on OSX and Guake on Linux. Since this is a very small amount of data, it could easily just be stored in the config file, allowing users to self manage it.
Author
Owner

@zadjii-msft commented on GitHub (Aug 3, 2022):

Looking over this issue again, and I think we may want to just close this out. We've got "firstWindowPreference": "persistedWindowLayout" which pretty much covers this use case. There are additional follow ups in #9800, and might be a good thread for more discussions.

#11526 is gonna track "add support for creating a command that can reopen this specific set of tabs&panes", which is similar to this (if you don't want to just always restore the existing layout).

@zadjii-msft commented on GitHub (Aug 3, 2022): Looking over this issue again, and I think we may want to just close this out. We've got [`"firstWindowPreference": "persistedWindowLayout"`](https://docs.microsoft.com/en-us/windows/terminal/customize-settings/startup#behavior-when-starting-a-new-terminal-session) which pretty much covers this use case. There are additional follow ups in #9800, and might be a good thread for more discussions. #11526 is gonna track "add support for creating a command that can reopen this specific set of tabs&panes", which is similar to this (if you don't want to just _always_ restore the existing layout).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#1410