[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [linux-team] LaTeX encore
On Thu, 6 Jul 2000, Jean-Francois Straeten <jfstraeten@compuserve.com> wrote:
>
> On Wed, Jul 05, 2000 at 10:21:27PM +0200, Pascal A. Dupuis wrote:
> >
> > sous LaTeX, comment peut-on configurer les niveaux d'entrée de la
> > table des matières ? Je voudrais qq chose qui ressemble au livre
> > Programmation Linux 2.0 (Rémy Card, Eric Dumas, Franck Mével) à
> > savoir :
> > titre de chapitre : gras, tout en majuscules
> > titre de section : normal
> > titre de sous-section : italique
>
> Je viens de regarder dans le LaTex Companion, il n'est pas bcp plus
> disert sur le formattage proprement dit... Si j'ai bien compris,
> les lignes reprenant ds la TOC les titres des différentes sections
> du document sont typesettées par les commandes \l@<type>
> (\l@section, \l@subsection, etc...) contenues dans le fichier de
> classe. En regardant dans report.cls, seules les commandes \l@part
> et \l@chapter contiennent des instructions de formattage (gras et
> taille plus grande pour \l@part) ; pas les autres (niveaux
> inférieurs). Peut-être qu'en hackant ces commandes, tu arriverais à
> tes fins ?
En effet, c'est ce qu'il faut faire. Si tu regardes ton fichier .toc,
tu verras des
\contentsline{chapter}{\numberline {1}Chapter title}{3}
qui s'étendent en
\contentsline=macro:
#1->\csname l@#1\endcsname
Donc comme tu peux imaginer, tu dois redéfinir \l@chapter qui prend
deux arguments le titre « \numberline {1}Chapter title » et la page
« 3 ». Pour les autres type de divisions, par exemple « section »,
\l@section s'étend comme \@dottedtocline{1}{1.5em}{2.3em}. Pour
faire simple, j'ai continué à employer le \@dottedtocline original.
Pour tes désidératas, je te propose l'ébauche suivante (recopiée pour
la plupart de \show\l@chapter,...) :
\makeatletter
%% Chapter toc entry:
\renewcommand\l@chapter[2]{% <title> <page>
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty }\vskip 1.0em \@plus\p@
\setlength\@tempdima{1.5em}%
\begingroup
\parindent\z@ \rightskip\@pnumwidth \parfillskip-\@pnumwidth
\leavevmode \bfseries
\advance\leftskip\@tempdima \hskip -\leftskip
\uppercase{#1}\nobreak
\hfil \nobreak \hb@xt@ \@pnumwidth {\hss #2}\par
\penalty \@highpenalty
\endgroup
\fi}
%% Section toc entry:
% \renewcommand\l@section[2]{%
% \@dottedtocline{1}{1.5em}{2.3em}{#1}{#2}}
%% Subsection toc entry:
\renewcommand\l@subsection[2]{% <titre> <numero>
\@dottedtocline{2}{3.8em}{3.2em}{\textit{#1}}{\textit{#2}}}
\makeatother
Mes quelques ¢,
ChriS
--------
Visit the Linux Supertore Online: http://www.redcorp.com !
If you want to be deleted from the list, send a mail to
majordomo@rtfm.be with "unsubscribe linux-team" in the body.
Archive of the list: http://tania.be.linux.org/