Previous Up Next
<BODY > <H2 CLASS="section"><A NAME="htoc2">I</A>  . &#X2212;Le sectionnement relatif</H2><P> <A NAME="L.relatif"></A> </P><P> Le sectionnement automatique est un outil bien connu sous L<sup>A</sup>T<sub>E</sub>X. chacun sait que dans la classes article par exemple, on dispose des commandes </P><PRE CLASS="verbatim">\section, \subsection, \subsubsection ... </PRE><P>Cependant, si la valeur du compteur est déterminée au moment de la compilation, la profondeur de la section est prédéterminée. Ainsi si l&#X2019;on insère une nouvelle section, la numérotation est décalée de manière adaptée. Bien entendu les références croisées sont également modifiées de manière adéquate.</P><P>En revanche si l&#X2019;on veut changer d&#X2019;un coup la profondeur d&#X2019;une section (et ce évidemment de manière récursive pour toutes les sections qu&#X2019;elle contient,) on est obligé de modifier le code à plusieurs endroit avec le risque certain d&#X2019;oublier des portions de code, surtout si l&#X2019;on a eu recours à des appels multiples et récursifs à des commandes du type </P><PRE CLASS="verbatim">\input ou \include. </PRE><P>Le code contenu dans le fichier <A HREF="./plnautosec.sty"><I>plnautosec.sty</I></A> permet au contraire de définir un sectionnement dont la profondeur n&#X2019;est plus absolue (déterminée par la comande utilisée </P><TABLE CLASS="display dcenter"><TR VALIGN="middle"><TD CLASS="dcell">\<I>section</I> &#X2013;&gt; \<I>subsection</I> &#X2026; </TD></TR> </TABLE><P>) mais relative. Chaque block de texte détermine sa profondeur de sectionnement en fonction (par incrémentation de 1,) du block dans lequel il est enclos. Si donc on l&#X2019;insère dans un autre block, il pourra monter ou descendre de niveau sans qu&#X2019;on ait à modifier ne serait-ce même qu&#X2019;un caractère du code. Mieux encore, un même block de texte pourra être inclus dans deux docuements différents avec des niveaux de sectionnement différents sans qu&#X2019;on ait rien à changer dans le block lui-même. Au niveau de l&#X2019;archivage et de la maintenance du texte, cela évite notamment de conserver plusieurs copies d&#X2019;un même texte, qu&#X2019;il faudrait penser à toute modifier en cas de modification ... À noter que ce dernier aspect des choses pourrait très bien être implémenté par d&#X2019;autres moyens. L&#X2019;avantage principal du sectionnement relatif reste pour moi la possibilité de modifier la structure d&#X2019;un document de manière <I>rapide et sûre</I>.</P><P>Un exemple d&#X2019;utilisation se trouve dans le fichier <A HREF="./testsect.tex"><I>testsect.tex</I></A>. </P><P>Pour ceux qui disposerait d&#X2019;un client svn et souhaiterait extraire la dernière version en date : </P><DIV CLASS="center">$ <I>svn checkout </I><I>http://pollock-nageoire.net</I><I>/protected/LaTeX/trunk</I> LaTeX </DIV><P> .</P><P>Il est possible d&#X2019;extraire les fichiers de ce repos svn sans mot de passe. En revanche, pour contribuer au projet, un mot de passe est nécessaire que vous pouvez obtenir en écrivant à <A HREF="mailto:devel@pollock-nageoire.net">devel</A>. </P> <BR><BR> <TABLE BORDER=1 CELLPADDING=1 > <TR > <EM >Copyright (©) 2009 -- 2017 <B > <I >Pierre L. Nageoire </I> </B> </EM> </TR> </TABLE> </BODY>
Previous Up Next