Re: v. 0.0.1 ;) [était : script pour chasser les erreurs courantes dans les fichiers po (et autres)]

2001-12-10 Par sujet Martin Quinson
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)]

2001-12-10 Par sujet Denis Barbier
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)]

2001-12-10 Par sujet Martin Quinson
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)]

2001-12-10 Par sujet Denis Barbier
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)]

2001-12-10 Par sujet Jérôme Marant
[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)]

2001-12-10 Par sujet Jérôme Marant
[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)]

2001-12-10 Par sujet Denis Barbier
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)]

2001-12-10 Par sujet Patrice Karatchentzeff
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)

2001-12-09 Par sujet Nicolas Bertolissio
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)]

2001-12-09 Par sujet Nicolas Bertolissio
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)

2001-12-08 Par sujet Patrice Karatchentzeff
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)

2001-12-07 Par sujet Martin Quinson
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.