-
Notifications
You must be signed in to change notification settings - Fork 27.9k
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
Incorrect handling of unicode combining markers - Backspace splits Ideographic Variation Sequence #15622
Comments
Variation Selectors are not treated special in any way // 辻󠄁 8FBB DB40 DD01
"辻󠄁".codePointAt(0).toString(16) // 8fbb
"辻󠄁".codePointAt(1).toString(16) // e0101 |
The same issue exists with combining diacritics - e.g. |
To verify, paste the following snippet:
Attempt to move the cursor around in between characters (left/up/right/down arrows), enable the block cursor. You can compare with the stable version to see the multitude of issues that were addressed... |
This, or at least the incorrect rendering of combining characters in #79067, seems to be related to the font: With the default not-particularly-pretty |
We've got this bug in Visual Studio for Windows and I noticed that VS Code has it as well.
Steps to Reproduce:
Place cursor to right of either first or third 辻󠄀
Press backspace
Expected behavior: The entire character should be removed as it does in Notepad and Microsoft Word
Actual Behavior: The right two bytes are removed from the buffer but 8FBB remains.
These characters are not valid within the context of most C# code (variable/method names) but are legal within comments and strings where they may be more likely to occur in the future.
It's also worth noting that these characters cause issues with left and right arrow movements. I'm not sure if it's worth opening a separate issue for this, though.
The text was updated successfully, but these errors were encountered: