\ProvidesFile{finstrut.tex}[2011/03/14 documenting finstrut.sty (UL)]
\title{\textsf{finstrut.sty}\\---\\Final Strut Allowing Vertical 
       Mode---The \texttt{\cs{@finalstrut}} Encyclopedia and 
       Toolkit\thanks{This document describes version 
       \textcolor{blue}{\UseVersionOf{finstrut.sty}} 
       of \textsf{finstrut.sty} as of \UseDateOf{finstrut.sty}. 
       This upload is a birthday package for Donald Arseneau---he 
       will be so happy!}}
% \listfiles                                          %% 2010/12/22
{ \RequirePackage{makedoc}[2010/12/20] \ProcessLineMessage{} 
  \MakeJobDoc{18}{\SectionLevelTwoParseInput} 
}
\documentclass{article}%% TODO paper dimensions!?
\input{makedoc.cfg} %% shared formatting settings
\newcommand*{\lt}{<} \newcommand*{\gt}{>}           %% 2010/12/22
\providecommand*{\strong}{\textbf}                  %% 2010/12/15
\ReadPackageInfos{finstrut}
\usepackage{color}
\makeatletter \@beginparpenalty\@lowpenalty \makeatother
\sloppy
\begin{document}
% \author{Uwe L\"uck\thanks{\urlhttpref{http://contact-ednotes.sty.de.vu}} 
%         \and 
%         Donald Arseneau}
\maketitle
\begin{abstract}\noindent
\LaTeX\ internally inserts `\@finalstrut<strutbox>'
at the end of footnotes or `p' (paragraph) `tabular' cells.
When the user's entry ends on a `\par' token---which may 
be issued by some more-general-purpose user macro 
such as the `\lipsum' command from the \ctanpkgref{lipsum}
package\urlfoot{CtanPkgRef}{lipsum} for dummy text---this 
produces a usually unwanted extra, empty line.
'finstrut.sty' changes `\@finalstrut' in order to avoid 
this effect.
  \par
The first version of the package just had this minimum purpose. 
But then Donald Arseneau has convinced me to consider 
a wide range of cases and to replace my code by his proposals.
v0.5 again adds an idea of my own ones:     %% 2011/03/14:
instead of testing for `hmode' vs.~`vmode', 
`vmode' may be \emph{forced} by a `\par'---saves tokens!
In order not to break code that some package writers may have 
used so far, choices by package options are offered.
v0.4 offered choice among 6 definitions, with v0.5 they are 9---!
(Not 9!.)
  \par\smallskip\noindent
\strong{Keywords:}\quad footnotes; tables, dummy text, 
macro programming
\end{abstract}
\tableofcontents

%   \newpage 
\section{Remark on 'lipsum'}
Almost at the same moment that 'finstrut' v0.1 was installed 
(2011-02-09), a new version v1.1    %% v0.4: v1.1
of 'lipsum' was uploaded that offers a package option 
`[nopar]'                           %% v0.4
to avoid a final `\par'.

\section{Installing and Calling}
The package file 'finstrut.sty' is provided ready, 
installation only requires putting it somewhere where \TeX\ finds it 
(which may need updating the filename data 
 base).\urlfoot{ukfaqref}{inst-wlcf}

Below the `\documentclass' line(s) and above `\begin{document}', 
you load 'finstrut.sty' (as usually) by 
\[`\usepackage{finstrut}'\qquad \mbox{or by}\qquad 
  `\usepackage[<options>]{finstrut}'\]---<options> described below.

\section{The Package File}
\subsection{Header (Legalize)}
\input{finstrut.doc}
\end{document}

VERSION HISTORY

2011/02/09      cut out from `fnlineno.sty' [and corr. date+script]
2011/02/09c     remark on `lipsum' upload same day
2011/02/11      \subsection
2011/02/12      for v0.4
2011/02/16      for v0.5, abstract mentions Donald Arseneau
2011/03/14      "encyclopedia and toolkit", abstract extended
