-
-
Notifications
You must be signed in to change notification settings - Fork 93
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
Various unicode symbols fail to display anywhere in the application after being displayed in italics #607
Comments
Changing the application's font to one with better italicization support (such as JetBrains mono) does appear to resolve the issue. Should've checked sooner in hindsight, didn't realize that setting affected text you otherwise can't style. It'd still be nice if the errors for incomplete character support were less bizarre. |
This would appear to be more likely related to the underlying graphics libraries, which have had recent updates (in 8.9 or 8.10) does this still happen? |
minimal example to try without DrRacket #lang at-exp racket/gui
(define f (new frame% [label "Simple Edit"]
[width 200]
[height 200]))
(define c (new editor-canvas% [parent f]))
(define t (new text%))
(send c set-editor t)
(send f show #t)
(define mb (new menu-bar% [parent f]))
(define m-edit (new menu% [label "Edit"] [parent mb]))
(define m-font (new menu% [label "Font"] [parent mb]))
(append-editor-operation-menu-items m-edit #f)
(append-editor-font-menu-items m-font)
(send t set-max-undo-history 100)
;;r𝕣 |
Minimal example has the same bug, except the missing character glyph no longer spreads automatically. Test 1: Pasted three 𝕣's and changed each of their font sizes. |
I couldn't reproduce on macOS by italicising comments |
Oh, I misunderstood what you had trouble reproducing. It also seems like your test app defaulted to a different font than mine. Perhaps the font Racket defaults to on MacOS has better italics support? If you could switch to Consolas or Courier New |
Just realized I could use "Revert all preferences to default" to find that Courier New is the default font for DrRacket on Windows. Again, it seems like MacOS Racket has different defaults. Which font is your DrRacket version using? |
Menlo |
Strange, I tried switching my font to Menlo but it still didn't work. Jetbrains Mono remains the only font I've found that DrRacket reliably italicizes correctly. |
Within the minimal test app, is there any difference between italicizing 𝕣 and "slanting" it? I'm not sure whether the font distributions I'm finding are incomplete or if MacOS is using slanting as a fallback for characters that don't support italics |
Hi, @Nesuniken I could not find a difference between italic and slant. I used the characters you provided.
|
I just realized I'm having trouble getting italics and slanting to behave differently with any text. Is there some nuance I'm missing. or is Racket using the same procedure for both styles? |
Tested on Windows 11 with Racket 8.8
Steps to reproduce:
Once this is done, every 𝕣 character within the current window, as well as any 𝕣 characters displayed in new windows, will experience the bug until the application is completely restarted.
To confirm that italics are specifically the cause, you can reproduce the bug with comments if you change their style settings. Conversely, you can eliminate the bug from the REPL if you change it to not italicize errors.
Originally I encountered this problem just with the less conventional double struck letters (i.e everything but ℂ, ℍ, ℕ, ℙ, ℚ, ℝ, and ℤ), but looking into it further it seems to affect other characters like ⟜⌾◶⎉⍟⎊⥊⌽⍉⍋⍒⍷. They're all mathematical so far, but that could just be because I haven't tested much else. As for how broken italics breaks every other instance of the character, that's still a complete mystery to me.
For the time being, is there a way to disable italics for status bar error messages like there is for REPL ones?
The text was updated successfully, but these errors were encountered: