# Prevent xtab breaking table too soon

Xtab breaks a long table spanning multiple pages too soon -- see my screenshot:

The output seems rather unsightly to me. Can I make it take more of the available space?

Alternatively, is there a package for long tables which produces an output in one pass, and uses available paper space more efficently?

### A little background

I need a package to do a one-pass compilation of a table which could span multiple pages, for automated report generation. supertabular should be capable of producing a table spanning multiple pages in one pass and, as I understand it, xtab is an improvement over it. longtable package requires multiple passes (the manual mentions 4 passes) to get it right, which might make report generation too slow.

-

xtabular overestimates the height of each row by 1pt; when the rows contain tall p cells, this is almost negligible; however, when the table has "small" rows, this becomes evident.

A supertabular based "solution" is the following strictsupertabular environment

\makeatletter
\def\mod@estimate@lineht{%
\ST@lineht=\arraystretch \baslineskp
\ifdim\ST@stretchht<\z@\ST@stretchht\z@\fi
\ST@trace\tw@{Average line height: \the\ST@lineht}%
\ST@trace\tw@{Stretched line height: \the\ST@stretchht}%
}
\newenvironment{strictsupertabular}
{\let\estimate@lineht\mod@estimate@lineht\supertabular}
{\endsupertabular}
\makeatother


that needs lines that are never taller than a normal line of text.

Another defect shared by supertabular and xtab is that the column width is not the same across pages (this doesn't happen with longtable).

-