summaryrefslogtreecommitdiff
path: root/web/pwebmac/makeall
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-06-07 03:01:10 +0000
committerNorbert Preining <norbert@preining.info>2022-06-07 03:01:10 +0000
commit76cfdb3c84a9a4d5d06a9f785b2bed2b44098806 (patch)
treeb552a509a35d1f669c9d390a0d70809bb1030571 /web/pwebmac/makeall
parent89e8f58007e3fa8841a95b1e3d7efeacced6aed5 (diff)
CTAN sync 202206070301
Diffstat (limited to 'web/pwebmac/makeall')
-rwxr-xr-xweb/pwebmac/makeall40
1 files changed, 26 insertions, 14 deletions
diff --git a/web/pwebmac/makeall b/web/pwebmac/makeall
index 2a058c5c6f..eeed9c76bc 100755
--- a/web/pwebmac/makeall
+++ b/web/pwebmac/makeall
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
PROG=$(basename $0)
@@ -18,7 +18,7 @@ Options are (--long options only with GNU getopt):
-n, --new Use 'pwebmac' instead of 'webmac'
-o, --outdir ARG Create tarballs in path ARG
-p, --pdftocfront Place TOC page at the front (PDF only)
- -t, --tex ARG Use TeX variant ARG={tex,{hi,pdf,xe}tex}
+ -t, --tex ARG Use TeX variant ARG=[(hi|pdf|xe)]tex
Public domain. Originally written by Andreas Scherer, 2020.
HELP
@@ -87,14 +87,14 @@ CWEAVE="cweave -f +lX"
CTWILL="ctwill -f +lpdf"
PAX="pax -wvzf"
SED_I="sed -i" # non-GNU-sed requires an extra '' argument for '-i' option.
-PDF=pdf
+PDF=pdf # default extension for 'knuth-pdf'
+HITEX="hitex --compress"
# HINT format
if [ hitex = $TEX ]
then
- $TEX -ini -jobname=hitex tex.ini
- TEX="hitex --compress"
- PDF=hnt
+ TEX="$HITEX"
+ PDF=hnt # default extension for 'knuth-hint'
fi
# WEB and CWEB programs we want to get formatted
@@ -231,12 +231,21 @@ FI
# FIX: pdfTeX uses '\pdfTeX' in section names; these should
# appear correctly in the bookmarks, too.
pdftex )
- if $NEW && [ tex != "$TEX" ] && [[ ! $TEX =~ hitex ]]
+ if $NEW && [ tex != "$TEX" ] && [ "$HITEX" != "$TEX" ]
then
$SED_I -e "s/\(\\\\def\\\\pdfTeX{pdf\\\\TeX}\)/\1 \\\\sanitizecommand\\\\pdfTeX{pdfTeX}\\\\sanitizecommand\\\\eTeX{e-TeX}/" \
$f.tex
fi ;;
+ # FIX: weave uses '\max' in name of module 173; this should
+ # appear correctly in the bookmarks, too.
+ weave )
+ if $NEW && [ tex != "$TEX" ] && [ "$HITEX" != "$TEX" ]
+ then
+ $SED_I -e "s/\(\\\\def\\\\({}\)/\\\\sanitizecommand\\\\max{max}\n\1/" \
+ $f.tex
+ fi ;;
+
# FIX: purge obsolete macros from XeTeX.
xetex ) $SED_I -e "/\\\\input xewebmac/d" $f.tex ;;
esac
@@ -264,11 +273,9 @@ FI
then $f $f
elif [ ctwill = $f ]
then
- if [[ $TEX =~ hitex ]]
- then
- CTWILLTEX=pdftex
- else
- CTWILLTEX="$TEX"
+ if [ "$HITEX" = "$TEX" ]
+ then CTWILLTEX=pdftex
+ else CTWILLTEX="$TEX"
fi
$CTWILLTEX $f
# sort mini-indexes
@@ -280,7 +287,7 @@ FI
fi
done
-if ( $PDFTOCFRONT || [[ $TEX =~ hitex ]] ) && ! $FILESELECT
+if ( $PDFTOCFRONT || [ "$HITEX" = "$TEX" ] ) && ! $FILESELECT
then
# create tarballs w/o changes for publication
if $CHANGES
@@ -292,7 +299,7 @@ then
esac
mv $f $(basename $f .$PDF)-changes.$PDF
done
- if [[ $TEX =~ hitex ]]
+ if [ "$HITEX" = "$TEX" ]
then
rm -f xetex-changes.pdf
mv xetex.pdf xetex-changes.pdf
@@ -349,6 +356,11 @@ then
# Prepare 'cwebman' with footnotes describing the extended CWEB.
f=$(kpsewhich -engine tex cwebman)
tie -m $(basename $f) $f $(basename $f .tex)-w2c.ch
+ if [ "$HITEX" = "$TEX" ]
+ then
+ $SED_I -e "s/\(\\\\input cwebmac\)/\1\n\\\\input hiplainpage/" \
+ cwebman.tex
+ fi
touch pages.tex # let 'manmac' produce output at all