\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' 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[]{finstrut}'\]--- 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