<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18812">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2 face="Arial Unicode MS">Hello</FONT></DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS">I typeset a slow-moving large-format
Latin dictionary in three columns, and hitherto have used the rather tortuous
code in the TeX book (answer to exercise 23.4 on page 335). This works
fine, but when I get to the end of a letter of the alphabet (Q has just
been completed) the final page always has to have its text broken manually
into three equal columns (I have failed to achieve anything workable with
an \if...\else...\fi expression to switch the output routine on the final
page).</FONT></DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS">To avoid that, I thought I would move
over to Eplain's \triplecolumns and achieve automatic balancing on the last page
with \singlecolumn at the end. This does indeed work, but curiously the
running headlines are no longer accurate, sometimes anticipating the next
headword, and sometimes hanging on to the previous one. (The dictionary's
headline format is to have the left-hand column headed by the headword relevant
to the first line in that column, even if it is in middle of a word's entry, and
the right-hand column headed by the headword relevant to the last line in that
column; there is no distinction between recto and verso pages.)</FONT></DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS">The \mark commands that I use to call
the headwords into the headline are completely analogous to Knuth's code on p.
260 of the TeX book: at the start of a new entry (analogous to Knuth's
\beginsection) I insert a \mark *before* the vertical space that precedes
the headword, and I then put a \mark after the headword has been typeset.
I use exactly the \noexpand\else trick in the \marks that Knuth gives, and in
the headline I use \iftrue\botmark and \iffalse\topmark just as he
describes.</FONT></DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS">The conclusion seems to be that the
multi-column facility in Eplain somehow differs in its page boxing from the
\output and \shipout mechanisms in plain TeX, in a way which causes the \topmark
and \botmark not to be true as they are said to be in the table at the bottom of
page 258 of the TeX book. Can anyone shed light on this, and if possible
suggest a workaround? I'm not really stuck since the chore of manually
splitting the last page into equal columns is not too onerous, but it would
obviously be more convenient not to have to worry about this - the main
irritation being that I can't balance the final page until absolutely every
correction is in place.</FONT></DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS">I should add that I am in the process
of moving the job over into a Unicode-compliant version of the typeface so that
I can enjoy the benefit of XeTeX, and it may be that the version of Eplain that
comes with that will have this ironed out - I can do a dummy run in XeTeX
some time soon if people think that would help.</FONT></DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS">Best</FONT></DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS">John</FONT></DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV>
<DIV><FONT size=2 face="Arial Unicode MS"></FONT> </DIV></BODY></HTML>