-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Utf32 buffer #1878
Utf32 buffer #1878
Conversation
Some speed numbers (tested with this xterm-benchmark script https://gist.github.com/jerch/07ea5e2dfc0548df63a9113d6d721aee):
|
This is great! Both in terms of performance and because it unblocks the coming WebGL renderer from customizing selection color, and of course, true color support :) @jerch Do you have an ETA for this to be ready for review/merge? I can help with reviews, if you guys need an extra (albeit not as knowledgeable in xterm internals) pair of eyes |
@juancampa The active codebase should already work with this. The test cases are still missing, they are not yet ported to the new interface (tedious to get those moved over). I plan to get it ready for review by the weekend. This is planned for the 3.11 release, but we will have to wait for the reflow PR #1864 and PR #1796 as they have interdependencies. After that the road is clear to work directly on true color and UTF8 support. |
#1796 got merged, thus the change list here got way shorter. Up for a "normal" review against master. |
} | ||
|
||
/** Get data as CharData. */ | ||
public getAsCharData(): CharData { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is only used in tests so I think we should move it to TestUtils.test.ts (and pass in the ICellData as an arg)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yepp, good idea.
This PR applies the UTF32 buffer layout as discussed in #791. This layout rearranges the stored information to make room for the upcoming true color support.
Note: The PR is based on #1796 as it relies on changes from there. After #1796 has landed it can be rebased/merged.
Fixes #791.