lexico3integre2html.pl

#!/usr/bin/perl
use locale; #caracteres accentues
#On lance comme cela: perl lexico3tegrei2html.pl <fichier>
#On obtient: fichier.html
print "Bienvenu(e) au programme qui permet \n d'afficher les fichiers TXT balisés par Lexico3 en HTML.\n";
print "Avant de commencer, changez ce programme en proposant la ou les balises Lexico3 qui caractérisent votre texte.\n";
print "Nom du fichier de travail, de preference un .txt au format UNIX: \n";
my $file="$ARGV[0]";
print $file;
open(FILEIN, $file);
open(FILEOUT, ">$file.html");
my $DUMPFULL="";
while(my $recup=<FILEIN>)
{
#1. transcodage
####Les métacaractères####
$recup=~s/\>/&gt;/g;
$recup=~s/\</&lt;/g;
$recup=~s/\"/&quot;/g;
####Les balises Lexico3####
if (($recup=~/langue=fr/g)||($recup=~/langue=br/g))
{
$recup=~s/$recup/<font color="forestgreen">$recup<\/font>/g;
};#Colorie toutes les balises en vert
####Les Accents####
$recup=~s/à/&agrave;/g;
$recup=~s/á/&aacute;/g;
$recup=~s/â/&acirc;/g;
$recup=~s/ã/&atilde;/g;
$recup=~s/ä/&auml;/g;
$recup=~s/å/&aring;/g;
$recup=~s/æ/&aelig;/g;
$recup=~s/è/&egrave;/g;
$recup=~s/é/&eacute;/g;
$recup=~s/ê/&ecirc;/g;
$recup=~s/ë/&euml;/g;
$recup=~s/è/&egrave;/g;
$recup=~s/é/&eacute;/g;
$recup=~s/ê/&ecirc;/g;
$recup=~s/ë/&euml;/g;
$recup=~s/ì/&igrave;/g;
$recup=~s/í/&iacute;/g;
$recup=~s/î/&icirc;/g;
$recup=~s/ï/&iuml;/g;
$recup=~s/ò/&ograve;/g;
$recup=~s/ó/&oacute;/g;
$recup=~s/ô/&ocirc;/g;
$recup=~s/õ/&otilde;/g;
$recup=~s/ö/&ouml;/g;
$recup=~s/ù/&ugrave;/g;
$recup=~s/ú/&uacute;/g;
$recup=~s/û/&ucirc;/g;
$recup=~s/ü/&uuml;/g;
$recup=~s/ç/&ccedil;/g;
####Les fichiers de type texte####
##Les paragraphes et les line breaks##
$recup=~s/(\s)*\n/\n/g; #supprime les espaces avant le retour à la ligne
$recup=~s/^\n/<p>\n/g; #met des paragraphes dans tous les sauts de ligne
if ($recup=~/[^<p>]\n/g)
{
$recup=~s/\n/<\/br>\n/g;
};# met des br en fin de ligne lorsque la balise <p> n'est pas là
#2. Memorisation dans DUMPFULL
$DUMPFULL.=$recup;
};

#3. En-tete
print FILEOUT "<html>\n
<head>\n
<title>Le choix des phrases en contexte dans des corpus comparables<\/title>\n
<meta http-equiv=\"content-type\" content=\"text\/html; charset=windows-1250\">\n
<\/head>\n
<body bgcolor=\"#DEF7D8\" text=\"#DE6B3F\" link=\"#034B16\" alink=\"#C059E2\" vlink=\"#431C4F\">\n
<blockquote>\n
\n
<h2><font color=\"\#390917\">",$file,"<\/font><\/h2>\n";
#4. Remplacement des entites
print FILEOUT $DUMPFULL;
# Pied de page
print FILEOUT "<p><a href=\"\.\./\.\./TABLEAUX/lexique-portugais-francais.html\"><img src=\"\.\./\.\./IMAGES\/retour\.gif\"><\/a>\n<\/blockquote>\n<\/body>\n<\/html>\n";
print "\nLe fichier se nomme $file.html";
print "\nOn renomme les fichiers...en html";
system "#!/bin/bash
cd ../LEXICO3/Portugais;
rename \.txt.\html \.html *\.html;
rename \.TXT.\html \.html *\.html;
ls > tous-vos-fichiers\.txt;
grep \.html tous-vos-fichiers\.txt > ../nom-de-fichier\.txt;
cd ../../LEXICO3/Francais;
rename \.txt.\html \.html *\.html;
rename \.TXT.\html \.html *\.html;
ls > tous-vos-fichiers\.txt;
grep \.html tous-vos-fichiers\.txt >> ../nom-de-fichier\.txt;";
print "Le nouveau fichier créé se trouve dans cette liste: \n";
system "#!/bin/bash
cd ../LEXICO3;
cat nom-de-fichier\.txt;
cd ../../PROJET-MULTILINGUE/PROGRAMMES;
pwd";
close(FILEIN);
close(FILEOUT);