microsoft / microsoft/terminal

Drag entries from the new tab menu to create panes

Open
#9,229 3 comments 0 reactions 0 assignees View on GitHub
Area-UserInterface Issue-Task Product-Terminal
Dominant language
C++
Stars
105k
Forks
9.6k
Avg merge
3d 17h
Merged PRs (30d)
29

Description

As I am aware, creating a new pane is currently possible via the [Alt]+[Shift]+[-/=] shortcuts, which allow the user to decide how the existing pane will be split but always use the default profile for the new pane, or by [Alt]+[LMB] clicking on the dropdown menu, which allows a specific profile to be selected but splits the pane automatically.

I think the ability to select both the profile and the orientation of new panes would be desirable. I propose a number of possible approaches:

- Creating new horizontal/vertical panes from the dropdown via [Alt]+[-/=]+[LMB] or simply [LMB/RMB] respectively.

- A global setting along the lines of 'useCurrentProfile' that would make the [Alt]+[Shift]+[-/=] shortcuts use the profile of the current pane rather than the default one. This doesn't quite allow the selection of any profile, but still covers an important use case.

- Dragging profile names from the dropdown menu to the desired position of the new pane with some sort of dynamic preview of how the panes will be split. The most user-friendly and visually pleasing option, but perhaps harder to implement.

Contributor guide

Open the contributing guide

Research direction

Start with the new tab dropdown and the existing pane-creation paths described in the issue, including Alt+Shift+[-/=] and Alt+LMB. Compare the proposed interaction approaches and define the selected profile and pane orientation behavior; done means users can choose both when creating a new pane.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.