From cb1f34f8bcabffe0473d760bf9dd3343f8db537c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 26 Jan 2020 23:58:37 +0000 Subject: tetex.tlpsrc: remove. scheme-infraonly.tlpsrc, collection-basic.tlpsrc: no more tetex. texlive.infra.tlpsrc: move fmtutil-hdr.cnf and updmap-hdr.cfg to texlive-scripts, where the scripts are. texmf-dist/doc/tetex: also remove, too old. texmf-dist/scripts/texlive-extra: add remaining auxiliary scripts from tl_scripts, from tetex days. .sh, e2pall.pl: move there (from Build/../tlscripts/). texlive-extra.tlpsrc: new package. collection-binextra.tlpsrc: add texlive-extra here. bin/*/all*: adjust symlinks. Build/.../texlive/linked_scripts/texlive-extra: add new scripts. Adjust Makefile.am, including creating mktexfmt symlink. Build/.../texlive/tl_scripts: remove all scripts from here, leaving only man pages. tl-check-wrapper-consistency: no more scripts in tl_scripts (will rename directory later). git-svn-id: svn://tug.org/texlive/trunk@53554 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/scripts/texlive-extra/e2pall.pl | 89 +++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100755 Master/texmf-dist/scripts/texlive-extra/e2pall.pl (limited to 'Master/texmf-dist/scripts/texlive-extra/e2pall.pl') diff --git a/Master/texmf-dist/scripts/texlive-extra/e2pall.pl b/Master/texmf-dist/scripts/texlive-extra/e2pall.pl new file mode 100755 index 00000000000..2997f8b1102 --- /dev/null +++ b/Master/texmf-dist/scripts/texlive-extra/e2pall.pl @@ -0,0 +1,89 @@ +#!/usr/bin/env perl + +# Author: Jody Klymak , publisted by a posting +# to the pdftex mailinglist. + +# recursively finds all your eps files. Looks down \input{fname}. +# CAVEATS: +# 1) cannot handle \input{fname} split over more than one line. +# 1.5) cannot handle multiple \input{} or \includegraphics{} on one line. +# 2) Must be run from same directory as the Latex file. +# 3) Does not look down $TEXINPUTS or anything fancy like that... +# 4) Handling of \include is untested (though I guess its trivial) +# 5) Assumes *all* your graphics inclusions are [e]ps. But don't +# fret, because if they are not epstopdf dies anyhow.... +# 6) Does not distinguish between percent (\%) and comment (%). + +# Changelog: +# 20030103 -- Lachlan Andrew +# * Only append '.tex' if $fname doesn't exist. +# * Correctly handle lines with '}' after the \includegraphics{} +# * Allow multiple extensions for graphics files. .eps -> .ps -> none +# (Should try them in the same order as \includegraphics does +# -- given by \DeclareGraphicsExtensions{}?) +# * Allow \include the same way as \input +# * Allow \includegraphics{} to be split over multiple lines +# * Check that commands begin with '\', and allow spaces before arguments + +# EDIT these two lines for your system.... + +$Eps2PdfCom = "epstopdf"; +$ThisFunCom = "e2pall"; + +$fname=$ARGV[0]; + +# check for a *.tex at the end... +if ((-f "$fname")=="" && $fname !~ /.tex$/){ + $fname = "$fname.tex"; +} + +open(TEXFILE,$fname) or die "Cannot open file $fname"; +# print "Finding *.eps files in $fname\n"; + +$seekingArg = 0; +while($line=){ + # truncate $line after % sign.... + $line=~s/%.*//; + # check for /input.... + if ($line=~/\\input *{([^}]*)}/){ + print `$ThisFunCom $1`; + } + # check for /include.... + if ($line=~/\\include *{([^}]*)}/){ + print `$ThisFunCom $1`; + } + + $base = ""; + if ($line=~/\\includegraphics.*{([^}]*)}/){ + $base = $1; + } + elsif ($seekingArg==1 && ($line=~/{([^}]*)}/)){ + $base = $1; + } + elsif ($line=~/\\includegraphics/){ + $seekingArg = 1; + } + + if ($base ne "") { + $seekingArg = 0; + if ((-f "$base.eps")!="") { + $srcfile = "$base.eps"; + } + elsif ((-f "$base.ps")!=""){ + $srcfile = "$base.ps"; + } + else { + $srcfile = $base; + } + # check that the [e]ps version is newer than the pdf version.... + if ((-M "$base.pdf")=="" || (-M "$base.pdf") >= (-M "$srcfile")){ + print "Constructing \t $base.pdf from $srcfile\n"; + print `$Eps2PdfCom $srcfile`; + } + else{ + print "$base.pdf \t is up to date with $srcfile\n"; + } + + }; +} +close(TEXFILE); -- cgit v1.2.3