doc-src/IsarOverview/Isar/makeDemo
author haftmann
Mon, 05 Jul 2010 15:12:20 +0200
changeset 37715 44b27ea94a16
parent 13999 454a2ad0c381
permissions -rwxr-xr-x
tuned proof
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13999
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     1
#!/usr/bin/perl -w
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     2
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     3
sub doit {
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     4
    my ($file) = @_;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     5
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     6
    open (FILE, $file) || die $!;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     7
    undef $/; $text = <FILE>; $/ = "\n";
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     8
    close FILE || die $!;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
     9
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    10
    $_ = $text;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    11
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    12
    s/text_raw\{\*([^*]|\*[^}])*\*\}//sg;       # actual work done here
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    13
    s/text\{\*([^*]|\*[^}])*\*\}//sg;       # actual work done here
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    14
    s/\(\*<\*\)//sg;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    15
    s/\(\*>\*\)//sg;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    16
    s/--(\ )*"([^"])*"//sg;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    17
    s/--(\ )*\{\*([^*]|\*[^}])*\*\}//sg;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    18
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    19
    $result = $_;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    20
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    21
    if ($text ne $result) {
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    22
        print STDERR "fixing $file\n";
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    23
#        if (! -f "$file~~") {
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    24
#            rename $file, "$file~~" || die $!;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    25
#        }
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    26
        open (FILE, "> Demo/$file") || die $!;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    27
        print FILE $result;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    28
        close FILE || die $!;
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    29
    }
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    30
}
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    31
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    32
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    33
foreach $file (@ARGV) {
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    34
  eval { &doit($file); };
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    35
  if ($@) { print STDERR "*** doit $file: ", $@, "\n"; }
454a2ad0c381 IsarOverview moved one level up
kleing
parents:
diff changeset
    36
}