pluriTAL – BLOG Master pluriTAL [ParisX, ParisIII, INALCO]

Projet pour projet multilingue + début du projet : les fichiers contextes sont soulignes en bash ! + qqn a 1 pgme pour découper les balises d’après lexico3?

Posted in pluriTAL by pluritaluser on 29 Mai 2009

Ce que je pense faire pour le projet multilingue:

Le tableau sur les 3 mots en deux langues je vais le garder pour le projet lexico3.

Le tableau que je vais faire va avoir cette allure:

Le choix des phrases en contexte dans des corpus comparables

1 2 3 4 5 6 7 8 9 10 theme 1 mot br mot fr theme 1 1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10 theme 2 theme 2 1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10 theme 3 theme 3 1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10 theme 1 mot br mot fr theme 1 1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10 theme 2 theme 2 1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10 theme 3 theme 3 1 2 3 4 5 6 7 8 9 10

Les liens pointeront vers des fichiers de contextes concaténés.

Mon lexique bilingue aura 10 entrées.

Une fois que le tableau sera fonctionnel, ce n’est pas du tout relevant, mais je vais compter le nombre de fois que je vais trouver chacun des mots dans chaque contexte concaténé (commandes trouvées sur internet).

nom@ordinateur ~
$ wc lynx-blogtal-enligne.html
1477 11817 136984 lynx-blogtal-enligne.html

nom@ordinateur ~
$ grep -cw le lynx-blogtal-enligne.html
146

grep -cw peut compter le nombre total d’occurrences d’un motif > je ne vais que utiliser cette fonction.

Problème: je ne peux pas chercher des mots accentués (accented characters) comme « potencial de ação » parce que déjà je ne peux pas les taper. La commande qui permet de savoir si on est en UTF-8 ne répond pas: env|grep LANG. Et je n’ai pas du tout compris comment combiner les accents:

nom@ordinateur ~
$ grep -cw « structur » lynx-blogtal-enligne.html
5

nom@ordinateur ~
$ grep -cw « structur? » lynx-blogtal-enligne.html
0

Rem: Pour les mots accentués, ce n’est que sur le terminal qu’ils sont invisibles, mais la requête pour l’autre tableau (lexico3) a fonctionné dans le script: egrep -i -A1 -B1 « potencial de ação » ../DUMP-TEXT/Portugais/$i.html > ../CONTEXTES/Portugais/potencial-de-acao-$i.html; j’espère seulement qu’elle continuera de fonctionner.

Après je vais choisir 1 seule phrase par mot pour chaque langue, et je vais les mettre chacune dans un fichier texte avec le retour chariot comme délimiteur et les charger dans mkalign.

Après je vais sauvegarder le résultat de mkalign, je pense qu’on peut le sauvegarder en .html, et si c’est en xml, il va falloir faire la feuille de style.

Mon domaine c’est la biologie cellulaire et les 3 thèmes c’est potentiel d’action, potentiel de repos et potentiel de membranne. Ce pourquoi j’ai dit que le décompte des mots est arbitraire, ces 3 mots sont trop liés pour être considérés comme des thèmes, ce ne sont pas des domaines d’étude, mais comme mathématiquement tout est ensemble. Donc ces mots sont des mots-ensemble !

Ce qui change c’est que wget (lynx -source) servira à expliquer la source des documents pour lexico3, et ici on ne va pas du tout parler du téléchargement des pages web en local, car j’ai trouvé mieux d’utiliser les fichiers que j’avais normalisé pour lexico3 du coup on cherchera:  » potentiel d action  » au lieu de  » potentiel d’action  » puisque il y a plusieurs façons de mettre une apostrophe.

Françoise Del Socorro

——————————————————————————————————————-

J’ai trouvé une manière de mettre les mots en gras sous bash et de faire un minimum de présentation c’est très difficile car sed n’aime pas les balises HTML. J’ai trouvé des exemples sur internet et je me suis inspirée: http://www.grymoire.com/Unix/Sed.html

Par contre si quelqu’un a un programme qui découpe les fichiers d’après les balises de lexico3 j’aimerais bien car ce serait mieux que de redécouper toutes les +de 60pages du fichier actualisé.

Je suis au début du programme mais je vais écrire autant que je peux aujourd’hui… la sortie c’est deux carrés dont le premier carré contient des liens vers des fichiers contextes soulignés ! Je veux dire: mis en gras ! souligné c’est <u></u>, moi j’ai mis <b></b>

#!/bin/bash

tablo= »../TABLEAUX/lexique-portugais-francais.html »;

echo « Creation page html pour le lexique francais – portugais »
#
# Tableau 1
echo « Téléchargement du tableau 1… »;
# Titre dans le title-bar et titre de la page.
echo « <html><head><title>Le choix des phrases en contexte dans des corpus comparables</title></head><body bgcolor=\ »#DEF7D8\ » text=\ »#DE6B3F\ » link=\ »#034B16\ » alink=\ »#C059E2\ » vlink=\ »#431C4F\ »><h2><font color=\ »#DE6B3F\ »>Le choix des phrases en contexte dans des corpus comparables</font></h2> » >> $tablo;
# Initialisation du compteur
i=1; #contextes
j=1; #contextes2theme
k=1; #contextes
#  Outils: egrep et cat.
echo « <table border=\ »4\ » BORDERCOLOR=\ »darkblue\ » cellspacing=\ »2\ » cellpadding=\ »8\ » bgcolor=\ »lightblue\ »><tr><td> » >> $tablo;

#idee pour open file en bash
#cat $a >> temp
#cat temp > $a
#cat temp >> $a

for line in `cat ../URLS/norm-repos-pt.txt`
{
(egrep -i -l « potencial de repouso » $line & egrep -i -n -A1 -B1 « potencial de repouso » $line) > ../CONTEXTES/Portugais/$i.html;
a= »../CONTEXTES/Portugais/$i.html »
sed -i ‘/[a-z]/ a\</br>’ $a; #met des br en fin de ligne
cat $a >> ../CONTEXTES/Portugais/$k.temp.html;
echo « <html> » > $a;
cat ../CONTEXTES/Portugais/$k.temp.html >> $a
echo « </html> » >> $a; #met des balises html entre les contextes
sed -i -r -e ‘s/potencial de repouso/<b>potencial de repouso<\/b>/g’ $a; #met les contexte en gras

(egrep -i -l « potencial de repouso » $line & egrep -i -A1 -B1 « potencial de repouso » $line) > ../CONTEXTES/Portugais/$j.temp.html;
cat ../CONTEXTES/Portugais/$j.temp.html >> ../THEMES/Portugais/potencial-de-repouso-pt.html;
rm ../CONTEXTES/Portugais/*\.temp.html;
echo « <a href=\ »../CONTEXTES/Portugais/$i.html\ »>$i</a> » >> $tablo;
let « i+=1 » ;
let « j+=1 » ;
let « k+=1 » ;
}
echo « </td> » >> $tablo;
echo « <td><a href=\ »../THEMES/Portugais/potencial-de-repouso-pt.html\ »>Potenciel de Repos pt</a></td> » >> $tablo;
echo « </tr></table> » >> $tablo;

echo « </body></html> » >> $tablo;
echo « terminé. »;

Françoise Del Socorro

Laisser un commentaire