-
Notifications
You must be signed in to change notification settings - Fork 9.1k
Open
Labels
Area-VTVirtual Terminal sequence supportVirtual Terminal sequence supportIssue-ScenarioProduct-ConhostFor issues in the Console codebaseFor issues in the Console codebase
Milestone
Description
Claimed by @miniksa.
See also:
This issue represents the follow-on items from #11264. It's a bunch of known issues from the PR that will be required to make the VT passthrough more robust.
It is not all-encompassing and resolving all of these will not necessarily be the end (and therefore not necessarily the satisfactory completion of #1173).
Conhost-side issues:
- Peek/Read console input should probably only synchronize the cursor during cooked mode
- Fill output character is converting WC2MB way too many times but it works
- (also
VtEngine::_WriteFillcould do with aREPcommand which is I think a VT thing too) -
GetConsoleCursorInfocould probably work but we'd have to pipe through a bunch of stuff -
GetConsoleScreenBufferInfoExis... just some data. But it's probably not correct. - Popups erase stuff behind them which is gonna be gross...
- Scroll could just be DECCRA implemented in Terminal
-
WriteConsoleOutputshould probably trim to the buffer size -
ReadConsoleOutputlikely needs some sort of trim as well - Console Title might be able to resolve a more complete answer (either by asking the host or spying on the VT going by or parallel running commands locally... idk)
- Reconcile inheriting the cursor on PTY startup with the Looking For DSR methods (a.k.a. should we always set up the DSR watcher every time the cursor query command is called? See [FHL] Make VTApiRoutines, which does VT translation for output #11264 (comment) for details)
- Reconcile how many times we copy the API routines into the message packet. Do we really need to do it on every message? [FHL] Make VTApiRoutines, which does VT translation for output #11264 (comment)
Terminal-side
Broadly, the Terminal doesn't actually support that many VT sequences. We'll likely run into issues immediately...
- Implement support for more VT sequences and special characters #1883
- Close the gap between Terminal and Conhost ITerminalApi #13408
- Implement scrolling margins
- Support the alt buffer. ConPTY: pass through requests for the alt buffer #381 is the ConPTY side of things. Alternate screen shouldn't write to scrollback or normal screen #3492 looks a bit like the Terminal version
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Area-VTVirtual Terminal sequence supportVirtual Terminal sequence supportIssue-ScenarioProduct-ConhostFor issues in the Console codebaseFor issues in the Console codebase