% Classe RI3.cls corrigée le 17.05.2004 par Jean Charlet %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %% Attention, à chaque fois que je remts à jour \institute avec llncs, %% j'ai des pbs sans fin avec \thanks qui est souvent responsable de %% tout. À ce jour (21.05.2004), j'ai donc repris le dernier code de %% llncs et l'est simplifié des dernièrs ajouts qui comptent les auteurs %% et gèrent les titres de façon plus sophistiquée. Pour la prochaine %% fois ? %% %% Reste un petit pb : créer une virgule en exposant pour séparer les %% appels sur les institutions. Il semblait que llncs le faisait via %% \fnmsep, surotu qu'ils onta abandonné l'usage de \fnsymbol mais, %% bof... %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Classe RI3.cls adpatée de EEGDRI3 par Jean Charlet % Classe EEGDRI3.cls adpatée de ic2000 par Jean Charlet % % Classe IC'2000 (ic2000.cls) par Jean Charlet % % adaptée de la classe IC'99 (afia99.cls) développée par Fabien Torre \NeedsTeXFormat{LaTeX2e} \ProvidesClass{RI3}[2004/5/19] \LoadClass[10pt,twoside,a4paper]{article} % Paquetages necessaires \RequirePackage{vmargin} \RequirePackage{theorem} \RequirePackage{times} \RequirePackage{url} \RequirePackage{xspace} % En fonction des paramètres de l'installation, il faut théoriquement % Mais c'est mieux ds le fichier latexé %\RequirePackage[latin1]{inputenc} %\RequirePackage[T1]{fontenc} %% Ouverture et fermeture du document %% Impossible d'utiliser AtBeginDocument et AtEndDocument car french redéfinit %% lui même les begin et end de document... d'où la ruse... %% Ouverture et fermeture du document %\let\BDocOri\document %\def\document{\BDocOri %\maketitle %\renewcommand{\kwname}{{\bf Mots clef} :} %} %\let\EDocOri\enddocument %\def\enddocument{\end{multicols}\EDocOri} % Format papier et marges \setpapersize{A4} \setlength{\textheight}{190mm} % 162 au départ \setlength{\textwidth}{107mm} \setlength{\oddsidemargin}{53mm} \setlength{\evensidemargin}{53mm} \setlength{\topmargin}{41mm} % 69 \parindent=.3cm % french % %\renewcommand{\kwname}{{\bf Mots clef} :} % % gérer les auteurs et leurs institutions % piqué ds llncs.cls de Springer-Verlag \newcounter{@inst} \newcounter{@auth} %\newcounter{auco} \newdimen\instindent %\newbox\authrun %\newtoks\authorrunning %\newtoks\tocauthor %\newbox\titrun %\newtoks\titlerunning %\newtoks\toctitle \def\clearheadinfo{\gdef\@author{No Author Given}% \gdef\@title{No Title Given}% \gdef\@subtitle{}% \gdef\@institute{No Institute Given}% \gdef\@thanks{}% % \global\titlerunning={}\global\authorrunning={}% % \global\toctitle={}\global\tocauthor={} } \def\institute#1{\gdef\@institute{#1}} \def\institutename{\par \begingroup \parskip=\z@ \parindent=\z@ \setcounter{@inst}{1}% \def\and{\par\stepcounter{@inst}% \noindent$^{\@fnsymbol\the@inst}$\enspace\ignorespaces}% % \setbox0=\vbox{\def\thanks##1{}\@institute}% \setbox0=\vbox{\@institute}% \ifnum\c@@inst=1\relax \gdef\fnnstart{0}% \else \xdef\fnnstart{\c@@inst}% \setcounter{@inst}{1}% \noindent$^{\@fnsymbol\the@inst}$\enspace \fi \ignorespaces \@institute\par \endgroup} %% \def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or %% {\star\star\star}\or \dagger\or \ddagger\or %% \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger %% \or \ddagger\ddagger \else\@ctrerr\fi}} \def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or \dagger\or \ddagger\or \mathchar "278\or \mathchar "27B\else\@ctrerr\fi}} %\def\inst#1{\unskip$^{#1}$} \def\inst#1{\unskip$^{\@fnsymbol#1}$} \def\fnmsep{\unskip$^,$} %% \def\email#1{{\tt#1}} %% \AtBeginDocument{\@ifundefined{url}{\def\url#1{#1}}{}% %% \@ifpackageloaded{babel}{% %% \@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}% %% \@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}% %% \@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}% %% }{\switcht@@therlang}% %% } %% \def\homedir{\~{ }} \def\subtitle#1{\gdef\@subtitle{#1}} \clearheadinfo \renewcommand\maketitle{\newpage % \refstepcounter{chapter}% \stepcounter{section}% \setcounter{section}{0}% \setcounter{subsection}{0}% \setcounter{figure}{0} \setcounter{table}{0} \setcounter{equation}{0} \setcounter{footnote}{0}% \begingroup \parindent=\z@ \renewcommand\thefootnote{\@fnsymbol\c@footnote}% \if@twocolumn \ifnum \col@number=\@ne \@maketitle \else \twocolumn[\@maketitle]% \fi \else \newpage \global\@topnum\z@ % Prevents figures from going at top of page. \@maketitle \fi \thispagestyle{empty}\@thanks % \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}% \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}% % \instindent=\hsize % \advance\instindent by-\headlineindent %% \if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else %% \addcontentsline{toc}{title}{\the\toctitle}\fi %% \if@runhead %% \if!\the\titlerunning!\else %% \edef\@title{\the\titlerunning}% %% \fi %% \global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}% %% \ifdim\wd\titrun>\instindent %% \typeout{Title too long for running head. Please supply}% %% \typeout{a shorter form with \string\titlerunning\space prior to %% \string\maketitle}% %% \global\setbox\titrun=\hbox{\small\rm %% Title Suppressed Due to Excessive Length}% %% \fi %% \xdef\@title{\copy\titrun}% %% \fi %% % %% \if!\the\tocauthor!\relax %% {\def\and{\noexpand\protect\noexpand\and}% %% \protected@xdef\toc@uthor{\@author}}% %% \else %% \def\\{\noexpand\protect\noexpand\newline}% %% \protected@xdef\scratch{\the\tocauthor}% %% \protected@xdef\toc@uthor{\scratch}% %% \fi %% \addcontentsline{toc}{author}{\toc@uthor}% %% \if@runhead %% \if!\the\authorrunning! %% \value{@inst}=\value{@auth}% %% \setcounter{@auth}{1}% %% \else %% \edef\@author{\the\authorrunning}% %% \fi %% \global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}% %% \ifdim\wd\authrun>\instindent %% \typeout{Names of authors too long for running head. Please supply}% %% \typeout{a shorter form with \string\authorrunning\space prior to %% \string\maketitle}% %% \global\setbox\authrun=\hbox{\small\rm %% Authors Suppressed Due to Excessive Length}% %% \fi %% \xdef\@author{\copy\authrun}% %% \markboth{\@author}{\@title}% %% \fi \endgroup \setcounter{footnote}{\fnnstart}% \clearheadinfo} % %% \def\@maketitle{\newpage %% \begin{center}% %% %% {\sffamily\scshape\Large \vskip .3cm\ %% %% \pretolerance=10000 %% %% \@chaptertot \par}\vskip .05cm %% {\LARGE \bfseries\boldmath \vskip .3cm\ %% \pretolerance=10000 %% \@title \par}\vskip .3cm %% {\large\rm\lineskip .5em %% \@author\vskip.46cm} %% {\normalsize\rm\institutename} %% \end{center}% %% } \def\@maketitle{\newpage \markboth{}{}% %% \def\lastand{\ifnum\value{@inst}=2\relax %% \unskip{} \andname\ %% \else %% \unskip \lastandname\ %% \fi}% %% \def\and{\stepcounter{@auth}\relax %% \ifnum\value{@auth}=\value{@inst}% %% \lastand %% \else %% \unskip, %% \fi}% \begin{center}% \let\newline\\ {\LARGE \bfseries\boldmath ~\vskip 2.71ex\ \pretolerance=10000 \@title \par}\vskip .3cm %% \if!\@subtitle!\else {\large \bfseries\boldmath %% \vskip -.65cm %% \pretolerance=10000 %% \@subtitle \par}\vskip .8cm\fi %% \setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}% %% \def\thanks##1{}\@author}% %% \global\value{@inst}=\value{@auth}% %% \global\value{auco}=\value{@auth}% %% \setcounter{@auth}{1}% {\large\lineskip .6ex \noindent\ignorespaces \@author\vskip.46cm} {\normalsize\rm\institutename} \end{center}% } %% \def\inst#1{\unskip $^{\@fnsymbol#1}$} %% %\def\inst#1{\unskip #1} %% %\def\subtitle#1{\gdef\@subtitle{#1}} %% %\def\@subtitle{} %% \renewcommand\maketitle{\par %% \begingroup %% \renewcommand\thefootnote{\@fnsymbol\c@footnote}% %% \newpage %% \global\@topnum\z@ % Prevents figures from going at top of page. %% \@maketitle %% \thispagestyle{empty}\@thanks %% \endgroup %% \setcounter{footnote}{0}% %% \global\let\thanks\relax %% \global\let\maketitle\relax %% \global\let\@maketitle\relax %% \global\let\@thanks\@empty %% \global\let\@author\@empty %% \global\let\@date\@empty %% \global\let\@title\@empty %% \global\let\title\relax %% \global\let\author\relax %% \global\let\date\relax %% \global\let\and\relax %% } %% \def\@maketitle{\newpage %% \begin{center}% %% %% {\sffamily\scshape\Large \vskip .3cm\ %% %% \pretolerance=10000 %% %% \@chaptertot \par}\vskip .05cm %% {\LARGE \bfseries\boldmath \vskip .3cm\ %% \pretolerance=10000 %% \@title \par}\vskip .3cm %% {\large\rm\lineskip .5em %% \@author\vskip.46cm} %% {\normalsize\rm\institutename} %% \end{center}% %% } %% Les mots-clés : repiqué avec un nom différent sur french pour ne pas %% entrer en conflit, dans le but de (1) corriger la faute d'orthographe de %% certaines versions (pas de S) e t(2) de les envoyer à gauche au niveau dud %% résumé \newcommand\motscles[1]{\vspace{-0.1ex}\flushleft% {\bfseries\itshape Mots-cl\'es}~: #1} %% Reprise de \abstract pour italiquer le titre %% Reprise de \abstract pour faire la version anglaise \if@titlepage \renewenvironment{abstract}{% \titlepage \null\vfil \@beginparpenalty\@lowpenalty \begin{center}% \bfseries\itshape \abstractname \@endparpenalty\@M \end{center}\itshape}% {\par\vfil\null\endtitlepage} \else \renewenvironment{abstract}{% \if@twocolumn \section*{\abstractname}% \else \small \begin{center}% {\bfseries\itshape \abstractname\vspace{-.5em}\vspace{\z@}}% \end{center}% \quotation \fi\itshape} {\if@twocolumn\else\endquotation\fi} \fi \if@titlepage \newenvironment{imposenglishabstract}{% \titlepage \null\vfil \@beginparpenalty\@lowpenalty \begin{center}% \bfseries\itshape Abstract \@endparpenalty\@M \end{center}\itshape}% {\par\vfil\null\endtitlepage} \else \newenvironment{imposenglishabstract}{% \if@twocolumn \section*{Abstract}% \else \small \begin{center}% {\bfseries\itshape Abstract\vspace{-.5em}\vspace{\z@}}% \end{center}% \quotation \fi\itshape} {\if@twocolumn\else\endquotation\fi} \fi \newcommand\keywords[1]{\vspace{-0.1ex}\flushleft% {\bfseries\itshape Key-words}: #1} % un titre court à donner pour les entêtes impaires si celui d'origine est % trop grand 40... et la même chose pour le titre de l'ouvrage sur les pages % paires \def\shorttitle#1{\gdef\@shorttitle{#1}} \def\@shorttitle{\@title} \def\shortouvrage#1{\gdef\@shortouvrage{#1}} \def\@shortouvrage{} % le numéro du chapitre en toute lettre %\def\chapternumber#1{\gdefA\@chapternumber{#1}} %\def\chaptertot{\gdef\@chaptertot{toto}} %\def\@chaptertot{{Chapitre \@chapternumber}} % les entêtes \def\ps@myheadings{% \let\@oddfoot\@empty\let\@evenfoot\@empty \def\@oddhead{\hfil\@shorttitle\hspace{5mm}\thepage}% \def\@evenhead{\thepage\hspace{5mm}\@shortouvrage\hfil}% \let\@mkboth\@gobbletwo \let\sectionmark\@gobble \let\subsectionmark\@gobble } \pagestyle{myheadings} \pagestyle{empty} % Les titres en sans-serif qd nécessaire \renewcommand\section{\@startsection {section}{1}{\z@}% {-3.5ex \@plus -1ex \@minus -.2ex}% {2.3ex \@plus.2ex}% {\sffamily\Large\scshape\bfseries}} \renewcommand\subsection{\@startsection{subsection}{2}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\sffamily\large\bfseries}} \renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\normalfont\normalsize\bfseries}} \renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {- 3.00ex\@plus -0.5ex \@minus -.15ex}% {1.2ex \@plus .1ex}% {\normalfont\normalsize\itshape\bfseries}} \renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% {3.25ex \@plus1ex \@minus .2ex}% {-1em}% {\normalfont\normalsize\itshape}} % pour le séparateur des footnotes \renewcommand\footnoterule{% \kern-3\p@ \hrule\@width 5cm \kern2.6\p@} \addtolength{\footnotesep}{2pt} % Styles : page, biblio, theoreme \bibliographystyle{RI3} \theoremstyle{break} \renewenvironment{thebibliography}[1] {\section*{\refname \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}}% \list{\@biblabel{\@arabic\c@enumiv}}% {\settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \itemsep0\p@\parsep3\p@ \@plus1\p@ \@minus\p@ \@openbib@code \usecounter{enumiv}% \let\p@enumiv\@empty \renewcommand\theenumiv{\@arabic\c@enumiv}}% \sloppy \clubpenalty4000 \@clubpenalty \clubpenalty \widowpenalty4000% \sfcode`\.\@m}