-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OSC escape sequences received out-of-order in 3rd-party terminals #17314
Comments
Hi I'm an AI powered bot that finds similar issues based off the issue title. Please view the issues below to see if they solve your problem, and if the issue describes your problem please consider closing this one and thumbs upping the other issue to help us prioritize it. Thank you! Open similar issues:
Closed similar issues:
|
Thanks for filing! We're going to mark this as a /dup of #8698 then 😊 |
Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report! |
Windows Terminal version
1.19.11213.0
Windows build number
10.0.22631.0
Other Software
No response
Steps to reproduce
ANSI compatibility has been pretty good in ConPTY. We're coming up on some niche cases.
In a 3rd-party terminal, e.g. alacritty, produce some text with an OSC escape sequence interleaved between some text.
Visually, things look pretty OK. The correct text is echo'd and the title is changed.
But, here is the exact data that alacritty read out of ConPTY:
Observe that when the text was produced in the shell, the OSC command to set title was between "hello" and "world". However, when the text was read out of ConPTY by the terminal, the ordering is changed.
Expected Behavior
I expect the ordering of text, including the ANSI escape sequences, to be preserved.
Actual Behavior
ANSI escape sequences are being parsed and re-serialized in a "lossy" way. While this may be necessary when a Windows Terminal is involved, it isn't when the terminal application only receives ANSI sequences. That is, there is no need to try to parse the ANSI. ConPTY does still need to convert console API calls coming from Windows command-line apps, but plain ANSI text doesn't need any conversion.
The text was updated successfully, but these errors were encountered: