racket/gui

Invalid unicode rendering

Metaxal opened this issue · 0 comments

The following code:

#lang racket/gui
(displayln (string-append "א" "\taleph"))
(define fr (new frame% [label "list"]))
(new list-box%
     [parent fr]
     [label ""]
     [choices '("ℵ\taleph"
                "א\taleph"
                "ε\tepsilon")])
(send fr show #t)

produces:
Screenshot from 2021-11-05 11-34-44

Observe that the א (U+05D0, right to left) line is reversed compared to what is specified. This may be a potential threat, based on this article.

The first aleph (U+2135, left to right) is also fine

Several other right-to-left symbols behave similarly.

The issue does not appear in DrRacket itself, only in the gui element (I did not try with other gui elements).

cc @samth @rfindler