diff options
author | Karl Berry <karl@freefriends.org> | 2008-05-04 00:21:05 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2008-05-04 00:21:05 +0000 |
commit | 1fa1b6fb6f9ae20fe5c0bb3290c0a239919b9db6 (patch) | |
tree | a16ea1e1b54f6e219b8c89cb5a1bc7c0993adf8e /Master/texmf-dist/scripts/pst-pdf | |
parent | 7b2954a4e142088279afb9b37d70775b970341c5 (diff) |
pst-pdf update 2may08 (from tds.zip, guess it is ok to use /latex/ instead of /generic/ for this particular one)
git-svn-id: svn://tug.org/texlive/trunk@7832 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/scripts/pst-pdf')
-rwxr-xr-x | Master/texmf-dist/scripts/pst-pdf/ps4pdf | 133 | ||||
-rwxr-xr-x | Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat | 70 | ||||
-rw-r--r-- | Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX | 66 | ||||
-rw-r--r-- | Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95 | 8 |
4 files changed, 277 insertions, 0 deletions
diff --git a/Master/texmf-dist/scripts/pst-pdf/ps4pdf b/Master/texmf-dist/scripts/pst-pdf/ps4pdf new file mode 100755 index 00000000000..cbdcb022926 --- /dev/null +++ b/Master/texmf-dist/scripts/pst-pdf/ps4pdf @@ -0,0 +1,133 @@ +#!/bin/sh + +# Copyright (C) 2004, Thomas Esser. Public domain. +# 2005-03-08: New option "--crop", Rolf Niepraschk. +# dvips call only if the dvi file exist (RN). +# 2005-06-27: ps2pdf call only if the ps file exist (RN). +# 2006-04-05: "\RequirePackage{pst-pdf}" added to the (pdf)LaTeX calls +# as suggested by Niall Murphy. +# 2006-07-14: Better temp dir handling (suggested by Karl Berry) (RN). +# 2006-07-23: New option --Xps2pdf and code cleanup (thanks to Karl Berry) (RN). + +# First, work around bugs/limitations in some shells on some systems: +test -f /bin/sh5 && test -z "$RUNNING_SH5" \ + && { UNAMES=`uname -s`; test "x$UNAMES" = xULTRIX; } 2>/dev/null \ + && { RUNNING_SH5=true; export RUNNING_SH5; exec /bin/sh5 $0 ${1+"$@"}; } +unset RUNNING_SH5 + +test -f /bin/bsh && test -z "$RUNNING_BSH" \ + && { UNAMES=`uname -s`; test "x$UNAMES" = xAIX; } 2>/dev/null \ + && { RUNNING_BSH=true; export RUNNING_BSH; exec /bin/bsh $0 ${1+"$@"}; } +unset RUNNING_BSH + +# hack around a bug in zsh: +test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"' + +############################################################################### +# cleanup() +# clean up the temp area and exit with proper exit status +############################################################################### +cleanup() +{ + rc=$? + $needsCleanup && test -n "$tmpdir" && test -d "$tmpdir" \ + && { rm -f "$tmpdir"/*; cd /; rmdir "$tmpdir"; } + + # set exit code in a portable way; see the autoconf manual for details: + (exit $rc); exit $rc +} + +############################################################################### +# setupTmpDir() +# set up a temp directory and a trap to remove it +############################################################################### +setupTmpDir() +{ + $needsCleanup && return + + trap 'cleanup' 1 2 3 7 13 15 + needsCleanup=true + (umask 077; mkdir "$tmpdir") \ + || abort "could not create directory \`$tmpdir'" +} +############################################################################### +# myexec(args) +# execute the command given as "args"; abort on error; redirect messages to +# log in "silent" mode; redirect stdin (</dev/null) in silent mode +############################################################################### +myexec() +{ + if $silent; then + echo "$0: running $@" + "$@" >$log 2>&1 </dev/null + rc=$? + else + "$@" + rc=$? + fi + if test $rc != 0; then + echo "$0: command $@ returned with code $rc" + cat <$log + (exit $rc) # set return value + cleanup + fi +} + +# some initializations +progname=pdflatexps +silent=true # default setting; change if you like +crop=false +needsCleanup=false +ps2pdf_opts="-dAutoRotatePages=/None" +tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/.$progname$$ +log=$tmpdir/log +version="1.0" + +# look for optional things first +while + case $1 in + --help|-h) echo "$0 [-v|-q|--crop|--version|--Xps2pdf OPT] FILE" + echo "Process LaTeX document FILE using the pst-pdf package," + echo "including running latex, dvips, and ps2pdf as necessary." + echo "--Xps2pdf OPT passes OPT to ps2pdf." + echo " (-dAutoRotatePages=/None is always passed.)" + echo "--crop runs pdfcrop on ps2pdf output." + exit 0;; + --version) echo "$progname version $version"; exit 0;; + --crop|-c) crop=true;; + --Xps2pdf|-Xps2pdf) shift; ps2pdf_opts="$ps2pdf_opts $1";; + -q) silent=true;; + -v) silent=false;; + -*) echo "$progname: unknown option $1 ignored";; + *) break;; + esac +do + shift +done + +# remaining option: filename +file=$1 +if test -z "$file"; then + echo "$0: no file to process, try --help for more information." >&2 + exit 1 +fi + +# jobname von TeX: Verzeichnisse entfernen, evtl. vorhandene Extension +# entfernen. +job=`echo "x$1" | sed 's@x@@; s@.*/@@; s@\.[^.]*$@@'` + +setupTmpDir +myexec latex \ + "\AtBeginDocument{\RequirePackage{pst-pdf}} \input{$file}" +test -f "$job.dvi" && myexec dvips -Ppdf -o "$job-pics.ps" "$job.dvi" +test -f "$job-pics.ps" && myexec ps2pdf \ + "$ps2pdf_opts" "$job-pics.ps" "$job-pics.pdf" +if $crop; then + myexec pdfcrop "$job-pics.pdf" "$job-pics-crop.pdf" + mv "$job-pics-crop.pdf" "$job-pics.pdf" +fi +myexec pdflatex \ + "\AtBeginDocument{\RequirePackage{pst-pdf}} \input{$file}" +true +cleanup + diff --git a/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat b/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat new file mode 100755 index 00000000000..7adae934578 --- /dev/null +++ b/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat @@ -0,0 +1,70 @@ +:: ********************************************** +:: ps4pdf.bat +:: author Lutz Ihlenburg, 09-may-2005 +:: +:: Batch file for using Rolf Niepraschk's package +:: pst-pdf under MiKTeX +:: +:: More info: ps4pdf-bat.txt +:: ********************************************** + +@echo off +:: Command extensions must be enabled (Default in Windows XP) +:: Localize temporary variables +setlocal + +:: Called with no argument? +if {%1} == {} goto USAGE +if {%1} == {/?} goto USAGE +if {%1} == {-h} goto USAGE +if {%1} == {--help} goto USAGE + +:: Look for existence of main tex file. +:: This procedure will not work, if You transfer a filename without extension, +:: having dots in the name :-) +:: Command shell for-statement allows only one command. +:: For more, a multiple command must be created with & +for %%a in (%1) do set _fullname=%%~fa& set _drive=%%~da& set _path=%%~pa& set _name=%%~na& set _ext=%%~xa +:: XP command shell doesn't know "if not defined..." +if defined _ext ( +rem +) else ( +set _ext=.tex +set _fullname=%_fullname%.tex +) +if not exist "%_fullname%" goto :MISSINGFILE + +:OPERATION +%_drive% +cd %_path% +@echo on +latex --src -interaction=nonstopmode "%_name%%_ext%" >"%_name%-ps4pdf.log" +@if errorlevel 1 goto :ERROR +dvips -o "%_name%-pics.ps" "%_name%.dvi" >>"%_name%-ps4pdf.log" +@if errorlevel 1 goto :ERROR +ps2pdf -dAutoRotatePages#/None "%_name%-pics.ps" >>"%_name%-ps4pdf.log" +@if errorlevel 1 goto :ERROR +texify -b -l latex -p "%_name%%_ext%" >>"%_name%-ps4pdf.log" +@if errorlevel 1 goto :ERROR +@goto :EOF + +:MISSINGFILE +echo *** File not found: %_fullname% +echo *** Batch job aborted +pause +goto :EOF + +:ERROR +@echo *** An error message appeared. Abnormal termination! Look at %_name%-pst-pdf.log *** +@pause +@goto :EOF + +:USAGE +for %%a in (%0) do set _progname=%%~na +echo Usage: %_progname% SourceFile[.tex] +pause +goto :EOF +%~na +echo Usage: %_progname% SourceFile[.tex] +pause +goto :EOF diff --git a/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX b/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX new file mode 100644 index 00000000000..46812347f1d --- /dev/null +++ b/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX @@ -0,0 +1,66 @@ +:: ********************************************** +:: ps4pdf.bat +:: author Lutz Ihlenburg, 09-may-2005 +:: +:: modified by patrice Mégret, 31-may-2005 +:: +:: Batch file for using Rolf Niepraschk's package +:: pst-pdf under MiKTeX +:: +:: More info: ps4pdf-bat.txt +:: ********************************************** + +@echo off +:: Command extensions must be enabled (Default in Windows XP) +:: Localize temporary variables +setlocal + +:: Called with no argument? +if {%1} == {} goto USAGE +if {%1} == {/?} goto USAGE +if {%1} == {-h} goto USAGE +if {%1} == {--help} goto USAGE + +:: Look for existence of main tex file. +:: This procedure will not work, if You transfer a filename without extension, +:: having dots in the name :-) +:: Command shell for-statement allows only one command. +:: For more, a multiple command must be created with & +for %%a in (%1) do set _fullname=%%~fa& set _drive=%%~da& set _path=%%~pa& set _name=%%~na& set _ext=%%~xa +:: XP command shell doesn't know "if not defined..." +if defined _ext ( +rem +) else ( +set _ext=.tex +set _fullname=%_fullname%.tex +) +if not exist "%_fullname%" goto :MISSINGFILE + +:OPERATION +%_drive% +cd %_path% +@echo on +latex --src -interaction=nonstopmode "%_name%%_ext%" > "%_name%-ps4pdfa.log" +@if errorlevel 1 goto :ERROR +dvips -o "%_name%-pics.ps" "%_name%.dvi" >> "%_name%-ps4pdfb.log" +@if errorlevel 1 goto :ERROR +ps2pdf "%_name%-pics.ps" >> "%_name%-ps4pdfc.log" +@if errorlevel 1 goto :ERROR +@goto :EOF + +:MISSINGFILE +echo *** File not found: %_fullname% +echo *** Batch job aborted +pause +goto :EOF + +:ERROR +@echo *** An error message appeared. Abnormal termination! Look at %_name%-pst-pdf.log *** +@pause +@goto :EOF + +:USAGE +for %%a in (%0) do set _progname=%%~na +echo Usage: %_progname% SourceFile[.tex] +pause +goto :EOF diff --git a/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95 b/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95 new file mode 100644 index 00000000000..591c910cab3 --- /dev/null +++ b/Master/texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95 @@ -0,0 +1,8 @@ +rem call with ps4pdf.bat FILE without suffix +@echo off +set FILE=%1 +latex %FILE%.tex +dvips -Ppdf -o %FILE%-pics.ps %FILE%.dvi +ps2pdf -dAutoRotatePages#/None %File%-pics.ps %File%-pics.pdf +texify -b -l latex -p %File%.tex +%.tex |