\documentclass[a4paper]{article} \usepackage{miscdoc} \begin{document} \title{The \Package{threeparttable} package\thanks{This documentation covers version 3.0 of the package, dated 2006-06-13}} \author{Donald Arseneau\thanks{Documentation put together by Robin Fairbairns}} \maketitle \section{Outline} This package facilitates tables with titles (captions) and notes. The title and notes are given a width equal to the body of the table (a tabular environment). By itself, a \environment{threeparttable} does not float, but you can put it in a \environment{table} or a \environment{table*} or some other floating environment. (This causes extra typing, but gives more flexibility.) Inside a \environment{threeparttable} there should be a caption, followed by a tabular environment (\environment{tabular}, \environment{tabular*}, \environment{tabularx} or the like), possibly followed by a series of itemized \emph{tablenotes}. (The caption may also go after the tabular environment.) For example: \begin{quote} \begin{verbatim} \begin{table} \begin{threeparttable}[b] \caption{...} \begin{tabular}...% or {tabular*} ...42\tnote{1}&.... ... \end{tabular} \begin{tablenotes} \item [1] the first note ... \end{tablenotes} \end{threeparttable} \end{table} \end{verbatim} \end{quote} The {threeparttable} environment takes an optional vertical-placement parameter, \option[t], \option[b], or \option[c]; the default is \option[t]. There is nothing automatic about the notes; you must specify the identifier in the body of the table (``\cmdinvoke{tnote}{a}'') and in the notes below the table (``\cmdinvoke{item}[a]\texttt{...}''). The author chose this method because automatic numbering with \cs{footnote} would be very hard to use, particularly because many tables make repeated reference to a single note\footnote{If someone has a convenient, elegant, automatic system, the author promises to listen!}. \cs{tnote} commands may be given in the caption too, and they will \textbf{not} appear in the list of tables. There are several commands which should be redefined for customizing the behaviour of \Package{threeparttable}, especially the table notes. Some options are provided for common variations of the table notes: \begin{description} \item[\option{para}] Notes come one-after-another without line breaks \item[\option{flushleft}] No hanging indentation on notes \item[\option{online}] \cs{item} tag is printed normal size, not superscript \item[\option{normal}] restores default formatting \end{description} These options can be given to the \cs{usepackage} command or to each individual \environment{tablenotes} environment. The \option[normal] option is intended to reverse the whole-document options for a particular table; e.g. \begin{quote} \begin{verbatim} \usepackage[para]{threeparttable} ... document rambles on ... \begin{tablenotes}[normal,flushleft] \end{verbatim} \end{quote} These few options will not give you every format you might want, so you may find that you need to redefine one or more of the configuration commands. Note that mixing options with redefinitions is unlikely to work smoothly: Please submit your redefinitions to be used as options in future versions! Configuration commands: \begin{itemize} \item \cs{TPTminimum}: command givining minimum caption width. Default \texttt{4em}; change with \cs{def} or \cs{renewcommand}. \item \cs{TPTrlap}: A command with one argument, to make notes go out of the column, into the column separation (for right-aligning) \item \cs{TPTtagStyle}: Command with one argument to set appearance of the tag (number) in \cmdinvoke{tnote}{tag}. It defaults to nil. It could be \cs{textit}. \item \cs{tnote}: Yes, you can redefine the \cs{tnote} command. \item \cs{TPTnoteLabel}: Command with one argument to format the item label in the tablenotes list (\cs{makelabel}); default uses \cs{tnote}. \item \cs{TPTnoteSettings}: A command to issue all the list-environment setup commands for the tablenotes. \item \cs{tablenotes} or \cs{TPTdoTablenotes}: Yes, you can redefine the whole tablenotes environment. (\cs{tablenotes} processes optional parameters, then invokes \cs{TPTdoTablenotes}; the \option[para] option replaces \cs{TPTdoTablenotes}). \end{itemize} For figures, there is an equivalent \environment{measuredfigure} environment. It is fairly fragile though, and should be used only for a single graphic above a single caption. Note that the \cs{caption} formatting is \emph{not} adjusted by \Package{threeparttable}. You should use one of the caption-control packages to get captions that work well as table titles. In truth, \Package{threeparttable} sets \cs{abovecaptionskip} to zero for captions above the table, but more complete changes are called for. \end{document}