This assumes that the captions have no titles, just "Table 1:". Or they do allow titles but just didn't show them in the example. If not, then \l@table
will have to ignore the title and just use \numberline
(doable using saveboxes, but more complicated). Note that the margins (\leftskip
and \rightskip
) include the table and page numbers.
It turns out thet \@dottedtocline
cannot add a right margin, so had to format everything. OTOH, the only thing I changed with \listoftables
was to replace \chapter*{\listtablename}
.
\documentclass{book}
\usepackage{showframe}
\renewcommand\thetable{\arabic{table}}% as opposed to 1.1, 1.2 etc.
\makeatletter
\renewcommand*\l@table[2]{% #1 = title (with \numberline), #2 = page
\def\numberline##1{\leavevmode\llap{Table~##1: }}%
\leftskip=0.5in% left margin
\rightskip=0.75in% right margin
{#1}\leaders\hbox{$\m@th\mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill% dotted line
\rlap{ #2}\par}
\renewcommand\listoftables{%
\if@twocolumn% probably not needed
\@restonecoltrue\onecolumn
\else
\@restonecolfalse
\fi
%\chapter*{\listtablename}% defalt title
\null\vskip\baselineskip
\noindent\parbox{\textwidth}{\centering
LIST OF TABLES\\
\vskip\baselineskip
(There is no bold or italics text on LOT)}\par
\null\hfill\makebox[0.75in][l]{ PAGE}\par
\thispagestyle{plain}%
\@mkboth{% sets header
\MakeUppercase\listtablename}%
{\MakeUppercase\listtablename}%
\@starttoc{lot}%
\if@restonecol\twocolumn\fi
}
\makeatother
\begin{document}
\frontmatter
\cleardoublepage \addcontentsline{toc}{chapter}{List of Tables}% add to toc
\listoftables
\mainmatter
\chapter{Start}
Some text.
\begin{table}[ht]
\caption{}
\end{table}
\begin{table}[ht]
\caption{}
\end{table}
\end{document}
\l@table
(which does the actual formatting).