159 lines
4.6 KiB
OpenEdge ABL
159 lines
4.6 KiB
OpenEdge ABL
|
%% Original : Eric-Olivier Le Bigot
|
|||
|
%% Modifs : Fr<EFBFBD>d<EFBFBD>ric Meynadier (Frederic.Meynadier@obspm.fr)
|
|||
|
%% Modifs : Dominique Quatravaux (dom@idealx.com) - conversion en
|
|||
|
%% classe de document.
|
|||
|
%% 03/01/03
|
|||
|
|
|||
|
\NeedsTeXFormat{LaTeX2e}
|
|||
|
\ProvidesClass{cv}
|
|||
|
[2002/01/03 v0.1 Curriculum Vitae package]
|
|||
|
|
|||
|
\LoadClass[10pt]{article}
|
|||
|
\RequirePackage{ifthen}
|
|||
|
\RequirePackage{array}
|
|||
|
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
% Mise en page par d<EFBFBD>faut %
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
|
|||
|
\setlength{\textwidth}{160mm} %% Largeur de la zone texte
|
|||
|
\setlength{\oddsidemargin}{0mm} %% Texte centr<EFBFBD> sur la page
|
|||
|
|
|||
|
\pagestyle{empty} % pour ne pas indiquer de num<EFBFBD>ro de page...
|
|||
|
|
|||
|
% On d<EFBFBD>finit les pieds de page comme des \stretch de force 1,
|
|||
|
% soit 4 plus fort que celui qui est en bas du chapeau
|
|||
|
% (Cf. ci-dessous). De cette fa<EFBFBD>on, un CV qui ne remplit pas toute la
|
|||
|
% page a un bel espacement.
|
|||
|
\makeatletter
|
|||
|
\def\@textbottom{\vspace*{\stretch{1}}}
|
|||
|
\makeatother
|
|||
|
|
|||
|
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
% Param<EFBFBD>tres r<EFBFBD>glables %
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
|
|||
|
% L'utilisateur peut les red<EFBFBD>finir ceux-ci <EFBFBD>\renewcommand<EFBFBD> si besoin :
|
|||
|
|
|||
|
\newcommand{\espaceInterRubrique}{\medskip\vspace{\stretch{0.1}}}
|
|||
|
|
|||
|
% L'utilisateur peut les red<EFBFBD>finir ceux-ci <EFBFBD>\setlength<EFBFBD> si besoin :
|
|||
|
|
|||
|
\newlength{\rubriquetableauparindent} % indentation au d<EFBFBD>but d'une
|
|||
|
% ligne de droite dans un <EFBFBD>rubriquetableau<EFBFBD>. Cette longueur peut
|
|||
|
% <EFBFBD>tre n<EFBFBD>gative, auquel cas l'alignement dans le tableau se fait
|
|||
|
% compte tenu du retrait de la premi<EFBFBD>re ligne : celle-ci ne <EFBFBD>bavera<EFBFBD>
|
|||
|
% pas sur l'espace r<EFBFBD>serv<EFBFBD> pour la colonne de gauche, au lieu de cela,
|
|||
|
% l'ensemble de la colonne de droite est d<>cal<61> de l'espace correspondant.
|
|||
|
|
|||
|
\setlength{\rubriquetableauparindent}{-16pt}
|
|||
|
|
|||
|
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
% Macros pratiques %
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
|
|||
|
\def\er{$^{\hbox{er}}$}
|
|||
|
\def\ere{$^{\hbox{<EFBFBD>re}}$}
|
|||
|
\def\eme{$^{\hbox{<EFBFBD>me}}$}
|
|||
|
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
% L'environnement "rubrique" %
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
|
|||
|
% Usage : \begin{rubrique}[Indentation]{Titre} [...] \end{rubrique}
|
|||
|
% On met le texte qu'on veut <20> l'int<EFBFBD>rieur.
|
|||
|
|
|||
|
\newenvironment{rubrique}[1] % "rubrique" prend un seul argument, le titre
|
|||
|
{\espaceInterRubrique\relax%
|
|||
|
\noindent\textbf{\large #1}\par%
|
|||
|
\noindent\rule[0.5ex]{\textwidth}{0.1mm}\par}{}
|
|||
|
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
% L'environnement "rubriquetableau" %
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
|
|||
|
% Il sert <EFBFBD> rendre les tableaux, avec typiquement des dates <EFBFBD> gauche
|
|||
|
% et des activit<EFBFBD>s <EFBFBD> droite. Il s'utilise comme <EFBFBD>rubrique<EFBFBD>
|
|||
|
% ci-dessus, sauf qu'il admet un argument optionnel qui est la largeur
|
|||
|
% de la colonne de gauche, et que l'int<EFBFBD>rieur doit <EFBFBD>tre un tableau
|
|||
|
% LaTeX avec les <EFBFBD>&<26> et les <20>\\<5C> qui vont bien.
|
|||
|
% Par exemple :
|
|||
|
%
|
|||
|
% \begin{rubriquetableau}[3.5cm]{pipotage}
|
|||
|
% 1999--2000 & ligne 1\\
|
|||
|
% & ligne 2\\
|
|||
|
% 1998--1999 & ligne 1\\
|
|||
|
% [etc...]
|
|||
|
% \end{rubriquetableau}
|
|||
|
%
|
|||
|
% Lorsqu'on omet le param<EFBFBD>tre entre crochets, cela a pour effet
|
|||
|
% de donner la dimension \linewidth <EFBFBD> la premi<EFBFBD>re colonne (mais la
|
|||
|
% structure reste celle d'un tableau <EFBFBD> deux colonnes, donc ne pas oublier
|
|||
|
% d'<27>crire '\\' pour les retours <EFBFBD> la ligne).
|
|||
|
|
|||
|
\makeatletter
|
|||
|
|
|||
|
\newlength{\@cvlenB}\newlength{\@cvlenC}
|
|||
|
|
|||
|
\newenvironment{rubriquetableau}[2][\linewidth]%% "rubriquetableau"
|
|||
|
% % prend deux arguments
|
|||
|
{\bgroup\rubrique{#2}% % le second argument : titre
|
|||
|
\setlength{\@cvlenB}{#1}% % Le premier argument :indentation
|
|||
|
\setlength{\@cvlenC}{\linewidth}% % Calculs...
|
|||
|
\ifthenelse{\lengthtest{\rubriquetableauparindent<0pt}}
|
|||
|
{\addtolength{\@cvlenC}{\rubriquetableauparindent}}
|
|||
|
{}%
|
|||
|
\addtolength{\@cvlenC}{-\@cvlenB}%
|
|||
|
\addtolength{\@cvlenC}{-9pt}%
|
|||
|
\begin{tabular}[t]{p{\@cvlenB}!{%
|
|||
|
\ifthenelse{\lengthtest{\rubriquetableauparindent<0pt}}
|
|||
|
{\hspace*{\rubriquetableauparindent}}
|
|||
|
{}%
|
|||
|
}>{\setlength{\parindent}{\rubriquetableauparindent}}p{\@cvlenC}}}
|
|||
|
{\end{tabular}\egroup}
|
|||
|
|
|||
|
\makeatother
|
|||
|
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
% Le chapeau du CV %
|
|||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|||
|
|
|||
|
% Usage:
|
|||
|
% \begin{chapeau}
|
|||
|
% \begin{adresse}
|
|||
|
% Fr<EFBFBD>d<EFBFBD>ric Meynadier\\%
|
|||
|
% 83, rue de l'Ourcq\\%
|
|||
|
% 75\,019 Paris\\%
|
|||
|
% \ligne\\%
|
|||
|
% T<EFBFBD>l. : 01 40 37 04 65\\%
|
|||
|
% E-mail : \texttt{meynadie@clipper.ens.fr}
|
|||
|
% \end{adresse}
|
|||
|
% \begin{etatcivil}
|
|||
|
% N<EFBFBD> le 22/11/78\\
|
|||
|
% Nationalit<EFBFBD> Fran<EFBFBD>aise
|
|||
|
% \end{etatcivil}
|
|||
|
% \end{chapeau}
|
|||
|
|
|||
|
\newenvironment{adresse}{%
|
|||
|
\begin{minipage}{7cm}
|
|||
|
\begin{center}
|
|||
|
}
|
|||
|
{\end{center}\end{minipage}\hfill}
|
|||
|
|
|||
|
\newenvironment{etatcivil}{%
|
|||
|
\begin{minipage}{5cm}
|
|||
|
\begin{center}
|
|||
|
}
|
|||
|
{\end{center}\end{minipage}}
|
|||
|
|
|||
|
\newenvironment{chapeau}{%
|
|||
|
\def\ligne{\rule[2pt]{24pt}{1pt}}%
|
|||
|
\noindent\begin{minipage}{\linewidth}\hspace{-2cm}%
|
|||
|
}
|
|||
|
{\end{minipage}\vspace{\stretch{0.25}}}
|
|||
|
|
|||
|
|
|||
|
|