root/trunk/jps2ps/lit_cles.pl

Revision 4, 1.4 kB (checked in by jms, 7 months ago)

Chargement de jps2ps dans le SVN.

  • Property svn:executable set to *
Line 
1 #!/usr/bin/perl -w
2
3 ## recoit le nom d'un fichier .pps
4 #@path = split (/\//, $ARGV[0]); ## recupere le chemin et le nom dans un tableau
5 $source = "$ARGV[0]";
6
7 ## lecture du source, et stockage ds le tableau @le_source
8 $i = 0;
9 open (SRC, $source) or die "ouverture du fichier $source impossible";
10 while ($ligne = <SRC>) {
11     ## suppression des commentaires
12     if ($ligne =~ /%/) {
13        $ligne =~ s/%.*$//;
14     }
15     ## remplacement des tabulations
16     if ($ligne =~ /\t/) {
17         $ligne =~ s/\t/ /g;
18     };
19     ## remplacement des (){}[]
20     if ($ligne =~ /\(|\)|{|}|\[|\]/) {
21            $ligne =~ s/\(|\)|{|}|\[|\]/ /g;
22     }
23 ##     ## remplacement des doubles espaces
24 ##     while ($ligne =~ /  /) {
25 ##            $ligne =~ s/  / /g;
26 ##     }   
27     $ligne =~ s/\r\n//;
28 ##    $ligne =~ s/\n//;
29
30 ##    print ("$i : " . $ligne);
31
32     $le_source [$i] = $ligne;
33     $i = $i + 1;
34 };
35 close (SRC);
36
37 ## on cherche les cles definies dans le fichier
38 $i = 0;
39 @les_cles = ();
40 foreach $ligne (@le_source) {
41     ## la ligne definit une nouvelle cle
42     if ($ligne =~ /^\//) {
43         $cle = $ligne;
44         ## suppression des sauts de ligne
45         $cle =~ s/\n//;
46         ## on recup la cle
47         $cle =~ s/^\/([^ ]*).*/$1/;
48         ## puis on l'efface de la ligne
49         $ligne =~ s/^\/[^ ]*(.*)/$1/;
50         ## on stocke la nouvelle cle
51         $les_cles [$i] = $cle;
52         $i = $i + 1;
53     };
54 };
55
56 foreach (@les_cles) {
57     print ($_ . "\n");
58 };
59
60 1;
Note: See TracBrowser for help on using the browser.