[Python-ideas] PEP 540: Add a new UTF-8 mode
INADA Naoki
songofacandy at gmail.com
Thu Jan 5 20:15:52 EST 2017
>> Always use UTF-8
>> ----------------
>>
>> Python already always use the UTF-8 encoding on Mac OS X, Android and Windows.
>> Since UTF-8 became the defacto encoding, it makes sense to always use it on all
>> platforms with any locale.
>
> Please don't! I use different locales and encodings, sometimes it's
> utf-8, sometimes not - but I have properly configured LC_* settings and
> I prefer Python to follow my command. It'd be disgusting if Python
> starts to bend me to its preferences.
For stdio (including console), PYTHONIOENCODING can be used for
supporting legacy system.
e.g. `export PYTHONIOENCODING=$(locale charmap)`
For commandline argument and filepath, UTF-8/surrogateescape can round trip.
But mojibake may happens when pass the path to GUI.
If we chose "Always use UTF-8 for fs encoding", I think
PYTHONFSENCODING envvar should be
added again. (It should be used from startup: decoding command line argument).
>
>> The risk is to introduce mojibake if the locale uses a different encoding,
>> especially for locales other than the POSIX locale.
>
> There is no such risk for me as I already have mojibake in my
> systems. Two most notable sources of mojibake are:
>
> 1) FTP servers - people create files (both names and content) in
> different encodings; w32 FTP clients usually send file names and
> content in cp1251 (Russian Windows encoding), sometimes in cp866
> (Russian Windows OEM encoding).
>
> 2) MP3 tags and play lists - almost always cp1251.
>
> So whatever my personal encoding is - koi8-r or utf-8 - I have to
> deal with file names and content in different encodings.
3) unzip zip file sent by Windows. Windows user use no-ASCII filenames, and
create legacy (no UTF-8) zip file very often.
I think people using non UTF-8 should solve encoding issue by themselves.
People should use ASCII or UTF-8 always if they don't want to see mojibake.
>
> Oleg.
> --
> Oleg Broytman http://phdru.name/ phd at phdru.name
> Programmers don't die, they just GOSUB without RETURN.
> _______________________________________________
> Python-ideas mailing list
> Python-ideas at python.org
> https://mail.python.org/mailman/listinfo/python-ideas
> Code of Conduct: http://python.org/psf/codeofconduct/
More information about the Python-ideas
mailing list