[py2.3a1] bugs en la codificacion por defecto de ficheros
Chema Cortés
chemacortes en wanadoo.es
Lun Ene 13 03:24:29 CET 2003
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Me respondo a mí mismo:
> Pero tengo dos dudas:
>
> 1) sin este comentario, según dice la documentación, la codificación por
> defecto debería ser latin1, pero la advertencia que me da parace dar a
> enteder que utiliza por defecto la codificación ascii. ¿Es un bug o es que
> han cambiado de opinión?
Leyendo la PEP263 (http://www.python.org/peps/pep-0263.html) veo que la
codificación por defecto debería ser "ascii", no latin1 como ocurría en
python2.2. Lo que ocurre es que, por compatibilidad (la llamada fase 1 del
PEP263) se codifica por defecto a latin1 dando un aviso de obsolescencia.
Posiblemente, en el futuro, se codifique por defecto a "ascii", por lo que
empezará a ser recomendable ir poniendo el comentario con la codificación por
defecto de nuestros fuentes.
> 2) he probado la tolerancia a la hora de poner el comentario de
> codificación:
>
> # -*- coding: iso8859-15
> # coding: iso8859-15
> #-*- encoding: iso8859-15
> #ponloquequieras coding:iso8859-1 quedaigual
>
> Parece ser demasiado tolerante. ¿Es así o simplemente no es todo lo
> estricto que debería ser?
En el mismo PEP veo que la expresión regular que se usa es:
"coding[:=]\s*([\w-_.]+)"
El grupo 1 de esta expresión regular es la codificación que se emplea. Esto
explicaría lo tolerante que es, aunque siempre limitado a la primera o
segunda línea del código. No tiene mayor importancia, pero puede provocar
algún despiste.
Saludos,
- --
Chema Cortes (chemacortes en wanadoo.es) | LinuxUser#142755 - SuSE Linux 8.1
ZARALINUX http://www.zaralinux.org | "La naturaleza es muy sencilla; lo
PYTANDO http://pytando.sf.net | difícil es razonar con ella."
PGPKEY: mailto:chemacortes en wanadoo.es?subject=__PGPKEY__
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)
iD8DBQE+IiNeHLTQrABk8H0RAkPuAKCkvTLP7d/zk2ijzv2aBfuICsk2jwCfWi1l
2FRJB30SORJcaXgLiFHQzhI=
=tJRY
-----END PGP SIGNATURE-----
Más información sobre la lista de distribución Python-es