summaryrefslogtreecommitdiff
path: root/Master/bin/hppa-hpux/texconfig
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2008-03-17 18:52:26 +0000
committerKarl Berry <karl@freefriends.org>2008-03-17 18:52:26 +0000
commitcfaf3ba644b1df171aab1cf6bc2a39a1e2ad6914 (patch)
treeda9c4daa34ac0465c21115b7e2123155fb5835ae /Master/bin/hppa-hpux/texconfig
parent9c77e69689b13554caeebaf623e234527ca996d0 (diff)
prepare for restore
git-svn-id: svn://tug.org/texlive/trunk@6988 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/bin/hppa-hpux/texconfig')
-rwxr-xr-xMaster/bin/hppa-hpux/texconfig1419
1 files changed, 0 insertions, 1419 deletions
diff --git a/Master/bin/hppa-hpux/texconfig b/Master/bin/hppa-hpux/texconfig
deleted file mode 100755
index 922dc7939e2..00000000000
--- a/Master/bin/hppa-hpux/texconfig
+++ /dev/null
@@ -1,1419 +0,0 @@
-#!/bin/sh
-
-# TeX-Config version 3.0
-# Thomas Esser, te@dbs.uni-hannover.de. Public domain.
-
-# invoke the right shell:
-
-test -f /bin/ksh && test -z "$RUNNING_KSH" \
- && { UNAMES=`uname -s`; test "x$UNAMES" = xULTRIX; } 2>/dev/null \
- && { RUNNING_KSH=true; export RUNNING_KSH; exec /bin/ksh $0 ${1+"$@"}; }
-unset RUNNING_KSH
-
-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
-
-# hack around a bug in zsh:
-test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"'
-
-# initializations...
-progname=texconfig
-
-# the version string
-version=1168907609 # seconds since `00:00:00 1970-01-01 UTC'
- # date '+%s' (with GNU date)
-
-envVars="
- AFMFONTS BIBINPUTS BSTINPUTS CMAPFONTS CWEBINPUTS ENCFONTS GFFONTS
- GLYPHFONTS INDEXSTYLE LIGFONTS MFBASES MFINPUTS MFPOOL MFTINPUTS
- MISCFONTS MPINPUTS MPMEMS MPPOOL MPSUPPORT OCPINPUTS OFMFONTS
- OPENTYPEFONTS OPLFONTS OTPINPUTS OVFFONTS OVPFONTS PDFTEXCONFIG PKFONTS
- PSHEADERS SFDFONTS T1FONTS T1INPUTS T42FONTS TEXBIB TEXCONFIG TEXDOCS
- TEXFONTMAPS TEXFONTS TEXFORMATS TEXINDEXSTYLE TEXINPUTS TEXMFCNF
- TEXMFDBS TEXMFINI TEXMFSCRIPTS TEXPICTS TEXPKS TEXPOOL TEXPSHEADERS
- TEXSOURCES TFMFONTS TRFONTS TTFONTS VFFONTS WEB2C WEBINPUTS
-"
-tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/tctmp.$$
-needsCleanup=false
-lastUpdatedFile=
-
-###############################################################################
-# setupFMT(void)
-# find a suitable version of fmt / adjust
-###############################################################################
-setupFMT()
-{
- case $FMT in
- "")
- FMT=fmt
- test ! -x /bin/fmt && test ! -f /usr/bin/fmt &&
- { test -x /bin/adjust || test -x /usr/bin/adjust; } && FMT=adjust
- ;;
- *)
- return
- ;;
- esac
-}
-
-###############################################################################
-# myFmt(args)
-# run $FMT
-###############################################################################
-myFmt()
-{
- setupFMT
- $FMT ${1+"$@"}
-}
-
-###############################################################################
-# echoShowVariable(args ...)
-# show environment variables which names are as args and their values
-###############################################################################
-echoShowVariable()
-{
- for esv
- do
- var=$esv
- eval val=\"\${$var+=}\${$var- is unset}\"
- echo "$var$val"
- done | grep -v 'is unset$'
-}
-
-###############################################################################
-# echoShowKpseVariable(args ...)
-# show kpathsea variables which names are as args and their values
-###############################################################################
-echoShowKpseVariable()
-{
- for eskv
- do
- var=$eskv
- val=`kpsewhich -var-value="$eskv"`
- echo "$var=$val"
- done
-}
-
-###############################################################################
-# echoLocateBinary(args ...)
-# show where programs actually exist
-###############################################################################
-echoLocateBinary()
-{
- for elb
- do
- elbLoc=`checkForBinary "$elb"`
- case $elbLoc in
- "") echo "$elb: not found";;
- *) echo "$elb: $elbLoc";;
- esac
- done
-}
-
-###############################################################################
-# echoLocateCfgfile(args ...)
-# show where programs actually exist
-###############################################################################
-echoLocateCfgfile()
-{
- for elc
- do
- case $elc in
- texmf.cnf) elcLoc=`kpsewhich $elc`;;
- *) elcLoc=`tcfmgr --cmd find --file "$elc"`;;
- esac
- case $elcLoc in
- "") echo "$elc: not found";;
- *) echo "$elcLoc";;
- esac
- done
-}
-
-###############################################################################
-# checkForBinary(prog)
-# echo full path of prog
-###############################################################################
-checkForBinary()
-{
- cfbBinary=$1
-
- OLDIFS=$IFS
- IFS=:
- set x `echo "$PATH" | sed 's/^:/.:/; s/:$/:./; s/::/:.:/g'`; shift
- found=false
- for pathElem
- do
- case $pathElem in
- "") continue;;
- *) test -f "$pathElem/$cfbBinary" && { echo "$pathElem/$cfbBinary"; found=true; break; }
- esac
- done
- IFS=$OLDIFS
- case $found in
- true) (exit 0); return 0;;
- false) (exit 1); return 1;;
- esac
-}
-
-###############################################################################
-# findDialogProg(void)
-# Some systems have their own dialog. Use it then and do not use
-# faked TERM and TERMINFO variables when calling that dialog.
-###############################################################################
-findDialogProg()
-{
- { u=`uname -s`; } 2>/dev/null
- case "$u" in
- FreeBSD|Linux|cygwin*|CYGWIN*)
- test -f /usr/bin/whiptail && DIALOG_PROG=/usr/bin/whiptail
- test -f /usr/bin/dialog && DIALOG_PROG=/usr/bin/dialog
- test -f /bin/dialog && DIALOG_PROG=/bin/dialog
- ;;
- esac
-}
-
-###############################################################################
-# runDialog(args)
-# call either tcdialog or $DIALOG_PROG
-###############################################################################
-runDialog()
-{
- test -z "$NO_CLEAR" && tty -s && clear
- case "$DIALOG_PROG" in
- "")
- TERM=$DIALOG_TERM TERMINFO=$DIALOG_TERMINFO \
- tcdialog --title "$progname setup utility" ${1+"$@"};;
- *)
- $DIALOG_PROG --title "$progname setup utility" ${1+"$@"};;
- esac
-}
-
-
-###############################################################################
-# cleanup()
-# clean up the temp area and exit with proper exit status
-###############################################################################
-cleanup()
-{
- rc=$1
- $needsCleanup && test -n "$tmpdir" && test -d "$tmpdir" \
- && { cd / && rm -rf "$tmpdir"; }
- (exit $rc); exit $rc
-}
-
-###############################################################################
-# setupTmpDir()
-# set up a temp directory and a trap to remove it
-###############################################################################
-setupTmpDir()
-{
- case $needsCleanup in
- true) return;;
- esac
-
- trap 'cleanup 1' 1 2 3 7 13 15
- needsCleanup=true
- (umask 077; mkdir "$tmpdir") \
- || abort "could not create directory \`$tmpdir'"
-}
-
-###############################################################################
-# setupTexmfmain()
-# get value for MT_TEXMFMAIN (with caching)
-###############################################################################
-setupTexmfmain()
-{
- case $MT_TEXMFMAIN in
- "") MT_TEXMFMAIN=`kpsewhich -var-value=TEXMFMAIN`;;
- *) return;;
- esac
-}
-
-###############################################################################
-# setupTexmfmain()
-# get value for MT_TEXMFMAIN (with caching)
-###############################################################################
-setupTexmfdist()
-{
- case $MT_TEXMFDIST in
- "") MT_TEXMFDIST=`kpsewhich -var-value=TEXMFDIST`;;
- *) return;;
- esac
-}
-
-###############################################################################
-# setupTexmfvar()
-# get value for MT_TEXMFVAR (with caching)
-###############################################################################
-setupTexmfvar()
-{
- case $MT_TEXMVAR in
- "") MT_TEXMVAR=`kpsewhich -var-value=TEXMFVAR`;;
- *) return;;
- esac
-}
-
-###############################################################################
-# setupSystexmf()
-# get value for MT_SYSTEXMF (with caching)
-###############################################################################
-setupSystexmf()
-{
- case $MT_SYSTEXMF in
- "") MT_SYSTEXMF=`kpsewhich -var-value=SYSTEXMF`;;
- *) return;;
- esac
-}
-
-###############################################################################
-# abort(errmsg)
-# print `errmsg' to stderr and exit with error code 1
-###############################################################################
-abort()
-{
- echo "$progname: $1." >&2
- cleanup 1
-}
-
-###############################################################################
-# mktexdir(args)
-# call mktexdir script, disable all features (to prevent sticky directories)
-###############################################################################
-mktexdir()
-{
- setupTexmfmain
- MT_FEATURES=none "$MT_TEXMFMAIN/web2c/mktexdir" "$@" >&2
-}
-
-###############################################################################
-# tcfmgr(args)
-# call tcfmgr script
-###############################################################################
-tcfmgr()
-{
- setupTexmfmain
- "$MT_TEXMFMAIN/texconfig/tcfmgr" "$@"
-}
-
-###############################################################################
-# mktexupd(args)
-# call mktexupd script
-###############################################################################
-mktexupd()
-{
- setupTexmfmain
- "$MT_TEXMFMAIN/web2c/mktexupd" "$@"
-}
-
-###############################################################################
-# getRelDir(file)
-# matches file against SYSTEXMF. Returns relative directory of file within
-# a texmf tree in variable relPart.
-###############################################################################
-getRelDir()
-{
- file=$1
- relPart=
-
- setupSystexmf
- OLDIFS=$IFS
- IFS='
-'
- set x `echo "$MT_SYSTEXMF" | tr : '
-'`; shift
- IFS=$OLDIFS
-
- # now loop over all components of SYSTEXMF
- for dir
- do
- test -n "$dir" || continue
- case "$file" in
- $dir/*)
- relPart=`echo "$file" | sed "s%$dir/*%%"`
- break
- ;;
- esac
- done
-
- # now check for success / failure
- case $relPart in
- ""|$file)
- # empty or full filename -> getRelDir failed!
- (exit 1); return 1
- ;;
- *)
- # relPart should just have the "dirname" part:
- relPart=`echo "$relPart" | sed 's%/*[^/]*$%%'`
- (exit 0); return 0
- ;;
- esac
-}
-
-###############################################################################
-# configReplace(file, pattern, line)
-# The first line in file that matches pattern gets replaced by line.
-# line will be added at the end of the file if pattern does not match.
-###############################################################################
-configReplace()
-{
- configReplaceFile=$1; configReplacePat=$2; configReplaceLine=$3
-
- if grep "$configReplacePat" "$configReplaceFile" >/dev/null; then
- ed "$configReplaceFile" >/dev/null 2>&1 <<-eof
- /$configReplacePat/c
- $configReplaceLine
- .
- w
- q
-eof
- else
- echo "$configReplaceLine" >> $configReplaceFile
- fi
-}
-
-###############################################################################
-# fmgrConfigReplace (file regex value)
-# replaces line matching regex by value in file
-###############################################################################
-fmgrConfigReplace()
-{
- fmgrConfigReplaceChanged=false
-
- moreArgs=""
- while
- case $1 in
- --*) moreArgs="$moreArgs $1 $2";;
- *) break;;
- esac
- do shift; shift; done
- fmgrConfigReplaceFile=$1
- fmgrConfigReplaceRegex=$2
- fmgrConfigReplaceValue=$3
-
- setupTmpDir
- co=`tcfmgr $moreArgs --tmp $tmpdir --cmd co --file $fmgrConfigReplaceFile`
- if test $? != 0; then
- echo "$progname: fmgrConfigReplace co failed for \`$fmgrConfigReplaceFile'" >&2
- (exit 1); return 1
- fi
- set x $co; shift
- fmgrConfigReplaceID=$1; fmgrConfigReplaceCfgFile=$3; fmgrConfigReplaceOrigFile=$4
- configReplace "$fmgrConfigReplaceCfgFile" "$fmgrConfigReplaceRegex" "$fmgrConfigReplaceValue"
- ci=`tcfmgr --tmp $tmpdir --cmd ci --id "$fmgrConfigReplaceID"`
- if test $? != 0; then
- echo "$progname: fmgrConfigReplace ci failed for \`$fmgrConfigReplaceFile'" >&2
- (exit 1); return 1
- fi
- case $ci in
- "") :;;
- $lastUpdatedFile)
- fmgrConfigReplaceChanged=true;;
- *) echo "$progname: updated configuration saved as file \`$ci'" >&2
- fmgrConfigReplaceChanged=true
- lastUpdatedFile=$ci;;
- esac
- (exit 0); return 0
-}
-
-###############################################################################
-# setupDvipsPaper(paper)
-# rearranges config.ps to make paper the first paper definition
-###############################################################################
-setupDvipsPaper()
-{
- setupDvipsPaperChanged=false
- setupDvipsPaperFile=config.ps
- setupDvipsPaperDftPaper=$1
-
- setupTmpDir
- co=`tcfmgr --tmp $tmpdir --cmd co --file $setupDvipsPaperFile`
- if test $? != 0; then
- echo "$progname: setupDvipsPaper co failed for \`$setupDvipsPaperFile'" >&2
- (exit 1); return 1
- fi
- set x $co; shift
- setupDvipsPaperID=$1; setupDvipsPaperCfgFile=$3; setupDvipsPaperOrigFile=$4
-
- ed "$setupDvipsPaperCfgFile" > /dev/null 2>&1 <<-eof
- /@ /ka
- \$a
- @
- .
- /@ $setupDvipsPaperDftPaper /;/@ /-1m'a-1
- \$d
- w
- q
-eof
-
- ci=`tcfmgr --tmp $tmpdir --cmd ci --id "$setupDvipsPaperID"`
- if test $? != 0; then
- echo "$progname: setupDvipsPaper ci failed for \`$setupDvipsPaperFile'" >&2
- (exit 1); return 1
- fi
- case $ci in
- "") :;;
- $lastUpdatedFile)
- setupDvipsPaperChanged=true;;
- *) echo "$progname: updated configuration saved as file \`$ci'" >&2
- setupDvipsPaperChanged=true
- lastUpdatedFile=$ci;;
- esac
- (exit 0); return 0
-}
-
-###############################################################################
-# setupModesMfFile(void)
-# find modes.mf file (with caching)
-###############################################################################
-setupModesMfFile()
-{
- case $modesMfFile in
- "")
- modesMfFile=`tcfmgr --cmd find --file modes.mf`
- ;;
- *)
- return
- ;;
- esac
-}
-
-###############################################################################
-# locateConfigPsFile(void)
-# find config.ps file (with caching)
-###############################################################################
-locateConfigPsFile()
-{
- case $configPsFile in
- "")
- configPsFile=`tcfmgr --cmd find --file config.ps`
- ;;
- *)
- return
- ;;
- esac
-}
-
-###############################################################################
-# listMfModes(file)
-# list modes from modes.mf file
-###############################################################################
-listMfModes()
-{
- grep mode_def "$modesMfFile" |
- sed -e "s/mode_def //" \
- -e "s/ .*%[^ ]* / '/" \
- -e "s/\$/' /" |
- egrep -v "^(help|%)" | sort
-}
-
-###############################################################################
-# listDvipsPapers(void)
-# list paper definitions from config.ps
-###############################################################################
-listDvipsPapers()
-{
- grep '@ ' $configPsFile | sed "s/..//;s/ / '/;s/\$/' /"
-}
-
-###############################################################################
-# getFormatsForHyphen(void)
-# list all formats which have customizable hyphenation
-###############################################################################
-getFormatsForHyphen()
-{
- fmtutil --catcfg | awk '$3 != "-" {print $1}' | sort
-}
-
-###############################################################################
-# getRes(mode)
-# print resolution (both X and Y axis) to metafont mode
-###############################################################################
-getRes()
-{
- getResMode=$1
- (
- cd $tmpdir
- cat >mftmp.mf <<-'eof'
- let myexit = primitive_end_;
- mode_setup;
- string xdpi;
- xdpi := decimal round pixels_per_inch;
- message "XDPI = " & xdpi;
- string ydpi;
- ydpi := decimal round (pixels_per_inch * aspect_ratio);
- message "YDPI = " & ydpi;
- fontmaking := 0;
- myexit;
-eof
- mf '\mode='"$getResMode"'; \input ./mftmp' </dev/null \
- | awk '$1 == "XDPI" || $1 == "YDPI" { print $3 }'
- )
-}
-
-###############################################################################
-# checkElemInList(elem, list)
-# check if element exists in list
-###############################################################################
-checkElemInList()
-{
- checkElemInListElem=$1; shift
- checkElemInListFound=false
- for checkElemInListIter
- do
- case "x$checkElemInListElem" in
- x$checkElemInListIter)
- checkElemInListFound=true
- break
- ;;
- esac
- done
- case $checkElemInListFound in
- true) (exit 0); return 0;;
- esac
- (exit 1); return 1
-}
-
-
-###############################################################################
-# tcBatch(args)
-# handle batch mode
-###############################################################################
-tcBatch()
-{
- help="Usage: $progname conf
- $progname dvipdfmx paper PAPER
- $progname dvipdfm paper PAPER
- $progname dvips [options]
- $progname faq
- $progname font vardir DIR
- $progname font ro
- $progname font rw
- $progname formats
- $progname hyphen FORMAT
- $progname init [formats]
- $progname mode MODE
- $progname paper PAPER
- $progname pdftex [options]
- $progname rehash
- $progname xdvi paper PAPER
-
-Get more help with
- $progname dvipdfmx paper
- $progname dvipdfm paper
- $progname dvips
- $progname font
- $progname mode
- $progname paper
- $progname pdftex
- $progname xdvi paper"
-
- case $1 in
- # texconfig conf
- conf|confall)
- setupTexmfmain
- setupTexmfdist
- echo '=========================== version information =========================='
- if test -f $MT_TEXMFMAIN/release-tetex-src.txt; then
- echo "teTeX-src release: `cat $MT_TEXMFMAIN/release-tetex-src.txt`"
- else
- echo "teTeX-src release: (info not available)"
- fi
- if test -f $MT_TEXMFDIST/release-tetex-texmf.txt; then
- echo "teTeX-texmf release: `cat $MT_TEXMFDIST/release-tetex-texmf.txt`"
- else
- echo "teTeX-texmf release: (info not available)"
- fi
- echo
- echo '==================== binaries found by searching $PATH ==================='
- echo "PATH=$PATH"
- echoLocateBinary kpsewhich updmap fmtutil texconfig tex pdftex mktexpk dvips dvipdfm
- echo
- echo '=========================== active config files =========================='
- echoLocateCfgfile texmf.cnf updmap.cfg fmtutil.cnf config.ps mktex.cnf XDvi pdftexconfig.tex config | sort -k 2
- echo
- echo '============================= font map files ============================='
- for m in psfonts.map pdftex.map ps2pk.map dvipdfm.map; do
- echo "$m: `kpsewhich $m`"
- done
- echo
- echo '=========================== kpathsea variables ==========================='
- echoShowKpseVariable TEXMFMAIN TEXMFDIST TEXMFLOCAL TEXMFSYSVAR TEXMFSYSCONFIG TEXMFVAR TEXMFCONFIG TEXMFHOME VARTEXFONTS TEXMF SYSTEXMF TEXMFDBS WEB2C TEXPSHEADERS TEXCONFIG ENCFONTS TEXFONTMAPS
-
- echo
- echo '==== kpathsea variables (from environment only; ok if no output here) ===='
- echoShowVariable $envVars
- ;;
-
- # texconfig dvipdfm
- dvipdfm)
- help="Usage: $progname dvipdfm paper PAPER
-
-Valid PAPER settings:
- letter legal ledger tabloid a4 a3"
- case $2 in
- # texconfig dvipdfm paper
- paper-list)
- for p in letter legal ledger tabloid a4 a3; do echo $p; done
- ;;
- paper)
- case $3 in
- letter|legal|ledger|tabloid|a4|a3)
- fmgrConfigReplace config '^p' "p $3";;
- "") echo "$help" >&2; rc=1;;
- *)
- echo "$progname: unknown PAPER \`$3' given as argument for \`$progname dvipdfm paper'" >&2
- echo "$progname: try \`$progname dvipdfm paper' for help" >&2
- rc=1 ;;
- esac ;;
- # texconfig dvipdfm ""
- "")
- echo "$help" >&2; rc=1 ;;
- # texconfig dvipdfm <unknown>
- *)
- echo "$progname: unknown option \`$2' given as argument for \`$progname dvipdfm'" >&2
- echo "$progname: try \`$progname dvipdfm' for help" >&2
- rc=1
- ;;
- esac
- ;;
-
- # texconfig dvipdfmx
- dvipdfmx)
- help="Usage: $progname dvipdfmx paper PAPER
-
-Valid PAPER settings:
- letter legal ledger tabloid a4 a3"
- case $2 in
- # texconfig dvipdfmx paper
- paper-list)
- for p in letter legal ledger tabloid a4 a3; do echo $p; done
- ;;
- paper)
- case $3 in
- letter|legal|ledger|tabloid|a4|a3)
- fmgrConfigReplace dvipdfmx.cfg '^p' "p $3";;
- "") echo "$help" >&2; rc=1;;
- *)
- echo "$progname: unknown PAPER \`$3' given as argument for \`$progname dvipdfmx paper'" >&2
- echo "$progname: try \`$progname dvipdfmx paper' for help" >&2
- rc=1 ;;
- esac ;;
- # texconfig dvipdfmx ""
- "")
- echo "$help" >&2; rc=1 ;;
- # texconfig dvipdfmx <unknown>
- *)
- echo "$progname: unknown option \`$2' given as argument for \`$progname dvipdfmx'" >&2
- echo "$progname: try \`$progname dvipdfmx' for help" >&2
- rc=1
- ;;
- esac
- ;;
-
- # texconfig dvips
- dvips)
- shift
- help="Usage: $progname dvips add PRINTER
- $progname dvips del PRINTER
- $progname dvips paper PAPER
- $progname dvips [-P PRINTER] mode MODE
- $progname dvips [-P PRINTER] offset OFFSET
- $progname dvips [-P PRINTER] printcmd CMD"
- case $1 in
- -P)
- case $2 in
- "")
- echo "$progname: missing arg for parameter -P" >&2
- rc=1; (exit $rc); return $rc
- ;;
- *)
- otherPrinter=true
- otherPrinterName=$2
- otherPrinterFile=`kpsewhich -format='dvips config' "config.$otherPrinterName"`
- case $otherPrinterFile in
- "")
- echo "$progname: configuration file \`config.$otherPrinterName' for printer \`$otherPrinterName' not found" >&2
- rc=1; (exit $rc); return $rc
- ;;
- *) shift; shift;;
- esac
- ;;
- esac
- ;;
- *)
- otherPrinter=false
- ;;
- esac
- case $otherPrinter in
- true)
- tcBatchDvipsPrinter=$otherPrinterName
- moreFmgrArgs="--reldir dvips/config --infile $otherPrinterFile"
- ;;
- *)
- tcBatchDvipsPrinter=ps
- ;;
- esac
- case $1 in
- add)
- case $2 in
- "")
- echo "Usage: $progname dvips add PRINTER" >&2
- rc=1
- ;;
- *)
- printerName=$2
- pFile=`kpsewhich -format='dvips config' "config.$printerName"`
- case $pFile in
- "")
- setupTmpDir
- tcfRet=`tcfmgr --emptyinfile --reldir dvips/config --cmd co --tmp $tmpdir --file "config.$printerName"`
- if test $? != 0; then
- echo "$progname: failed to add new configuration file \`config.$printerName'" >&2
- rc=1
- else
- set x $tcfRet; shift
- tcBatchDvipsAddID=$1; tcBatchDvipsAddFile=$3
- echo "% file config.$printerName; added by texconfig" > "$tcBatchDvipsAddFile"
- tcfRet=`tcfmgr --tmp $tmpdir --id "$tcBatchDvipsAddID" --cmd ci`
- if test $? != 0; then
- echo "$progname: failed to add new configuration file \`config.$printerName'" >&2
- rc=1
- else
- echo "$progname: file $tcfRet added" >&2
- fi
- fi
- ;;
- *)
- echo "$progname: configuration file for printer \`$printerName' already exists (\`$pFile')" >&2
- rc=1
- ;;
- esac
- ;;
- esac
- ;;
- del)
- case $2 in
- "")
- echo "Usage: $progname dvips del PRINTER" >&2
- rc=1
- ;;
- *)
- printerName=$2
- pFile=`kpsewhich -format='dvips config' "config.$printerName"`
- case $pFile in
- "")
- echo "$progname: configuration file for printer \`$printerName' (config.$printerName) not found" >&2
- rc=1
- ;;
- *)
- if rm "$pFile"; then
- echo "$progname: file \`$pFile' removed" >&2
- else
- echo "$progname: failed to remove file \`$pFile'" >&2
- rc=1
- fi
- ;;
- esac
- ;;
- esac
- ;;
- paper-list)
- locateConfigPsFile
- listDvipsPapers
- ;;
- paper)
- case $2 in
- "")
- echo "Usage: $progname dvips paper PAPER" >&2
- echo >&2; echo "Valid PAPER settings:" >&2
- locateConfigPsFile
- listDvipsPapers | sed 's@ .*@@; s@^@ @' | myFmt
- rc=1
- ;;
- *)
- tcBatchDvipsPaper=$2
- locateConfigPsFile
- case "$configPsFile" in
- "")
- echo "$progname: file config.ps not found" >&2; rc=1
- ;;
- *)
- if grep "@ $tcBatchDvipsPaper " $configPsFile >/dev/null 2>&1; then
- setupDvipsPaper "$tcBatchDvipsPaper"
- else
- echo "$progname: paper \`$tcBatchDvipsPaper' not found in file \`$configPsFile'" >&2; rc=1
- fi
- ;;
- esac
- ;;
- esac
- ;;
- mode)
- case $2 in
- "")
- echo "Usage: $progname dvips mode MODE
-
-Valid MODE settings:"
- setupModesMfFile
- listMfModes | sed 's@ .*@@; s@^@ @' | myFmt
- rc=1
- ;;
- *)
- tcBatchDvipsMode=$2
- setupTmpDir
- setupModesMfFile
- if checkElemInList "$tcBatchDvipsMode" `listMfModes | sed 's@ .*@@'`; then
- set x `getRes "$tcBatchDvipsMode"`; shift
- resX=$1; resY=$2
- fmgrConfigReplace $moreFmgrArgs config.$tcBatchDvipsPrinter '^M' "M $tcBatchDvipsMode"
- fmgrConfigReplace $moreFmgrArgs config.$tcBatchDvipsPrinter '^D' "D $resX"
- fmgrConfigReplace $moreFmgrArgs config.$tcBatchDvipsPrinter '^X' "X $resX"
- fmgrConfigReplace $moreFmgrArgs config.$tcBatchDvipsPrinter '^Y' "Y $resY"
- else
- echo "$progname: unknown MODE \`$tcBatchDvipsMode' given as argument for \`$progname dvips mode'" >&2
- echo "$progname: try \`$progname dvips mode' for help" >&2
- rc=1
- fi
- ;;
- esac
- ;;
- offset)
- offset=$2
- case $offset in
- "")
- echo "Usage: $progname dvips offset OFFSET"
- rc=1
- ;;
- *)
- fmgrConfigReplace $moreFmgrArgs config.$tcBatchDvipsPrinter '^O' "O $offset"
- esac
- ;;
- printcmd)
- printcmd=$2
- case $printcmd in
- "")
- echo "Usage: $progname dvips printcmd CMD"
- rc=1
- ;;
- -)
- fmgrConfigReplace $moreFmgrArgs config.$tcBatchDvipsPrinter '^o' o
- ;;
- *)
- fmgrConfigReplace $moreFmgrArgs config.$tcBatchDvipsPrinter '^o' "o |$printcmd"
- ;;
- esac
- ;;
- "")
- echo "$help" >&2; rc=1
- ;;
- *)
- echo "$progname: unknown option \`$1' given as argument for \`$progname dvips'" >&2
- echo "$progname: try \`$progname dvips' for help" >&2
- rc=1
- ;;
- esac
- ;;
-
- faq)
- setupTexmfmain
- if test -f $MT_TEXMFMAIN/doc/tetex/teTeX-FAQ; then
- <$MT_TEXMFMAIN/doc/tetex/teTeX-FAQ eval ${PAGER-more}
- else
- echo "$progname: faq not found (usually in \$TEXMFMAIN/doc/tetex/teTeX-FAQ)" >&2
- rc=1
- fi
- ;;
-
- # handle "texconfig font"
- font)
- help="Usage: $progname font vardir DIR
- $progname font ro
- $progname font rw
-
-The vardir option changes the VARTEXFONTS variable in the texmf.cnf file.
-
-The rw option makes the VARTEXFONTS directory (and subtrees pk, tfm,
-source) world writable and sets the features appendonlydir:varfonts
-in mktex.cnf.
-
-The ro option makes the VARTEXFONTS directory (and subtrees pk, tfm,
-source) writable for the owner only and sets the feature texmfvar in
-mktex.cnf.
-
-For more information about these \`features', consult the teTeX manual
-(e.g. by running \`texdoc TETEXDOC')."
-
- case $2 in
- vardir)
- case $3 in
- "")
- echo "$help" >&2
- rc=1
- ;;
- *)
- tcBatchFontVardir=$3
- tfc=`kpsewhich texmf.cnf`
- if test -n "$tfc"; then
- if test -w "$tfc"; then
- configReplace "$tfc" '^VARTEXFONTS' "VARTEXFONTS = $tcBatchFontVardir"
- else
- echo "$progname: setting up vardir failed. Reason: no permission to write file \`$tfc'" >&2
- rc=1
- fi
- else
- echo "$progname: setting up vardir failed. Reason: failed to find file texmf.cnf" >&2
- rc=1
- fi
- ;;
- esac
- ;;
- rw)
- MT_VARTEXFONTS=`kpsewhich -var-value VARTEXFONTS`
- if test -z "$MT_VARTEXFONTS"; then
- echo "$progname: failed to set \`font rw'; reason: could not determine VARTEXFONTS variable." >&2; rc=1
- return
- fi
- test -d "$MT_VARTEXFONTS" || mktexdir "$MT_VARTEXFONTS"
- if test ! -d "$MT_VARTEXFONTS"; then
- echo "$progname: failed to set \`font rw'; reason: directory \`$MT_VARTEXFONTS' does not exist." >&2; rc=1
- return
- fi
- chmod 1777 "$MT_VARTEXFONTS" || {
- echo "$progname: failed to modify permissions in \`$MT_VARTEXFONTS'." >&2; rc=1
- return;
- }
- (
- cd "$MT_VARTEXFONTS" || exit
- echo "$progname: modifying permissions in \`$MT_VARTEXFONTS' ..." >&2
- for d in pk tfm source; do
- test -d "$d" && find $d -type d -exec chmod 1777 '{}' \;
- done
- echo "$progname: all permissions set." >&2
- )
- setupTmpDir
- fmgrConfigReplace mktex.cnf '^: ..MT_FEATURES=' ": \${MT_FEATURES=appendonlydir:varfonts}"
- ;;
- ro)
- MT_VARTEXFONTS=`kpsewhich -var-value VARTEXFONTS`
- if test -z "$MT_VARTEXFONTS"; then
- echo "$progname: failed to set \`font ro'; reason: could not determine VARTEXFONTS variable." >&2; rc=1
- return
- fi
- test -d "$MT_VARTEXFONTS" || mktexdir "$MT_VARTEXFONTS"
- if test ! -d "$MT_VARTEXFONTS"; then
- echo "$progname: failed to set \`font ro'; reason: directory \`$MT_VARTEXFONTS' does not exist." >&2; rc=1
- return
- fi
- chmod 755 "$MT_VARTEXFONTS" || {
- echo "$progname: failed to modify permissions in \`$MT_VARTEXFONTS'." >&2; rc=1
- return;
- }
- (
- cd "$MT_VARTEXFONTS" || exit
- echo "$progname: modifying permissions in \`$MT_VARTEXFONTS' ..." >&2
- for d in pk tfm source; do
- test -d "$d" && find "$d" -type d -exec chmod 755 '{}' \;
- done
- echo "$progname: all permissions set." >&2
- )
- setupTmpDir
- fmgrConfigReplace mktex.cnf '^: ..MT_FEATURES=' ": \${MT_FEATURES=texmfvar}"
- ;;
- "") echo "$help" >&2; rc=1;;
- *) echo "$progname: unknown option \`$2' given as argument for \`$progname font'" >&2
- echo "$progname: try \`$progname font' for help" >&2
- rc=1
- ;;
- esac
- ;;
-
- formats)
- setupTmpDir
- echo "$progname: analyzing old configuration..." >&2
- fmtutil --catcfg > $tmpdir/pre
- fmtutil --edit
- echo "$progname: analyzing new configuration..." >&2
- fmtutil --catcfg > $tmpdir/post
-
- if cmp $tmpdir/pre $tmpdir/post >/dev/null 2>&1; then
- echo "$progname: no new/updated formats available ..." >&2
- else
- echo "$progname: updating formats ..." >&2
- comm -13 $tmpdir/pre $tmpdir/post > $tmpdir/addOrChange
- for i in `awk '{print $1}' $tmpdir/addOrChange`; do
- fmtutil --byfmt "$i" || rc=1
- done
- texlinks --multiplatform || rc=1
- fi
- ;;
- help)
- echo "$help"
- ;;
-
- # "hyphen FORMAT"
- hyphen)
- tcBatchHyphenFormat=$2
- formatsForHyphen=`getFormatsForHyphen`
- formatsForHyphenFmt=`echo "$formatsForHyphen" | myFmt | sed 's@^@ @'`
- help="Usage: $progname hyphen FORMAT
-
-Valid FORMATs are:
-$formatsForHyphenFmt"
- case $tcBatchHyphenFormat in
- "")
- echo "$help" >&2; rc=1
- ;;
- *)
- if checkElemInList "$tcBatchHyphenFormat" $formatsForHyphen; then
-
- tcBatchHyphenFile=`fmtutil --showhyphen "$tcBatchHyphenFormat"`
- case $tcBatchHyphenFile in
- "")
- echo "$progname: could not find hyphen setup file for format \`$tcBatchHyphenFormat'" >&2
- rc=1
- return
- ;;
- esac
-
- getRelDir "$tcBatchHyphenFile"
- case $relPart in
- "")
- # edit tcBatchHyphenFile directly
- tcBatchHFID=
- setupTmpDir
- tcBatchHFEdit=$tcBatchHyphenFile
- tcBatchHFOrig=$tmpdir/hforig
- cp "$tcBatchHyphenFile" "$tcBatchHFOrig"
- ;;
- *)
- # use tcfmgr
- tcBatchHyphenFileBasename=`echo "$tcBatchHyphenFile" | sed 's@.*/@@'`
- setupTmpDir
- co=`tcfmgr --tmp $tmpdir --cmd co --file "$tcBatchHyphenFileBasename" --reldir "$relPart" --infile "$tcBatchHyphenFile"`
- if test $? != 0; then
- echo "$progname: failed to check out file \`$tcBatchHyphenFile'" >&2
- rc=1
- return 1
- else
- set x $co; shift
- tcBatchHFID=$1; tcBatchHFEdit=$3; tcBatchHFOrig=$4
- fi
- ;;
- esac
- ${VISUAL-${EDITOR-vi}} "$tcBatchHFEdit"
- if cmp "$tcBatchHFEdit" "$tcBatchHFOrig" >/dev/null 2>&1; then
- echo "$progname: configuration unchanged." >&2
- else
- case $tcBatchHFID in
- "")
- tcBatchHFOut=$tcBatchHFEdit
- echo "$progname: updated configuration saved as file \`$tcBatchHFOut'" >&2
- lastUpdatedFile=$ci
- ;;
- *)
- ci=`tcfmgr --tmp $tmpdir --cmd ci --id "$tcBatchHFID"`
- if test $? != 0; then
- echo "$progname: failed to check in file \`$tcBatchHyphenFileBasename'" >&2
- rc=1
- return
- else
- tcBatchHFOut=$ci
- echo "$progname: updated configuration saved as file \`$tcBatchHFOut'" >&2
- lastUpdatedFile=$ci
- fi
- ;;
- esac
- fmtutil --byhyphen "$tcBatchHFOut"
- fi
- else
- echo "$progname: invalid format \`$tcBatchHyphenFormat' specified as argument for \`$progname hyphen'" >&2
- echo "$progname: for getting help, try \`$progname hyphen'" >&2
- rc=1
- fi
- ;;
- esac
- ;;
-
- hyphen-list)
- getFormatsForHyphen
- ;;
-
- init)
- case $2 in
- "")
- if fmtutil --all \
- && texlinks --multiplatform \
- && updmap; then
- :
- else
- rc=1
- fi
- ;;
- *)
- shift 1
- for i in "$@"; do
- fmtutil --byfmt "$i" || rc=1
- done
- ;;
- esac
- ;;
-
- mode-list)
- setupModesMfFile
- listMfModes
- ;;
-
- mode)
- case $2 in
- "")
- echo "Usage: $progname mode MODE
-
-Valid MODE settings:"
- setupModesMfFile
- listMfModes | sed 's@ .*@@; s@^@ @' | myFmt
- rc=1
- ;;
- *)
- tcBatchMode=$2
- setupModesMfFile
- if checkElemInList $tcBatchMode `listMfModes | sed 's@ .*@@'`; then
-
- # modify mktex.cnf
- setupTmpDir
- fmgrConfigReplace mktex.cnf '^: ..MODE=' ": \${MODE=$tcBatchMode}"
- set x `getRes "$tcBatchMode"`; shift
- tcBatchRes=$1
- fmgrConfigReplace mktex.cnf '^: ..BDPI=' ": \${BDPI=$tcBatchRes}"
-
- if checkForBinary dvips >/dev/null && tcfmgr --cmd find --file config.ps >/dev/null 2>&1; then
- tcBatch dvips mode "$tcBatchMode"
- fi
- if checkForBinary pdftex >/dev/null && tcfmgr --cmd find --file pdftexconfig.tex >/dev/null 2>&1; then
- tcBatch pdftex mode "$tcBatchMode"
- fi
- else
- echo "$progname: unknown mode \`$tcBatchMode' specified as argument for \`$progname mode'" >&2; rc=1
- fi
- ;;
- esac
- ;;
-
- paper)
- help="Usage: $progname paper PAPER
-
-Valid PAPER settings:
- letter a4"
-
- p=$2; pXdvi=$2; pDvips=$2
- case $2 in
- a4)
- pDvips=A4size
- ;;
- letter)
- pDvips=letterSize
- pXdvi=us
- ;;
- "") echo "$help" >&2; rc=1; return;;
- *)
- echo "$progname: unknown PAPER \`$2' given as argument for \`$progname paper'" >&2
- echo "$progname: try \`$progname paper' for help" >&2
- rc=1
- return;;
- esac
- if checkForBinary dvips >/dev/null && tcfmgr --cmd find --file config.ps >/dev/null 2>&1; then
- tcBatch dvips paper $pDvips
- fi
- if checkForBinary dvipdfm >/dev/null && tcfmgr --cmd find --file config >/dev/null 2>&1; then
- tcBatch dvipdfm paper $p
- fi
- if checkForBinary dvipdfmx >/dev/null && tcfmgr --cmd find --file dvipdfmx.cfg >/dev/null 2>&1; then
- tcBatch dvipdfmx paper $p
- fi
- if checkForBinary xdvi >/dev/null && tcfmgr --cmd find --file XDvi >/dev/null 2>&1; then
- tcBatch xdvi paper $pXdvi
- fi
- if checkForBinary pdftex >/dev/null && tcfmgr --cmd find --file pdftexconfig.tex >/dev/null 2>&1; then
- tcBatch pdftex paper $p
- fi
- ;;
-
- pdftex)
- help="Usage: $progname pdftex paper PAPER
-
-Valid PAPER settings:
- a4 letter"
- case $2 in
-
- mode)
- case $3 in
- "")
- echo "Usage: $progname pdftex mode MODE"
- rc=1
- ;;
- *)
- tcBatchPdftexMode=$3
- setupTmpDir
- setupModesMfFile
- if checkElemInList "$tcBatchPdftexMode" `listMfModes | sed 's@ .*@@'`; then
- set x `getRes "$tcBatchPdftexMode"`; shift
- fmgrConfigReplace pdftexconfig.tex 'pdfpkresolution' "\\pdfpkresolution=$1"
- if $fmgrConfigReplaceChanged; then
- fmtutil --refresh
- fi
- else
- echo "$progname: unknown MODE \`$tcBatchPdftexMode' given as argument for \`$progname pdftex mode'" >&2
- rc=1
- fi
- ;;
- esac
- ;;
-
- paper)
- case $3 in
- letter)
- w="8.5 true in"; h="11 true in"
- setupTmpDir
- fmgrConfigReplace pdftexconfig.tex pdfpagewidth '\pdfpagewidth='"$w"
- wChanged=$fmgrConfigReplaceChanged
- fmgrConfigReplace pdftexconfig.tex pdfpageheight '\pdfpageheight='"$h"
- if $wChanged || $fmgrConfigReplaceChanged; then
- fmtutil --refresh
- fi
- ;;
- a4)
- w="210 true mm"; h="297 true mm"
- fmgrConfigReplace pdftexconfig.tex pdfpagewidth '\pdfpagewidth='"$w"
- wChanged=$fmgrConfigReplaceChanged
- fmgrConfigReplace pdftexconfig.tex pdfpageheight '\pdfpageheight='"$h"
- if $wChanged || $fmgrConfigReplaceChanged; then
- fmtutil --refresh
- fi
- ;;
- "") echo "$help" >&2; rc=1;;
- *)
- echo "$progname: unknown PAPER \`$3' given as argument for \`$progname pdftex paper'" >&2
- echo "$progname: try \`$progname pdftex paper' for help" >&2
- rc=1 ;;
- esac ;;
- "")
- echo "$help" >&2; rc=1;;
- *)
- echo "$progname: unknown option \`$2' given as argument for \`$progname pdftex'" >&2
- echo "$progname: try \`$progname pdftex' for help" >&2
- rc=1
- ;;
- esac
- ;;
-
- rehash)
- mktexlsr
- ;;
-
- # handle "xdvi paper PAPER"
- xdvi)
- tcBatchXdviPapers='us "8.5x11"
-usr "11x8.5"
-legal "8.5x14"
-foolscap "13.5x17.0"
-a1 "59.4x84.0cm"
-a2 "42.0x59.4cm"
-a3 "29.7x42.0cm"
-a4 "21.0x29.7cm"
-a5 "14.85x21.0cm"
-a6 "10.5x14.85cm"
-a7 "7.42x10.5cm"
-a1r "84.0x59.4cm"
-a2r "59.4x42.0cm"
-a3r "42.0x29.7cm"
-a4r "29.7x21.0cm"
-a5r "21.0x14.85cm"
-a6r "14.85x10.5cm"
-a7r "10.5x7.42cm"
-b1 "70.6x100.0cm"
-b2 "50.0x70.6cm"
-b3 "35.3x50.0cm"
-b4 "25.0x35.3cm"
-b5 "17.6x25.0cm"
-b6 "13.5x17.6cm"
-b7 "8.8x13.5cm"
-b1r "100.0x70.6cm"
-b2r "70.6x50.0cm"
-b3r "50.0x35.3cm"
-b4r "35.3x25.0cm"
-b5r "25.0x17.6cm"
-b6r "17.6x13.5cm"
-b7r "13.5x8.8cm"
-c1 "64.8x91.6cm"
-c2 "45.8x64.8cm"
-c3 "32.4x45.8cm"
-c4 "22.9x32.4cm"
-c5 "16.2x22.9cm"
-c6 "11.46x16.2cm"
-c7 "8.1x11.46cm"
-c1r "91.6x64.8cm"
-c2r "64.8x45.8cm"
-c3r "45.8x32.4cm"
-c4r "32.4x22.9cm"
-c5r "22.9x16.2cm"
-c6r "16.2x11.46cm"
-c7r "11.46x8.1cm"'
- help="Usage: $progname xdvi paper PAPER
-
-Valid PAPER settings:
- a1 a1r a2 a2r a3 a3r a4 a4r a5 a5r a6 a6r a7 a7r
- b1 b1r b2 b2r b3 b3r b4 b4r b5 b5r b6 b6r b7 b7r
- c1 c1r c2 c2r c3 c3r c4 c4r c5 c5r c6 c6r c7 c7r
- foolscap legal us usr"
- case $2 in
- paper-list)
- echo "$tcBatchXdviPapers"
- ;;
- paper)
- case $3 in
- a1|a1r|a2|a2r|a3|a3r|a4|a4r|a5|a5r|a6|a6r|a7|a7r|b1|b1r|b2|b2r|b3|b3r|b4|b4r|b5|b5r|b6|b6r|b7|b7r|c1|c1r|c2|c2r|c3|c3r|c4|c4r|c5|c5r|c6|c6r|c7|c7r|foolscap|legal|us|usr)
- fmgrConfigReplace XDvi paper: "*paper: $3"
- ;;
- "") echo "$help" >&2; rc=1;;
- *)
- echo "$progname: unknown PAPER \`$3' given as argument for \`$progname xdvi paper'" >&2
- echo "$progname: try \`$progname xdvi paper' for help" >&2
- rc=1 ;;
- esac ;;
- "")
- echo "$help" >&2; rc=1;;
- *)
- echo "$progname: unknown option \`$2' given as argument for \`$progname xdvi'" >&2
- echo "$progname: try \`$progname xdvi' for help" >&2
- rc=1
- ;;
- esac
- ;;
- *)
- echo "$progname: unknown option \`$1' given as argument for \`$progname'" >&2
- echo "$progname: try \`$progname help' for help" >&2
- rc=1
- esac
-}
-
-###############################################################################
-# tcInteractive(void)
-# handle interactive mode
-###############################################################################
-tcInteractive()
-{
- texconfig-dialog
-}
-
-###############################################################################
-# main()
-###############################################################################
-rc=0
-case $# in
- 0) tcInteractive;;
- *) tcBatch "$@";;
-esac
-
-cleanup $rc