CARhizomes.cls

De Wiki de Rhizomes.
%% CARhizomes.cls 2006/03/22 version 0.1
%% 
%% The latest version and documentation of CARhizomes can be obtained at:
%% http://wiki.rhizomes.org/
%% 
%%
%% Contributors:
%% Benoît Vaillant (2006).
%% 
%% Copyright (c) 2006 Benoit Vaillant (benoit.vaillant@no-log.org)
%%
%% All Rights Reserved. See copyright.txt for details and a complete 
%% list of authors.
%% 
%% This latex class is free software; you can redistribute it and/or
%% modify it under the terms of the GNU Lesser General Public
%% License as published by the Free Software Foundation; either
%% version 2.1 of the License, or (at your option) any later version.
%% 
%% This latex class is distributed in the hope that it will be useful,
%% but WITHOUT ANY WARRANTY; without even the implied warranty of
%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
%% Lesser General Public License for more details.
%% 
%% You should have received a copy of the GNU Lesser General Public
%% License along with this library; if not, write to the Free Software
%% Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
%% 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Available class options 
% (e.g., \documentclass[10pt,draft]{CARhizomes} 
% 
% Draft option: document still not validated other people than the
%   author himself
%
% 10pt, 11pt, 12pt: font size
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 03/2006 v0.1 created.


\ProvidesClass{CARhizomes}[2006/03/22 revision 0.1 by Benoit Vaillant]
\typeout{-- Latex class available at:}
\typeout{       http://wiki.rhizomes.org/index.php/Latex_files.}
\NeedsTeXFormat{LaTeX2e}

\RequirePackage{xspace}
\RequirePackage{fancybox}
\RequirePackage[french]{babel}

% Here are some flags useful for document layout
\newif\if@draftversion \global\@draftversionfalse % not a draft
\newif\if@authorname \global\@authornamefalse % no author given
\newif\if@readername \global\@readernamefalse % no reader(s) given
\newif\if@dategiven \global\@dategivenfalse % no date given

\DeclareOption{draft}{\@draftversiontrue}

\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}

\ProcessOptions

\LoadClass{article}

\def\auteur#1{\@authornametrue%
\def\@auteur{#1}}

\def\relecture#1{\@readernametrue%
\def\@relecture{#1}}

\def\date#1{\@dategiventrue%
\def\@date{#1}}

\def\maketitle{%
 \if@draftversion\else\if@readername\else%
  \errmessage{At least one reader is required for a final version}
 \fi\fi

\MyBox{
\begin{center}
{\it
Compte redu
\if@dategiven%
de la r\'eunion du \@date
\else
de réunion
\fi
}
\end{center}

 \par\makeauthor
 \if@readername
    \par\makereaders
 \fi
 \par {\bf Document compil\'e le~:} \today
}
\vspace{1cm}}

\def\makeauthor{\if@authorname
  {\bf Auteur~:} \@auteur
\else%
\typeout{** The author of the document is not specified **}
\fi}

\def\makereaders{
  {\bf Document relu par~:} \@relecture
}

\newcommand{\MyBox}[1]{
\setlength{\fboxsep}{10pt}
\shadowbox{
\begin{minipage}{\textwidth}
#1
\end{minipage}}}

% warn about draft mode
\if@draftversion%
\typeout{^^J** generating a draft version of the document **^^J}
\fi

\AtBeginDocument{\maketitle}