% \iffalse %<*never> \documentclass{ltxdoc} \usepackage[T1]{fontenc} \usepackage[frenchb]{babel} \usepackage{ESIEEcv} \parindent=15pt \def\fqo{<<} \def\fqc{>>} \AtBeginDocument{\CodelineIndex\EnableCrossrefs} \AtEndDocument{\PrintIndex} \begin{document} \def\docdate{1997/12/14} \CheckSum{213} \DocInput{ESIEEcv.dtx} \end{document} % % \fi % % \DoNotIndex{\newline,\rightslice,\small,\itshape,\@@apports,\@@competence} % \DoNotIndex{\@@date,\@@descr,\@@duree,\@@lieu,\@@titre,\\,\aftergroup} % \DoNotIndex{\bigskip,\csname,\def,\edef,\else,\empty} % \DoNotIndex{\endcsname,\endtabularx,\ensuremath,\expandafter} % \DoNotIndex{\fi,\global,\ifx,\large,\largeurcolonne,\let} % \DoNotIndex{\linewidth,\medskip,\newcommand,\newenvironment} % \DoNotIndex{\newlength,\pagestyle,\par,\parindent,\phantom} % \DoNotIndex{\RequirePackage,\scshape,\setlength,\ta,\tb} % \DoNotIndex{\tabularx,\tb,\textbf,\the,\toksdef,\triangleright} % % \setcounter{tocdepth}{1} % \GetFileInfo{ESIEEcv.sty} % %\iffalse \let\fqo\textquotedblleft % \let\fqc\textquotedblright\fi % % \title{The \textsf{ESIEEcv}\thanks{Ce document d\'ecrit la version % \fileversion{} du package. La documentation est dat\'ee de \docdate.} package} % \author{Benjamin \textsc{Bayart}\\ % Institut Gaspard \textsc{Monge}\\ % Universit\'e de Marne-la-Vall\'ee\\ % \texttt{bayartb@edgard.fdn.fr} % \and % Pierre \textsc{Le Maguet}\\ % Valeo Borg\\ % Karlsruhe} % \date{Imprim\'e le \today\\Derni\`ere mise \`a jour le \filedate} % \maketitle % \newcommand{\Cde}[1]{\texttt{\char92{}#1}} % % \begin{abstract} % Ce document d\'ecrit l'utilisation du package \textsf{ESIEEcv} dont le but % est de permettre la mise en page de curriculum-vit\ae{} de mani\`ere simple % et efficace, tels que les entreprises fran\c{c}aises les attendent. % % Il a \'et\'e \'ecrit par moi (Benjamin \textsc{Bayart}) sur une id\'ee % originale (pour ce qui est de la mise en page et de la syntaxe finale) de % Pierre \textsc{Le Maguet}. % % \bigskip % % \noindent\emph{English}~: % % This document describe the use of the package \textsf{ESIEEcv} to setup % curriculum vit\ae{} efficiently and easily as french employers will expect it. % % The current documentation is in French. % % This package was written by my (Benjamin Bayart) from an original idea by % Pierre Le Maguet (regarding design and final syntax). % \end{abstract} % % \tableofcontents % % \clearpage % % \section{\fqo~The name of the game~\fqc} % % Ce package s'appel \textsf{ESIEEcv} simplement parce que Pierre et moi % \'etions \'etudiants \`a l'ESIEE\footnote{\'Ecole Sup\'erieur d'Ing\'enieurs % en \'Electronique et \'Electrotechnique.} lorsqu'il a \'et\'e \'ecrit pour % la premi\`ere fois. % % \section{Organisation du document} % % Un cv, pour ce package, est divis\'e en plusieurs rubriques, % classiquement 3~: \fqo~Formation initiale~\fqc, \fqo~Exp\`eriences~\fqc, et % \fqo~Divers~\fqc. % % En plus des rubriques, on trouvera g\'en\'eralement au d\'ebut du cv % un texte libre pr\'esentant la personne. % % Dans chaque rubrique, on trouve des sous-rubriques permettant de % d\'ecrire chaque information du cv. Par exemple une sous-rubrique par % dipl\^ome dans la rubrique \fqo~formation~\fqc et une par exp\`erience % dans la rubrique suivante. % % Dans la troisi\`eme rubrique, les sous-rubrique sont g\'en\'eralement % beaucoup plus simples, pour ce qu'elles contiennent moins % d'information; typiquement pour chaque langue on donne juste son % niveau, alors que pour un stage ou un ancien emploi on donne plus % d'informations. % % Les sous-rubriques les plus complexes contiendront des appels aux % commandes \Cde{Titre}, \Cde{Date}, \Cde{Duree}, \Cde{Descr}, et \Cde{Apport}. % Toutes ces commandes sont optionnelles (si un champ est ommi, la mise % en page est corrig\'ee en cons\'equence), et la commande \Cde{Apport} % peut \^etre utilis\'ee plusieurs fois pour souligner les points forts % d'une exp\`erience ou d'une formation. % % Les sous-rubriques simples comportent deux champs~: % \Cde{Descr} et \Cde{Competence}. En g\'en\'eral, on place dans la % comp\'etence, par exemple, la langue concern\'ee, et dans la % description le niveau que l'on a. % % \section{Syntaxe exacte} % % Un exemple de sous-rubrique simple~: %\begin{verbatim} %\begin{sousrubrique} %\Competence{Espagnol} %\Descr{Niveau scolaire} %\end{sousrubrique} %\end{verbatim} % % Un exemple de sous-rubrique complexe~: %\begin{verbatim} %\begin{sousrubrique} %\Titre{Ing\'enieur ESIEE (\'Ecole Sup\'erieurs d'Ing\'enieurs % en \'Electronique et \'Electrotechnique)} %\Date{1991-1996} %\Duree{5 ans} %\Descr{Sp\'ecialisation en informatique.} %\Apport{Programmation syst\`eme} %\Apport{Conception et programmation objet} %\Apport{Th\'eorie des langages} %\Apport{Langages interpr\'et\'es} %\Apport{Programmation logique} %\Apport{Programmation des interfaces graphiques} %\Apport{SGBD} %\end{sousrubrique} %\end{verbatim} % % \emph{Attention}, si on ne souhaite donner que le lieu et pas le % titre, il est souhaitable de faire le contraire, quitte \`a devoir % forcer le choix de la fonte dans la donn\'ee. En effet, le % changement de ligne qui doit avoir lieu entre le titre et la % description n'aura effectivement lieu que si et seulement s'il y a % un titre \emph{et} une description. % % Une rubrique contiendra exclusivement une ou des sous-rubrique, et % on devra lui passer un titre, par exemple~: %\begin{verbatim} %\begin{rubrique}{Formation initiale} %\begin{sousrubrique} %\Titre{Baccalaur\'eat... %\end{sousrubrique} %\end{rubrique} %\end{verbatim} % % \section{Param\`etrage du syst\`eme} % % Un certain nombre de choix typographiques peuvent \^etre modifi\'es de % mani\`ere simple, en red\'efinissant des commandes. % % La premi\`ere chose que l'on peut modifier est la structure m\^eme des % apports. Par d\'efaut, avant chaque apport est plac\'e le symbole % $\triangleright$ suivi d'un espace; et apr\`es chaque apport un % point et un changement de ligne. Avant l'ensemble des apports est % plac\'e un changement de ligne, et apr\`es l'ensemble des apports % rien. % % Ces quatre choix sont symbolis\'es par les commandes % \Cde{PreApport}, \Cde{PostApport}, \Cde{PrePreApports} et % \Cde{PostPostApports}. % % Pour ma part, j'aime utiliser le symbole \Cde{rightslice} du package % \textsf{stmaryrd} et ne pas changer de ligne entre deux % apports. Pour cela, je red\'efini les commandes \Cde{PreApport} et % \Cde{PostApport} comme suit~: %\begin{verbatim} %\renewcommand{\PreApport}{\ensuremath{\rightslice} } %\renewcommand{\PostApport}{. } %\end{verbatim} % % On peut aussi, en red\'efinissant les commandes \Cde{FonteApport}, % \Cde{TailleApport}, \Cde{FonteLieu} et \Cde{FonteTitre} changer % certains d\'etails de la mise en forme. % % Enfin, la colonne de gauche (celle qui contient les dates dans le % document final) est de largeur fixe. Cette largeur (trois % centim\`etres par d\'efaut) est d\'efinit par la longueur % \Cde{largeurcolonne} que l'on peut ais\'ement red\'efinir, par % exemple en faisant~: %\begin{verbatim} %\setlength{largeurcolonne}{2.5cm} %\end{verbatim} % % \section{Le code utile \`a tous} % % Tout d'abord les b\^etises habituelles permettant d'identifier le % package~: % % \begin{macrocode} %<*package> \ProvidesPackage{ESIEEcv}[1997/12/29 v2.0a Style ESIEEcv] \RequirePackage{tabularx} % \end{macrocode} % % On pr\'ecise que l'on ne veut pas de num\'ero de page, ni % d'indentation de paragraphes~: % % \begin{macrocode} \pagestyle{empty} \parindent=0pt % \end{macrocode} % % Enfin la d\'efinition des huit commandes utilis\'ees comme % param\`etres par le reste du package~: % \begin{macro}{\PreApport} % \begin{macro}{\PostApport} % \begin{macro}{\PrePreApports} % \begin{macro}{\PostPostApports} % \begin{macro}{\FonteApport} % \begin{macro}{\TailleApport} % \begin{macro}{\FonteLieu} % \begin{macro}{\FonteTitre} % \begin{macrocode} \newcommand{\PreApport}{\ensuremath{\triangleright} } \newcommand{\PostApport}{.\newline} \newcommand{\PrePreApports}{\newline} \newcommand{\PostPostApports}{} \newcommand{\FonteApport}{\itshape} \newcommand{\TailleApport}{\small} \newcommand{\FonteLieu}{\scshape} \newcommand{\FonteTitre}{\scshape} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \StopEventually % % \section{Le code le moins utile} % % \subsection{D\'efinitions des longueurs et des variables de % m\'emorisation} % % \begin{macrocode} \newlength{\Tampon} \newlength{\Offset} \newlength{\largeurcolonne} \setlength{\largeurcolonne}{3cm} \newlength{\Space} \setlength{\Space}{3mm} \def\@@date{} \def\@@titre{} \def\@@duree{} \def\@@lieu{} \def\@@descr{} \def\@@apports{} \def\@@competence{} % \end{macrocode} % % \subsection{Le syst\`eme de gestion de liste} % % Pour toute explication, voire annexe D du \TeX{book}. % % \begin{macro}{\CV@AppendItem} % \begin{macrocode} \toksdef\ta=0 \toksdef\tb=2 \def\CV@AppendItem#1#2{% \ta={#1}% \tb=\expandafter{#2}% \global\edef#2{\the\tb\the\ta}} % \end{macrocode} % \end{macro} % % \subsection{Initialisation du syst\`eme} % % \begin{macro}{\CV@ajout@apport} % Ajoute un texte donn\'e \`a la liste des apports en cours en % utilisant \Cde{CV@AppendItem}. % \begin{macrocode} \newcommand{\CV@ajout@apport}[1] {\CV@AppendItem{\PreApport#1\PostApport}{\@@apports}} % \end{macrocode} % \end{macro} % % \begin{macro}{\CV@init} % D\'efinit la commande \Cde{\@@\textit{cde}} dont le nom est pass\'e % en param\`etre. L'int\'er\^et est simplement d'am\'eliorer la % compr\'ehension lors de la lecture du code~: % \begin{macrocode} \newcommand{\CV@init}[1] {\expandafter\global\expandafter\def\csname @@#1\endcsname{}} % \end{macrocode} % \end{macro} % % \subsection{Code de gestion des sous-rubriques} % % \begin{macro}{sousrubrique} % \begin{macrocode} \newenvironment{sousrubrique} % \end{macrocode} % On commence par initialiser toutes les variables~: % \begin{macrocode} {\CV@init{apports}\CV@init{date}\CV@init{titre}\CV@init{duree}% \CV@init{lieu}\CV@init{descr}\CV@init{competence}\CV@init{compcomment}% % \end{macrocode} % Enfin on d\'efinit (localement donc) les six commandes permettant % la m\'emorisation des donn\'ees de la sous-rubrique en cours. % \begin{macrocode} \newcommand{\Date}[1]{\global\def\@@date{##1}} \newcommand{\Duree}[1]{\global\def\@@duree{##1}} \newcommand{\Titre}[1]{\global\def\@@titre{##1}} \newcommand{\Lieu}[1]{\global\def\@@lieu{##1}} \newcommand{\Descr}[1]{\global\def\@@descr{##1}} \newcommand{\Competence}[1]{\global\def\@@competence{##1}} \let\Apport\CV@ajout@apport } % \end{macrocode} % % Toutes les informations collect\'ees vont maintenant \^etre mises en % forme. Pour cela, on les balise avec les commandes \TeX{} % appropri\'ees, puis on les m\'emorise dans une liste % (\Cde{CV@delayed}). Le contenu de la liste sera \fqo~\'eject\'e~\fqc % une fois l'environnement termin\'e. En effet, ces donn\'ees peuvent % g\'en\'erer plusieurs lignes dans le tableau qui formera le cv. Ce % qui nous force \`a ce qu'elles ne soient pas incluses dans un % groupe. Or l'environnement est un groupe. % % Commen\c{c}ons pas initialiser cette liste. % \begin{macrocode} {% \global\def\CV@delayed{} % \end{macrocode} % % En premier, la date. Elle est mise en gras dans la premi\`ere % colonne, suivie d'un changement de ligne s'il y a une dur\'ee. % En effet, s'il y a une date et pas de dur\'ee, il faut supprimer le % changement de ligne de la premi\`ere colonne, sans quoi la case % correspondante du tableau serait contrainte \`a une hauteur d'au % moins deux ligne, ce qui n'est pas acceptable. % \begin{macrocode} \ifx\@@date\empty\else \CV@AppendItem{\textbf{\@@date}% \ifx\@@duree\empty\else \newline \fi }{\CV@delayed}% \fi % \end{macrocode} % La dur\'ee est ajout\'ee, si n\'ecessaire, entre parenth\`ese, qu'il % y ait eu une date ou pas. On est encore dans la premi\`ere colonne. % \begin{macrocode} \ifx\@@duree\empty\else \CV@AppendItem{(\@@duree)}{\CV@delayed}% \fi % \end{macrocode} % % S'il y a une comp\'etence de pr\'ecis\'ee, elle est ajout\'ee dans % la premi\`ere colonne. On notera que le package n'impose pas que si % on travaille avec une sous-rubrique complexe alors il n'y a pas de % competence. De m\^eme il n'impose pas que si on est dans une % sous-rubrique simple il doive ne pas y avoir de comp\'etence. C'est un % choix de design~: toujours faire simple. De plus, cela permet de % remplacer la date par n'importe quoi d'autre d'int\'eressant en ne % mettant ni date ni dur\'ee mais simplement une comp\'etence, et ce % m\^eme dans une sous-rubrique complexe. % \begin{macrocode} \ifx\@@competence\empty\else \CV@AppendItem{\@@competence}{\CV@delayed} \fi % \end{macrocode} % % Maintenant, la premi\`ere colonne est compl\`ete. On peut donc % passer \`a la seconde. Pour ce, on ajoute un \texttt{\&}. % \begin{macrocode} \CV@AppendItem{&}{\CV@delayed} % \end{macrocode} % % Le lieu et le titre sont mis en premier dans la seconde colonne, % chacun dans la bonne fonte, et en les faisant suivre d'un point. Un % espace est ajout\'e entre les deux si et seulement si les deux sont % pr\'esents. % \begin{macrocode} \ifx\@@lieu\empty\else \CV@AppendItem{{\FonteLieu{\@@lieu}.}}{\CV@delayed} \fi \ifx\@@lieu\empty\else\ifx\@@titre\empty\else \CV@AppendItem{ }{\CV@delayed} \fi\fi \ifx\@@titre\empty\else \CV@AppendItem{{\FonteTitre{\@@titre}.}}{\CV@delayed} \fi % \end{macrocode} % % S'il y a un titre \emph{et} une description, on ins\`ere un sauf de % ligne dans la seconde colonne (celle de droite). Ensuite, on ajoute, % si elle existe, la description. % \begin{macrocode} \ifx\@@titre\empty\else\ifx\@@descr\empty\else \CV@AppendItem{\newline}{\CV@delayed} \fi\fi \ifx\@@descr\empty\else \CV@AppendItem{\@@descr}{\CV@delayed}% \fi % \end{macrocode} % % Ne reste plus comme donn\'ee \`a ajouter que les apports dans la % bonne fonte et dans la bonne taille. On ajoute bien entendu le % \Cde{PrePreApports} et le \Cde{PostPostApports}. % \begin{macrocode} \ifx\@@apports\empty\else \CV@AppendItem{{\TailleApport \FonteApport {\PrePreApports\@@apports\PostPostApports}}}% {\CV@delayed}% \fi % \end{macrocode} % % Maintenant que toutes les donn\'ees ont \'et\'e convenablement % balis\'ees dans la liste, ne reste plus qu'a ajouter le changement % de ligne dans le tableau. Ensuite, on \fqo~\'ejectera~\fqc le % contenu de la liste une fois le groupe correspondant \`a % l'environnement termin\'e. % \begin{macrocode} \CV@AppendItem{\\}{\CV@delayed} \aftergroup\CV@delayed } % \end{macrocode} % \end{macro} % % \section{Code de gestion des rubriques} % % \begin{macro}{rubrique} % Cet environnement est en fait extr\^emement simple. Il met son titre % en gros et en gras, puis commence un tableau dont la largeur sera % exactement celle de la page. % \begin{macrocode} \newenvironment{rubrique}[1]{%% \bigskip \textbf{\large #1\phantom{Pj}} \medskip \par \tabularx{\linewidth}{p{\largeurcolonne}X}} {\endtabularx} % \end{macrocode} % \end{macro} % % \begin{macrocode} % % \end{macrocode} % % \iffalse %<*cvtest> \documentclass[a4paper]{article} \usepackage[T1]{fontenc} \usepackage[frenchb]{babel} \usepackage{ESIEEcv} \oddsidemargin 0in \evensidemargin 0in \textwidth\paperwidth \advance \textwidth by -2in \topmargin 0in \textheight\paperheight \advance\textheight -2in \headheight 0pt \headsep 0pt \footskip 0pt \renewcommand{\PostApport}{. } \begin{document} \noindent\hspace*{\tabcolsep}\begin{minipage}{0.4\linewidth} {\large Benjamin \textsc{Bayart}}\\ 50, rue de Chamb\'ery\\ 97~123 LOIN\\[3pt] T\'el~: 09~12~11~16~10\\ Mail~: \texttt{bayartb@edgard.fdn.fr} \end{minipage} \begin{minipage}{0.4\linewidth} N\'e le 24 octobre 1973 (24 ans)\\ Nationalit\'e fran\c{c}aise\\ C\'elibataire sans enfant\\ Sursitaire \`a l'incorporation \end{minipage} \begin{rubrique}{Formation initiale} \begin{sousrubrique} \Titre{Baccalaur\'eat s\'erie C (math\'ematiques et sciences physiques)} \Lieu{Lyc\'ee Notre-Dame Providence d'Enghien-les-Bains (95)} \Date{1990-1991} \end{sousrubrique} \begin{sousrubrique} \Titre{Ing\'enieur ESIEE (\'Ecole Sup\'erieurs d'Ing\'enieurs en \'Electronique et \'Electrotechnique)} \Date{1991-1996} \Duree{5 ans} \Descr{Sp\'ecialisation en informatique.} \Apport{Programmation syst\`eme} \Apport{Conception et programmation objet} \Apport{Th\'eorie des langages} \Apport{Langages interpr\'et\'es} \Apport{Programmation logique} \Apport{Programmation des interfaces graphiques} \Apport{SGBD} \end{sousrubrique} \begin{sousrubrique} \Titre{Dipl\^ome d'\'Etudes Approfondies} \Date{1995-1996} \Duree{1 an} \Lieu{Universit\'e de Marne-la-Vall\'ee} \Descr{Informatique Fondamentale et Applications} \Apport{Th\'eorie des automates} \Apport{Programmation logique avanc\'ee} \Apport{Th\'eorie des partitions d'entiers} \Apport{Calcul combinatoire} \Apport{Algorithmique du texte} \end{sousrubrique} \begin{sousrubrique} \Titre{Th\`ese de doctorat} \Date{1996-} \Duree{3 ans} \Lieu{Universit\'e de Marne-la-Vall\'ee} \Descr{Nouvelles pistes pour une typographie \'electronique de qualit\'e} \end{sousrubrique} \end{rubrique} \begin{rubrique}{Exp\`eriences} \begin{sousrubrique} \Titre{Simulation de processeurs pour la d\'emodulation num\'erique} \Lieu{Laboratoire d'\'Electronique Philips} \Date{1996} \Duree{6mois} \Descr{\'Ecriture d'une plateforme de d\'eveloppement pour un processeur massivement parall\`ele en developpement.} \Apport{Projet de type industriel} \Apport{Travail dans un d\'epartement de R\&D} \Apport{Approche des probl\`emes d'architecture des processeurs d\'edi\'es} \Apport{Approche du micro-parall\`elisme} \end{sousrubrique} \begin{sousrubrique} \Titre{Reconnaissance de phon\`emes par cartes de Kohonen} \Lieu{Groupe ESIEE} \Date{1995} \Duree{2 mois} \Descr{Utilisation de cartes auto-organisante de Kohonen pour la reconnaissance et l'\'etiquettage de phon\`emes apr\`es apprentissage non supervis\'e.} \Apport{Travail en traitement automatis\'e du signal} \Apport{\'Etude et utilisation des r\'eseaux de neurones} \Apport{Premi\`ere approche de travaux de recherche} \end{sousrubrique} \begin{sousrubrique} \Titre{Segmentation d'images par hyper-cartes de Kohonen} \Lieu{Groupe ESIEE} \Date{1995} \Duree{6 semaines} \Descr{Approche des techniques multi-r\'esolution.} \end{sousrubrique} \begin{sousrubrique} \Titre{Gala ESIEE 94} \Date{1994} \Duree{1 an} \Descr{Responsabilit\'es diverses dans l'\'equipe d'organisation d'un grand \'ev\`enement estudiantin (6000 personnes). En particulier infographie, communication, imprimerie, et logistique finale.} \Apport{Travail sur la dur\'ee dans une \'equipe tr\`es soud\'ee avec un projet directeur fort et ambitieux} \end{sousrubrique} \begin{sousrubrique} \Titre{Gala ESIEE 96} \Date{1996} \Duree{2 mois} \Descr{Participation \`a l'organisation finale, \`a la conception technique de la communication, au fonctionnement de la tr\'esorerie, et \`a la logistique finale.} \Apport{Apprentissage de la gestion d'\'equipe et des ressources humaines} \end{sousrubrique} \begin{sousrubrique} \Titre{Gala ESIEE 97} \Date{1997} \Duree{2 mois} \Descr{Conseil technique du bureau d'organisation, \'etablissement de partenariats relationels, aide \`a la gestion de la s\'ecurit\'e et de la tr\'esorerie} \Apport{Gestion de la motivation des personnes impliqu\'ees} \Apport{Prise en compte de graves retards organisationels} \end{sousrubrique} \end{rubrique} \begin{rubrique}{Langues et divers} \begin{sousrubrique} \Competence{Anglais} \Descr{Lu, \'ecrit, parl\'e. Anglais technique courrant.} \end{sousrubrique} \begin{sousrubrique} \Competence{Espagnol} \Descr{Niveau scolaire} \end{sousrubrique} \begin{sousrubrique} %\Competence{Espagnol} \Descr{Passe-temps~: philat\'elie, typographie, gravure, programmation, cin\'ema\dots} \end{sousrubrique} \end{rubrique} \end{document} % % \fi % \Finale %