Skip to content

Commit

Permalink
initial cover files, top-level README
Browse files Browse the repository at this point in the history
git-svn-id: svn://tug.org/tugboat/trunk@519 7237770a-693a-0410-b4d3-c34f48dbc3f6
  • Loading branch information
kberry committed Sep 26, 2023
1 parent 0db14a0 commit b00870f
Show file tree
Hide file tree
Showing 11 changed files with 821 additions and 5 deletions.
29 changes: 29 additions & 0 deletions README
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
$Id$

This tree contains files related to TUGboat, the main publication of the
TeX Users Group (https://tug.org/TUGboat).

capsules - machine-readable summaries by issue, and the scripts to
generate the lists by title/author/keyword linked at
https://tug.org/TUGboat/contents.html. Also includes the scripts to
generate the information for DOI registration at Crossref.

covers - support files for making the four cover pages -- front cover,
inside front cover, inside back cover, back cover, also known as c1
through c4.

hyphenex - support files for hyphenation exception list maintained by
Barbara Beeton. Releases posted at https://ctan.org/pkg/hyphenex.

latex - the LaTeX class file, BibTeX style file, documentation, test files.
Releases posted at https://ctan.org/pkg/tugboat.

misc - mainly small scripts for various production jobs, like checking
that all fonts are embedded, converting pdfs to grayscale, etc.

plain - the plain package file tugboat.sty (confusingly named, but it
predates LaTeX) and documentation. Releases posted at
https://ctan.org/pkg/tugboat-plain.

production - production configuration, list of all issues, and
documentation from our printing company.
107 changes: 107 additions & 0 deletions covers/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
# $Id$
# Makefile for TUGboat covers. Public domain.

tbn := $(shell sed -n 's,^.issueseqno=\([0-9]*\) .*$$,\1,p' ../tugboat.dates)
tb := tb$(tbn)
envvars = export TEXINPUTS=.:..: #; export TEXFONTS=../texmf/fonts//:
texfot = texfot
PDFTEX = $(envvars); $(texfot) pdftex --file-line-error
cp = cpread

# We don't use ltugboat.cfg here, but it is what we touch in
# ../Makefile when building the whole issue. Seems safer to rebuild the
# covers too.
deps = ../tugboat.dates ../ltugboat.cfg #../calendar/lastpage.tex

%.pdf: %.tex $(deps)
$(PDFTEX) '\nonstopmode\input $<' </dev/null || { rm -f $@; exit 1; }
@test `pdflastpage $@` -eq 1 \
|| $(c3_twopages) \
|| { echo "*** $@ not one page!"; mv $@ $@-2; exit 1; }
-@$(cp) $@ ../webdir/
-@$(cp) $@ ../CADMUS/

# normally:
c3_target = cover3.pdf
c3_twopages = false
#
# for tb137, cover3 is two pages, second page is copied to calendar.
#c3_target = cover3a.pdf
#c3_twopages = test $@ = cover3.pdf

%-crop.pdf: %.pdf
pdfcrop-tub $< >/dev/null

.PRECIOUS: %.ps

all: spine.pdf cover4.pdf titlepage.pdf cover1.pdf cover2.pdf $(c3_target)

titlepage.pdf: $(tb)quote.tex tugboat.front
cover4.pdf: $(tb)cont.tex tugboat.front tubtocmac.tex
cover3.pdf: $(tb)cap.tex tubtocmac.tex
cover1.pdf: word-nobox.pdf press2.pdf # procdrawing.pdf

# cover3a.pdf is copied to ../CADMUS/ to replace the two-page version.
cover3a.pdf: cover3.pdf cover3-crop.pdf
pdfselect 1 1 $< $@
$(cp) $@ ../CADMUS/cover3.pdf

# We want the complete.pdf that we post to have both the internal links
# on the toc pages, that we created in toclinks.pdf, and the external
# links within the issue.pdf, that were created per-article.
#
# So, we extract the linked toc pages from toclinks.pdf and combine them
# with the issue.pdf. Hans wrote a special feature into the context
# --extra=copy routine to support this, based on a Lua data file
# that we create per issue.
#
# See tb138prod.pdf for a published note about this.
$(tb)complete.pdf complete compl c: $(tb)cmplete.lua \
toclinks.pdf ../CADMUS/issue.pdf
lmtxtub --extra=copy --template $<
mv context-extra.pdf $(tb)complete.pdf
c=$(tb)complete.pdf; du $$c #makes larger: ; ../ps2pdf-tub $$c; du $$c
$(cp) $(tb)complete.pdf ../webdir/

# the whole interior, with the toc pages prepended and appended,
# with internal links to the articles.
toclinks.pdf: toclinks.tex cover2.tex cover3.tex cover4.tex tubtocmac.tex \
../CADMUS/issue.pdf
$(PDFTEX) '$<' </dev/null || { rm -f $@; exit 1; }

force:

clean:
rm -f *.log *.dvi *.ps cover*.pdf titlepage.pdf *stpage.tex

# to send to bb.
cnt:
tb=.. tubcont2cnt $(tb)cont.tex | tee $(tb)prelimcnt

pfile = ../tugboat.dates
p_titlepage := $(shell sed -n 's/^.*def.TBtitlepage{\([0-9]*\)}.*/\1/p' $(pfile))
#p_ad1 := $(shell sed -n 's/.def.TBadpage{\([0-9]*\)}.*/\1/p' $(pages))
p_ad2 := $(shell expr $(p_ad1) + 1)
p_ad3 := $(shell expr $(p_ad1) + 2)
cadmus cad: $(c3_target)
@echo " making $@ in `pwd`"
$(cp) spine.pdf ../CADMUS/spine.pdf
$(cp) cover1.pdf ../CADMUS/cover1.pdf
$(cp) cover2.pdf ../CADMUS/cover2.pdf
$(cp) $(c3_target) ../CADMUS/cover3.pdf
$(cp) cover4.pdf ../CADMUS/cover4.pdf
$(cp) titlepage.pdf ../CADMUS/p$(p_titlepage).pdf
chmod a+r ../CADMUS/* ../webdir/*

check:
cd .. && $(MAKE) $@

tbnn := $(shell expr $(tbn) + 1)
# to set up directory for following issue (= $tn envvar).
copynext:
@echo $(tbnn)
cp -ai Makefile *.tex tugboat.* word* press2.pdf ${tn}/covers/
cd ${tn}/covers && rename s/$(tbn)/$(tbnn)/ *
# during dev:
%:
cd .. && $(MAKE) $@
9 changes: 6 additions & 3 deletions covers/README
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ $Id$
(Public domain.)

These files are used in the covers/ subdirectory for each TUGboat issue,
and don't have to be routinely changed, so are checked in here.
The cover*.tex and tbNNNc*.tex files mostly do need to be changed.
See the copynext target in covers/Makefile to set up the next issue.
and either don't have to be routinely changed or may be useful as
starting points of the process, so are checked in here.

cover2.tex and tbcomplete.lua definitely have to be changed for each
issue. It's not unusual to have to change the other cover*.tex files,
or the macros.
97 changes: 97 additions & 0 deletions covers/cover1.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
% $Id$
% cover1.tex - front cover of TUGboat. Public domain.

\input tugboat.sty
\input ../tugboat.dates
\TUBfinal

\onecol
\headmargin=.75in % 1in
\rheadlgt=0pt \def\runhead{}
\basezero

\font\fourteenbf=cmbx10 scaled \magstep2
\font\fourteenrm=cmr10 scaled \magstep2
\let\commfont=\fourteenbf
\let\volfont=\fourteenrm

\font\sixteenrm=cmr10 scaled \magstep3
\font\sixteenbf=cmbx10 scaled \magstep3
\def\bigfont{\def\rm{\sixteenrm}\def\smc{\twelverm}%
\def\bf{\sixteenbf \def\smc{\twelvebf}}\rm }
\bigfont

\baselineskip=18pt
\parindent=0pt

\collgt=55pc
\resetpagelgt
\normalbottom

\catcode`@ = 11

\newif\ifprocissue

% \postissue determines whether this is Proceedings issue or not
\ifx\postissno\empty \def\PostIssno{}\procissuefalse
\else \def\PostIssno{\Dash \postissno}\procissuetrue
\fi

\newdimen\boxrulethickness \boxrulethickness=1pt
%
% #1 = height of box, #2 = depth of box
% #3 = inserted to make space for the text
\def\boxit #1/#2, #3<{\vbox{%
\hrule height\boxrulethickness depth0pt\kern-\boxrulethickness
\hbox{\vrule height#1 depth#2 width\boxrulethickness
\kern-\boxrulethickness\kern.5pc
#3\kern.5pc \vrule width\boxrulethickness}
\hrule height\boxrulethickness depth0pt\kern-\boxrulethickness}}

\dlap{\boxit 5pc/1pc, \kern 23pc<
\kern -66pt % move back into the box
\noindent \kern 9pt
\immediate\pdfximage {word-nobox.pdf}\pdfrefximage\pdflastximage
\par
\kern 14pt
\boxit 1.5pc/.75pc, \commfont The Communications of the \TUG<
}

% Date: Sun, 26 Dec 2004 15:28:53 -0500 (EST)
% From: Barbara Beeton <bnb@ams.org>
% To: TUGboat Production team members <tub-prod@tug.org>
%
% traditionally, graphic is offset to the right, with
% space on the right equal to space at left of "tugboat"
% at top. also, graphic is usually [...]
% a bit more toward the bottom than centered.
%
\kern 12.4pc
\hfuzz=1pc \advance\hsize by \hfuzz
%
\rightline{%
\ifprocissue
\immediate\pdfximage height6in {procdrawing.pdf}
\else
\immediate\pdfximage height5in {press2.pdf}
\fi
\pdfrefximage\pdflastximage
}

\vskip 0pt plus1filll

% text at bottom, two lines.
\setbox\TestBox=\hbox{%
\boxit 1.5pc/.75pc, \volfont Volume \volno,
Number \issno, \issdt \PostIssno<}
%
\ifdim\wd\TestBox < .8\pagewd
\unhbox\TestBox
\else
\boxit 3pc/.75pc,
\vbox{\volfont \baselineskip=18pt
\let\Dash=\cr
\halign{#\hfil\cr
Volume \volno, Number \issno, \issdt \PostIssno \cr}}<
\fi
\end
Loading

0 comments on commit b00870f

Please sign in to comment.