LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Forum View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Javier Bezos <[log in to unmask]>
Reply To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Date:
Mon, 20 Dec 1999 20:30:29 +0100
Content-Type:
text/plain
Parts/Attachments:
text/plain (155 lines)
\ExecuteOptions{leftlabels,nodotinlabels}

\ProcessOptions

% [...]

\def\ttl@toctop{-1000}

%[...]

\@tempskipa\@pnumwidth
\edef\@pnumwidth{\the\@tempskipa}
\advance\@tempskipa-\@tocrmarg
\edef\ttl@corr{-\the\@tempskipa}

% Now the templates:
\IgnoreWhiteSpace

\newdimen\@tempdimd
\newdimen\@tempdime
\DeclareTemplateType{contentsobject}{7}
\DeclareTemplateType{processcontents}{0}
\def\comma{,}
\DeclareTemplate{contentsobject}{JB1}{7}{
  pre-action       =f0 []         \COpre@action,
  post-action      =f0 []         \COpost@action,
  decls            =f0 []         \COobject@decl,
  left-margin      =l  [15pt]     \@tempdimd,
  right-margin     =l  [\@pnumwidth]  \@tempdime,
  right-adjust     =l  [\ttl@corr]    \@tempdimb,
  label-format     =f0 [\thecontentslabel]  \COnumber@format,
  label-width      =l  [15pt]     \@tempdima,
  title-format     =f1 [#1]       \COtitle@format,
  title-format-nolabel =f1 [\COtitle@format{#1}]  \COtitle@format@nolbl,
  page-format      =f1 [#1]       \COpnum@format,
  leaders-text     =f0 [.]        \COleaders@action,
  leaders-width    =l  [1pc]      \@tempdimc
 }
 {\IfNoValueTF{#4}
   {\let\thecontentslabel\@empty
    \ttl@numsecfalse}
   {\gdef\thecontentslabel{#4}
    \ttl@numsectrue}
  \gdef\thecontentspage{#7}
  \DoParameterAssignments
  \ttl@tocentry
   {\@ne}
   {#3}
   {\@tempdimd}
   {\contentsmargin[\@tempdimb]{\@tempdime}
    \COpre@action
    \COobject@decl}
   {
     {\contentslabel[\COnumber@format]{\@tempdima}\COtitle@format}
     {\hspace*{-\@tempdima}\COtitle@format@nolbl}
   }
   {\titlerule*[\@tempdimc]{\COleaders@action}
    \contentspage[\COpnum@format{\thecontentspage}]}
   {\COpost@action}
   {#5}
   {}}


\DeclareTemplate{contentsobject}{JB2}{7}{
  pre-action       =f0 []         \COpre@action,
  post-action      =f0 []         \COpost@action,
  decls            =f0 []         \COobject@decl,
  left-margin      =l  [15pt]     \@tempdimd,
  right-margin     =l  [\@pnumwidth]    \@tempdime,
  label-format     =f0 [\thecontentslabel.\ ]  \COnumber@format,
  title-format     =f1 [#1]       \COtitle@format,
  title-format-nolabel =f1 [\COtitle@format{#1}]  \COtitle@format@nolbl,
  page-format      =f1 [{,~#1}]     \COpnum@format,
  punct-sep        =f0 [;\ ]        \COpunct@sep,
  punct-end        =f0 [.]        \COpunct@end,
  punct-sup        =f0 [;\ ]        \COpunct@sup,
  punct-sup-sup    =f0 [;\ ]        \COpunct@supsup,
  punct-sub        =f0 [;\ ]        \COpunct@sub
 }
 {\IfNoValueTF{#4}
   {\let\thecontentslabel\@empty
    \ttl@numsecfalse}
   {\gdef\thecontentslabel{#4}
    \ttl@numsectrue}
  \gdef\thecontentspage{#7}
  \DoParameterAssignments
  \expandafter\protected@xdef\csname ttle@#3\endcsname{\COpunct@end}
  \ttl@tocentry
   {\z@}
   {#3}
   {\@tempdimd}
   {\contentsmargin[\@tempdimb]{\@tempdime}
    \COpre@action
    \COobject@decl}
   {
     {\COnumber@format\COtitle@format}
     {\COtitle@format@nolbl}
   }
   {\COpnum@format{\thecontentspage}}
   {\protect\contentsafter{\COpunct@sub}{\COpunct@sep}
                          {\COpunct@sup}{\COpunct@supsup}}
   {#5}
   {}}

\DeclareTemplate{processcontents}{JK}{0}{
  start-action   =f0 [\relax]   \COstart@action,
  end-action     =f0 [\relax]   \COend@action,
  file-name      =n  [\jobname] \COfile@name,
  file-extension =n             \COextension,
  contents-depth =c  [2]        \c@tocdepth,
  collection-id  =n  []         \COcollection@id,
  heading        =f0 [\section*]\COheading,   %actully use some instance
  name           =n  [\contentsname] \COname,
  header-format  =f0 [\MakeUpperCase] \COheader@format
}
{
 \DoParameterAssignments
 \COheading{\COname
      \@mkboth{\CO@header@format\COname}{\CO@header@format\COname}}
 \begingroup
 \UseCollection{contentsobject}{\COcollection@id}  %Is this wrong?
 \makeatletter
 \COstart@action
 \@input{\[log in to unmask]\COextension}
 \if@filesw
   \expandafter\newwrite\csname tf@\COextension\endcsname
   \immediate\openout \csname tf@\COextension\endcsname
                            \[log in to unmask]\COextension\relax
 \fi
 \@nobreakfalse
 \endgroup
}


\DeclareInstance{processcontents}{tableofcontents}{JK}{
   file-extension = toc
  }

\DeclareDocumentCommand{\contentsobject}{mmmmmmm}
  {\UseInstance{contentsobject}{#3}{#1}{#2}{#3}{#4}{#5}{#6}{#7}}

\DeclareDocumentCommand{\JKtableofcontents}{}{
  \UseInstance{processcontents}{tableofcontents}
  }

\newcounter{contentscounter}
\DeclareDocumentCommand{\addcontentsobject}{mmmm}{
\stepcounter{contentscounter} %or refstep?
\addtocontents{toc}{

\contentsobject{\number\c@contentscounter}{#1}{#2}{#3}{#4}{}{\thepage}}}

\endinput
============================== xtitletoc.sty ends

ATOM RSS1 RSS2