edirTIC31 / edirTIC31_main_courante

Dépôt de l'EDIR-TIC de la DDUS31 lié au dévelopemment de la main courante
1 stars 1 forks source link

Caractères accentués dans le code sans détermination de l'encodage #8

Closed titixbrest closed 8 years ago

titixbrest commented 8 years ago

Hello !

J'ai essayé de compiler votre code sous linux (debian jessie en i686) Je me fais insulter pour chaque fichier contenant un caractère accentué parce que la keymap n'a pas été définie dans les fichiers.

SyntaxError: Non-ASCII character '\xc3' in file /home/thierry/edirTIC31_main_courante/edirtic/maincourante/models.py on line 14, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

titixbrest commented 8 years ago

Voir le pull request :D

Beau travail !

nim65s commented 8 years ago

Salut :)

On fait du python3, l’encodage par défaut est donc utf-8 :) On peut donc écrire tout l’unicode qu’on veut dans les fichiers sans problème. Il faut peut être que tu installes python3 par contre → cf. la doc

Le shebang est également inutile dans tout autre fichier que manage.py, puisqu’il sert à indiquer au système d’exploitation la manière d’éxécuter un fichier, et qu’on n’éxécute pas ces fichiers directement.

Et même dans ce cas, on ne met pas /usr/bin/python mais /usr/bin/env python, afin de lancer l’interpréteur défini par l’environement. D’ailleurs, sous debian, /usr/bin/python va lancer un python 2.7, alors que sous d’autres OS (comme Arch), il lancera python 3.5… Ce qui risque de poser des problèmes x)

Enfin, pour la forme, on ne parle pas de compiler du python (qui est un langage interprété), et «keymap» se réfère à l’agencement des touches sur le clavier (azerty / qwerty / bépo), et pas à la manière dont les caractères sont représentés en binaire dans un fichier texte.