Some glyphs stretched vertically in 1.2.2 #9161
Replies: 5 comments 12 replies
-
|
I think the short answer here is that most things you're observing is just due to the terminals using different fonts, both as primary font and as fallbacks loaded for any codepoints not defined in the primary font.
|
Beta Was this translation helpful? Give feedback.
-
|
Something really weird is going on: U+25F6 « ◶ » found in face “JetBrains Mono”. U+2033 « ″ » found in face “JetBrains Mono”. U+221A « √ » found in face “JetBrains Mono”. U+2660 « ♠ » found in face “Noto Emoji”. U+21D2 « ⇒ » found in face “JetBrains Mono”. I see four different fonts picked just within the WGL4 symbol set, and that set has been required by any font that works on Windows (which I have to assume JetBrains does) for the last quarter century or so. So either JetBrains Mono is filled with glyph holes for symbols that really ought to be there (in which case JetBrains Mono probably shouldn't be the default font), or the font-for-glyph selection is doing something really weird (in which case that's probably a bug to be fixed). It makes sense that the outline triangles are generated internally, for exactly the reason you're talking about, but I don't think those particular codepoints are supposed to be stretched to full cell height. See the sample glyphs in https://www.unicode.org/charts/PDF/U25A0.pdf . (NOTE: Unicode sample glyph charts are explicitly not prescriptive, so the shape there is no guarantee. It is a strong hint, though.) |
Beta Was this translation helpful? Give feedback.
-
|
Adding a little more thought to the triangle question, it seems to me that the Unicode triangle codepoints may have a functionality hole. There are (at least) two needs:
The first need seems to be satisfied by the original unstretched triangles in Unicode versions prior to 17.0. I don't think the second one gets satisfied until the Symbols For Legacy Computing block introduced in Unicode 17.0: https://www.unicode.org/charts/PDF/U1FB00.pdf . It's not clear that all the variants that you'd want are there, but certainly a lot of them. (FWIW, if there are any codepoints whose glyphs absolutely should be generated internally, the Symbols For Legacy Computing block has 'em.) |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
|
Thanks for having noticed these issues - I had reported the playing card one a while ago #7204 (with the heart being the single double width as a result) |
Beta Was this translation helpful? Give feedback.





Uh oh!
There was an error while loading. Please reload this page.
-
Issue Description
After doing a fresh install of Ghostty 1.2.2 from https://github.com/mkasberg/ghostty-ubuntu?tab=readme-ov-file#manual-installation I ran the
terminal-quicktestfrom https://github.com/japhb/Terminal-Tests in each of Ghostty, kitty, andgnome-terminalfor comparison (left to right in the image below):All three are using default configurations for the Cinnamon desktop under Linux Mint 22.2 (Zora), which is based on Ubuntu 24.04 LTS (Noble).
Note that not only has Ghostty chosen a font with a taller cell aspect ratio than the others -- it's a bit hard to see, but the windows are approximately the same width but the Ghostty one is much taller -- but the automatic font resizing seems to do some unexpected additional stretching.
If you look at the basic symbols block in the upper right (sampled from Latin-1, CP1252, W1G, WGL4, and MES-2), note that the "eighths" have been stretched to overlapping their cells, the card suits appear different sizes, and predominately "portrait orientation" glyphs are outsized with respect to related glyphs of different orientations. For example, FEMALE SIGN is much larger than MALE SIGN, INTERSECTION and UNION are larger than SUBSET OF and SUPERSET OF, and UP DOWN ARROW is larger than LEFT RIGHT ARROW.
Similarly, the rotating arrows below the basic symbols block show strongly varying lengths (and widths, in the case of the double arrows).
More oddly, in the row of corner glyphs, WHITE CIRCLE WITH LOWER RIGHT QUADRANT is much smaller than the other WHITE CIRCLE WITH * QUADRANT glyphs.
Finally, the outlined corner triangles in the rightmost "compass rose" layout are all stretched vertically; I assume they are filling their cells vertically, rather than being isosceles right triangles as the other two terminals show.
Note that the same rightmost compass rose layout has an offset center EIGHT POINTED PINWHEEL STAR. I'm not sure if this is caused by the stretching as well or is just a bug in whatever font was chosen as Ghostty's default.
Expected Behavior
Glyph sizes of related glyphs should be more consistent and glyphs should not be stretched or overlapping.
Actual Behavior
See Issue Description.
Reproduction Steps
To just display the glyphs and SGR codes of the test without installing anything:
terminal-quick-test-ansi.txtfile.cat terminal-quick-test-ansi.txtterminal-quick-test-ansi.txt
To do the test "for real", by actually running the test program:
git clone https://github.com/japhb/Terminal-Tests.gitcd Terminal-Testszef install --deps-only .raku -I. bin/terminal-quick-test --rulerGhostty Logs
Ghostty Version
OS Version Information
Linux Mint 22.2 (Zora), based on Ubuntu 24.04 LTS (Noble)
(Linux only) Display Server
X11
(Linux only) Desktop Environment/Window Manager
Cinnamon 6.4.8
Minimal Ghostty Configuration
Additional Relevant Configuration
No relevant configuration, just using defaults.
I acknowledge that:
```) on separate lines.Beta Was this translation helpful? Give feedback.
All reactions