diff options
Diffstat (limited to 'Master/texmf-dist/scripts/tex4ht')
-rw-r--r-- | Master/texmf-dist/scripts/tex4ht/htcopy.pl | 46 | ||||
-rw-r--r-- | Master/texmf-dist/scripts/tex4ht/htmove.pl | 45 |
2 files changed, 91 insertions, 0 deletions
diff --git a/Master/texmf-dist/scripts/tex4ht/htcopy.pl b/Master/texmf-dist/scripts/tex4ht/htcopy.pl new file mode 100644 index 00000000000..c8d2193b21d --- /dev/null +++ b/Master/texmf-dist/scripts/tex4ht/htcopy.pl @@ -0,0 +1,46 @@ +use File::Copy; +use File::Path; +use File::Basename; + +&main ; + +0; + +sub is_absolute { + my ($f) = @_; + return $f =~ m@^([a-zA-Z]:)?[\\/]@ ; +} + +sub canonicalize { + my ($f) = @_; + $f =~ s@/@\\@g; + return $f; +} + +sub main { + my $src = &canonicalize($ARGV[0]); + my $dst = &canonicalize($ARGV[1]); + + if (&is_absolute($src)) { + if (-d $dst) { + $dst = $dst . "\\" . &basename($src); + } + } + else { + if (-d $dst) { + $dst = "$dst\\$src"; + &mkpath(&dirname($dst)); + } + } + + if ($0 =~ m/htmove\.pl$/) { + &move($src, $dst); + } + elsif ($0 =~ m/htcopy\.pl$/) { + ©($src, $dst); + } + else { + print STDERR "$0: bad verb $ARGV[0]\n"; + } +} + diff --git a/Master/texmf-dist/scripts/tex4ht/htmove.pl b/Master/texmf-dist/scripts/tex4ht/htmove.pl new file mode 100644 index 00000000000..2d52965ebf5 --- /dev/null +++ b/Master/texmf-dist/scripts/tex4ht/htmove.pl @@ -0,0 +1,45 @@ +use File::Copy; +use File::Path; +use File::Basename; + +&main ; + +0; + +sub is_absolute { + my ($f) = @_; + return $f =~ m@^([a-zA-Z]:)?[\\/]@ ; +} + +sub canonicalize { + my ($f) = @_; + $f =~ s@/@\\@g; + return $f; +} + +sub main { + my $src = &canonicalize($ARGV[0]); + my $dst = &canonicalize($ARGV[1]); + + if (&is_absolute($src)) { + if (-d $dst) { + $dst = $dst . "\\" . &basename($src); + } + } + else { + if (-d $dst) { + $dst = "$dst\\$src"; + &mkpath(&dirname($dst)); + } + } + + if ($0 =~ m/htmove\.pl$/) { + &move($src, $dst); + } + elsif ($0 =~ m/htcopy\.pl$/) { + ©($src, $dst); + } + else { + print STDERR "$0: bad verb $ARGV[0]\n"; + } +} |