Estoy intentando crear un entorno que permita la impresión de caracteres Unicode en Python 2.7 y 3.4, bajo Windows.
Al usar Cmder / ConEmu como terminal, UTF-8 es totalmente compatible de forma inmediata .
Sin embargo, el soporte de Python no es tan simple.
Si configuro chcp 65001
, Python 3.3+ lo detecta y funciona bien.
Si configuro chcp 65001
simplemente no funciona en absoluto. Python produce una línea de error mientras que IPython no funciona en absoluto.
Aparentemente, al especificar el set PYTHONIOENCODING=utf-8
tanto Python como IPython funcionan y permiten la impresión de algunos caracteres Unicode.
Por ejemplo puedo hacer:
print u'\xc1'
pero no puedo hacer
print u'\xc1\xc1'
que produce: IOError: [Errno 0] Error
Aún así, es mejor que nada, al menos la mayoría de los progtwigs de Python 2.7 se ejecutarán sin modificaciones.
Mi pregunta es que si agrego
@chcp 65001 > nul @set PYTHONIOENCODING=utf-8
hasta el final de cmder/vendor/init.bat
, ¿tendría eso efectos secundarios en Python 3.3+?
Además, ¿hay alguna manera de dejar que las secuencias de comandos de Python sin modificar print u'\xc1\xc1'
en Windows?