#!/usr/bin/perl

=encoding ISO8859-1

=head1 NOM

ddtc - outils client du ddts pour aider les traducteurs et les relecteurs.

=head1 SYNOPSIS

ddtc [OPTIONS] COMMANDE [ARGUMENTS]

=head1 DESCRIPTION

Ce script aide à la fois les traducteurs et les relecteurs en analysant les
courriels du ddts, en mettant chaque paquet dans des fichiers séparés, en
envoyant les relectures et en corrigeant les traductions erronées.

Avant de renvoyer une traduction ou une relecture au serveur, le script lui
fait passer quelques tests et ne l'envoie pas si l'un des tests suivants est
vérifiéE<nbsp>:

=over 4

=item - nombre de paragraphes différent dans la description et sa traductionE<nbsp>;

=item - ligne de plus de 80 caractèresE<nbsp>;

=item - présence du caractère I<E<lt>tabE<gt>>E<nbsp>;

=item - ligne commençant par un point (I<.>) suivi d'autres caractères.

=back

Il peut être utilisé en mode intéractif si aucune commande n'est fournie. Dans
ce cas, des menus sont afficher pour permettre à l'utilisateur d'entrer les
commandes.

=head1 COMMANDES

Voici le manière usuelle de procéderE<nbsp>:

=over 4

=item - Recevoir du courriel du ddts

Passez le courriel que vous recevez du ddts en entier (c'est-à-dire avec
l'en-tête et les parties MIME) à l'entrée standard du script en utilisant la
commande I<parse> (analyser).

S'il trouve des descriptions à traduire, il crée un fichier F<paquet.todo> pour
chacune d'elles dans votre répertoire F<Base_dir/tr>. Il indique les
différences avec votre dernière traduction si elle existe.

S'il trouve des descriptions à relire, il crée un fichier F<paquet.todo> pour
chacune d'elles dans votre répertoire F<Base_dir/rev>. Si vous aviez déjà relu
cette description, il indique les différences, et, s'il n'y en a pas, marque la
description comme étant relue.

S'il trouve un rapport de relecture (I<bug report>), il crée un fichier
F<paquet.bug> dans votre répertoire F<Base_dir/bug> et fusionne tous les
rapports de relecture pour faciliter les corrections. Il essaye aussi de
détecter les collisions (voir plus bas).

=item - Travailler avec les fichiers

=over 4

=item - Traduire

Renommez le fichier F<paquet.todo> de votre répertoire F<Base_dir/tr> en
F<paquet.tr>.

Éditez-le avec votre éditeur de texte favori.

=item - Relire

Renommez le fichier F<paquet.todo> de votre répertoire F<Base_dir/rev> en
F<paquet.rev>. Ne modifiez par le fichier F<paquet> (sans extension), il est
utilisé en interne par ddtc.

Éditez-le avec votre éditeur de texte favori. Vous pouvez y ajouter des
commentaires qui seront envoyés au traducteur en ajoutant des lignes commençant
par «E<nbsp>B<E<gt>E<gt>E<nbsp>>E<nbsp>» (la valeur de la variable I<$Comment>
suivie nécessairement d'un caractère espace).

Si vous avez déjà relu une traduction et que le traducteur y a apporté des
modifications, le script vous présente les différences entre les deux versions.
Les lignes commençant par «E<nbsp>B<E<gt>E<gt>-->E<nbsp>» correspondent à la
dernière version que vous avez relue, remplacez cela par
«E<nbsp>B<+E<gt>-->E<nbsp>» si vous pensez que la traduction comporte toujours
une erreur. Les lignes commençant par «E<nbsp>B<E<gt>E<gt>+>E<nbsp>»
correspondent à la nouvelle version du traducteur, remplacez cela par
«E<nbsp>B<+E<gt>++>E<nbsp>» si vous êtes d'accord avec le traducteur. Bien sûr,
si vous n'êtes pas d'accord avec le traducteur, vous pouvez ajouter des
commentaires comme indiqué ci-dessus.

=item - Corriger les erreurs

Renommez le fichier F<paquet.bug> de votre répertoire F<Base_dir/bug> en
F<paquet.fix>.

Éditez-le avec votre éditeur de texte favori. Il contient toutes les
modifications et tous les commentaires des relecteurs.

Les lignes commençant par «E<nbsp>B<E<gt>E<gt>>E<nbsp>» sont des commentaires
et n'ont pas besoin d'être supprimées. Les lignes commençant par
«E<nbsp>B<E<gt>E<gt>X+>E<nbsp>» sont des suggestions de corrections, remplacez
cela par «E<nbsp>B<+E<gt>X+>E<nbsp>» pour les valider. Les lignes commençant
par «E<nbsp>B<E<gt>E<gt>-->E<nbsp>» sont votre dernière traduction, remplacez
cela par «E<nbsp>B<+E<gt>-->E<nbsp>» si vous ne souhaitez pas accepter les
suggestions.

Lancez le script avec la commande I<fix> (corriger). Il crée un
nouveau fichier F<paquet.tr> dans votre répertoire F<Base_dir/tr> qui contient
les lignes inchangées et celles que vous avez sélectionnées.

Pour éviter les collisions (relectures basées sur une version différente de la
vôtre), n'envoyez pas de descriptions corrigées trop souvent (une fois par jour
devrait aller), récupérez vos courriels et analysez-les avec le script juste
avant de les corriger, et envoyez les descriptions corrigées aussitôt que
possible.

=back

=item - Renvoyer les fichiers au ddts

Lancez le script avec la commande I<mail> (écrire).

Il renvoie les descriptions des fichiers F<paquet.tr> et F<paquet.rev> au ddts
et les renomme F<paquet.sent>, il clôture les rapports de relecture si
nécessaire.

=item - Envoyer des commandes au serveur

Lancez le script avec les commandes que vous souhaitez envoyer au serveur. Il
les vérifiera et les enverra au serveur.

Commandes disponiblesE<nbsp>:

=over 4

=item section I<nom de section>

=item sget I<nom de paquet>

=item get I<nom de paquet>

=item get I<nombre de paquets>

=item review I<nom de paquet>

=item review I<nombre de paquets>

=item getbug I<liste de rapports de relecture>

=item btsclose I<liste de rapports de relecture>

=item notification I<liste de langues>

=item listtranslatedpackages

=item status

=item noneveraguide

=item neveraguide

=item noguide

=item guide

=back

Dans chaque ensembleE<nbsp>:
I<sget>/I<get>/I<review>/I<getbug>/I<btsclose>/I<notification>,
I<noneveraguide>/I<neveraguide> et I<noguide>/I<guide>, seule la première
commande trouvée est utilisée. Le script ajoute automatiquement la langue,
le codage et l'adresse (I<Mail_in>) si nécessaire, par défaut I<noguide> est
utilisé.

En raison cause d'une limitation du serveur, vous ne pouvez pas recevoir plus
de neuf nouveaux documents à la fois afin d'éviter le risque d'attaque par déni
de service. Le script ne vérifie pas cela, mais le serveur le fera.

Pour I<sget>, I<get>, I<review>, I<status> et I<listtranslatedpackages> vous
devez soit définir la variable I<$Language> dans votre fichier F<.ddtcrc> de
configuration, soit fournir une extension de langue par les options I<--lang>
ou I<-l>.

=item - Nettoyer les répertoires

Lancez le script avec la commande I<clean> (nettoyer).

Il supprime tous les fichiers inutiles dans les répertoires du ddtc sauf le
répertoire des fichiers temporaires car celui-ci devrait être un répertoire
temporaire au niveau du système complet et être nettoyé par des tâches
périodiques, sauf pour des raisons de débogage.

=item - Avoir des statistiques sur son travail

Lancez le script avec la commande I<stats> (statistiques).

Il affiche des nombres en fonction des fichiers présents, il est possible que
les résultats ne soient pas justes si un nettoyage des répertoires n'a pas été
effectué préalablement.

=back

=head1 OPTIONS

Niveau de bavardageE<nbsp>:

=over 4

=item I<-q, --quiet>

silencieuxE<nbsp>;

=item I<-v>

bavard, commence au niveau I<$Debug + 1>, plus il y en a, plus il est bavard
(voir plus bas)E<nbsp>;

=item I<--verbose n>

utiliser le niveau de bavardage I<n> (voir plus bas).

=back

S'envoyer une copie des courrielsE<nbsp>:

=over 4

=item I<-s, --mail-self>

s'envoyer une copie des courrielsE<nbsp>;

=item I<-n, --nomail-self>

ne pas s'envoyer de copie des courriels.

=back

AutreE<nbsp>:

=over 4

=item I<-l, --lang>

extension de langue à utiliser lors des demandes de nouveaux documents
(«E<nbsp>B<fr>E<nbsp>» pour le français)E<nbsp>;

=item I<--ddtc-bug>

envoyer les relectures en format spécial. Demandez au coordinateur de votre
équipe de traduction avant d'utiliser cette option. Pour le français, il a
été décidé que cette option devait être utiliséeE<nbsp>;

=item I<--noddtc-bug>

envoyer les relectures au format standardE<nbsp>;

=item I<-V, --version>

afficher la version du scriptE<nbsp>;

=item I<-h, --help>

afficher le message d'utilisation.

=back

=head2 Niveau de bavardage

=over 4

=item I<0> silencieux

seulement les avertissements et les erreursE<nbsp>;

=item I<1> normal

noms des paquets, des relecteurs et des traducteurs et les numéros de
rapport de relectureE<nbsp>;

=item I<2> réservé

pour usage interneE<nbsp>;

=item I<3> débogage normal

noms des procéduresE<nbsp>;

=item I<4> débogage bavard

noms des procédures et arguments courtsE<nbsp>;

=item I<5> débogage très bavard

noms des procédures, arguments et valeurs de retourE<nbsp>;

=item I<9> débogage ne pas envoyer de courriels

comme 5 mais adresse les courriels à soi-même au lieu du ddts.

=back

les niveaux 5 et 9 sont vraiment très bavards, vous devriez rediriger la sortie
vers un fichier.

=head1 VOIR AUSSI

ddtcrc(5).

http://ddtp.debian.org/ddtp-text/misc/ddts-faq-fr.txt.

http://ddtp.debian.org/ddtp-text/guides/guide-fr.txt.

http://ddtp.debian.org/ddtp-text/guides/review-fr.txt.

=head1 AUTEUR

Nicolas Bertolissio <bertol@debian.org>
  
=cut
