Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
Hello, moi aussi je m'emmerdais un peu ce WE. Alors moi aussi j'ai fais une ébauche de truc pour chasser les erreurs dans les fichiers po. Mais je l'ai fait en C, de facon a pouvoir esperer une intégration à gettext un jour. C'est que dans le fichier Admin/plans, on peut lire : - Rewrite Hundhammer's check_po script in C using message.h. Alors comme j'etais pas connecté, j'ai pas pu voir ce que c'etais. Je viens de regarder, c'est visible ici : http://rpmfind.net/linux/SuSE-Linux/noarch/i18n/yast2-7.1/check_po Et ce n'est pas exactement ce à quoi on pensais, c'est plutot des extensions pour le msgfmt -c. Ce que j'ai fait, ca compile bien dans le CVS de gettext, mais je sais pas si ca marche avec la version publiée. Comme le CVS est protégé par mot de passe, je peux pas vous le donner, mais j'ai mis en ligne une tarball qui contient le fruit de mes travaux. http://www.ens-lyon.fr/~mquinson/debian/gettext.tar.bz2 En gros, mon programme (msgcheck) parse un fichier de regles d'une syntaxe proche de ce qui se fait chez KDE. une série de regles séparées par une (seule) ligne vide à chaque fois. Chaque regle est de la forme : [ewa]/expression régulière/ texte si jamais on trouve. où e=error, w=warning, a=advice. Le programme accepte plusieurs fichiers de regles, si on passe plusieurs fois l'option -r. Y'a un fr.rules dans le src de la tarball. La ou je bloque, c'est pour faire des regles comme ca : [trés] valid after=enregis id=200 hint=Mettre un accent grave Ce valid after me casse la tête grâve. Y'a pas moyen de faire une expression réguliere qui récupèrerait tous les /trés/ sans prendre /enregistés/ ? Au pire, je le ferais automatiquement, mais pour l'instant, je ne vois pas du tout comment le gerer. Des idées ? Bye, Mt. On Sun, Dec 09, 2001 at 05:43:22PM +0100, Denis Barbier wrote: On Sun, Dec 09, 2001 at 04:07:01PM +0100, Nicolas Bertolissio wrote: Le dimanche 9 décembre 2001, Nicolas Bertolissio écrit : Bon, j'ai trouvé le machin de kde, je vais voir ce que je peux faire avec. Voici une première version, après les premières modifications, c'est tout juste utilisable, c'est-à-dire que ça ne fait pas grand chose : ça liste les erreurs trouvées sans possibilité de les corriger. On s'en sert comme ça : $check_wml.pl nom_du_fichier $check_text.pl nom_du_fichier Il y a des options mais je les ai neutralisées donc ça ne sert à rien de s'en servir. Il y a quand même pas mal de travail à faire : - comprendre comment ça marche en détail (et c'est pas gagné, parce que la programmation à objet j'y connais rien, et les modules non plus) ; Le problème, c'est surtout le manque de documentation ;) - faire un système de proposition de correction, il me semble qu'il y a une ébauche, mais ça ne fonctionne pas encore. Le plus simple serait de poser les questions aux auteurs. J'ai regardé rapidement, c'est vrai que ça a l'air prometteur, mais il faudrait se synchroniser avec les auteurs pour aller dans la même direction. Denis -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED] -- Un clavier azerty en vaut deux.
Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
On Mon, Dec 10, 2001 at 08:38:50AM +0100, Martin Quinson wrote: [...] La ou je bloque, c'est pour faire des regles comme ca : [trés] valid after=enregis id=200 hint=Mettre un accent grave Ce valid after me casse la tête grâve. Y'a pas moyen de faire une expression réguliere qui récupèrerait tous les /trés/ sans prendre /enregistés/ ? Au pire, je le ferais automatiquement, mais pour l'instant, je ne vois pas du tout comment le gerer. Salut, c'est possible en Perl, avec /enregis(?!trés)/, et tu devrais donc regarder du côté de PCRE. Cette librairie permet d'utiliser très simplement dans son programme les expressions régulières de Perl. Denis
Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
On Mon, Dec 10, 2001 at 08:56:20AM +0100, Denis Barbier wrote: On Mon, Dec 10, 2001 at 08:38:50AM +0100, Martin Quinson wrote: [...] La ou je bloque, c'est pour faire des regles comme ca : [trés] valid after=enregis id=200 hint=Mettre un accent grave Ce valid after me casse la tête grâve. Y'a pas moyen de faire une expression réguliere qui récupèrerait tous les /trés/ sans prendre /enregistés/ ? Au pire, je le ferais automatiquement, mais pour l'instant, je ne vois pas du tout comment le gerer. Salut, c'est possible en Perl, avec /enregis(?!trés)/, et tu devrais donc regarder du côté de PCRE. Cette librairie permet d'utiliser très simplement dans son programme les expressions régulières de Perl. C'est vrai que ca serait bien d'avoir les expressions régulières perl. Mais je sais pas si le mainteneur de gettext sera d'accord pour ajouter une dépendance sur une bibliothèque extérieure pour ca. Je vais lui demander. Au pire, on peut dire que dans le fichier de regles, les /bla/ sont des expressions perl, et les [bla] sont des expressions posix. Ensuite, un configure.ac bien fait, et le programme ignorera les expressions perl quand la bibliothèqye qui va bien n'est pas dispo... Merci du conseil, Mt. -- Un clavier azerty en vaut deux.
Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
On Mon, Dec 10, 2001 at 09:14:32AM +0100, Martin Quinson wrote: On Mon, Dec 10, 2001 at 08:56:20AM +0100, Denis Barbier wrote: On Mon, Dec 10, 2001 at 08:38:50AM +0100, Martin Quinson wrote: [...] La ou je bloque, c'est pour faire des regles comme ca : [trés] valid after=enregis id=200 hint=Mettre un accent grave Ce valid after me casse la tête grâve. Y'a pas moyen de faire une expression réguliere qui récupèrerait tous les /trés/ sans prendre /enregistés/ ? Au pire, je le ferais automatiquement, mais pour l'instant, je ne vois pas du tout comment le gerer. Groumf, pas réveillé :( Salut, c'est possible en Perl, avec /enregis(?!trés)/, et tu devrais donc /(?!enregis)trés/ regarder du côté de PCRE. Cette librairie permet d'utiliser très simplement bibliothèque [...] C'est vrai que ca serait bien d'avoir les expressions régulières perl. Mais je sais pas si le mainteneur de gettext sera d'accord pour ajouter une dépendance sur une bibliothèque extérieure pour ca. Je vais lui demander. Au pire, on peut dire que dans le fichier de regles, les /bla/ sont des expressions perl, et les [bla] sont des expressions posix. Ensuite, un configure.ac bien fait, et le programme ignorera les expressions perl quand la bibliothèqye qui va bien n'est pas dispo... Dans les programmes où je l'utilise, j'ai choisi de l'embarquer ; en la débarrassant des fichiers superflus, les sources non comprimés pèsent moins de 200 Ko. Il faut néanmoins faire attention à respecter sa licence, qui est BSD-like avec clause de publicité. Tu devrais aussi t'intéresser à un autre problème, qui est l'encodage utilisé. Il faut que tes règles s'appliquent quel que soit l'encodage du document, et donc certainement que tu les écrives en utf-8 et transforme l'encodage du document avec la libiconv si nécessaire. Les nouvelles versions de la bibliothèque PCRE ont un support de l'utf-8, qui est expérimental, mais semble bien marcher. Denis
Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
[EMAIL PROTECTED] (Denis Barbier) writes: Salut, c'est possible en Perl, avec /enregis(?!trés)/, et tu devrais donc regarder du côté de PCRE. Cette librairie permet d'utiliser très simplement dans son programme les expressions régulières de Perl. rationelles ;-) -- Jérôme Marant [EMAIL PROTECTED] [EMAIL PROTECTED] http://marant.org
Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
[EMAIL PROTECTED] (Jérôme Marant) writes: [EMAIL PROTECTED] (Denis Barbier) writes: Salut, c'est possible en Perl, avec /enregis(?!trés)/, et tu devrais donc regarder du côté de PCRE. Cette librairie permet d'utiliser très simplement dans son programme les expressions régulières de Perl. rationelles ;-) Voire rationnelles ;-) -- Jérôme Marant [EMAIL PROTECTED] [EMAIL PROTECTED] http://marant.org
Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
On Mon, Dec 10, 2001 at 08:19:37PM +0100, Jérôme Marant wrote: [EMAIL PROTECTED] (Jérôme Marant) writes: [EMAIL PROTECTED] (Denis Barbier) writes: Salut, c'est possible en Perl, avec /enregis(?!trés)/, et tu devrais donc regarder du côté de PCRE. Cette librairie permet d'utiliser très simplement dans son programme les expressions régulières de Perl. rationelles ;-) Voire rationnelles ;-) J'avais demandé il y a plusieurs semaines des pointeurs en français expliquant pourquoi cette expression devait être utilisée, et n'ai reçu aucune réponse. Donc tant que je ne n'en aurai pas, je dirai « expression régulière » ;) Denis
Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
Denis Barbier écrivait: On Mon, Dec 10, 2001 at 08:19:37PM +0100, Jérôme Marant wrote: J'avais demandé il y a plusieurs semaines des pointeurs en français expliquant pourquoi cette expression devait être utilisée, et n'ai reçu aucune réponse. Donc tant que je ne n'en aurai pas, je dirai « expression régulière » ;) mea culpa. C'est moi qui avais dit que je trouverai. Il y avait une discussion sur fr.comp.lang.perl à ce sujet il y a plusieurs mois. Il faut fouiller pour retrouver. J'essaierai de le faire demain. PK -- |\ _,,,---,,_ Patrice KARATCHENTZEFF ZZZzz /,`.-'`'-. ;-;;,_ mailto:[EMAIL PROTECTED] |,4- ) )-,_. ,\ ( `'-' http://p.karatchentzeff.free.fr '---''(_/--' `-'\_)
Re: script pour chasser les erreurs courantes dans les fichiers po (et autres)
Le samedi 8 décembre 2001, Patrice Karatchentzeff écrit : En fait YAKA juste à modifier leur « dictionnaire » qui est basée sur dockbook. Mais YAKA... Bon, j'ai trouvé le machin de kde, je vais voir ce que je peux faire avec. Nicolas --
v. 0.0.0 [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]
Le dimanche 9 décembre 2001, Nicolas Bertolissio écrit : Bon, j'ai trouvé le machin de kde, je vais voir ce que je peux faire avec. Voici une première version, après les premières modifications, c'est tout juste utilisable, c'est-à-dire que ça ne fait pas grand chose : ça liste les erreurs trouvées sans possibilité de les corriger. On s'en sert comme ça : $check_wml.pl nom_du_fichier $check_text.pl nom_du_fichier Il y a des options mais je les ai neutralisées donc ça ne sert à rien de s'en servir. Il y a quand même pas mal de travail à faire : - comprendre comment ça marche en détail (et c'est pas gagné, parce que la programmation à objet j'y connais rien, et les modules non plus) ; - faire un système de proposition de correction, il me semble qu'il y a une ébauche, mais ça ne fonctionne pas encore. Nicolas -- tarzzxxLRUge3.tar Description: Unix tar archive
Re: script pour chasser les erreurs courantes dans les fichiers po (et autres)
Nicolas Bertolissio écrivait: Est ce que quelqu'un a du neuf à nous apprendre sur ce front ? du neuf non, mais je peux me lancer dans un truc en perl maintenant que je commence à comprendre comme ça marche. C'est déjà du Perl :-) En fait YAKA juste à modifier leur « dictionnaire » qui est basée sur dockbook. Mais YAKA... PK -- |\ _,,,---,,_ Patrice KARATCHENTZEFF ZZZzz /,`.-'`'-. ;-;;,_ mailto:[EMAIL PROTECTED] |,4- ) )-,_. ,\ ( `'-' http://p.karatchentzeff.free.fr '---''(_/--' `-'\_)
script pour chasser les erreurs courantes dans les fichiers po (et autres)
Hello, On avait parlé ici de faire un script comme le checker de KDE pour faire la chasse automatique aux erreurs courantes du style bla au lieu de « bla » Est ce que quelqu'un a du neuf à nous apprendre sur ce front ? Merci, Mt. -- Un clavier azerty en vaut deux.