Skip to content
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

Introduce opt-in glyph scaling to achieve GB18030 compliance #4997

Merged
merged 2 commits into from
Mar 14, 2024

Conversation

Tyriar
Copy link
Member

@Tyriar Tyriar commented Mar 14, 2024

Fixes #4969

I've tried to keep the overhead for the webgl renderer as small as possible, there's just a check for an option (via optimized rawOptions) and fetching the width of each cell from content.

Webgl with the setting off:

image

Webgl with the setting on:

image

I looked into dynamically resizing based on the following glyph but it ended up feeling weird seeing the glyphs change. The VIII in particular seems pretty hard to read which is probably a combination of letting the GPU handle interpolation (good for perf but it might be using nearest pixel?) and it tries to pack a lot of stuff into a small cell on a standard DPI screen (high DPI would be fine).

The setting is opt-in in xterm.js and the plan is to enable it by default in VS Code.

@Tyriar Tyriar added this to the 5.5.0 milestone Mar 14, 2024
@Tyriar Tyriar self-assigned this Mar 14, 2024
@Tyriar Tyriar marked this pull request as ready for review March 14, 2024 16:50
@Tyriar Tyriar merged commit 44feecf into xtermjs:master Mar 14, 2024
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Automatic glyph scaling based on unicode width and following character content
1 participant