J'ai écris ce script mk-menu-alpha-html.pl
pour mettre un peu d'ordre dans mes pages-perso. Il créé un menu et des
listes de fichiers trié par ordre alphabétique. Le principe est très
simple, il lit le contenu de votre répertoire de publication (votre
site avant de l'envoyer) trie les fichiers alphabétiquement et place
leurs noms, sous forme de liens dynamiques dans des listes
(liste_a.html, liste_b.html .. liste_z.html) et par la même occasion
créé aussi un menu (menu.html) sous forme de cartouche (vous laissant
ensuite le soin de le personnaliser comme vous le désiré) il y a la
place vue que le cartouche ne fait que quelque centimètres (voir au-dessous).
mk-menu-alpha-html.pl [-cpr] [répertoire_de_publication]
-c complet incorpore aussi les
images dans les listes
-p personnaliser ajouter vos
propre paramètres (auteur, adresse_émail, etc...)
-r pour remd: ajoute quelques
lignes explicatives
mk-menu-alpha-html.pl
# pour traiter le répertoire courant (défaut) :
chmod +X ./mk-menu-alpha-html.pl
perl
./mk-menu-alpha-html.pl
ou chmod +X
./mk-menu-alpha-html.pl
<!-- programmation => Perl => exemple => module -->
<!-- programmation => C => la compilation -->
|
|
Adelmar Alain aadelmar@numericable.fr 6 rue de Tunis 33600 Pessac http://perso.numericable.fr/aadelmar http://perso.numericable.fr/aadelmar |
||||||||||||||||||||||||||
|
|
|
#!/usr/bin/perl -w
#!perl -w
# remd: Créera un cartouche menu servant à accéder au fichiers
alphabétiquement. Dans un *
# premier temps il enregistre un fichier menu.html qui contiendra ce
cartouche puis il *
# listera le contenu d'un repertoires de publication, classe les
fichiers meta en les *
# sélectionnant alphabétiquement et créé des listes comme :liste_a.html
liste_b.html ... *
# (Il y aura plusieurs possibilités de tri sur les versions à venir(par
nature)). *
# Dans ces listes le noms des fichiers
apparaitra sous forme de liens ainsi que leur *
# taille leur date de publication et un petit topo de 2-3 lignes pour
les définir (quoi) *
#
*
# note: Ce script ne touche pas à votre repertoire de publication il ne
fait que lire les*
# noms de fichiers et créé un menu et des listes, sans jamais écraser
quoique ce soit. *
#
---------------------------------------------------------------------------------utf8
*
# écris par Alain Adelmar aadelmar@numericable.fr peut fonctionner sur
tout OS (Lx, M$) *
# Multi environement (Linux, MicroSoft, msys, cygwin)
_ vers:1.5
(26/06/11) *
# Usage: mk-menu-alpha-html.pl [-c]
[repertoire_de_publication]
*
# -c complet incorpore
aussi les images dans les
listes
*
# -p personnaliser
ajouter vos propre paramètres (auteur, adresse_email,
etc...) *
# -r pour remd: ajoute
quelques lignes
explicatives
*
#
mk-menu-alpha-html.pl
pour traiter le repertoire courant (defaut)
: *
# ------------------écrit par alain Adelmar
------------------------------------------- *
# Enjoyed, that's a aadelmar's script, fun free and french
06/2011 "hé, ouai mon pote" *
#----------------------------------------------------------------------------------------*
#use strict;
use warnings;
use Cwd;
my $dir = cwd;
#use File::stat;
# traitement du temps pour date et heure en français
(my $sec,my $min,my $heure,my $mjour,my $mois,my $annee,my $sjour,my
$ajour,my $isdst) = localtime(time);
my @lssjour = qw( Dim Lun Mar Mer Jeu Ven Sam);
my @lssmois = qw ( Janvier Fevrier Mars Avril Mai Juin Juillet Aout
Septembre Octobre Novembre Decembre );
my $french_date_now = "$lssjour[$sjour] $mjour $lssmois[$mois] " .
($annee+=1900) . " - $heure:$min:$sec";
my $fr_date_file = ""; # initialisation
de date fichier par &datefile
#my $model = "ctime"; # peut être mis à a pour
acces| c pour change | m pour modif
my $mode = 9;
my $vers = '1.5';
my $auteur = "Adelmar Alain";
# avec
l'option -p entrer vos propre coordonnées
my $adresse_mail = 'aadelmar@numericable.fr';
my $adresse_postale = '6 rue de Tunis 33600 Pessac';
my $adresse_pub1 = 'http://perso.numericable.fr/aadelmar';
my $adresse_pub2 = 'http://aadelmar.free.fr/';
#--------a là
my $vide = " " x 30;
my $x ="*-" x 25;
my $tiret = "-" x50;
my $nlr = my $gnus = my $u = my $datenum = 0;
my $al = "\t=== A_l_a_i_n -\/\/- A_d_e_l_m_a_r
=== |";
my $lbl = "$x\n$al\n\t$0:\t$vers\n$x\n\n";
my $lbl_titre = ""; # titre de la
page créé (menu ou liste ou rep_)
my $mi = "<hr\>alain Adelmar <a
href=\"mailto:aadelmar\@free.fr\"\>aadelmar\@numericable.fr<\/a\>\n";
my $rem = my $reptmp = my $l = my $f = "";
my $argv = my $file = "";
my $d = "";
# repertoire (de travail) entrer
par l'utilisateur
my $rpath_fliste = ""; # adresse
reelle des listes
my @ls_rpath_fliste = ""; # liste des fichier créés
dans la session en vue de créer le footer
my @contenu = my @remd = "";
my $fr_datenum_file= "";
my $line = my $filename = my $filelbl = "";
my $cj = my $ptaille = my $format_d = "";
my $taille = 0;
my $fout = "";
my $fout_dat = my $fliste = my $lettre = "";
my $menu_debut = " " . '<table BORDER COLS=3 WIDTH="100%"
>'
. "<tr\>\n<td\><a NAME=\"menu_top\"\>" .
'</a><table BORDER COLS=7 WIDTH="100%" >'
. "\n<tr\>\n";
my $z = "";
my $vierge = 0;
my $commentaire = '<!-- ne pas bouger ce commentaire, svp -->';
my $pied = ' <!-- pied de page -->';
my $ford = "";
my @nwcontenu = "";
if (@ARGV) {
if($ARGV[0] =~ /^-/) {
s/-//;
$argv = $ARGV[0];
print "argv vaut $argv\n";
$d = $ARGV[1];
print "$x\n$al\n\n$x\n\n";
}
else {
$d = $ARGV[0];
print "$x\n$al\n\n$x\n\n";
}
}
else {
print "usage: rep2html [répértoire] \n";
print "Indiquez le dossier a traiter:\n";
chomp($d = <STDIN>);
}
#-------traiter les paramêtres utilisateur----
if($argv =~ /p/) {
# le nom prenom
print "veuillez entrer votre [nom prenom] pour indiquer l'auteur
des pages\n";
$auteur = <STDIN>;
chomp $auteur;
# l'adresse email
print "veuillez entrer votre [adresse email] comme toto\@lala.fr
pour renseigner la page menu\n";
$adresse_mail = <STDIN>;
chomp $adresse_mail;
# l'adresse postale
print "veuillez entrer votre [adresse postale] comme \"6 rue
bubu 45000 Tralala Grosland\""
. "pour renseigner la page menu\n";
my $adresse_postale = <STDIN>;
chomp $adresse_postale;
# l'adresse de votre premier site de publication, (page perso,
blog)
print "veuillez entrer votre [adresse de publication] principale
comme \n"
. "http://aadelmar.free.fr/ pour renseigner la page
menu\n";
my $adresse_pub1 = <STDIN>;
chomp $adresse_pub1;
# l'adresse de votre second site de publication, (page perso,
blog)
print "veuillez entrer votre seconde [adresse de publication]
comme \n"
. "http://aadelmar.free.fr/ pour renseigner la page
menu\n";
my $adresse_pub2 = <STDIN>;
chomp $adresse_pub2;
}
format STDOUT_TOP =
Page @<<
$%
Fichier
Taille (oc) Date du dernier changement
=======================
============== ===========================
.
if ($d eq "") {
$d = $dir;
}
else {
unless (-d $d) {
print "Entrez un chemin de fichier valide:\n";
$d = <STDIN>;
chomp $d;
}
}
if ($^O=~ /[msys|cygwin|gnu]$/) {
$gnus++;
print "this is a real gnu OS, congratulation\n";
}
elsif ($ENV{"PATH"}=~ /^\//) {
$gnus++;
print "this is a real gnu OS, congratulation\n";
}
my @gnul = ("\\", "\/");
my $slash = $gnul[$gnus];
my @ds = split(/$slash/, $d);
my $ds = pop @ds;
my $ext_html = ".html";
my $ext_dat = ".dat";
$fout = "rep_" . "$ds$ext_html";
&gnotise($fout);
$fout_dat = "rep_" . "$ds$ext_dat";
&gnotise($fout_dat);
open OUT, ">$fout" or die "Ouverture du fichier rep impossible $!";
$lbl_titre = "liste détaillé de $d";
&header("OUT");
print OUT "<h1\>Liste des fichiers de
$d<\/h1\><br>\n";
print OUT "Edité automatiquement par le script $0 vers:$vers
d\'Adelmar Alain le: "
. $french_date_now . "\nn\'efféctuez pas de
modifications (SVP)\.\n<hr\>\n";
open OUTDAT, ">$fout_dat" or die "Screugneugneu $fout_dat ne veux
pas souvrir $!";
print OUTDAT "Edité automatiquement par le script $0 le:
$french_date_now\nn\'"
. "efféctuez pas de modifications (SVP)\.\n";
my $menu = "$d$slash" . "menu.html";
unless (-e $menu) {
open MENU, ">$menu" or die "Ouverture de $menu impossible $!";
# création du cartouche
# entete
$lbl_titre = "menu alphabetique et par genre du site";
&header("MENU");
&onglet_menu("MENU");
print MENU ' <table BORDER COLS=3 WIDTH="100%"
STYLE="background-image: url(bkgnd15.gif)">' . "\n";
print MENU ' <tr>' . "\n";
print MENU ' <td><a
NAME="menu_top"></a>' . "\n";
print MENU ' <table BORDER COLS=7 WIDTH="100%" >' .
"\n";
print MENU ' <tr>' . "\n";
# mettre boucle de a-z
my $renvoi = 0;
my @az = ("a".."z");
foreach (@az) {
if($renvoi <= 6) {
print MENU '
<td><font face="Georgia" size=+1><a href="liste_'
. $_ . '.html#a_top"><center>' . $_ .
'</center></a></font></td>'
. "\n";
$renvoi++;
}
else {
print MENU '
</tr>' . "\n\n\t" . ' <tr>' . "\n";
$renvoi = 0;
print MENU '
<td><font face="Georgia" size=+1><a href="liste_'
. $_ . '.html#a_top"><center>' . $_ .
'</center></a></font></td>' . "\n";
}
}
print MENU ' </tr>' . "\n\n\t" . '
</table>' . "\n\n";
print MENU ' <center><a
NAME="recherche"></a><FONT COLOR="#FF0000"><a
href="recherche.html">'
. 'Recherche</a></FONT></center>'
. "\n";
print MENU ' </td>' . "\n\n" . ' <td>' .
"\n\n";
print MENU ' <center><img SRC="al_sigle_5.gif"
height=107 width=117></center>' . "\n";
print MENU ' </td>' . "\n";
print MENU ' <td> ' .
$auteur . ' ' . "\n";
print MENU ' <br> <a
href="' . $adresse_mail . '">' . $adresse_mail . '</a>' . "\n";
print MENU ' <br> ' .
$adresse_postale . "\n";
print MENU ' <br> <a
href="' . $adresse_pub1 . '">' . $adresse_pub1 . '</a>' . "\n";
print MENU ' <br> <a
href="' . $adresse_pub1 . '">' . $adresse_pub1 .
'</a></td>' . "\n";
print MENU ' </tr>' . "\n" . ' <tr>' .
"\n" . ' <td>' . "\n";
print MENU ' <center><a
NAME="_top"></a><a href="index.html">Index du
site</a></center>' . "\n";
print MENU ' </td>' . "\n\n" . ' <td>' .
"\n";
print MENU ' <center><a
NAME="informgnl_tab"></a><a
href="informatique_gnl.html">'
. 'Informatique
Générale</a></center>' . "\n";
print MENU ' </td>' . "\n\n" . ' <td>' .
"\n";
print MENU ' <center><a
NAME="plan_site_tab"></a>Plan du Site</center>' . "\n";
print MENU ' </td>' . "\n" . ' </tr>' .
"\n" . ' </table>' . "\n";
print MENU ' <!-- script ecrit par Adelmar Alain
aadelmar@numericable.fr -->' . "\n";
print MENU ' <dl>' . "\n";
close MENU or die "Fermeture de $file impossible $!";
}
#--------------------------------------------------------------------a
la
opendir R, "$d" or die "Ouverture repertoire impossible $!";
$mode = 8;
foreach $file (sort readdir R){
next if ($file =~ /^\./);
$filelbl = $filename = $file;
# print "filename vaut $filename\n";
$file ="$d$slash$filename";
# print "file vaut $file\n";
$u++;
our $format_d = 4;
$fr_date_file = datefinefile($file, $mode, $format_d);
$fr_date_file = datefinefile($file);
if(-d $file) {
my $reptmp = "d";
&ecrit_d("OUT");
#------------------------
$lettre= substr($filename,0,1);
if($lettre=~ /\d/) {
$lettre = "0-9";
}
elsif($lettre=~ /\w/) {
$lettre= lc $lettre;
}
$fliste = "liste_$lettre.html";
# $rpath_fliste = adresse réelle de $fliste
# tant qu'a faire placer les liste dans le rep voulu
$rpath_fliste = "$d$slash$fliste";
$ford = "d";
if(&jette_un_oeil($rpath_fliste, $ford)== 1) {
if($vierge == 1) {
&ecrit_d("FL");
print FL $commentaire;
&footer("FL");
close FL || die "Fermeture de $fliste impossible $!";
$vierge = 0;
}
else {
close FL || die "impossible a $rpath_fliste de se
fermer $!";
open FL, ">$rpath_fliste" or die "Ouverture de
$fliste impossible $!";
print FL "@nwcontenu\n";
close FL || die "Fermeture de $fliste impossible $!";
}
}
#--------------------------
write;
print OUTDAT "$reptmp $line";
}
elsif(-f $file) {
#damned avec remd: je pourrai carrement afficher le
commentaire à coté du liens (but no alias sur M$)
$reptmp = "f";
$taille = (stat($file))[7];
if ($taille >= 1000000) {
$taille = $taille/1000000;
$ptaille = "$taille (Mo)";
}
elsif ($taille >= 1000) {
$taille = $taille/1000;
$ptaille = "$taille (Koctets)";
}
else {
$ptaille = "$taille (Octets)";
}
&ecrit_f("OUT");
# ajout dans les listes des noms de fichier (qui
controle l'existance fichier et nom de fichier)-----
unless($argv=~ /^c/) {
next if($filename=~
/\.gif$|jpe?g$|png$/i);
}
$lettre= substr($filename,0,1);
if($lettre=~ /\d/) {
$lettre = "0-9";
}
elsif($lettre=~ /\w/) {
$lettre= lc $lettre;
}
$fliste = "liste_$lettre.html";
# $rpath_fliste = adresse réelle de $fliste
# tant qu'a faire placer les liste dans le rep voulu
$rpath_fliste = "$d$slash$fliste";
$ford = "f";
if(&jette_un_oeil($rpath_fliste, $ford)== 1) {
if($vierge == 1) {
&ecrit_d("FL");
print FL $commentaire;
&footer("FL");
close FL || die "Fermeture de $fliste impossible $!";
$vierge = 0;
}
else {
close FL || die "impossible a $rpath_fliste de se
fermer $!";
open FL, ">$rpath_fliste" or die "Ouverture de
$fliste impossible $!";
print FL "@nwcontenu\n";
close FL || die "Fermeture de $fliste impossible $!";
}
}
#------------------------------------------------------------------------------------------------------
write;
$line = ":$filename\n\t$ptaille\t$fr_date_file\n";
if ($argv eq "c") {
$rem = &remdthat($filename);
print OUTDAT "$reptmp $line\n$rem\n";
}
print OUTDAT "$reptmp $line";
}
}
#closedir R or die "Fermeture du repertoire impossible $!";
print OUTDAT "\n$lbl\n";
close OUTDAT || die "Comme dirai tonton jo, Fartoi encoula granda
connasse, "
. "30000 fois saloperie ce ptain de $fout_dat ne veut pas ce
fermer $!";
&onglet_menu("OUT");
print OUT '<!-- script Perl d\'alain Adelmar -->' . "\n";
&footer("OUT");
close OUT or die "Fermeture impossible bordel $!";
print "nombre de fichier traite $u\n";
print "\n\nUn fichier $fout a été créé ainsi qu'un fichier
$fout_dat\nBonne journée\nalain\n";
sub gnotise() {
my($fili)= @_;
$fili = "$dir$slash$fili";
my $i = 0;
while (-e $fili) {
if($fili =~ /html$/) {
$fili = "$dir$slash" . "rep_" . "$ds" .
"_$i" . "$ext_html";
$fout = $fili;
}
elsif($fili =~ /dat$/) {
$fili = "$dir$slash" . "rep_" . "$ds" .
"_$i" . "$ext_dat";
$fout_dat = $fili;
}
# a saquer quand
ok------------------------------------------------------------------------de
là
else {
print "\nProblème de fichier de sortie
erreur dans gnotise\nnom du fichier de sortie: $fili\n";
}
#---------------------------------------------------------------------------a
là
$i++;
# a saquer quand
ok-------------------------------------------------------------------------de
là
#my $arch = "$fili" . "~";
#rename $fili, $arch or die "impossible de faire
comme cela $!";
#--------------------------------------------------------------------------a
là
}
}
# donne la date et heure sous plusieurs format Français et
numerique--------------------------------------
sub datefinefile {
my ($file)= @_;
my $formad_d = 4;
our @lssjour = qw( Dim Lun Mar Mer Jeu Ven Sam);
our @lslsjour = qw( Dimanche Lundi Mardi Mercredi Jeudi Vendredi
Samedi);
our @lssmois = qw(Janvier Fevrier Mars Avril Mai Juin Juillet
Aout Septembre Octobre Novembre Decembre);
my $datenum = ((stat($file))[$mode]);
(my $sec,my $min,my $heure,my $mjour,my $mois,my $annee,my
$sjour,my $ajour,my $isdst)=localtime($datenum);
my $pa = "";
my $num_mois = ($mois+1);
if ($mois <= 9) {
$num_mois = "0$num_mois";
}
if ($mjour <= 9) {
$mjour = "0" . "$mjour";
}
if ($heure <= 9) {
$heure = "0" . "$heure";
}
if ($min <= 9) {
$min = "0" . "$min";
}
if ($sec <= 9) {
$sec = "0" . "$sec";
}
$cj = $lssjour[$sjour];
my $pj = substr($cj, 0, 2);
my $pm = substr("$lssmois[$mois]", 0 , 3);
if ($annee < 100) {
my $pa = $annee;
}
elsif ($annee <=109) {
my $pa = "0" . ($annee-100);
}
else {
my $pa = ($annee-100);
}
if ($format_d eq "1") {
# format differants 1: 20100131-203001
$fr_date_file = ($annee+=1900) .
"$num_mois$mjour-$heure$min$sec";
}
elsif ($format_d eq "2") {
# format differants 2: 31/01/2010-20:30
$fr_date_file = "$mjour\/$num_mois\/" .
($annee+=1900) . "-$heure:$min";
}
elsif ($format_d eq "3") {
# format differants 2: Di-31/01/2010-20:30:02
$fr_date_file = "$pj-$mjour\/$num_mois\/" .
($annee+=1900) . "-$heure:$min:$sec";
}
elsif ($format_d eq "4") {
# format differants: $fr_dt_file = 31Jan10-20h
$fr_date_file = "$mjour$pm" . "$pa" . "-$heure" .
"h";
}
elsif ($format_d eq "5") {
# format differants: $fr_dt_file = Di 31 Jan 10 -
20h30
$fr_date_file = "$pj $mjour $pm" . " $pa" . "-
$heure" . "h$min";
}
else {
# format differants: $fr_date_file = Dim 31 Janvier
2010 - 20:30:02
$fr_date_file = "$lslsjour[$sjour] $mjour
$lssmois[$mois] " . ($annee+=1900) . " - $heure:$min:$sec";
}
return $fr_date_file;
}
#--------------------------------------------------------------------------------------------------------
sub remdthat {
my ($filename)= @_;
(@contenu, @remd)= "";
my $filnm = "$d$slash$filename";
open FREM, "<$filnm" or die "Ouverture de $file impossible
$!";
@contenu = <FREM>;
$nlr = 0;
foreach $l(@contenu) {
if ($nlr >= 1) {
chomp $l;
push @remd, $l;
goto LABELLE if ($nlr == 1);
$nlr--;
}
elsif ($l =~ /remd:/) {
chomp $l;
if(length $l <=150) {
push @remd, $l;
print "ok pour $l\n";
}
else {
print "ligne trop longue\n";
}
$nlr =
5; # nombre de lignes de
commantaires +1, changer le nombres ici
}
}
LABELLE:close FREM || die "Fermeture de $file compromise $!";
$rem = join("\n\t", @remd);
return $rem;
}
sub jette_un_oeil {
my ($rpath_fliste, $ford)=@_;
@nwcontenu= "";
if(-e $rpath_fliste) {
open FL, "$rpath_fliste" or die "Ouverture de
$fliste impossible $!";
@contenu = <FL>;
#close FL || die "Fermeture de $fliste impossible
$!";
foreach (@contenu) {
chomp;
if(/$filename/) {
close FL || die "Fermeture de $rpath_fliste
impossible $!";
return 0;
}
elsif(/$commentaire/) {
if($ford eq "d") {
push @nwcontenu, "<img
SRC=\"folder.jpg\"\> <b\><a
href=\"$filename\"\>"
.
"$file<\/a\><\/b\><br\><div
align=center\>$fr_date_file<\/div\><br\>\n";
}
else {
push @nwcontenu, "<img
SRC=\"file.jpg\"\> <a
href=\"$filename\"\>$filename"
. "<\/a\><br\><div
align=center\>$ptaille --- $fr_date_file<\/div\><br\>\n";
}
push @nwcontenu, "$commentaire\n";
}
elsif(/<\/html\>/) {
push @nwcontenu, "$_\n";
return 1;
}
else {
push @nwcontenu, "$_\n";
}
}
}
else {
my $fileliste = "$d$slash$fliste";
open FL, ">>$rpath_fliste" or die "Ouverture
de $fileliste impossible $!";
$lbl_titre = "Liste des fichiers commencant par
<" . $lettre . ">";
&header("FL");
&onglet_menu("FL");
print FL "<h1\>Liste des fichiers commencant
par <" . $lettre . '>' . "<\/h1\><br>\n";
print FL "Edité automatiquement par le
script $0 vers:$vers le: " . $french_date_now
. "\nn\'efféctuez pas de
modifications (SVP)\.\n<hr\>\n";
$vierge = 1;
return 1;
}
}
closedir R or die "Fermeture du repertoire impossible $!";
sub onglet_menu() {
my ($handel)= @_;
print $handel ' <ul>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="base_conaissances_perso.html">'
.
'Précédant</a></li>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="liste_a.html">Suivant</a></li>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="index.html">Index</a></li>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="menu.html#menu_top">Menu</a></li>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="mailto:' . $adresse_mail . '">'
. 'Me Joindre</a></li>' . "\n";
print $handel ' </ul>' . "\n";
print $handel ' <hr>' . "\n";
}
sub header() {
my ($handel)= @_;
print $handel '<!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0
transitional//en">' . "\n";
print $handel ' <html>' . "\n";
print $handel ' <head>' . "\n";
print $handel ' <meta
http-equiv="Content-Type" content="text/html; charset=iso-8859-1">'
. "\n";
print $handel ' <title>' .
$lbl_titre . '</title>' . "\n";
print $handel ' <meta
name="Author" content="' . $auteur . '">' . "\n";
print $handel ' <meta
name="GENERATOR" content="Mozilla/4.7 [fr] (Linux) [Netscape]">' .
"\n";
print $handel ' <link
href="style.css" type="text/css" rel="stylesheet">' . "\n";
print $handel ' </head>' . "\n";
print $handel ' <body>' . "\n";
}
sub ecrit_d() {
my ($handel)= @_;
print $handel "<img
SRC=\"folder.jpg\"\> <b\><a
href=\"$filename\"\>$file"
. "<\/a\><\/b\><br\><div
align=center\>$fr_date_file<\/div\><br\>\n";
}
sub ecrit_f() {
my ($handel)= @_;
print $handel "<img
SRC=\"file.jpg\"\> <a
href=\"$filename\"\>$filename<\/a\>"
. "<br\><div align=center\>$ptaille ---
$fr_date_file<\/div\><br\>\n";
}
sub footer() {
my ($handel)= @_;
print $handel "$pied\n";
print $handel ' <ul>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="base_conaissances_perso.html">'
.
'Précédant</a></li>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="liste_a.html">Suivant</a></li>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="index.html">Index</a></li>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="menu.html#menu_top">Menu</a></li>' . "\n";
print $handel ' <li class="mu"><a class="neolink"
href="mailto:' . $adresse_mail . '">Me Joindre'
. '</a></li>' . "\n";
print $handel ' </ul>' . "\n";
print $handel ' <hr>' . "\n";
print $handel ' </body>' . "\n" . "</html\>\n";
}
format STDOUT =
@<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
@<<<<<<<<<<<<<<<<
@<<<<<<<<<<<<<<<<<<<<<<<
$filelbl, $ptaille, $fr_date_file
.
END;