Ci-dessous, les différences entre deux révisions de la page.
doc:dak:traduction [2006/03/13 11:51] lehobey créée |
doc:dak:traduction [2006/03/13 11:51] (Version actuelle) lehobey créée |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Autour de la traduction de dak ====== | ||
+ | Il y a plusieurs choses à traduire pour adapter [[dak]] à d'autres langues et / ou d'autres configurations. | ||
+ | ===== Modèles ===== | ||
+ | Les courriels types sont dans le répertoire ///opt/dak/katie/templates// du paquet installé (répertoire //dak-1.0/templates// du paquet source) qui est géré par le paramètre | ||
+ | |||
+ | <file> | ||
+ | Dir | ||
+ | { | ||
+ | Templates "/opt/dak/katie/templates/"; | ||
+ | }; | ||
+ | </file> | ||
+ | |||
+ | J'ajoute un //spécificité// si le ficher contient des termes spécifiques à Debian. | ||
+ | |||
+ | * alicia.bug-close //spécificité// (//ftpmaster//) | ||
+ | * amber.advisory //spécificité// (//Debian// et //DSA// cités plusieurs fois). Sert aux notifications de péril. | ||
+ | * jennifer.accepted | ||
+ | * jennifer.announce | ||
+ | * jennifer.bug-close | ||
+ | * jennifer.bug-experimental-fixed | ||
+ | * jennifer.bug-nmu-fixed | ||
+ | * [[jennifer.new]] | ||
+ | * jennifer.override-disparity | ||
+ | * katie.rejected | ||
+ | * kelly.installed | ||
+ | * kelly.unaccept | ||
+ | * lauren.stable-rejected | ||
+ | * lisa.bxa_notification //spécificité// (//Ben Collins//, //Debian//...) | ||
+ | * lisa.prod | ||
+ | * melanie.bug-close | ||
+ | * README | ||
+ | * uma.added //spécificité// (//Ganneff//) | ||
+ | |||
+ | ==== Modifications à apporter ==== | ||
+ | - Faire passer ces fichiers en UTF-8 (fr_FR.UTF-8) avec les champs : | ||
+ | * Content-Type: text/plain; charset=utf-8 | ||
+ | * Content-Transfer-Encoding: 8bit | ||
+ | * Mime-Version: 1.0 (faut-il aussi ce champ-là?) | ||
+ | * Content-Disposition: inline (faut-il aussi ce champ-là?) | ||
+ | - Rendre non-spécifique à Debian (www.debian.org ou //ftpmaster// dans le corps des messages par exemple). | ||
+ | - Faut-il ajouter de nouvelles substitutions ? | ||
+ | |||
+ | ==== Liste des substitutions existantes ==== | ||
+ | |||
+ | <code> | ||
+ | __ADMIN_ADDRESS__ | ||
+ | __ADVISORY__ | ||
+ | __ADVISORY_TEXT__ | ||
+ | __ALICIA_ADDRESS__ | ||
+ | __ANNOUNCE_LIST_ADDRESS__ | ||
+ | __ARCHITECTURE__ | ||
+ | __BCC__ | ||
+ | __BINARY_DESCRIPTIONS__ | ||
+ | __BUG_NUMBER__ | ||
+ | __BUG_SERVER__ | ||
+ | __CC__ | ||
+ | __CHANGES_FILENAME__ | ||
+ | __CONTROL_MESSAGE__ | ||
+ | __DATE__ | ||
+ | __DISTRO__ | ||
+ | __FILE_CONTENTS__ | ||
+ | __FROM_ADDRESS__ | ||
+ | __HOSTNAME__ | ||
+ | __KATIE_ADDRESS__ | ||
+ | __KEYID__ | ||
+ | __MAINTAINER__ | ||
+ | __MAINTAINER_ADDRESS__ | ||
+ | __MAINTAINER_FROM__ | ||
+ | __MAINTAINER_TO__ | ||
+ | __MANUAL_REJECT_MESSAGE__ | ||
+ | __MELANIE_ADDRESS__ | ||
+ | __MORE_INFO_URL__ | ||
+ | __NEW_MAINTAINER__ | ||
+ | __PACKAGE__ | ||
+ | __PRIMARY_KEY__ | ||
+ | __PRIMARY_MIRROR__ | ||
+ | __PROD_MESSAGE__ | ||
+ | __REJECTOR_ADDRESS__ | ||
+ | __REJECT_MESSAGE__ | ||
+ | __SHORT_SUMMARY__ | ||
+ | __SOURCE__ | ||
+ | __STABLE_REJECTOR__ | ||
+ | __STABLE_WARNING__ | ||
+ | __SUITE__ | ||
+ | __SUITE_LIST__ | ||
+ | __SUMMARY__ | ||
+ | __UID__ | ||
+ | __VERSION__ | ||
+ | __WHOAMI__ | ||
+ | </code> | ||
+ | |||
+ | La fonction qui fait ces substitutions est //TemplateSubst// dans //utils.py//. Le résultat d'un //grep * TemplateSubst// est : | ||
+ | |||
+ | <code> | ||
+ | alicia: mail_message = utils.TemplateSubst( | ||
+ | amber: adv = utils.TemplateSubst(Subst, Cnf["Dir::Templates"]+"/amber.advisory"); | ||
+ | jennifer: new_ack_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.new"); | ||
+ | katie.py: mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.bug-experimental-fixed"); | ||
+ | katie.py: mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.bug-close"); | ||
+ | katie.py: mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.bug-nmu-fixed"); | ||
+ | katie.py: mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.announce"); | ||
+ | katie.py: mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.accepted"); | ||
+ | katie.py: mail_message = utils.TemplateSubst(Subst,self.Cnf["Dir::Templates"]+"/jennifer.override-disparity"); | ||
+ | katie.py: reject_mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/katie.rejected"); | ||
+ | katie.py: reject_mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/katie.rejected"); | ||
+ | kelly: reject_mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/kelly.unaccept"); | ||
+ | kelly: mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/kelly.installed"); | ||
+ | lauren: reject_mail_message = utils.TemplateSubst(Katie.Subst,Cnf["Dir::Templates"]+"/lauren.stable-rejected"); | ||
+ | lisa: bxa_mail = utils.TemplateSubst(Katie.Subst,Cnf["Dir::Templates"]+"/lisa.bxa_notification"); | ||
+ | lisa: prod_mail_message = utils.TemplateSubst( | ||
+ | melanie: mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/melanie.bug-close"); | ||
+ | uma: new_add_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/uma.added"); | ||
+ | utils.py:def TemplateSubst(map, filename): | ||
+ | </code> | ||
+ | |||
+ | ==== Le cas d'uma ==== | ||
+ | Il y a aussi la chaîne (ensuite chiffrée) au coeur d'[[uma]] qui est spécifique à Ganneff (à traiter en même temps que le modèle [[uma.added]]). | ||
+ | |||
+ | <file> | ||
+ | message= """ | ||
+ | |||
+ | Additionally there is now an account on dak.ganneff.de created for you. You can login with ssh and | ||
+ | play with the tools that constitute the archive software, like madison for example. Note that this | ||
+ | service is provided for you to learn to work with the archive system tools, so please don't try to | ||
+ | kill it with some stupid script kiddie action. | ||
+ | |||
+ | """; | ||
+ | message+= "\nYour password for the login %s is: %s\n" % (login, passwd); | ||
+ | </file> | ||
+ | |||
+ | ===== Spécificités de mes traductions ===== | ||
+ | Spécificités de vocabulaire. Divergences par rapport aux traductions standard : | ||
+ | * # : n | ||
+ | * archive : dépôt | ||
+ | * bug : anomalie | ||
+ | * ftpmaster : administrateur | ||
+ | * override : surclassement |