>>Ce que je ne sais pas faire avec sed c'est supprimer les \textrm{bla bla
>>bla} que Writer2Latex utilise avec profusion et qui me semblent bien
>>inutile. En sachant que l'on peut avoir \textrm{\emph{bla} bla bla} sur du
>>multi-lignes. J'imagine qu'un virtuose de l'expression r�guli�re devrait
>>arriver � quelque chose ou qu'il y a peut-�tre un programme style sed mais
>>adapt� aux fichiers � balises.


C'est perl:
perl permet de d�clarer que \n est un caract�re ordinaire (et aussi
de red�finir le s�parateur de lignes, mais ici ce n'est pas utile).

Si on fait 
cat >filtre.pl
s/\\textstyleFootnoteSymbol\{\\footnotemark\{\}\}\\footnotetext/\\footnote/g;
s/\\textit/\\emph/g;
s/~/ /g;
s/\\textsuperscript\{e\}/\\ieme /g;
s/\{\\textquotedbl\}/�/g;
s/'\'''\''/�/g;
s/\{\\guillemotleft\}/�/g;
s/\{\\guillemotright\}/�/g;
s/\\textrm\{(.*?\{.*?\}.*?)\}/$1/sg;
s/\\textrm\{(.*?)\}/$1/sg;
Ctrl-D

puis 
perl -0 -p -i.orig filtre.pl fichier1.tex

�a doit le faire, au moins partiellement.

Explications:
 -le { est signifiant dans les RE perl -> \{ (idem pour })
 - j'ai mis le � directment, mais on peut laisser (cf courrier suivant
 dans la liste);
 - le modifieur s permet de franchir les limites de lignes;
 - les 2 lignes de filtrage textrm permettent de filtrer zero ou une occurrence
 d'une autre commande (je n'ai jamais �crit de RE r�cursives
 mais �a marche s�rement pour traverser plusieurs occurrences;
 on doit pouvoir aussi marquer toutes les {} int�rieures et les d�marquer
 ensuite);
 - le ? rend l'exploration non gourmande: il s'arr�te d�s que c'est bon
 (sinon il cherche au plus loin);
 - () et $1 permettent de r�cup�rer le contenu (comme \(\) et \1 en sed),
 - pour la commande, -0 prend le fichier comme un tout, -p permet de
 filtrer tous les fichiers sur la ligne, -i de faire le filtre en palce en 
pr�servant l'original dans fichier1.tex.orig
 Pour tester:
 perl -0 -p  filtre.pl fichier1.tex
 envoir le r�sultat sur STDOUT.
 
 
Attention, je n'ai pas test� ces REs.

Il exsite aussi un parser objet de (La)TeX: TOM (TeX Object Model)
qui doit r�gler une fois pour toutes ces histoires de macros dans les
macros dans les macros qui sont difficile � traiter en RE.
Aucune exp�rience, pas plus que de l'utisation d'analyseurs lexicaux.

-- 
Jean-Pierre

 - 

Répondre à