microsoft / microsoft/terminal

Epic: Default-by-default fall-out, long-term plans, and community feedback

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

Description

> _"it’s much easier to accept mediocrity than to pursue adequacy"_

## NSAT Blockers
- Terminal launches quickly
- [ ] #5907
- Terminal fits into my existing workflows
- [x] #9458
- Hardcore console users -- our bread & butter -- carry around customized console app shortcuts that Terminal ignores today.
- [x] #1504
- [ ] #4768
- [ ] #1793
- [ ] #14372
- [ ] #2558
- [ ] #10276
- This isn't "fixed", it's just blocked on the COM team
- Terminal "blends in" and gets out of the way
- [ ] #8983
- [x] People may be unhappy about Terminal's default "stay open after a process fails" behavior. That behavior may cause enterprise management scripts to leave useless Terminal windows laying around.
- https://stackoverflow.com/a/72872289/1481137
- MSFT:38270604
- #13325
- https://github.com/microsoft/terminal/issues/11179#issuecomment-916079467

## Windowing Completion
- [x] https://github.com/microsoft/terminal/issues/2988#issuecomment-1044501169
- "Things open in the wrong z-order relative to the terminal"
- [x] #12154
- `/max` fixed in #14222
- [ ] #5094
- Iffy on whether this one is important. Console apps can resize themselves. This is more difficult in a multi-tenant environment.
- [ ] People do weird things with `GetConsoleWindow`
- https://stackoverflow.com/questions/72512085/inconsistent-behavior-when-removing-minimize-button-from-windows-terminal
- [x] #13248
- [ ] Internal thread about SW_HIDE'ing (NOT minimizing) the Terminal window
- [ ] #13525
- [ ] Individual console sessions were easily identifiable on the taskbar. All Terminal sessions show up as just "Terminal" windows
- Refer to MSFT:41251452
- See also https://github.com/microsoft/terminal/issues/4768#issuecomment-1527800607 has the most comprehensive summary of the problem space
- > now in my taskbar git cmd doesn't show as open, so I instead have to fish through a bunch of terminal windows to find which one is git.
- [x] #6556
- [ ] #687
- [ ] #8216
- [x] Also #1504
- [ ] Also #4768

## Settings Parity

Not "the settings UI has parity with the settings JSON", but "the Terminal settings UI has parity with the Console propsheet"

- [x] #9075

## Accessibility
- [ ] #7118
- [x] #9610

## Will this come back to bite us later?
- [ ] #13006 "am I running in terminal?" - defterm launches don't set `WT_SESSION`
- mentioned in https://github.com/microsoft/terminal/issues/5094#issuecomment-1086842766
- > However, when WT is set as the default terminal, AllocConsole opens a new instance of WT [which doesn't set `WT_SESSION`]
- [ ] Soft Landing/SCOOBE
- [ ] #10680
- Terminal doesn't support WIP, but conhost does (private APIs)
- [x] #153
- conhost and Terminal differ in their approach here; this may cause compatibility issues for CJK users
- [ ] #8037
- "grid lines" are also used primarily by CJK applications
- We have little to no visibility into how we're used in those languages.
- [ ] #6056

### Conpty process weirdness

- [ ] #11823
- [x] #14416
- [ ] TODO: find more of these, there's many
- [ ] that one vscode thread niksa tried to solve years ago

## Running programs as admin still launches conhost

No terminal application can register as the handler for elevated command line sessions. This requires platform support from COM team.

- [ ] Publicly "tracked" in #10276
- [ ] Internally at MSFT:39500755

## Surf line?
- [x] #1256
- Each Terminal instance consumes more memory than an equivalent conhost; we can save memory and start-up time (NSAT blocker) by attaching all tabs to the same window while educating users about tabbing.
- We can only do that if they're going to be able to tear them out afterwards.

## Works today in conhost, but may be OK missing for v1
- [x] #11595
- [x] #9583
- [x] #3561
- [x] #6556
- [ ] #1868
- Apps can set their icons on the console _window_, but they can't on the tab. Probably OK.
- [x] #705
- [x] #12464
- _Is this a Windowing bug?_



## Works today in conhost, but may be OK rejecting
- [x] #9622

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the checklist and its linked issues, especially the unresolved items under NSAT Blockers, Windowing Completion, Accessibility, and conpty process weirdness. This is an umbrella planning issue with no single file, test, entry point, or completion criterion, so it would need to be split into a specific linked issue before work can be considered done.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
cli, desktop, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
10/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.