<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
In a book on which I am currently working, and following the example
I established in earlier books, I have adopted the convention of
"minimal indentation" -- \parindent is suppressed whenever it adds
nothing significant (IMHO) to the page. So, for example \parindent
is suppressed (a) after full-width inserts, (b) at the start of a
paragraph that commences at the same level as the top line of an
part-width insert floated left, and so on. And, in particular,
\parindent is (manually) suppressed at the top of a new page. Now,
it is (relatively) easy to detect when \parindent suppression occurs
in the <u><i><b>wrong</b></i></u> place (i.e., when a manually
inserted \noindent does <i><b>not</b></i> end up at the top of a
page, using TeX's intrinsic top-of-page discard behaviour w.r.t.
leaders) [1], but I have not yet found a way to detect when
(automatic) paragraph indentation occurs (wrongly) at the top of a
page. Any suggestions as to how to accomplish this will be
gratefully received. Note that I am not attempting the impossible
-- I know that without a multi-pass approach, or the use of an
adjunct programming language such as that offered by LuaTeX, I
cannot automatically /suppress/ paragraph indentation at top of page
: I merely want to be warned (either in the log file, or even in
the PDF itself) if such paragraph indentation has in fact occurred.<br>
<br>
[1] <br>
<br>
<tt>
</tt><tt>
</tt>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><tt>\newbox
\errorbox</tt></p>
<tt>
</tt>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><tt>\setbox
\errorbox = \leftline {+++ NOT AT TOP OF PAGE +++}</tt></p>
<tt>
</tt>
<p style="-qt-paragraph-type:empty; margin-top:0px;
margin-bottom:0px; margin-left:0px; margin-right:0px;
-qt-block-indent:0; text-indent:0px;"><tt><br>
</tt></p>
<tt>
</tt>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><tt>\def
\errormsgbox {\copy \errorbox}</tt></p>
<tt>
</tt>
<p style="-qt-paragraph-type:empty; margin-top:0px;
margin-bottom:0px; margin-left:0px; margin-right:0px;
-qt-block-indent:0; text-indent:0px;"><tt><br>
</tt></p>
<tt>
</tt>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><tt>\def
\assert #1%</tt></p>
<tt>
</tt>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><tt> {%</tt></p>
<tt>
</tt>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><tt>
\endgraf \leaders \errormsgbox \vskip 2 \ht \errorbox \relax</tt></p>
<tt>
</tt>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><tt>
\noindent \ignorespaces</tt></p>
<tt>
</tt>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;"><tt> }</tt></p>
<br>
<tt>% Usage : \assert {newpage}</tt><tt><br>
</tt><br>
<div class="moz-signature">-- <br>
<img src="cid:part1.02030903.06040700@Rhul.Ac.Uk"><br>
Philip Taylor</div>
</body>
</html>