microsoft / microsoft/terminal
[megathread] Cursor shapes in WT UI / conhost UI / VT
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 105k
- Forks
- 9.6k
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 29
Description
Description of the new feature/enhancement
There are so many of them, and all the sets are slightly different:
WT:
Conhost:
VT:
There are quite a few inconsistencies:
- Terminology:
- vintage / legacy
- underscore / underline
- bar / vertical bar
- solid box / filled box / block
- UI order.
- Feature set: conhost does not have "double underscore"
- VT access: "vintage", "double underscore" and "empty box" are not exposed and cannot be set programmatically.
- UI access: non-blinking versions are not exposed.
- API behavior:
- SetConsoleCursorInfo resets cursor to "legacy" in conhost if the size is different from the initial one, but not in WT (I understand why, but still).
I'm not saying that all those are bugs that should be fixed, but perhaps the situation could be improved.
maintainer tracking space
### Tasks
- [ ] #7827
- [ ] #7382
- [ ] #1379
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source files or tests are named. Start by reviewing the cursor-shape inconsistencies in this issue and the linked tracking tasks #7827, #7382, and #1379, then determine which specific behavior is in scope. Done should mean an explicitly defined, consistent cursor-shape experience across WT, conhost, VT, UI, and API surfaces.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100