Output from .em macro lost after current page
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
groff (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
Text generated by an end-of-input macro trap (set with .em) can not extend beyond the current page. That is, if it does the output which should appear in subsequent pages is lost.
It is unclear why the end-of-input trap is not called with the same behavior as if the macro were called explicitly by the last line of user input. For some reason, the end-of-page machinery is not working by the time the .em trap is sprung, or else there is an inherent limitation of -all- traps which prevents generating multiple pages.
I will attach a simple demo program. The output should contain 100+ lines, but it stops after 65 lines:
#!/bin/sh
nroff <<'EOF' | cat -s
.de EndOfInput
. nf
. nr Max 100
. nr i 1
. while \\n[i]<=\\n[Max] \{\
. nop Generated line \\n[i]
. nr i \\n[i]+1
. \}
---AFTER genreated lines---
..
.em EndOfInput
Main Text
EOF
ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: groff-base 1.20.1-10
ProcVersionSign
Uname: Linux 2.6.35-30-generic x86_64
Architecture: amd64
Date: Thu Oct 27 22:39:05 2011
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Release Candidate amd64 (20100928)
ProcEnviron:
PATH=(custom, user)
LANG=en_US.utf8
SHELL=/bin/bash
SourcePackage: groff