Configurar unicode em ambientes virtuais Python (virtualenv)

Introdução

Para definir o mapa de caracteres como unicode, no ambiente virtuais em Python, é necessário criar o arquivo sitecustomize.py na estrutura de bibliotecas da instancia Python, de acordo com a versão disponível, no diretório lib/pythonX.X/site-packages/, dos ambientes.

Escopo

Considere que o ambiente virtual Python, seja instalado como presentado abaixo, conforme sua versão:
  • # virtualenv-2.4 py24
  • # virtualenv-2.6 py26
  • # virtualenv-2.7 py27

Buildout

Ambiente Virtual em Python-2.4:

[unicode]
recipe = plone.recipe.command
update-command = ${unicode:command}
command =
   cat > ${buildout:directory}/py24/lib/python2.4/site-packages/sitecustomize.py << EOF
   import sys
   sys.setdefaultencoding('utf-8')
   EOF

Ambiente Virtual em Python-2.6:

[unicode]
recipe = plone.recipe.command
update-command = ${unicode:command}
command =
   cat > ${buildout:directory}/py26/lib/python2.6/site-packages/sitecustomize.py << EOF
   import sys
   sys.setdefaultencoding('utf-8')
   EOF

Ambiente Virtual em Python-2.7:

[unicode]
recipe = plone.recipe.command
update-command = ${unicode:command}
command =
   cat > ${buildout:directory}/py27/lib/python2.7/site-packages/sitecustomize.py << EOF
   import sys
   sys.setdefaultencoding('utf-8')
   EOF

Manual

Em qualquer Python manualmente, execute o comando no bash, dentro do diretório site-packages, da instância ou sistema operacional:
cat > sitecustomize.py << EOF
   import sys
   sys.setdefaultencoding('utf-8')
   EOF

Comentários