Re: Unicode range

Nam Nguyen via Tkinter-discuss <[email protected]> Mon, 4 Jan 2021 09:39:14 -0800
Newsgroups gmane.comp.python.tkinter
Message-ID <CA+YNSmV6jF2bZsJkHGjzZ7fkLDU9F=uKg=ypB+ndSBrxkB+rSg@mail.gmail.com>
--===============8578761356939284785==
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256;
	boundary="00000000000042333c05b81692aa"

--00000000000042333c05b81692aa
Content-Type: multipart/alternative; boundary="0000000000003c9dc805b8169207"

--0000000000003c9dc805b8169207
Content-Type: text/plain; charset="UTF-8"

Hi Vasilis,

Perhaps by removing characters that are outside of that range?

The error message gives you a range, from 0 to 65535. So this line might do.

s = ''.join(c for c in s if 0 < ord(c) < 65535)

Cheers,
Nam

On Mon, Jan 4, 2021 at 1:25 AM Vasilis Vlachoudis <
[email protected]> wrote:

> Hi all,
>
> how can I "replace/strip" unicode characters that are out of the accepted
> tk range before inserting them to Text()?
>
>   File "/usr/lib/python3.6/tkinter/__init__.py", line 3272, in insert
>     self.tk.call((self._w, 'insert', index, chars) + args)
> _tkinter.TclError: character U+1c784 is above the range (U+0000-U+FFFF)
> allowed by Tcl
>
> Vasilis
> _______________________________________________
> Tkinter-discuss mailing list
> [email protected]
> https://mail.python.org/mailman/listinfo/tkinter-discuss
>

--0000000000003c9dc805b8169207
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e,monospace">Hi Vasilis,</div><div class=3D"gmail_default" style=3D"font-fa=
mily:monospace,monospace"><br></div><div class=3D"gmail_default" style=3D"f=
ont-family:monospace,monospace">Perhaps by removing characters that are out=
side of that range?</div><div class=3D"gmail_default" style=3D"font-family:=
monospace,monospace"><br></div><div class=3D"gmail_default" style=3D"font-f=
amily:monospace,monospace">The error message gives you a range, from 0 to 6=
5535. So this line might=C2=A0do.</div><div class=3D"gmail_default" style=
=3D"font-family:monospace,monospace"><br></div><div class=3D"gmail_default"=
 style=3D"font-family:monospace,monospace">s =3D &#39;&#39;.join(c for c in=
 s if 0 &lt; ord(c) &lt; 65535)</div><div class=3D"gmail_default" style=3D"=
font-family:monospace,monospace"><br></div><div class=3D"gmail_default" sty=
le=3D"font-family:monospace,monospace">Cheers,</div><div class=3D"gmail_def=
ault" style=3D"font-family:monospace,monospace">Nam</div></div><br><div cla=
ss=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Mon, Jan 4, 202=
1 at 1:25 AM Vasilis Vlachoudis &lt;<a href=3D"mailto:Vasilis.Vlachoudis@ce=
rn.ch" target=3D"_blank">[email protected]</a>&gt; wrote:<br></div=
><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border=
-left:1px solid rgb(204,204,204);padding-left:1ex">




<div>
<div style=3D"direction:ltr;font-family:Tahoma;color:rgb(0,0,0);font-size:1=
0pt">
<div>
<div>
<div><font face=3D"Segoe UI, Helvetica, Arial, sans-serif"><span style=3D"f=
ont-size:13.3333px">Hi all,</span></font></div>
<div><font face=3D"Segoe UI, Helvetica, Arial, sans-serif"><span style=3D"f=
ont-size:13.3333px"><br>
</span></font></div>
<div><font face=3D"Segoe UI, Helvetica, Arial, sans-serif"><span style=3D"f=
ont-size:13.3333px">how can I &quot;replace/strip&quot; unicode characters =
that are out of the accepted tk range before inserting them to Text()?</spa=
n></font></div>
<div style=3D"font-family:Tahoma;font-size:13px"><span style=3D"font-family=
:&quot;Segoe UI&quot;,Helvetica,Arial,sans-serif;font-size:13.3333px"><br>
</span></div>
<div style=3D"font-family:Tahoma;font-size:13px"><span style=3D"font-family=
:&quot;Segoe UI&quot;,Helvetica,Arial,sans-serif;font-size:13.3333px">=C2=
=A0 File &quot;/usr/lib/python3.6/tkinter/__init__.py&quot;, line 3272, in =
insert</span><br style=3D"font-family:&quot;Segoe UI&quot;,Helvetica,Arial,=
sans-serif;font-size:13.3333px">
<span style=3D"font-family:&quot;Segoe UI&quot;,Helvetica,Arial,sans-serif;=
font-size:13.3333px">=C2=A0=C2=A0=C2=A0 self.tk.call((self._w, &#39;insert&=
#39;, index, chars) + args)</span><br style=3D"font-family:&quot;Segoe UI&q=
uot;,Helvetica,Arial,sans-serif;font-size:13.3333px">
<span style=3D"font-family:&quot;Segoe UI&quot;,Helvetica,Arial,sans-serif;=
font-size:13.3333px">_tkinter.TclError: character U+1c784 is above the rang=
e (U+0000-U+FFFF) allowed by Tcl</span></div>
<div style=3D"font-family:Tahoma;font-size:13px"><span style=3D"font-family=
:&quot;Segoe UI&quot;,Helvetica,Arial,sans-serif;font-size:13.3333px"><br>
</span></div>
<div style=3D"font-family:Tahoma;font-size:13px"><span style=3D"font-family=
:&quot;Segoe UI&quot;,Helvetica,Arial,sans-serif;font-size:13.3333px">Vasil=
is</span></div>
</div>
</div>
</div>
</div>

_______________________________________________<br>
Tkinter-discuss mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">Tkinter-dis=
[email protected]</a><br>
<a href=3D"https://mail.python.org/mailman/listinfo/tkinter-discuss" rel=3D=
"noreferrer" target=3D"_blank">https://mail.python.org/mailman/listinfo/tki=
nter-discuss</a><br>
</blockquote></div>

--0000000000003c9dc805b8169207--

--00000000000042333c05b81692aa
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIIPngYJKoZIhvcNAQcCoIIPjzCCD4sCAQExDzANBglghkgBZQMEAgEFADALBgkqhkiG9w0BBwGg
ggz4MIIEtjCCA56gAwIBAgIQeAMYYHb81ngUVR0WyMTzqzANBgkqhkiG9w0BAQsFADBMMSAwHgYD
VQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UE
AxMKR2xvYmFsU2lnbjAeFw0yMDA3MjgwMDAwMDBaFw0yOTAzMTgwMDAwMDBaMFQxCzAJBgNVBAYT
AkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMSowKAYDVQQDEyFHbG9iYWxTaWduIEF0bGFz
IFIzIFNNSU1FIENBIDIwMjAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvLe9xPU9W
dpiHLAvX7kFnaFZPuJLey7LYaMO8P/xSngB9IN73mVc7YiLov12Fekdtn5kL8PjmDBEvTYmWsuQS
6VBo3vdlqqXZ0M9eMkjcKqijrmDRleudEoPDzTumwQ18VB/3I+vbN039HIaRQ5x+NHGiPHVfk6Rx
c6KAbYceyeqqfuJEcq23vhTdium/Bf5hHqYUhuJwnBQ+dAUcFndUKMJrth6lHeoifkbw2bv81zxJ
I9cvIy516+oUekqiSFGfzAqByv41OrgLV4fLGCDH3yRh1tj7EtV3l2TngqtrDLUs5R+sWIItPa/4
AJXB1Q3nGNl2tNjVpcSn0uJ7aFPbAgMBAAGjggGKMIIBhjAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0l
BBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMEMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFHzM
CmjXouseLHIb0c1dlW+N+/JjMB8GA1UdIwQYMBaAFI/wS3+oLkUkrk1Q+mOai97i3Ru8MHsGCCsG
AQUFBwEBBG8wbTAuBggrBgEFBQcwAYYiaHR0cDovL29jc3AyLmdsb2JhbHNpZ24uY29tL3Jvb3Ry
MzA7BggrBgEFBQcwAoYvaHR0cDovL3NlY3VyZS5nbG9iYWxzaWduLmNvbS9jYWNlcnQvcm9vdC1y
My5jcnQwNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5nbG9iYWxzaWduLmNvbS9yb290LXIz
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
fntf6JrnhVX6SZ6J2enLIzowTAYDVR0gBEUwQzBBBgkrBgEEAaAyASgwNDAyBggrBgEFBQcCARYm
aHR0cHM6Ly93d3cuZ2xvYmFsc2lnbi5jb20vcmVwb3NpdG9yeS8wCQYDVR0TBAIwADCBmgYIKwYB
BQUHAQEEgY0wgYowPgYIKwYBBQUHMAGGMmh0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29tL2NhL2dz
YXRsYXNyM3NtaW1lY2EyMDIwMEgGCCsGAQUFBzAChjxodHRwOi8vc2VjdXJlLmdsb2JhbHNpZ24u
Y29tL2NhY2VydC9nc2F0bGFzcjNzbWltZWNhMjAyMC5jcnQwHwYDVR0jBBgwFoAUfMwKaNei6x4s
chvRzV2Vb4378mMwRgYDVR0fBD8wPTA7oDmgN4Y1aHR0cDovL2NybC5nbG9iYWxzaWduLmNvbS9j
YS9nc2F0bGFzcjNzbWltZWNhMjAyMC5jcmwwDQYJKoZIhvcNAQELBQADggEBAE2vNKcZmm0oZaUR
Zd+fP54ROzb+cFAUWB7OR5WURDFsFj12otI3QBFXenf9GSgN8N3Utpc+i8iI5pgfgVT6+Kw+AiG3
Mx0zr3WPkYM/l37FBAsaO+I0ev6km0uq5KJ31f8c6BAQdSbB+dnvXzonGik3z7ZzD54/bDMVObxc
BvgA+1ck0xzGo/Z1mQDw5UDBgmDgk1cvFsyv+LQfHQzoE3fQ9cnSpmFX6AMSZpmAMUjEcWaNC7eP
gbvxmuD+JMh69cZBdwWZwZLhDlbHNIqkK33J30PDnVnUTarxGykbZA6soU77PW3vLZjYbNfhUG+K
HJR7uQarqrQYidCXNtn4huYxggJqMIICZgIBATBoMFQxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBH
bG9iYWxTaWduIG52LXNhMSowKAYDVQQDEyFHbG9iYWxTaWduIEF0bGFzIFIzIFNNSU1FIENBIDIw
MjACEAH7/Awiqo6FZJrrS2XQb1owDQYJYIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEIM6u
cr9H4Uz2oK3cDrCDtBTE9X96JDGQdR+f1mNitv/kMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEw
HAYJKoZIhvcNAQkFMQ8XDTIxMDEwNDE3MzkyNlowaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQME
ASowCwYJYIZIAWUDBAEWMAsGCWCGSAFlAwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJ
KoZIhvcNAQEHMAsGCWCGSAFlAwQCATANBgkqhkiG9w0BAQEFAASCAQCJoh/dBb2DjWD+WQfg/ru4
ZcUqvKbY5meVtXf7gl/Z9oa+sgrfudQIg82c8wWJumu7YF3BVZu/sp4wjuU3FTmIabTrItAQk0Iu
UWpX3Xrr/yxKZkIGxKIPKCX2mrpnl7fLrmgxr7jMbYjKVZd0pBqtSS8UFQhsOuEmo1pBisOTp6l1
BtY+UZUKzPYglPiT6frB1G7oWTaW74yGyKSUUtVkHiP6RZHV1kX6RTWAOGS1ESAx6Ch5qe70pD4N
K4z67nhWLaVNsHCZ4bt2ePr0EHS1o6OouBbwLj1nCUh/xZsmP47SRTBHgXQA3epf/4XFaH4MZi8H
/+xwmOi0YAwQbDAt
--00000000000042333c05b81692aa--

--===============8578761356939284785==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Tkinter-discuss mailing list
[email protected]
https://mail.python.org/mailman/listinfo/tkinter-discuss

--===============8578761356939284785==--