> in your example, though, the page footer is misaligned relative
> to the text body (page offset is different). it seems that the
> footer does not learn of the modified PO until page two.
I don't notice this.
> and I get an error message:
>
> can't continue page ejection because vertical position traps disabled
That's a bug in the example. The position traps should be
enabled again *before* the .bp:
.\" ----------------------------------------------------------------
.de BT
.ie \\n%=1 \{\
.vpt 0
.sp -.5 \" footer already starts half a line higher
.tl 'first page footer'\(em'line 1'
.tl 'first page footer'\(em'line 2'
.nr FM 3c \" bottom margin for all other pages
.vpt 1
.bp
.\}
.el \{\
.ie o .tl \\*[pg*OF]
.el .tl \\*[pg*EF]
.\}
..
.\" ----------------------------------------------------------------