Prompt for destination when creating a new tab/terminal
Idea: When creating a new terminal or tab, instead of simply creating a terminal, present the user with a dialog or "URL bar" style entry for them to select what they want to do there.
Motivation: Most of the time, when the user is creating a new terminal or tab, they have a good idea of what they want to do there. Examples:
- Go to a particular project
- Open a terminal in a particular Toolbox container or on the host
- SSH to a particular remote host
With a common special case being "the same as my current terminal". Right now, kgx, like gnome-terminal tries to do this special case, falling back to a default directory if there is no current terminal. Advantages of making explicit could include:
- There is no need to "unwind" if "same as current terminal" is wrong (this is particularly troublesome for the Toolbox case, since if you are already in a Toolbox container, it's not easy to get back to the host. Same would apply if the terminal automatically tried to ssh to remote hosts or enter Python virtual environments.)
- Makes navigation to common locations faster.
- Already open tabs/terminals could be suggested, avoiding duplicates
I've been using a rough prototype of this implemented in gnome-terminal:
Elaborations / Variations:
- The list of options is populated by observing the users terminal usage over time to determine favorite git projects, remote hosts, and so forth.
- The list of options includes all configured Toolbox containers
- Typing in arbitrary paths or
ssh server.example.comis possible
- The state of the current terminal could be preselected
- Have a separate keyboard shortcut / shift-click on new-tab button to create a terminal that is the same as current bypassing the window