This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author terry.reedy
Recipients ezio.melotti, ned.deily, ronaldoussoren, serhiy.storchaka, terry.reedy, vstinner
Date 2020-11-02.02:35:11
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1604284511.42.0.692993645552.issue42225@roundup.psfhosted.org>
In-reply-to
Content
In IDLE on Windows the following prints the first 3 astral planes in a couple of minutes.

for i in range(0x10000, 0x40000, 32):
    chars = ''.join(chr(i+j) for j in range(32))
    print(hex(i), chars)

Perhaps half of the assigned chars in the first plane are printed instead of being replaced with a narrow box. This includes emoticons as foreground color outlines on background color.  Maybe all of the second plane of extended CJK chars are printed.  The third plane is unassigned and prints as unassigned boxes (with an X).

Fixing OS graphics or tk is out of scope for us.  Preventing hangs or crashes when using tkinter is.  On Mac, refusing to insert any astral char into a tk widget might be the best solution.  Serhiy, could that be done in tkinter/_tkinter?

On Linux, the situation appears to be more complex.  The SO questioner
https://stackoverflow.com/questions/64615570/why-do-some-emoticons-cause-python-idle-to-crash-on-ubuntu
could print the two multicolor 'grinning face with smiling eyes' 😄, which fails for Serhiy, but not the simpler thumbsup 👍.  I don't know if we can detect fonts that cause crashes.
History
Date User Action Args
2020-11-02 02:35:11terry.reedysetrecipients: + terry.reedy, ronaldoussoren, vstinner, ned.deily, ezio.melotti, serhiy.storchaka
2020-11-02 02:35:11terry.reedysetmessageid: <1604284511.42.0.692993645552.issue42225@roundup.psfhosted.org>
2020-11-02 02:35:11terry.reedylinkissue42225 messages
2020-11-02 02:35:11terry.reedycreate