classification
Title: IDLE for Python 3.5.1 for x64 Windows exits when pasted a string with non-BMP characters
Type: behavior Stage: resolved
Components: IDLE Versions: Python 3.5
process
Status: closed Resolution: duplicate
Dependencies: Superseder: IDLE 3.x on Windows exits when pasting non-BMP unicode
View: 13153
Assigned To: Nosy List: serhiy.storchaka, tats.u., terry.reedy
Priority: normal Keywords:

Created on 2016-02-23 14:24 by tats.u., last changed 2016-02-27 10:05 by terry.reedy. This issue is now closed.

Messages (4)
msg260736 - (view) Author: Tatsunori Uchino (tats.u.) Date: 2016-02-23 14:24
On Windows Server 2012 R2 with Update(which is compatible with Windows 8.1 Update 1), I copied a character U+20BB7 and pasted it on IDLE.  After that, IDLE suddenly exited with no messages, notices, or errors.

  Then, I tried to input some non-BMP charactors by the Google Japanese IME other than 𠮷 such as U+1F444, U+1F468 and found that the IDLE exited as the same way.

  I suppose that these phenomena could be due to a failure when treating surrogate pairs in input or pasted strings.
msg260737 - (view) Author: Tatsunori Uchino (tats.u.) Date: 2016-02-23 14:31
P.S.
  𠮷 is explained as U+20BB7 in UCS-4.  And the characters that is explaind as U+1F444(👄) and U+1F468(👨) are both what are said emojis(explains the mouth and man)
msg260795 - (view) Author: Serhiy Storchaka (serhiy.storchaka) * (Python committer) Date: 2016-02-24 12:08
This looks as a duplicate of issue13153.
msg260937 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2016-02-27 10:05
If you start IDLE from the console with 'python -m idlelib' you should see a TclError message when pasting.  This is a known limitation of tcl/tk.  Printing gives a traceback in IDLE's shell.
>>> print('\U00020BB7')
Traceback (most recent call last):
  File "<pyshell#26>", line 1, in <module>
    print('\U00020BB7')
  File "C:\Programs\Python35\lib\idlelib\PyShell.py", line 1344, in write
    return self.shell.write(s, self.tags)
UnicodeEncodeError: 'UCS-2' codec can't encode character '\U00020bb7' in position 0: Non-BMP character not supported in Tk
History
Date User Action Args
2016-02-27 10:05:25terry.reedysetstatus: open -> closed

superseder: IDLE 3.x on Windows exits when pasting non-BMP unicode
title: IDEL for Python 3.5.1 for x64 Windows exits when pasted a string with non-BMP characters -> IDLE for Python 3.5.1 for x64 Windows exits when pasted a string with non-BMP characters
nosy: + terry.reedy

messages: + msg260937
resolution: duplicate
stage: resolved
2016-02-24 12:08:51serhiy.storchakasetnosy: + serhiy.storchaka
messages: + msg260795
2016-02-23 14:32:00tats.u.setmessages: + msg260737
2016-02-23 14:24:34tats.u.create