summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2012-08-07 11:26:43 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2012-08-07 11:26:43 +0000
commit6eeb430ce932c7746517631c29ce240e052a2041 (patch)
tree6e48d12745a01212e90e4a6c28436edb42fec9e7 /Master/texmf-dist
parent073e0a71ecac51f34fbae68983f72a5ca46b03ed (diff)
Move most tetex/ scripts to texlive/linked_scripts/
git-svn-id: svn://tug.org/texlive/trunk@27328 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/allcm.sh118
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/allneeded.sh46
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/dvi2fax.sh41
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/dvired.sh98
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/fontinst.sh16
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/kpsetool.sh118
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/kpsewhere.sh63
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/ps2frag.sh11
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/pslatex.sh46
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/rubibtex.sh110
-rwxr-xr-xMaster/texmf-dist/scripts/tetex/rumakeindex.sh77
11 files changed, 744 insertions, 0 deletions
diff --git a/Master/texmf-dist/scripts/tetex/allcm.sh b/Master/texmf-dist/scripts/tetex/allcm.sh
new file mode 100755
index 00000000000..945c7c88457
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/allcm.sh
@@ -0,0 +1,118 @@
+#!/bin/sh
+
+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+"$@"}'='"$@"'
+
+progname=`basename $0`
+tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/$progname.$$
+
+case "$progname" in
+ allec)
+ encoding=T1;;
+ *)
+ encoding=OT1;;
+esac
+
+case "$1" in
+ -r)
+ DVIPS=dvired
+ shift
+ ;;
+ *)
+ DVIPS=dvips
+ ;;
+esac
+
+body()
+{
+ cat <<-'eof'
+ \pagestyle{empty}
+ \parindent0in
+ \hfuzz=\maxdimen
+ \hbadness=10000
+ \textheight9.5in
+ \textwidth6.5in
+ \newcommand{\myformula}{\sum a_{b_{c_d}} = c}
+ \newcommand{\mytext}{text $\mathcal{\myformula}\mathrm{\myformula}
+ \mathbf{\myformula}\mathsf{\myformula}\mathtt{\myformula}
+ \mathnormal{\myformula}\mathit{\myformula}$}
+
+ \newcommand{\TestSizes}{{%
+ \tiny \mytext\scriptsize \mytext\footnotesize \mytext\small \mytext
+ \normalsize \mytext
+ \large \mytext\Large \mytext\LARGE \mytext\huge \mytext\Huge \mytext}}
+ \newcommand{\TestRM}{rm-family: {\rmfamily\TestSizes}\newline}
+ \newcommand{\TestSF}{sf-family: {\sffamily\TestSizes}\newline}
+ \newcommand{\TestTT}{tt-family: {\ttfamily\TestSizes}\newline}
+ \newcommand{\TestFamilies}{\TestRM\TestSF\TestTT\newline}
+ \newcommand{\TestMD}{md-series: {\mdseries\TestFamilies}}
+ \newcommand{\TestBF}{bf-series: {\bfseries\TestFamilies}}
+ \newcommand{\TestSeries}{\TestBF\TestMD\par}
+ \newcommand{\TestUP}{up-shape: {\upshape\TestSeries}\par}
+ \newcommand{\TestIT}{it-shape: {\itshape\TestSeries}\par}
+ \newcommand{\TestSL}{sl-shape: {\slshape\TestSeries}\par}
+ \newcommand{\TestSC}{sc-shape: {\scshape\TestSeries}\par}
+ \newcommand{\TestShapes}{\TestUP\TestIT\TestSL\TestSC}
+ \begin{document}
+ \TestShapes
+ \end{document}
+eof
+}
+
+head()
+{
+ echo '\documentclass['$1'pt]{article}'
+ echo '\usepackage['$encoding']{fontenc}'
+}
+
+# before we create the tmpdir, set trap for cleanup
+trap '
+ rm -rf $tmpdir
+ exit 1
+' 1 2 3 7 13 15
+
+(umask 077; mkdir "$tmpdir") || {
+ echo "$progname: failed to create temp directory." >&2
+ exit 1
+}
+
+cd $tmpdir || exit 1
+echo >&2
+echo "---------------------------------------------------------------------" >&2
+echo ">>>>>>>>>>> Generating testfiles for 10pt, 11pt and 12pt. <<<<<<<<<<" >&2
+echo "---------------------------------------------------------------------" >&2
+head 10 > allcm10.tex
+head 11 > allcm11.tex
+head 12 > allcm12.tex
+body >> allcm10.tex
+body >> allcm11.tex
+body >> allcm12.tex
+
+echo >&2
+echo "---------------------------------------------------------------------" >&2
+echo ">>>>>>>>>>> Calling latex... <<<<<<<<<<" >&2
+echo "---------------------------------------------------------------------" >&2
+latex allcm10 >/dev/null
+latex allcm11 >/dev/null
+latex allcm12 >/dev/null
+
+echo >&2
+echo "---------------------------------------------------------------------" >&2
+echo ">>>>>>>>>>> Now, calling $DVIPS to make missing fonts... <<<<<<<<<<" >&2
+echo "---------------------------------------------------------------------" >&2
+$DVIPS ${1+"$@"} -V -f allcm10 > /dev/null
+$DVIPS ${1+"$@"} -V -f allcm11 > /dev/null
+$DVIPS ${1+"$@"} -V -f allcm12 > /dev/null
+
+cd /
+rm -rf $tmpdir
diff --git a/Master/texmf-dist/scripts/tetex/allneeded.sh b/Master/texmf-dist/scripts/tetex/allneeded.sh
new file mode 100755
index 00000000000..15c62c84adb
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/allneeded.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+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
+
+progname=`basename $0`
+dvired=false
+
+case $1 in
+-r) DVIPS="dvips -x707"
+ shift;;
+*) DVIPS=dvips;;
+esac
+
+case $# in
+0) echo "Usage: $progname [-r] files ..." >&2
+ exit ;;
+esac
+
+findopt=
+dvipsopt=
+
+for i
+do
+ if [ -f $i ] || [ -d $i ]; then
+ findopt="$findopt $i"
+ else
+ dvipsopt="$dvipsopt $i"
+ fi
+done
+
+find $findopt -name \*.dvi -type f -print |
+ while true; do
+ read i
+ test -z "$i" && exit
+ echo "processing file '$i' ..."
+ $DVIPS $dvipsopt -f "$i" >/dev/null
+ echo
+ done
diff --git a/Master/texmf-dist/scripts/tetex/dvi2fax.sh b/Master/texmf-dist/scripts/tetex/dvi2fax.sh
new file mode 100755
index 00000000000..fdfa83211eb
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/dvi2fax.sh
@@ -0,0 +1,41 @@
+#!/bin/sh
+# options for dvips are passwd down
+
+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+"$@"}'='"$@"'
+
+progname=`basename "$0"`
+help()
+{
+ echo "Usage: $progname [-hi|-lo] file[.dvi] [options for dvips]"
+ echo " -hi: use high fax resolution (204x196) (default)"
+ echo " -lo: use low fax resolution (204x98)"
+ echo
+ echo "Example: $progname foo -l 2"
+}
+
+dvipsconf=dfaxhigh; gsdev=dfaxhigh
+case $1 in
+ -hi) gsdev=dfaxhigh; shift;;
+ -lo) gsdev=dfaxlow; shift;;
+esac
+
+case $# in
+ 0) help >&2
+ exit 1
+ ;;
+esac
+
+NAME=`basename "$1" .dvi`
+dvips "$@" -P$dvipsconf -f |
+ gs -q -dSAFER -sDEVICE=$gsdev -sOutputFile="$NAME-%03d.fax" -sNOPAUSE -
diff --git a/Master/texmf-dist/scripts/tetex/dvired.sh b/Master/texmf-dist/scripts/tetex/dvired.sh
new file mode 100755
index 00000000000..4eb3586119d
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/dvired.sh
@@ -0,0 +1,98 @@
+#!/bin/sh
+#==============================================================================
+# Version: 0.3
+# Module: dvired
+# Purpose: Translate dvi-file into postscript with reduced output size.
+# Two logical pages will be put on onto each physical sheet of
+# paper.
+# System: Linux. UNIX(tm) systems may work as well :-)
+# Requires: pstops (http://www.dcs.ed.ac.uk/home/ajcd/psutils/), dvips
+# Created: 19.11.1992
+# Last Change: 13.08.1999
+# Language: sh
+# Author: Thomas Esser
+# Address: te@dbs.uni-hannover.de
+# Copyright: (c) 1994, 1999 by Thomas Esser
+# Copying: GNU GENERAL PUBLIC LICENSE
+#==============================================================================
+
+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
+
+help()
+{
+ cat <<eof
+
+Usage: dvired [options] file
+
+This programm behaves like dvips, execpt fot the fact that two logical
+pages will be put on onto each physical sheet of paper.
+
+For options see dvips(1). This program only interprets the options
+-o, -P and -f. All other options will directly be passed to dvips.
+
+If your paper is not in A4 format, you need to adjust the dimensions
+in this program.
+
+Examples: (it is assumed that the PRINTER-variable is set)
+ dvired -Plw foo send output to printer lw
+ dvired -o foo.ps foo send output to file foo.ps
+ dvired -pp4-7 foo send 4 output-pages to printer
+ dvired foo -f | ghostview - preview output with ghostview
+eof
+}
+
+case $# in
+0) help ; exit 1 ; ;;
+esac
+
+# This will work for A4 paper.
+paper=a4 ; pstopsopt='2:0(7.44mm,7.44mm)+1(7.44mm,-141.06mm)'
+
+# The following are *UNTESTED*. Please let me know whether they work
+# or not, if you can test them.
+#paper=a3 ; pstopsopt='2:0(7.44mm,7.44mm)+1(7.44mm,-202.56mm)'
+#paper=letter ; pstopsopt='2:0(7.44mm,7.44mm)+1(7.44mm,-132.26mm)'
+#paper=legal ; pstopsopt='2:0(7.44mm,7.44mm)+1(7.44mm,-170.36mm)'
+#paper=ledger ; pstopsopt='2:0(7.44mm,7.44mm)+1(7.44mm,-132.26mm)'
+#paper=tabloid ; pstopsopt='2:0(7.44mm,7.44mm)+1(7.44mm,-208.46mm)'
+
+of=""
+lpr_opt=""
+
+case "$PRINTER" in
+"") dvips_pre="" ;;
+*) dvips_pre="-P$PRINTER" ;;
+esac
+
+dvips_pre="$dvips_pre -t $paper -t landscape"
+
+while [ ! -z "$1" ] ; do
+ case $1 in
+ -P) of="" ; dvips_pre="$dvips_pre -P$2" ; lpr_opt="-P$2"
+ shift ;;
+ -P*) of="" ; dvips_pre="$dvips_pre $1" ; lpr_opt="$1" ;;
+ -o) of="$2"
+ shift ;;
+ -o*) of="`echo $1| sed 's/..//'`" ;;
+ -f) of="-" ;;
+ *) opt="$opt $1"
+ esac
+ shift
+done
+
+case "$of" in
+"") dvips -x707 $dvips_pre $opt -f | pstops -q $pstopsopt | lpr $lpr_opt
+ ;;
+"-") dvips -x707 $dvips_pre $opt -f | pstops -q $pstopsopt
+ ;;
+*) dvips -x707 $dvips_pre $opt -f | pstops -q $pstopsopt > "$of"
+ ;;
+esac
diff --git a/Master/texmf-dist/scripts/tetex/fontinst.sh b/Master/texmf-dist/scripts/tetex/fontinst.sh
new file mode 100755
index 00000000000..7d1271517ad
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/fontinst.sh
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+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+"$@"}'='"$@"'
+
+tex -progname=fontinst \&tex ${1+"$@"}
diff --git a/Master/texmf-dist/scripts/tetex/kpsetool.sh b/Master/texmf-dist/scripts/tetex/kpsetool.sh
new file mode 100755
index 00000000000..463097fd4a9
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/kpsetool.sh
@@ -0,0 +1,118 @@
+#!/bin/sh
+
+# kpsetool. Script to make teTeX-style kpsetool, kpsexpand and kpsepath
+# available. Web2C's kpsewhich offers a superset of the functionality.
+# For compatibilty with old versions of teTeX, this script provides the
+# old command line interface of kpsetool, kpsexpand and kpsepath. All the
+# real work is done inside Web2C's kpsewhich.
+# Thomas Esser <te@dbs.uni-hannover.de>, Mar 1997, public domain.
+
+export PATH
+
+usage="
+Usage: kpsexpand [options] string
+Usage: kpsetool -w [options] pathtype filename
+Usage: kpsepath [options] pathtype
+
+Valid options are the following:
+ -n progname : pretend to be progname to kpathsea
+ -m mode : set Metafont mode
+ -w : locate files (similar to kpsewhich)
+ -p : act like kpsepath
+ -v : act like kpsexpand
+
+Valid pathtypes are:
+ gf : generic font bitmap
+ pk : packed bitmap font
+ base : Metafont memory dump
+ bib : BibTeX bibliography source
+ bst : BibTeX style files
+ cnf : Kpathsea runtime configuration files
+ fmt : TeX memory dump
+ mem : MetaPost memory dump
+ mf : Metafont source
+ mfpool : Metafont program strings
+ mp : MetaPost source
+ mppool : MetaPost program strings
+ mpsupport : MetaPost support files
+ pict : Other kinds of figures
+ tex : TeX source
+ texpool : TeX program strings
+ tfm : TeX font metrics
+ vf : virtual font
+ dvips_config : dvips config files
+ dvips_header : dvips header files
+ troff_font : troff fonts
+"
+
+action=kpsexpand
+case $0 in
+ */kpsewhich) action=kpsewhich;;
+ */kpsepath) action=kpsepath;;
+esac
+
+progname=`echo $0 | sed 's@.*/@@'`
+flags=''
+
+while true; do
+ case x"$1" in
+ x-n)
+ if test $# = 1; then
+ echo "$progname: missing argument for -n."
+ echo "$usage"; exit 1
+ else
+ flags="$flags -progname=$2"; shift; shift
+ fi;;
+ x-m)
+ if test $# = 1; then
+ echo "$progname: missing argument for -m."
+ echo "$usage"; exit 1
+ else
+ flags="$flags -mode=$2"; shift; shift
+ fi;;
+ x-w) action=kpsewhich; shift;;
+ x-p) action=kpsepath; shift;;
+ x-v) action=kpsexpand; shift;;
+ *) break;;
+ esac
+done
+
+case "$action" in
+ kpsewhich|kpsepath)
+ case "$1" in
+ gf) format='gf';;
+ pk) format='pk';;
+ base) format='.base';;
+ bib) format='.bib';;
+ bst) format='.bst';;
+ cnf) format='.cnf';;
+ fmt) format='.fmt';;
+ mem) format='.mem';;
+ mf) format='.mf';;
+ mfpool) format='.pool';;
+ mp) format='.mp';;
+ mppool) format='.pool';;
+ mpsupport) format='MetaPost support';;
+ pict) format='.eps';;
+ tex) format='.tex';;
+ texpool) format='.pool';;
+ tfm) format='.tfm';;
+ vf) format='.vf';;
+ dvips_config) format='dvips config';;
+ dvips_header) format='.pro';;
+ troff_font) format='Troff fonts';;
+ *) echo "$progname: $1: unknown format"; echo "$usage"; exit 1;;
+ esac
+ shift;;
+esac
+
+case "$action" in
+ kpsewhich)
+ test $# = 1 || { echo "$progname: missing filename"; echo "$usage"; exit 1; }
+ kpsewhich $flags -format="$format" "$1";;
+ kpsepath)
+ kpsewhich $flags -show-path="$format";;
+ kpsexpand)
+ test $# = 1 || { echo "$progname: missing string"; echo "$usage"; exit 1; }
+ kpsewhich $flags -expand-var="$1";;
+esac
diff --git a/Master/texmf-dist/scripts/tetex/kpsewhere.sh b/Master/texmf-dist/scripts/tetex/kpsewhere.sh
new file mode 100755
index 00000000000..51088ee80d6
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/kpsewhere.sh
@@ -0,0 +1,63 @@
+#!/bin/sh
+#
+# Thomas Esser, Hans Fredrik Nordhaug, 2003, 2004.
+# Public domain.
+#
+# kpsewhere is an extension to kpsewhich (as where is for which in tcsh).
+# The intention is to provide a way to check for conflicts/shadowed
+# files.
+#
+# Original version by Hans Fredrik Nordhaug <hans.fredrik@nordhaug.no>
+#
+# Bugs / limitations:
+# conflicts/shadowed files whithin each texmf tree are not found.
+#
+
+
+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
+
+export PATH
+
+help='Usage: kpsewhere [OPTION]... [FILENAME]...
+ Expanding kpsewhich to iterate over each texmf tree listed in $TEXMF
+ separately.
+
+ See kpsewhich for help on options.
+
+ --help show this help'
+
+options=
+while
+ case $1 in
+ -h|-help|--help)
+ echo "$help" >&2
+ exit 0;;
+ -*) options="${options} '${1}'";;
+ *) break;;
+ esac
+do shift; done
+
+case $# in
+ 0)
+ echo "$help" >&2
+ exit 1
+ ;;
+esac
+
+IFS=':'
+for file
+do
+ for path in `kpsewhich --expand-path='$TEXMF'`
+ do
+ eval TEXMF=\$path kpsewhich $options \"\$file\"
+ done
+done
+exit 0
diff --git a/Master/texmf-dist/scripts/tetex/ps2frag.sh b/Master/texmf-dist/scripts/tetex/ps2frag.sh
new file mode 100755
index 00000000000..b8e673be087
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/ps2frag.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+tty -s && {
+ echo
+ echo "Warning: the ps2frag script is not needed with this version of psfrag."
+ echo "Please read the manpage ps2frag(1) and the documentation of the"
+ echo "psfrag package."
+ echo
+} >&2
+
+exit 0
diff --git a/Master/texmf-dist/scripts/tetex/pslatex.sh b/Master/texmf-dist/scripts/tetex/pslatex.sh
new file mode 100755
index 00000000000..4badef0ec12
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/pslatex.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+# Copyright 1994 David Carlisle
+# This file may be redistributed and/or modified under the terms of the
+# LaTeX Project Public License distributed from CTAN archives in directory
+# macros/latex/base/lppl.txt; either version 1 of the License, or (at
+# your option) any later version.
+
+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+"$@"}'='"$@"'
+
+# we want to be able to use options to latex:
+while :; do
+ case $1 in
+ -*)
+ latexoptions="$latexoptions \"$1\""
+ shift;;
+ *)
+ break;;
+ esac
+done
+
+echo
+echo "*************************************"
+echo "* Using LaTeX, with pslatex package *"
+echo "*************************************"
+echo
+
+# messing around with \PSLATEXTMP is for AUCTeX which calls
+# documents via latex \nonstopmode \input{file}
+
+latex $latexoptions \
+ "\AtBeginDocument{\RequirePackage{pslatex}}"\
+ "\def\PSLATEXTMP{\futurelet\PSLATEXTMP\PSLATEXTMPB}"\
+ "\def\PSLATEXTMPB{\ifx\PSLATEXTMP\nonstopmode\else\input\fi}"\
+ "\PSLATEXTMP" ${1+"$@"}
diff --git a/Master/texmf-dist/scripts/tetex/rubibtex.sh b/Master/texmf-dist/scripts/tetex/rubibtex.sh
new file mode 100755
index 00000000000..373e6e1194d
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/rubibtex.sh
@@ -0,0 +1,110 @@
+#!/bin/sh
+
+# rubibtex, based on the original version contained in the t2 bundle.
+# Thomas Esser, Public Domain.
+
+progname=rubibtex
+tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/$progname.$$
+job=$1
+backup="$tmpdir/orig.aux"
+
+case $job in
+ "")
+ echo "usage: $progname file" >&2
+ exit 1
+esac
+
+if test ! -f "$job.aux"; then
+ echo "$progname: file \`$job.aux' does not exist." >&2
+ exit 1
+fi
+
+trap '
+ rm -rf "$tmpdir"
+ exit 1
+' 1 2 3 7 13 15
+(umask 077; mkdir "$tmpdir") \
+ || { echo "$progname: could not create directory \`$tmpdir'" >&2; exit 1; }
+
+cat <"$job.aux" >"$backup" || {
+ echo "$progname: could not create backup of file \`$job.aux' as \`$backup'." >&2
+ rm -rf "$tmpdir"
+ exit 1
+}
+
+sed '
+ /^\\citation/ {
+ s/\\IeC {\\CYRA }/á/g
+ s/\\IeC {\\CYRB }/â/g
+ s/\\IeC {\\CYRV }/÷/g
+ s/\\IeC {\\CYRG }/ç/g
+ s/\\IeC {\\CYRD }/ä/g
+ s/\\IeC {\\CYRE }/å/g
+ s/\\IeC {\\CYRYO }/³/g
+ s/\\IeC {\\CYRZH }/ö/g
+ s/\\IeC {\\CYRZ }/ú/g
+ s/\\IeC {\\CYRI }/é/g
+ s/\\IeC {\\CYRISHRT }/ê/g
+ s/\\IeC {\\CYRK }/ë/g
+ s/\\IeC {\\CYRL }/ì/g
+ s/\\IeC {\\CYRM }/í/g
+ s/\\IeC {\\CYRN }/î/g
+ s/\\IeC {\\CYRO }/ï/g
+ s/\\IeC {\\CYRP }/ð/g
+ s/\\IeC {\\CYRR }/ò/g
+ s/\\IeC {\\CYRS }/ó/g
+ s/\\IeC {\\CYRT }/ô/g
+ s/\\IeC {\\CYRU }/õ/g
+ s/\\IeC {\\CYRF }/æ/g
+ s/\\IeC {\\CYRH }/è/g
+ s/\\IeC {\\CYRC }/ã/g
+ s/\\IeC {\\CYRCH }/þ/g
+ s/\\IeC {\\CYRSH }/û/g
+ s/\\IeC {\\CYRSHCH }/ý/g
+ s/\\IeC {\\CYRHRDSN }/ÿ/g
+ s/\\IeC {\\CYRERY }/ù/g
+ s/\\IeC {\\CYRSFTSN }/ø/g
+ s/\\IeC {\\CYREREV }/ü/g
+ s/\\IeC {\\CYRYU }/à/g
+ s/\\IeC {\\CYRYA }/ñ/g
+ s/\\IeC {\\cyra }/Á/g
+ s/\\IeC {\\cyrb }/Â/g
+ s/\\IeC {\\cyrv }/×/g
+ s/\\IeC {\\cyrg }/Ç/g
+ s/\\IeC {\\cyrd }/Ä/g
+ s/\\IeC {\\cyre }/Å/g
+ s/\\IeC {\\cyryo }/£/g
+ s/\\IeC {\\cyrzh }/Ö/g
+ s/\\IeC {\\cyrz }/Ú/g
+ s/\\IeC {\\cyri }/É/g
+ s/\\IeC {\\cyrishrt }/Ê/g
+ s/\\IeC {\\cyrk }/Ë/g
+ s/\\IeC {\\cyrl }/Ì/g
+ s/\\IeC {\\cyrm }/Í/g
+ s/\\IeC {\\cyrn }/Î/g
+ s/\\IeC {\\cyro }/Ï/g
+ s/\\IeC {\\cyrp }/Ð/g
+ s/\\IeC {\\cyrr }/Ò/g
+ s/\\IeC {\\cyrs }/Ó/g
+ s/\\IeC {\\cyrt }/Ô/g
+ s/\\IeC {\\cyru }/Õ/g
+ s/\\IeC {\\cyrf }/Æ/g
+ s/\\IeC {\\cyrh }/È/g
+ s/\\IeC {\\cyrc }/Ã/g
+ s/\\IeC {\\cyrch }/Þ/g
+ s/\\IeC {\\cyrsh }/Û/g
+ s/\\IeC {\\cyrshch }/Ý/g
+ s/\\IeC {\\cyrhrdsn }/ß/g
+ s/\\IeC {\\cyrery }/Ù/g
+ s/\\IeC {\\cyrsftsn }/Ø/g
+ s/\\IeC {\\cyrerev }/Ü/g
+ s/\\IeC {\\cyryu }/À/g
+ s/\\IeC {\\cyrya }/Ñ/g
+ }
+' <"$backup" >"$job.aux"
+
+bibtex "$job"
+
+cat "$backup" > "$job.aux"
+rm -rf "$tmpdir"
+exit 0
diff --git a/Master/texmf-dist/scripts/tetex/rumakeindex.sh b/Master/texmf-dist/scripts/tetex/rumakeindex.sh
new file mode 100755
index 00000000000..b7b0c072729
--- /dev/null
+++ b/Master/texmf-dist/scripts/tetex/rumakeindex.sh
@@ -0,0 +1,77 @@
+#!/bin/sh
+
+BASE=`basename "$1" .idx`
+IDX=$BASE.idx
+IND=$BASE.ind
+ILG=$BASE.ilg
+
+sed '
+/^\\indexentry{/ {
+s/\\IeC {\\CYRA }/¾/g
+s/\\IeC {\\cyra }/¿/g
+s/\\IeC {\\CYRB }/À/g
+s/\\IeC {\\cyrb }/Á/g
+s/\\IeC {\\CYRV }/Â/g
+s/\\IeC {\\cyrv }/Ã/g
+s/\\IeC {\\CYRG }/Ä/g
+s/\\IeC {\\cyrg }/Å/g
+s/\\IeC {\\CYRD }/Æ/g
+s/\\IeC {\\cyrd }/Ç/g
+s/\\IeC {\\CYRE }/È/g
+s/\\IeC {\\cyre }/É/g
+s/\\IeC {\\CYRYO }/Ê/g
+s/\\IeC {\\cyryo }/Ë/g
+s/\\IeC {\\CYRZH }/Ì/g
+s/\\IeC {\\cyrzh }/Í/g
+s/\\IeC {\\CYRZ }/Î/g
+s/\\IeC {\\cyrz }/Ï/g
+s/\\IeC {\\CYRI }/Ð/g
+s/\\IeC {\\cyri }/Ñ/g
+s/\\IeC {\\CYRISHRT }/Ò/g
+s/\\IeC {\\cyrishrt }/Ó/g
+s/\\IeC {\\CYRK }/Ô/g
+s/\\IeC {\\cyrk }/Õ/g
+s/\\IeC {\\CYRL }/Ö/g
+s/\\IeC {\\cyrl }/×/g
+s/\\IeC {\\CYRM }/Ø/g
+s/\\IeC {\\cyrm }/Ù/g
+s/\\IeC {\\CYRN }/Ú/g
+s/\\IeC {\\cyrn }/Û/g
+s/\\IeC {\\CYRO }/Ü/g
+s/\\IeC {\\cyro }/Ý/g
+s/\\IeC {\\CYRP }/Þ/g
+s/\\IeC {\\cyrp }/ß/g
+s/\\IeC {\\CYRR }/à/g
+s/\\IeC {\\cyrr }/á/g
+s/\\IeC {\\CYRS }/â/g
+s/\\IeC {\\cyrs }/ã/g
+s/\\IeC {\\CYRT }/ä/g
+s/\\IeC {\\cyrt }/å/g
+s/\\IeC {\\CYRU }/æ/g
+s/\\IeC {\\cyru }/ç/g
+s/\\IeC {\\CYRF }/è/g
+s/\\IeC {\\cyrf }/é/g
+s/\\IeC {\\CYRH }/ê/g
+s/\\IeC {\\cyrh }/ë/g
+s/\\IeC {\\CYRC }/ì/g
+s/\\IeC {\\cyrc }/í/g
+s/\\IeC {\\CYRCH }/î/g
+s/\\IeC {\\cyrch }/ï/g
+s/\\IeC {\\CYRSH }/ð/g
+s/\\IeC {\\cyrsh }/ñ/g
+s/\\IeC {\\CYRSHCH }/ò/g
+s/\\IeC {\\cyrshch }/ó/g
+s/\\IeC {\\CYRHRDSN }/ô/g
+s/\\IeC {\\cyrhrdsn }/õ/g
+s/\\IeC {\\CYRERY }/ö/g
+s/\\IeC {\\cyrery }/÷/g
+s/\\IeC {\\CYRSFTSN }/ø/g
+s/\\IeC {\\cyrsftsn }/ù/g
+s/\\IeC {\\CYREREV }/ú/g
+s/\\IeC {\\cyrerev }/û/g
+s/\\IeC {\\CYRYU }/ü/g
+s/\\IeC {\\cyryu }/ý/g
+s/\\IeC {\\CYRYA }/þ/g
+s/\\IeC {\\cyrya }/ÿ/g
+}' $IDX | makeindex -t $ILG | tr '¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ' \
+ 'áÁâÂ÷×çÇäÄåų£öÖúÚéÉêÊëËìÌíÍîÎïÏðÐòÒóÓôÔõÕæÆèÈãÃþÞûÛýÝÿßùÙøØüÜàÀñÑ' > $IND