commit f21b5890557c6d4dc431da905de1aa2f48b26613 Author: Alexis Lahouze Date: Mon Jun 24 16:04:24 2013 +0200 Initialized repository. diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c7ef404 --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +*~ +*.swp +*.out +*.aux +*.bbl +*.blg +*.lof +*.log +*.lot +*.maf +*.mtc* +*.toc +*.pdf diff --git a/CHANGELOG b/CHANGELOG new file mode 100644 index 0000000..56f8ee2 --- /dev/null +++ b/CHANGELOG @@ -0,0 +1,136 @@ +version 0.12 (03 August 2010) + - prevents pagebreaks after sections and subsections (launchpad bug #409902), + as originally reported by C. Gaspoz and fixed by launchpad user tentotwo). + +version 0.11 (20 July 2010) + - removed the \ifpdf check when loading the graphicx package, as graphicx does + does check internally and this was preventing proper functionning with xelatex + and luatex, as reported by A. Trautmann. The same check was also removed + everywhere else in the document (i.e. when loading the color and hyperref + packages). + +version 0.10 (13 June 2010) + - fixed a compatibility issue with the natbib package (natbib uses \section* + to format the bibliography title, while only \section was defined by moderncv), + as reported on launchpad (launchpad bug #393920). + - fixed a compatibility issues with (any package relying on) the etoolbox package, + due to the double definition of \AtEndPreamble, as reported by D. Becker. + +version 0.9 (31 May 2010) + - added support for the itemize, enumerate and description environments. + +version 0.8 (24 May 2010) + - added support for multibib. Also modified the template to illustrate how to show + labels in the bibliography, as requested by Tom D. R. and Stefan K. + - added a command to indicate your personal homepage (\homepage{url}), as + requested by J. de Jong and A. Pairet. + - corrected an alignment bug for text following a \quote with no immediate + \section, as kindly reported by J. Vermeulen and L. Saliou. + - corrected a spacing bug when no blank line (or \par) is left after \maketitle. + Thanks to A. Menzel for reporting the strange behaviour. + - corrected the alignment of the extrainfo title part when no picture was used, + as reported by M. Bana. + - corrected the missplacement of pdf bookmarks as noticed by L. Fortunato. + - corrected several bugs linked to the code for checking for empty arguments in + \cventry, as reported by B. Ekran (launchpad bug #268768), L. Păncescu and + E. Gregorio. + +version 0.7 (17 June 2008) + - corrected an outstanding spacing bug (space between cvlines longer + than 1 line). + - removed the need to use \closesection and \emptysection as internal + tabulars are now always closed. This allows she use of bibliography packages + such as bibunits. Thanks to S. Busch for pointing out the incompatibility and + helping testing out the bug correction. + - changed the definition of \photo: the first (optional) argument should + give the desired width of the picture, instead of its height + - corrected an alignment bug for \cvlistitems longer than 1 line, as + reported by S. Nikolopoulos. + - deprecated the commands \sethintscolumnlength and \sethintscolumntowidth. + Instead, just set \hintscolumnwidth to the desired length by using the regular + \setlength or \settowidth commands, and call \recomputelengths. + - added the ability to control the width of the name placeholder in the classic + theme, by setting the length \maketitlenamewidth. Again, don't forget to call + \recomputelengths afterward. + +version 0.6 (28 May 2007) + - corrected some spacing bugs and cleaned up the code. + - corrected a bug in the bibliography file of the examples spotted by + U. Stöhr. + - added color variants to the classic and casual style, as suggested by + U. Stöhr. + - added a page counter for resumes running longer than 1 page, as requested by + A. Martin. It can be disabled by the command \nopagenumbers{}. + - added commands to include a mobile phone and fax number. + - made the symbols used for the phone number, the email, ... customizable. + To modify those symbols, just redefine \phonesymbol, emailsymbol, ... + - corrected the pdf information given to hyperref as pointed out by + C. Knuepfer. + - rewrote the examples. + +version 0.5 (9 September 2006) + - added a \photo command to display a picture. That command takes the name of + the file with the picture as argument, and the desired height as optional + argument. + - implemented the needed commands to make moderncv compatible with BibTeX, as + suggested by J. Lie. This makes it possible to display one's publications, + stored in the BibTeX file 'publications.bib' + by using: + \nocite{*} + \bibliographystyle{plain} + \bibliography{publications} + As usual, the name of the section title can be changed by redefining the + command \refname. + - added the \today command, useful for example if one need to add the date the + resumé was produced with + \closesection{} + \vfill{\hfill{\scriptsize Produced \today.}} + at the end of your CV, as suggested by F. Hammann. + +version 0.4 (2 May 2006) + - removed the dependency on the geometry package, so that users can now invoke + it themselve, and easily change the geometry of the page. + +version 0.3 (10 April 2006) + - moderncv now uses the 'longtable' class, allowing cv sections to split + across multiple pages. + - the different lengths used by moderncv are now customizable! In particular, + the first column (the one containing the date in the examples), can now be set + to any width, for people needing a smaller or larger one. To do that, either + use + \sethintscolumnlength{}, + where is the desired length in a unit LaTeX understands, or + \sethintscolumntowidth{}, + where is a string of the desired length (usually, the longest string + that has to appear in the column). Thanks to A. Pöge for pointing out the need + of such a feature. + - added the command \emptysection{}, which makes it possible to start a + section without name. In combination with \closesection{}, this makes it + possible to drop out of the layout of moderncv, and come back to it later. + This should make the inclusion of arbitrary elements not covered by moderncv + code possible. + - corrected a spacing problem in the cventry command, as pointed out and + solved by B. Eßmann. + +version 0.2 (6 March 2006) + - rewrite of the code to have the styles (fonts, colours, headers and footers) + be defined in different files than the class. The styles are now defined in a + separate file per style, named moderncvstyle. It should now be + easy to write your own style, starting from moderncvstyleempty.sty. If you + feel you have created a nice style, just email it to me and I'll include it in + the next version. + - due to the previous point, styles are now loaded by the command + \moderncvstyle{style_name}. I couldn't figure out a way to preserve the old + "casual" and "classic" class options, so these are now broken! Use + \moderncvstyle{casual} or \moderncvstyle{classic} at the beginning of your + document. This should be the only incompatibility with version 0.1. + - added class option "nolmodern" for people without the latin modern fonts. + - corrected some English mistakes in the examples. Thanks to M. H. Prager for + pointing them out. + - added a \cvlistitem to produce items with a bullet (or whatever is defined + in \listitemsymbol), and renamed \cvresume to \cvlistdoubleitem for + consistency purpose. For compatibility reasons, the command \cvresume still + works, but should be avoided. + +version 0.1 (1 March 2006) + - first release. diff --git a/KNOWN_BUGS b/KNOWN_BUGS new file mode 100644 index 0000000..bc1a208 --- /dev/null +++ b/KNOWN_BUGS @@ -0,0 +1,5 @@ +- The \cvsection command seems to be unable to handle a Chinese argument, using + CJK. +- Moderncv produces an error ("lonely \item--perhaps a missing list environment") + when used with bibentry, through the output is actually correct. Amongst other, + this causes compilation by LyX to stop. diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..a7492f0 --- /dev/null +++ b/Makefile @@ -0,0 +1,13 @@ +TEX=rubber -d +TEXs=$(wildcard *.tex) +PDFs=$(TEXs:.tex=.pdf) +default: $(PDFs) +clean: + rm -f *.blg *.log *.out *.aux *.toc *.bbl *.mtc* *.maf *.lof *.lot *.som *.pdf sections/*.aux + +keeppdf: + rm -f *.blg *.log *.out *.aux *.toc *.bbl *.mtc* *.maf *.lof *.lot *.som sections/*.aux + +%.pdf: %.tex + $(TEX) $< + diff --git a/README b/README new file mode 100644 index 0000000..98bd842 --- /dev/null +++ b/README @@ -0,0 +1,27 @@ +moderncv -- a modern curriculum vitae class + +Moderncv provides a documentclass for typesetting modern curriculum vitaes in +various styles. It is fairly customizable, allowing you to define your own style +by changing the colors, the fonts, ... and provides two default styles: classic +and casual. + +The moderncv documentclass need it's input to be formatted with regular +commands like: + \section, + \subsection, + \maketitle, +but also defines its own special commands: + \cventry, + \firstname, + \familyname, + ... +Most commands are defined in such a way that the arguments are optional. + +Documents can be compiled into dvi, ps or pdf. + +Until a decent manual is written, you can always look in the "examples" +directory for some examples. + + +Author: Xavier Danaux +Date: 28 May 2007 diff --git a/alahouze_dev_fr.tex b/alahouze_dev_fr.tex new file mode 100644 index 0000000..acf50fd --- /dev/null +++ b/alahouze_dev_fr.tex @@ -0,0 +1,156 @@ +\documentclass[11pt,a4paper]{moderncv} + +% moderncv themes +\moderncvtheme[]{custom} +%\moderncvtheme[roman]{casual} + +% character encoding +\usepackage[utf8]{inputenc} +\usepackage[francais]{babel} +\usepackage[cyr]{aeguill} + +% adjust the page margins +\usepackage[hmargin=1cm, vmargin=1cm]{geometry} % 1cm margin. +\setlength{\hintscolumnwidth}{2,8cm} % date column length. +\setlength{\quotewidth}{\textwidth} % date column length. +\AtBeginDocument{\recomputelengths} % required when modifying lengthes + +% personal data +\firstname{Alexis} +\familyname{Lahouze} +\title{D\'eveloppeur} +\address{174, avenue du Pr\'esident\\Robert Schuman}{33110 Le Bouscat} +\mobile{+33 6 85 81 05 71} +\email{alexis@lahouze.org} +\homepage{http://lahouze.org} +\extrainfo{Permis B, v\'ehicule personnel\\Nationalit\'e fran\c caise\\Mari\'e} +%\photo[80pt]{photo} +\quote{\flushleft\guillemotleft~J'aime apprendre, transmettre mes connaissances et relever les d\'efis techniques~\guillemotright} + +\nopagenumbers{} + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\begin{document} + +\maketitle + +\section{Exp\'eriences} +\subsection{Capgemini, site de M\'erignac} +\cventry{Depuis 08/2007} + {D\'eveloppeur Java/JEE} + {Tipi/Bison Fut\'e} + {M\'erignac} + {} + {Int\'egration dans une \'equipe d'une quinzaine de personnes.\newline{} + D\'eveloppement de modules de l'application Web JEE en utilisant les frameworks Spring et Hibernate. + D\'eveloppement de composants JBI pour Servicemix.\newline{} + Gestion des versions sous Subversion, avec r\'ealisation des merges des branches de d\'eveloppement et de corrections.} + +\cventry{02/2009} + {D\'eveloppeur Java/Swing} + {Orbis} + {Artigues-pr\`es-Bordeaux} + {} + {D\'eveloppement de deux composants graphiques Java Swing \`a int\'egrer dans le produit Orbis, syst\`eme d'information li\'e au dossier m\'edical des patients.} + +\cventry{11/2004--08/2007} + {D\'eveloppeur Java/JEE, Linux} + {Cerb\`ere} + {Saint M\'edard en Jalles} + {} + {Maintenance applicative corrective et \'evolutive de l'application Web Cerb\`ere, syst\`eme d'authentification SSO sp\'ecifique au Minist\`ere de l'\'Equipenent.\\ + Int\'egration de technologies de type carte \`a puce et authentification par certificat dans une distribution Linux d\'edi\'ee aux inspecteurs du permis de conduire.} + +\cventry{06/2004--11/2004} + {D\'eveloppeur WebMethods} + {Pap\`eteries La Couronne} + {La Couronne} + {} + {D\'eveloppement d'interfaces de communication entre l'ancien syst\`eme d'information (VMS) et le nouveau (SAP) gr\^ace \`a l'outil WebMethods.} + +\subsection{Documents Images Solutions} +\cventry{04/2003--08/2003} + {D\'eveloppeur Visual C++} + {} + {Bidart} + {} + {D\'eveloppement d'un composant ActiveX de contr\^ole d'un scanner via l'interface TWAIN, et affichage de TIFF multipage.} + +%\section{Exp\'eriences personnelles} +%\cventry{Depuis 03/2011} +% {D\'eveloppeur C++} +% {} +% {} +% {} +% {Co-conception et co-d\'eveloppement d'un moteur de jeu vid\'eo en ligne en C++ en utilisant les frameworks Boost, Ogre3D, .} + +\subsection{Rencontres Mondiales du Logiciel Libre} +\cventry{2008--2009} + {Directeur de Th\`eme \guillemotleft~Culture et Art Libre~\guillemotright} + {Rencontres Mondiales du Logiciel Libre (RMLL)} + {Nantes} + {} + {Coordination avec les autres directeurs du th\`eme, recherche d'intervenants, d\'efinition d'un budget pr\'evisionnel, planification des interventions sur la semaine.} + +\cventry{2007--2008} + {Directeur de Th\`eme \guillemotleft~Loisirs Num\'eriques~\guillemotright} + {RMLL} + {Mont-de-Marsan} + {} + {Coordination avec les autres directeurs du th\`eme, recherche d'intervenants, d\'efinition d'un budget pr\'evisionnel, planification des interventions sur la semaine, accueil des intervenants, gestion des interventions.} + +\section{Dipl\^omes} +\cventry{2003} + {Dipl\^ome Universitaire Technologique (DUT) Informatique} + {Institut Universitaire de Technologie Informatique} + {Bayonne} + {} + {} + +\cventry{2001} + {Baccalaur\'eat Scientifique, sp\'ecialit\'es Technologie Industrielle et Math\'ematiques, option Informatique} + {Lyc\'ee De Borda} + {Dax} + {} + {\textit{Mention Assez Bien}} + +\section{Comp\'etences} +\subsection{D\'eveloppement} +\cvline{C/C++}{Utilisation d'environnements int\'egr\'es de d\'eveloppement (QtCreator, Kdevelop, Kate, Anjuta).\newline{} + Utilisation d'outils de gestion de build (CMake, GNU Autotools).\newline{} + Utilisation de frameworks (Qt, Boost, SOCI, CPPUnit).\newline{} + Utilisation d'outils de debug et de profiling (GDB, Valgrind).\newline{} + Notions de d\'eveloppent 3D, avec framework graphique (Ogre3D) et physique (Bullet).} +\cvline{Java}{Utilisation d'environnements int\'egr\'es de d\'eveloppement (Eclipse, Netbeans).\newline{} + Utilisation d'outils de gestion de build (Ant, Maven).\newline{} + Utilisation de frameworks (Spring, Hibernate, Struts).\newline{} + Gestion d'une plateforme d'int\'egration continue (Hudson/Jenkins, Sonar, Artifactory).} +\cvline{Web}{D\'eveloppement Web (HTML, XHTML, CSS, Javascript/ExtJS).} +\cvline{Outils}{Utilisation d'outils de d\'eveloppement collaboratif (Subversion, Git, Redmine, Bugzilla, Dokuwiki).} +\cvline{BDD}{D\'eveloppement de requ\^etes SQL.\newline{} + Analyse et optimisation du plan d'ex\'ecution d'une requ\^ete.} + +\subsection{Administration syst\`eme} +\cvline{}{Administration de serveurs et services sous Linux.} + +\subsection{Langues} +\cvlanguage{Fran\c cais}{Langue maternelle}{} +\cvlanguage{Anglais}{Lu, \'ecrit, parl\'e}{} +\cvlanguage{Espagnol}{Lu, \'ecrit, parl\'e}{} + +\subsection{Autres} +\cvline{}{Tr\`es bon relationnel, travail en \'equipe, diplomatie, pers\'ev\'erance, curiosit\'e, autonomie} +%\cvline{}{Accr\'editeur CACert} + +\section{Informations compl\'ementaires} +\subsection{Vie associative} +\cvline{ABUL} + {Tr\'esorier de 2009 \`a 2010, Participation aux listes de diffusion, Conf\'erences donn\'ees dans le cadre de \`A Libre Ouvert (ligne de commande pour d\'ebutants, messagerie instantan\'ee)} +\cvline{\httplink{linuxfr.org}}{Relecteur de 2008 \`a 2010} + +\subsection{Loisirs} +\cvline{}{Lecture, cin\'ema, musique, ancien joueur de trompette, \'echecs, voyages, marche, v\'elo\dots} + +\end{document} diff --git a/alahouze_fr.tex b/alahouze_fr.tex new file mode 100644 index 0000000..8ac8654 --- /dev/null +++ b/alahouze_fr.tex @@ -0,0 +1,182 @@ +\documentclass[11pt,a4paper]{moderncv} + +% moderncv themes +\moderncvtheme[]{custom} +%\moderncvtheme[roman]{casual} + +% character encoding +\usepackage[utf8]{inputenc} +\usepackage[francais]{babel} +\usepackage[cyr]{aeguill} + +% adjust the page margins +\usepackage[hmargin=1cm, vmargin=1cm]{geometry} % 1cm margin. +\setlength{\hintscolumnwidth}{2,8cm} % date column length. +\setlength{\quotewidth}{\textwidth} % date column length. +\AtBeginDocument{\recomputelengths} % required when modifying lengthes + +% personal data +\firstname{Alexis} +\familyname{Lahouze} +\title{D\'eveloppeur / Administrateur Syst\`eme} +\address{174, avenue du Pr\'esident Robert Schuman}{33110 Le Bouscat} +\mobile{+33 6 86 81 05 71} +\email{alexis@lahouze.org} +\homepage{http://lahouze.org} +\extrainfo{Mari\'e le 21 ao\^ut 2010\\Permis B, v\'ehicule personnel} +\photo[100pt]{images/photo} +\quote{\flushleft\guillemotleft~J'aime apprendre, transmettre mes connaissances\\et relever les d\'efis techniques~\guillemotright} + +\nopagenumbers{} + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\begin{document} + +\maketitle + +\section{Exp\'eriences professionelles} +\subsection{Capgemini, site de M\'erignac} +\cventry{Depuis 08/2007} + {D\'eveloppeur Java/JEE} + {Tipi} + {M\'erignac} + {} + {\textbf{Client~: }Minist\`ere de l'\'Ecologie, du D\'eveloppement Durable, des Transports et des Logements\newline{} + \textbf{Objet~: }Refonte du syst\`eme d'informations de Bison Fut\'e.\newline{} + \textbf{R\^ole~: }D\'eveloppement de modules de l'application Web, D\'eveloppement de composants JBI pour Servicemix.\newline{} + \textbf{Environnement~: }Debian GNU/Linux, Java/JEE, Hibernate, Spring, Hazelcast, ExtJS, Javadoc, JUnit, Eclipse, Subversion, Apache Tomcat, Servicemix} + +\cventry{Depuis 08/2007} + {Administrateur Syst\`eme} + {} + {M\'erignac} + {} + {\textbf{Objet~: }Administration d'une plateforme de tests pour Tipi, Administration de la plateforme d'int\'egration continue et d'outils collaboratifs pour plusieurs projets.\newline{} + \textbf{Environnement~: }Debian GNU/Linux, Xen, PostgreSQL, Postfix, Cyrus, Mantis, Subversion, Jenkins (anciennement Hudson), Sonar, Artifactory, Tomcat, Glassfish} + +\cventry{02/2009} + {D\'eveloppeur Java/Swing} + {Orbis} + {Artigues-pr\`es-Bordeaux} + {} + {\textbf{Objet: }D\'eveloppement de deux composants Swing \`a int\'egrer dans le produit Orbis, syst\`eme d'information li\'e au dossier m\'edical des patients.\newline{} + \textbf{Environnement~: }Windows, Java/Swing, Javadoc, Eclipse} + +\cventry{11/2004--08/2007} + {D\'eveloppeur Java/JEE, Linux} + {Cerb\`ere} + {Saint M\'edard en Jalles} + {} + {\textbf{Objet: }Maintenance applicative corrective et \'evolutive de l'application Web Cerb\`ere, syst\`eme d'authentification SSO sp\'ecifique au Minist\`ere de l'\'Equipenent.\\ + Int\'egration de technologies de type carte \`a puce et authentification par certificat dans une distribution Linux d\'edi\'ee.\newline{} + \textbf{Environnement~: }Debian GNU/Linux, Java/JEE, Struts, EJB, JUnit, Javadoc, Eclipse, Subversion, JBoss} + +\cventry{06/2004--11/2004} + {D\'eveloppeur WebMethods} + {} + {La Couronne} + {} + {\textbf{Client~: }Pap\`eteries La Couronne\newline{} + \textbf{Objet~: }D\'eveloppement d'interfaces de communication entre l'ancien syst\`eme d'information (VMS) et le nouveau (SAP) gr\^ace \`a l'outil WebMethods.\newline{} + \textbf{Environnement~: }MS-Windows, WebMethods} + +\subsection{Documents Images Solutions} +\cventry{04/2003--08/2003} + {D\'eveloppeur Visual C++} + {} + {Bidart} + {} + {\textbf{Objet~: }D\'eveloppement d'un composant ActiveX de contr\^ole d'un scanner via l'interface TWAIN, et affichage de TIFF multipage.\newline{} + \textbf{Environnement~: }MS-Windows, MS-Visual Studio, TWAIN, TIFF} + +\section{Exp\'eriences personnelles} +\cventry{Depuis 02/2007} + {Administrateur Syst\`eme} + {lahouze.org} + {} + {} + {\textbf{Objet~: }Administration syst\`eme de mon domaine personnel "lahouze.org" avec les services de nom de domaine, mail, web, jabber\dots\newline{} + \textbf{Environnement~: }Gentoo Linux puis Debian GNU/Linux, Bind, Postfix, Apache2, PHP, Roundcube, OpenVPN, Jabber14, Mumble, Postfix, Dspam, Amavisd, ClamAV, Spamassassin, Dovecot, PostgreSQL, Git} + +\cventry{Depuis 10/2010} + {Administrateur Syst\`eme} + {Associatif} + {} + {} + {\textbf{Objet~: }Administration syst\`eme d'une plateforme associative d'h\'ebergement Web, Mail et DNS au sein d'une \'equipe d'une dizaine de personnes, et un peu plus d'un millier de comptes utilisateurs.\newline{} + \textbf{Environnement~: }Debian GNU/Linux, AlternC, Bind, Apache2, PHP, MySQL, Postfix, Dovecot, OpenVPN, Nagios, Munin} + +\cventry{Depuis 03/2011} + {D\'eveloppeur C++} + {} + {} + {} + {\textbf{Objet~: }Co-conception et co-d\'eveloppement d'un moteur de jeu vid\'eo en ligne en C++.\newline{} + \textbf{Environnement~: }Debian GNU/Linux, QtCreator, CMake, LibBoost, Git, Redmine} + +\cventry{2006--2010} + {Administrateur syst\`eme} + {ABUL} + {} + {} + {\textbf{Objet~: }Co-administration syst\`eme des serveurs de l'ABUL (Association Bordelaise des Utilisateurs de Logiciels Libres\newline{} + \textbf{Environnement~: }Debian GNU/Linux, Apache2, PHP, MySQL, Postfix, Dovecot} + +\cventry{2007--2009} + {Directeur de Th\`eme aux Rencontres Mondiales du Logiciel Libre} + {Loisirs Num\'eriques en (Mont-de-Marsan 2008) puis Culture et Art Libre (Nantes 2008)} + {} + {} + {\textbf{Objet~: }Coordination avec les autres directeurs du th\`eme, recherche d'intervenants, d\'efinition d'un budget pr\'evisionnel, planification des interventions sur la semaine, accueil des intervenants, gestion des interventions.} + +\section{Dipl\^omes} +\cventry{2003} + {Dipl\^ome Universitaire Technologique (DUT) Informatique} + {Institut Universitaire de Technologie Informatique} + {Bayonne} + {} + {} + +\cventry{2001} + {Baccalaur\'eat Scientifique, sp\'ecialit\'es Technologie Industrielle et Math\'ematiques, option Informatique} + {Lyc\'ee De Borda} + {Dax} + {} + {\textit{Mention Assez Bien}} + +\section{Comp\'etences} +\subsection{D\'eveloppement} +\cvline{C/C++}{STL, LibBoost, Qt, SOCI, Ogre3D, Bullet Physics Engine, CMake, GNU autotools, QtCreator, Doxygen} +\cvline{Java}{Spring, Struts, Hibernate, EJB, Apache Commons, Hazelcast, Eclipse, Apache Tomcat, Swing, ServiceMix, JBoss, Eclipse, Maven, Javadoc, JUnit} +\cvline{Web}{HTML, XHTML, CSS, ExtJS} +\cvline{Outils}{Subversion (merges r\'eguliers), Git, Bugzilla, MantisBT, Dokuwiki, Redmine} +\cvline{Autres}{SQL, \LaTeX} + +\subsection{Administration syst\`eme} +\cvline{Syst\`emes}{Linux (Gentoo, Debian, Arch), Windows} +\cvline{Web}{Gestion compl\`ete d'une plateforme Web avec plusieurs applications (Wiki, } +\cvline{Mail}{Gestion compl\`ete d'une plateforme de messagerie} +\cvline{Bdd}{PostgreSQL, MySQL} +\cvline{SCM}{Git, Subversion} +\cvline{IM}{Jabber14, Mumble} +\cvline{Supervision}{Nagios, Munin} +\cvline{Java}{Apache Tomcat, ServiceMix, Glassfish, JBoss, Hudson/Jenkins, Artifactory, Sonar} + +\subsection{Langues} +\cvlanguage{Fran\c cais}{Langue maternelle}{} +\cvlanguage{Anglais}{Lu, \'ecrit, parl\'e}{} +\cvlanguage{Espagnol}{Lu, \'ecrit, parl\'e}{} + +\subsection{Autres} +\cvline{}{Tr\`es bon relationnel, travail en \'equipe, diplomatie, pers\'ev\'erance, curiosit\'e, autonomie} +\cvline{}{Accr\'editeur CACert} + +\section{Informations compl\'ementaires} +\subsection{Vie associative} +\cvline{ABUL} + {Tr\'esorier de 2009 \`a 2010, Participation aux listes de diffusion, Conf\'erences donn\'ees dans le cadre de \`A Libre Ouvert (ligne de commande pour d\'ebutants, messagerie instantan\'ee)} +\cvline{\httplink{linuxfr.org}}{Relecteur de 2008 \`a 2010} + +\end{document} diff --git a/alahouze_sysadmin_en.tex b/alahouze_sysadmin_en.tex new file mode 100644 index 0000000..237f0d6 --- /dev/null +++ b/alahouze_sysadmin_en.tex @@ -0,0 +1,169 @@ +\documentclass[8pt,a4paper]{moderncv} + +% moderncv themes +\moderncvtheme[blue]{custom} +%\moderncvtheme[roman]{casual} + +% character encoding +%\usepackage[utf8]{inputenc} +%\usepackage[francais]{babel} +%\usepackage[cyr]{aeguill} + +% adjust the page margins +\usepackage[hmargin=1cm, vmargin=1cm]{geometry} % 1cm margin. +\setlength{\hintscolumnwidth}{2,8cm} % date column length. +\setlength{\quotewidth}{\textwidth} % date column length. +\AtBeginDocument{\recomputelengths} % required when modifying lengthes + +% personal data +\firstname{Alexis} +\familyname{Lahouze} +\title{Senior Server Engineer} +\address{174, avenue du Pr\'esident\\Robert Schuman}{33110 Le Bouscat France} +\mobile{+33 6 85 81 05 71} +\email{alexis@lahouze.org} +\homepage{http://lahouze.org} +\extrainfo{Car driving licence, personal vehicle\\French nationality\\Married} +\photo[80pt]{images/photo} +%\quote{\flushleft<<~J'aime apprendre, transmettre mes connaissances et relever les d\'efis techniques~>>} + +\nopagenumbers{} + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\begin{document} + +\maketitle + +\section{Experiences} +\cventry{Since 2004} + {Consultant} + {Capgemini} + {M\'erignac - France} + {} + {\textbf{System administration} (since 2007) + \begin{itemize} + \item VMWare virtual platform management (3 ESX Servers, about 15 virtual machines). + \item Continuous integration platform management (Hudons/Jenkins, Sonar), and collaborative working tools for some projects (Dokuwiki, Mantis, Subversion). + \item Tape backup policy initialization and management with Bacula. + \item Xen virtual platform management for a specific project, with about 10 Debian virtual servers. + \end{itemize} + \textbf{Java conception and development} + \begin{itemize} + \item Web application development with n-tiers and distributed architecture, using frameworks (Struts, Spring, Hibernate, ExtJS) for Minist\`ere de l'\'Equipement (2004-2007) then for Bison Fut\'e (since 2007). + \item SQL queries writing and optimization. + \end{itemize} + } + +\cventry{Since 10/2010} + {Volunteer systems administrator} + {L'Autre Net} + {} + {} + {\begin{itemize} + \item DNS (Bind9), Web (Apache2, PHP, MySQL), mail (Postfix, Courier IMAP, Mailman) associative platform management, powered by AlternC. + \item Managed by about 10 members, used by about 1000 members, hosting about 3000 websites. + \item Debian servers, monitored with Nagios and Munin, daily backed up with RSync. + \end{itemize} + } + +\cventry{2006--2010} + {Volunteer systems administrator} + {Association Bordelaise des Utilisateurs de Logiciels Libres (ABUL)} + {} + {} + {\begin{itemize} + \item ABUL Debian server management, with Web (Apache2, PHP, MySQL) and mail (Postfix, Dovecot, Sympa) services. + \item Monitoring with mail reporting tools (logcheck, logwatch, rkhunter). + \end{itemize} + } + +\cventry{2007--2009} + {Chairman} + {Libre Software Meeting (LSM)} + {Mont-de-Marsan, Nantes (France)} + {} + {\begin{itemize} + \item <<~Digital Entertainment~>> (2007-2008) then <<~Free Culture and Art~>> (2008-2009) themes support. + \item Coordination with other chairmen and officials of the event. + \item Search for speakers. + \item Budget setting. + \item Conference scheduling on the week. + \item Speakers welcoming and management of their conferences. + \end{itemize} + } + +\section{Education} +\cventry{2003} + {Dipl\^ome Universitaire Technologique (DUT) in Computer Science} + {Institut Universitaire de Technologie Informatique} + {Bayonne (France)} + {} + {} + +\cventry{2001} + {Scientific Baccalaur\'eat, majored Industrial Technology and Mathematics, option Computer Science} + {Lyc\'ee De Borda} + {Dax (France)} + {} + {} + +\newpage{} + +\section{Skills} +\subsection{System administration} +\cvline{Systems}{Linux server administration (Debian, Gentoo, Arch).} +\cvline{Services} +{Service administration: +\begin{itemize} + \item Web: Apache, Nginx, PHP. + \item Mails: SMTP (Postfix), IMAP (Dovecot, Cyrus), Antispam (Spamassassin, Dspam), Antivirus (ClamAV). + \item Jabber (ejabberd, jabber14). + \item DNS (bind9). + \item Database Management System (PostgreSQL, MySQL), PostgreSQL tuning concepts. + \item Version Control System (Subversion, Git). + \item Java application servers (Tomcat, Glassfish, JBoss) and Web applications (Sonar, Jenkin, Artifactory). + \item Configuration management (Puppet). + \end{itemize} +} + +\cvline{Security} +{Defining and setting up a backup policy (Bacula, BackupPC).\newline{} +Using system administration tools: +\begin{itemize} + \item Monitoring and reporting (Nagios, check\_mk, Munin, Logcheck, Logwatch, smartmond, mdadm\dots). + \item Security and Intrusion Detection (Iptables, Shorewall, Snort, Rkhunter, Chkrootkit, debsums). + \end{itemize} +} + +\cvline{Scripting} +{Daily shellscript use.\newline{} +Perl and Python programming concepts.} + +\subsection{Development} +\cvline{Java} +{N-Tiers application development, Javadoc, unit testing (JUnit), frameworks (Spring, Hibernate, Struts), build and development tools (Maven, Ant, IDE).\newline{}} + +\cvline{C/C++} +{Using libraries (Boost, Qt), doxygen, build and development tools (Autotools, CMake, IDE).\newline{}} + +\subsection{Langues} +\cvline{French}{Native.} +\cvline{English}{Very good technical writing knowledge.} +\cvline{Spanish}{Good writing knowledge.} + +\subsection{Human skills} +\cvline{}{Very good interpersonal skills, team working, curious, autonomous, persistent, tactful.} +%\cvline{}{Accr\'editeur CACert} + +\section{Miscellaneous informations} +\subsection{Associations} +\cvline{ABUL} + {Treasurer (from 2008 to 2010), participating in mailing lists, speakings for << \`A Libre Ouvert >> (command line interface for beginners, instant messaging).} +\cvline{\httplink{linuxfr.org}}{Reviewer from 2008 to 2010.} + +\subsection{Hobbies} +\cvline{}{Reading, movies watching, music listening, trumpet playing, traveling, hiking, bike riding\dots} + +\end{document} diff --git a/alahouze_sysadmin_fr.tex b/alahouze_sysadmin_fr.tex new file mode 100644 index 0000000..dc5709f --- /dev/null +++ b/alahouze_sysadmin_fr.tex @@ -0,0 +1,168 @@ +\documentclass[8pt,a4paper]{moderncv} + +% moderncv themes +\moderncvtheme[blue]{custom} +%\moderncvtheme[roman]{casual} + +% character encoding +\usepackage[utf8]{inputenc} +\usepackage[francais]{babel} +\usepackage[cyr]{aeguill} + +% adjust the page margins +\usepackage[hmargin=1cm, vmargin=1cm]{geometry} % 1cm margin. +\setlength{\hintscolumnwidth}{2,8cm} % date column length. +\setlength{\quotewidth}{\textwidth} % date column length. +\AtBeginDocument{\recomputelengths} % required when modifying lengthes + +% personal data +\firstname{Alexis} +\familyname{Lahouze} +\title{Administrateur Syst\`emes} +\address{174, avenue du Pr\'esident\\Robert Schuman}{33110 Le Bouscat} +\mobile{+33 6 85 81 05 71} +\email{alexis@lahouze.org} +\homepage{http://lahouze.org} +\extrainfo{Permis B, v\'ehicule personnel\\Nationalit\'e fran\c caise\\Mari\'e} +%\photo[80pt]{photo} +%\quote{\flushleft<<~J'aime apprendre, transmettre mes connaissances et relever les d\'efis techniques~>>} + +\nopagenumbers{} + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\begin{document} + +\maketitle + +\section{Exp\'eriences} +\cventry{Depuis 2004} + {Consultant} + {Capgemini} + {M\'erignac} + {} + {\textbf{Administration syst\`emes} (depuis 2007) + \begin{itemize} + \item Gestion d'une plateforme virtuelle sous VMWare (3 ESX Servers, \`a peu pr\`es 15 machines virtuelles). + \item Gestion d'une plateforme d'int\'egration continue (Hudons/Jenkins, Sonar), et d'outils de travail collaboratif pour les besoins de plusieurs projets (Dokuwiki, Mantis, Subversion). + \item Mise en place et maintien d'une politique de sauvegarde sur bandes avec Bacula. + \item Gestion d'une plateforme virtuelle de tests sous Xen pour un projet sp\'ecifique, avec une dizaine de serveurs Debian virtuels. + \end{itemize} + \textbf{Conception et d\'eveloppement Java} pour le Minist\`ere de l'\'Equipement, et pour Bison Fut\'e + \begin{itemize} + \item D\'eveloppement d'applications Web avec architecture n-tiers, distribu\'ee, en utilisant des frameworks (Struts, Spring, Hibernate, ExtJS). + \item \'Ecriture et optimisation de requ\^etes SQL. + \end{itemize} + } + +\cventry{Depuis 10/2010} + {Administrateur syst\`emes b\'en\'evole} + {L'Autre Net} + {} + {} + {\begin{itemize} + \item Gestion d'une plateforme associative d'h\'ebergement DNS (Bind9), Web (Apache2, PHP, MySQL), et mails (Postfix, Courier IMAP, Mailman) pilot\'ee par AlternC. + \item Plateforme g\'er\'ee par une \'equipe d'une dizaine de personnes, utilis\'ee par un peu plus de 1000 comptes utilisateurs, avec environs 3000 sites Web. + \item Serveurs sous Debian, supervis\'es \`a l'aide de Nagios et Munin, et sauvegard\'es quotidiennement avec RSync. + \end{itemize} + } + +\cventry{2006--2010} + {Administrateur syst\`emes b\'en\'evole} + {Association Bordelaise des Utilisateurs de Logiciels Libres (ABUL)} + {} + {} + {\begin{itemize} + \item Gestion des serveurs de l'ABUL sous Debian, avec services Web (Apache2, PHP, MySQL) et mails (Postfix, Dovecot, Sympa). + \item Supervision r\'eguli\`ere \`a l'aide d'outils de reporting par mail (logcheck, logwatch, rkhunter). + \end{itemize} + } + +\cventry{2007--2009} + {Directeur de Th\`eme} + {Rencontres Mondiales du Logiciel Libre (RMLL)} + {Mont-de-Marsan, Nantes} + {} + {\begin{itemize} + \item Prise en charge des th\`emes <<~Loisirs Num\'eriques~>> (2007-2008) puis <<~Culture et Art Libre~>> (2008-2009). + \item Coordination avec les autres directeurs du th\`eme et les responsables de l'\'ev\`enement. + \item Recherche d'intervenants. + \item D\'efinition d'un budget pr\'evisionnel. + \item Planification des interventions sur la semaine. + \item Accueil des intervenants et gestion des interventions. + \end{itemize} + } + +\section{Dipl\^omes} +\cventry{2003} + {Dipl\^ome Universitaire Technologique (DUT) Informatique} + {Institut Universitaire de Technologie Informatique} + {Bayonne} + {} + {} + +\cventry{2001} + {Baccalaur\'eat Scientifique, sp\'ecialit\'es Technologie Industrielle et Math\'ematiques, option Informatique} + {Lyc\'ee De Borda} + {Dax} + {} + {} + +\newpage{} + +\section{Comp\'etences} +\subsection{Administration syst\`emes} +\cvline{Syst\`emes}{Administration de serveurs sous Linux (Debian, Arch, Gentoo).} +\cvline{Services} +{Administration de services~:\begin{itemize} + \item Web : Apache, Nginx, PHP. + \item Mails : SMTP (Postfix), IMAP (Dovecot, Cyrus), Antispam (Spamassassin, Dspam), Antivirus (ClamAV). + \item Jabber (ejabberd, jabber14). + \item DNS (bind9). + \item Gestionnaires de bases de donn\'ees (PostgreSQL, MySQL), notions de tuning PostgreSQL. + \item Contr\^ole de versions (Subversion, Git). + \item Serveurs d'applications Java (Tomcat, Glassfish, JBoss) et d'applications Web (Sonar, Jenkin, Artifactory). + \item Gestion de configuration (Puppet). + \end{itemize} +} + +\cvline{S\'ecurit\'e} +{D\'efinition, mise en place et suivi d'une politique de sauvegarde (Bacula, BackupPC).\newline{} +Utilisation d'outils d'administration~: +\begin{itemize} + \item Supervision et reporting (Nagios, check\_mk, Munin, Logcheck, Logwatch, smartmond, mdadm\dots). + \item S\'ecurisation et d\'etection d'intrusion (Iptables, Shorewall, Snort, Rkhunter, Chkrootkit, debsums). + \end{itemize} +} + +\cvline{Scripts} +{Utilisation quotidienne du shellscript.\newline{} +Notions de programmation en Perl et en Python.} + +\subsection{D\'eveloppement} +\cvline{Java} +{D\'eveloppement d'applications N-Tiers, Javadoc, Tests unitaires (JUnit), d'outils de d\'eveloppement et de build.\newline{}} + +\cvline{C/C++} +{Utilisation de diverses biblioth\`eques (Boost, Qt), de Doxygen, d'outils de d\'eveloppement et de build.\newline{}} + +\subsection{Langues} +\cvlanguage{Fran\c cais}{Langue maternelle.}{} +\cvlanguage{Anglais}{Tr\`es bon niveau technique \`a l'\'ecrit.}{} +\cvlanguage{Espagnol}{Bon niveau \'ecrit.}{} + +\subsection{Comp\'etences humaines} +\cvline{}{Tr\`es bon relationnel, aime le travail en \'equipe, curieux, autonome, pers\'ev\'erant, diplomate.} +%\cvline{}{Accr\'editeur CACert} + +\section{Informations compl\'ementaires} +\subsection{Vie associative} +\cvline{ABUL} + {Tr\'esorier de 2008 \`a 2010, Participation aux listes de diffusion, Conf\'erences donn\'ees dans le cadre de << \`A Libre Ouvert >> (ligne de commande pour d\'ebutants, messagerie instantan\'ee).} +\cvline{\httplink{linuxfr.org}}{Relecteur de 2008 \`a 2010.} + +\subsection{Loisirs} +\cvline{}{Lecture, cin\'ema, musique, joueur de trompette, voyages, marche, v\'elo\dots} + +\end{document} diff --git a/images/abul.png b/images/abul.png new file mode 100644 index 0000000..8bc87a2 Binary files /dev/null and b/images/abul.png differ diff --git a/images/agfahealthcare.jpg b/images/agfahealthcare.jpg new file mode 100644 index 0000000..fbb351b Binary files /dev/null and b/images/agfahealthcare.jpg differ diff --git a/images/bisonfute.jpg b/images/bisonfute.jpg new file mode 100644 index 0000000..8c58193 Binary files /dev/null and b/images/bisonfute.jpg differ diff --git a/images/capgemini.jpg b/images/capgemini.jpg new file mode 100644 index 0000000..02da638 Binary files /dev/null and b/images/capgemini.jpg differ diff --git a/images/cete.bmp b/images/cete.bmp new file mode 100644 index 0000000..0d72c0f Binary files /dev/null and b/images/cete.bmp differ diff --git a/images/cete.png b/images/cete.png new file mode 100644 index 0000000..ccfa97c Binary files /dev/null and b/images/cete.png differ diff --git a/images/dis.gif b/images/dis.gif new file mode 100644 index 0000000..22c4a2f Binary files /dev/null and b/images/dis.gif differ diff --git a/images/dis.png b/images/dis.png new file mode 100644 index 0000000..afe1b00 Binary files /dev/null and b/images/dis.png differ diff --git a/images/lacouronne.jpg b/images/lacouronne.jpg new file mode 100644 index 0000000..553dc90 Binary files /dev/null and b/images/lacouronne.jpg differ diff --git a/images/photo.jpg b/images/photo.jpg new file mode 100644 index 0000000..f862143 Binary files /dev/null and b/images/photo.jpg differ diff --git a/images/rmll.png b/images/rmll.png new file mode 100644 index 0000000..0bfec34 Binary files /dev/null and b/images/rmll.png differ diff --git a/moderncv.cls b/moderncv.cls new file mode 100644 index 0000000..bcbe8ae --- /dev/null +++ b/moderncv.cls @@ -0,0 +1,501 @@ +%% start of file `moderncv.cls'. +%% Copyright 2006-2010 Xavier Danaux (xdanaux@gmail.com). +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License version 1.3c, +% available at http://www.latex-project.org/lppl/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{moderncv}[2010/08/03 v0.12 modern curriculum vitae document class] + + +%------------------------------------------------------------------------------- +% debugging +%------------------------------------------------------------------------------- +\newif\if@DEBUG\@DEBUGfalse + + +%------------------------------------------------------------------------------- +% class options +% +% (need to be done before the external package loading, for example because +% we need \paperwidth, \paperheight and \@ptsize to be defined before loading +% geometry and fancyhdr) +%------------------------------------------------------------------------------- +% paper size option +\DeclareOption{a4paper}{ + \setlength\paperheight{297mm} + \setlength\paperwidth{210mm}} +\DeclareOption{a5paper}{ + \setlength\paperheight{210mm} + \setlength\paperwidth{148mm}} +\DeclareOption{b5paper}{ + \setlength\paperheight{250mm} + \setlength\paperwidth{176mm}} +\DeclareOption{letterpaper}{ + \setlength\paperheight{11in} + \setlength\paperwidth{8.5in}} +\DeclareOption{legalpaper}{ + \setlength\paperheight{14in} + \setlength\paperwidth{8.5in}} +\DeclareOption{executivepaper}{ + \setlength\paperheight{10.5in} + \setlength\paperwidth{7.25in}} +\DeclareOption{landscape}{ + \setlength\@tempdima{\paperheight} + \setlength\paperheight{\paperwidth} + \setlength\paperwidth{\@tempdima}} + +% font size options +\newcommand\@ptsize{} +\DeclareOption{10pt}{\renewcommand\@ptsize{0}} +\DeclareOption{11pt}{\renewcommand\@ptsize{1}} +\DeclareOption{12pt}{\renewcommand\@ptsize{2}} + +% draft/final option +\DeclareOption{draft}{\setlength\overfullrule{5pt}} +\DeclareOption{final}{\setlength\overfullrule{0pt}} + +% nolmodern option +\newif\if@lmodern\@lmoderntrue +\DeclareOption{nolmodern}{\@lmodernfalse} + +% nocolor option +\newif\if@color\@colortrue +\DeclareOption{nocolor}{\@colorfalse} + +% CJK option +%\newif\if@CJK\@CJKfalse +%\DeclareOption{CJK}{\@CJKtrue} + +% execute default options +\ExecuteOptions{a4paper,10pt,color,final} + +% process given options +\ProcessOptions\relax +\input{size1\@ptsize.clo} + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- +% \AtEndPreamble hook (loading tetoolbox instead of defining the macro, as to avoid incompatibilities with etoolbox (and packages relying on it) defining the macro too) +\RequirePackage{etoolbox} +%\let\@endpreamblehook\@empty +%\def\AtEndPreamble{\g@addto@macro\@endpreamblehook} +%\let\moderncv@document\document +%\def\document{\endgroup\@endpreamblehook\begingroup\moderncv@document} + +% if... then... else... constructs +\RequirePackage{ifthen} + +% latex vs pdflatex vs xelatex vs luatex compilation +%\RequirePackage{ifpdf} + +% color +\RequirePackage{color} + +% font encoding +\RequirePackage[T1]{fontenc} + +% scalable Computer Modern fonts +%\usepackage{type1cm} + +% latin modern fonts +\if@lmodern + \RequirePackage{lmodern}\fi + +% symbols like \Telefon, \Mobilefone, \Letter and \Email +\RequirePackage{marvosym} + +% extended characters of T1 in .ps + other guillemets +%\RequirePackage{ae,aecompl,aeguill} + +% page geometry +\addtolength{\oddsidemargin}{-54pt} +\addtolength{\textwidth}{109pt} +\addtolength{\topmargin}{-70pt} +\addtolength{\textheight}{122pt} +\addtolength{\marginparsep}{-5pt} +\addtolength{\marginparwidth}{-10pt} + +% hyperrefs +\RequirePackage{url} +\urlstyle{tt} +% load hyperred at the end of the preamble to pass options required by loaded packages (like CJK) +\AtEndPreamble{ + \@ifpackageloaded{CJK} + {\RequirePackage[CJKbookmarks]{hyperref}} + {\RequirePackage[pdftex]{hyperref}} + \AtBeginDocument{ + \hypersetup{ + breaklinks, +% baseurl = http://, + pdfborder = 0 0 0, +% pdfpagemode = UseNone,% do not show thumbnails or bookmarks on opening +% pdfstartview = FitH, +% pdfstartpage = 1, + pdfcreator = \LaTeX{} with `moderncv' package, + pdfproducer = \LaTeX{}, + bookmarksopen = true, + pdfauthor = \@firstname~\@familyname, + pdftitle = \@title, + pdfsubject = \@firstname~\@familyname, + pdfkeywords = \@firstname~\@familyname{} curriculum vit\ae{}}} + \pagenumbering{arabic}% has to be issued after loading hyperref +} + +% graphics +\RequirePackage{graphicx} + +% headers and footers +\RequirePackage{fancyhdr} +\fancypagestyle{plain}{ + \renewcommand{\headrulewidth}{0pt} + \renewcommand{\footrulewidth}{0pt} + \fancyhf{}} +\pagestyle{plain} + +% compatibility package with older versions of moderncv +\RequirePackageWithOptions{moderncvcompatibility} + + +%------------------------------------------------------------------------------- +% class definition +%------------------------------------------------------------------------------- +% minimal base settings +\setlength\lineskip{1\p@} +\setlength\normallineskip{1\p@} +\renewcommand\baselinestretch{} +\setlength{\parindent}{0pt} +\setlength{\parskip}{0pt} +\setlength\columnsep{10\p@} +\setlength\columnseprule{0\p@} + +% TO BE TESTED +%\setlength\arraycolsep{5\p@} +%\setlength\tabcolsep{6\p@} +%\setlength\arrayrulewidth{.4\p@} +%\setlength\doublerulesep{2\p@} +%\setlength\tabbingsep{\labelsep} +%\setlength\fboxsep{3\p@} +%\setlength\fboxrule{.4\p@} + +\pagestyle{empty} +\raggedbottom +\onecolumn + + +%------------------------------------------------------------------------------- +% style commands definitions +%------------------------------------------------------------------------------- +% symbols used +\providecommand*{\listitemsymbol}{\Neutral}%{{\fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102}}} +\providecommand*{\addresssymbol}{} +\providecommand*{\mobilesymbol}{\Mobilefone} +\providecommand*{\phonesymbol}{\Telefon} +\providecommand*{\faxsymbol}{\FAX} +\providecommand*{\emailsymbol}{\Letter} +\providecommand*{\homepagesymbol}{{\Large\ComputerMouse}} + +% colors +\definecolor{firstnamecolor}{rgb}{0,0,0} +\definecolor{familynamecolor}{rgb}{0,0,0} +\definecolor{titlecolor}{rgb}{0,0,0} +\definecolor{addresscolor}{rgb}{0,0,0} +\definecolor{quotecolor}{rgb}{0,0,0} +\definecolor{sectionrectanglecolor}{rgb}{0,0,0} +\definecolor{sectiontitlecolor}{rgb}{0,0,0} +\definecolor{subsectioncolor}{rgb}{0,0,0} +\definecolor{hintcolor}{rgb}{0,0,0} + +% fonts +\providecommand*{\firstnamefont}{} +\providecommand*{\familynamefont}{} +\providecommand*{\titlefont}{} +\providecommand*{\addressfont}{} +\providecommand*{\quotefont}{} +\providecommand*{\sectionfont}{} +\providecommand*{\subsectionfont}{} +\providecommand*{\hintfont}{\small\sffamily} + +% styles +\providecommand*{\firstnamestyle}[1]{{\firstnamefont\color{firstnamecolor}#1}} +\providecommand*{\familynamestyle}[1]{{\familynamefont\color{familynamecolor}#1}} +\providecommand*{\titlestyle}[1]{{\titlefont\color{titlecolor}#1}} +\providecommand*{\addresstyle}[1]{{\addressfont\color{addresscolor}#1}} +\providecommand*{\quotestyle}[1]{{\quotefont\color{quotecolor}#1}} +\providecommand*{\sectionstyle}[1]{{\sectionfont\color{sectiontitlecolor}#1}} +\providecommand*{\subsectionstyle}[1]{{\subsectionfont\color{subsectioncolor}#1}} +\providecommand*{\hintstyle}[1]{{\hintfont\color{hintcolor}#1}} + +% themes: casual (default), classic, ... +\newcommand*{\moderncvtheme}[2][]{ + \def\@moderncvtheme{#2} + \def\@moderncvthemeoptions{#1}} +\moderncvtheme{casual}% default theme +\AtEndPreamble{\RequirePackage[\@moderncvthemeoptions]{moderncvtheme\@moderncvtheme}} + + +%------------------------------------------------------------------------------- +% structure commands definitions +%------------------------------------------------------------------------------- +\newcommand*{\firstname}[1]{\def\@firstname{#1}} +\newcommand*{\familyname}[1]{\def\@familyname{#1}} +\renewcommand*{\title}[1]{\def\@title{#1}} +\newcommand*{\address}[2]{\def\@addressstreet{#1}\def\@addresscity{#2}} +\newcommand*{\mobile}[1]{\def\@mobile{#1}} +\newcommand*{\phone}[1]{\def\@phone{#1}} +\renewcommand*{\fax}[1]{\def\@fax{#1}} +\newcommand*{\email}[1]{\def\@email{#1}} +\newcommand*{\homepage}[1]{\def\@homepage{#1}} +\newcommand*{\extrainfo}[1]{\def\@extrainfo{#1}} +\def\@photowidth{0pt} +\newcommand*{\photo}[2][64pt]{\def\@photowidth{#1}\def\@photo{#2}} +\newcommand*{\quote}[1]{\def\@quote{#1}} + +% length used by the moderncv layout +% quote length +\newlength{\quotewidth} +% section lengths +\newlength{\hintscolumnwidth} +\newlength{\separatorcolumnwidth} +\setlength{\separatorcolumnwidth}{0.025\textwidth} +\newlength{\maincolumnwidth} +% doubleitem lengths +\newlength{\doubleitemmaincolumnwidth} +% listitem lengths +\newlength{\listitemsymbolwidth} +\settowidth{\listitemsymbolwidth}{\listitemsymbol{}~} +\newlength{\listitemmaincolumnwidth} +% listdoubleitem lengths +\newlength{\listdoubleitemmaincolumnwidth} +% recompute all the lengths that depends on the text width +\newcommand*{\recomputethemelengths}{} +\newcommand*{\recomputelengths}{% + \setlength{\quotewidth}{0.65\textwidth}% + % main lenghts + \setlength{\maincolumnwidth}{\textwidth}% + \addtolength{\maincolumnwidth}{-\separatorcolumnwidth}% + \addtolength{\maincolumnwidth}{-\hintscolumnwidth}% + % listitem lengths + \setlength{\listitemmaincolumnwidth}{\maincolumnwidth}% + \addtolength{\listitemmaincolumnwidth}{-\listitemsymbolwidth}% + % doubleitem lengths + \setlength{\doubleitemmaincolumnwidth}{\maincolumnwidth}% + \addtolength{\doubleitemmaincolumnwidth}{-\hintscolumnwidth}% + \addtolength{\doubleitemmaincolumnwidth}{-\separatorcolumnwidth}% + \setlength{\doubleitemmaincolumnwidth}{0.5\doubleitemmaincolumnwidth}% + % listdoubleitem lengths + \setlength{\listdoubleitemmaincolumnwidth}{\maincolumnwidth}% + \addtolength{\listdoubleitemmaincolumnwidth}{-\listitemsymbolwidth}% + \setlength{\listdoubleitemmaincolumnwidth}{0.475\listdoubleitemmaincolumnwidth}% + % fancyhdr lengths + \renewcommand{\headwidth}{\textwidth}% + \recomputethemelengths} +\setlength{\hintscolumnwidth}{0.15\textwidth} +\recomputelengths + +% makes the cv title +%\newcommand*{\maketitle}{}% +\title{}% to avoid LaTeX complaining that \maketitle is a called without first a call to \title + +% draws a colored rectangle +% usage: \colorrule[optional height]{width} +%\newcommand*{\colorrule}[2][1ex]{{\color{sectionrectanglecolor}{\rule{#2}{#1}}}} + +% usage: \section{} +\newcommand*{\section}[1]{% + \vspace*{2.5ex}% + \parbox[m]{\hintscolumnwidth}{\raggedleft\hintfont{\color{sectionrectanglecolor}\rule{\hintscolumnwidth}{1ex}}}% + \phantomsection{}% reset the anchor for hyperrefs + \addcontentsline{toc}{part}{#1}% + \hspace{\separatorcolumnwidth}% + \parbox[m]{\maincolumnwidth}{\sectionstyle{#1}}% + \par\nobreak\vskip 1ex\@afterheading}% to avoid a pagebreak after the heading +% starred variant, which is identical but defined to allow its use (e.g. for natbib compatibility, who uses \section*{} for the bibliography header) +\AtEndPreamble{% + \@ifpackageloaded{natbib} + { + \RequirePackage{suffix} + \WithSuffix\newcommand\section*{\section} + }{} +} + +% usage: \subsection{title} +\newcommand*{\subsection}[1]{% + \begin{tabular}{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}% + \raggedleft\hintfont{} &{\subsectionstyle{#1}}% + \end{tabular}% + \par\nobreak\vskip 0.5ex\@afterheading}% to avoid a pagebreak after the heading +% \phantomsection{}% reset the anchor for hyperrefs +% \addcontentsline{toc}{chapter}{#1}% does not work, the bookmark is placed at the same level as sections (placed themselves at part level to be visible, as hyperref does not allow sections without parents...) + +% usage: \cvline{margintext}{linetext} +\newcommand*{\cvline}[3][.25em]{% + \begin{tabular}{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}% + \raggedleft\hintfont{#2} &{\normalfont{\small#3}}% + \end{tabular}\\[#1]} + +% usage: \cvdoubleitem{subtitle}{text}{subtitle}{text} +\newcommand*{\cvdoubleitem}[4]{% + \cvline{#1}{\begin{minipage}[t]{\doubleitemmaincolumnwidth}#2\end{minipage}% + \hfill% + \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintfont{#3}\end{minipage}\hspace*{\separatorcolumnwidth}\begin{minipage}[t]{\doubleitemmaincolumnwidth}#4\end{minipage}}} + +% usage: \cvlistitem[symbol]{point1} +\newcommand*{\cvlistitem}[2][\listitemsymbol{}]{% + \cvline[0pt]{}{#1~\begin{minipage}[t]{\listitemmaincolumnwidth}#2\end{minipage}}} + +% usage: \cvlistdoubleitem[symbol]{point1}{point2} +\newcommand*{\cvlistdoubleitem}[3][\listitemsymbol{}]{% + \cvline[0pt]{}{#1~\begin{minipage}[t]{\listdoubleitemmaincolumnwidth}#2\end{minipage}% + \hfill% + \ifthenelse{\equal{#3}{}}% + {}% + {#1~\begin{minipage}[t]{\listdoubleitemmaincolumnwidth}#3\end{minipage}}}} + +% usage: \cventry{years}{degree/job title}{institution/employer}{localization}{optionnal: grade/...}{optional: comment/job description} +\newcommand*{\cventry}[6]{% + \cvline[1em]{#1}{% + {\bfseries#2}% + \ifthenelse{\equal{#3}{}}{}{, {\slshape#3}}% + \ifthenelse{\equal{#4}{}}{}{, #4}% + \ifthenelse{\equal{#5}{}}{}{, #5}% + .% + \ifx&% + \else{\newline{}\begin{minipage}[t]{\linewidth}#6\end{minipage}}\fi% + }}% + +% usage (inside 'language' cvsection environment): \cvlanguage{name}{level}{comment} +\newcommand*{\cvlanguage}[3]{% + \cvline{#1}{\begin{minipage}[t]{.225\maincolumnwidth}\textbf{#2}\end{minipage}\hfill\begin{minipage}[t]{0.725\maincolumnwidth}\raggedleft\footnotesize\itshape #3\end{minipage}}} + +% usage (inside 'computer skills' cvsection environment): \cvcomputer{category}{programs}{category}{programs} +\newcommand*{\cvcomputer}[4]{% + \cvdoubleitem{#1}{\small#2}{#3}{\small#4}} + +% usage: \link[optional text]{link} +\newcommand*{\link}[2][]{% + \ifthenelse{\equal{#1}{}}% + {\href{#2}{#2}}% + {\href{#2}{#1}}} + +% usage: \httplink[optional text]{link} +\newcommand*{\httplink}[2][]{% + \ifthenelse{\equal{#1}{}}% + {\href{http://#2}{#2}}% + {\href{http://#2}{#1}}} + +% usage: \emaillink[optional text]{link} +\newcommand*{\emaillink}[2][]{% + \ifthenelse{\equal{#1}{}}% + {\href{mailto:#2}{#2}}% + {\href{mailto:#2}{#1}}} + +% usage: \nopagenumbers{} +\newif\if@displaypagenumbers\@displaypagenumberstrue +\newcommand*{\nopagenumbers}{\@displaypagenumbersfalse} +\AtEndPreamble{% +\AtBeginDocument{% + \if@displaypagenumbers% + \@ifundefined{r@lastpage}{}{% + \ifthenelse{\pageref{lastpage} > 1}{% + \fancypagestyle{plain}{% + \fancyfoot[r]{\addressfont\color{quotecolor}\footnotesize\thepage/\pageref{lastpage}}}% + \pagestyle{plain}}{}}% + \AtEndDocument{\label{lastpage}}\else\fi}} + +% thebibliography environment, for use with BibTeX and possibly multibib +\newcommand{\refname}{Publications} +\newlength{\bibindent} +\setlength{\bibindent}{1.5em} +% bibliography item label +\newcommand*{\bibliographyitemlabel}{}% use \@biblabel{\arabic{enumiv}} for BibTeX labels +%\newif\if@multibibfirstbib\@multibibfirstbibfalse +% bibliography head (section, etc}, depending on whether multibib is used +\newcommand*{\bibliographyhead}[1]{\section{#1}} +\AtEndPreamble{\@ifpackageloaded{multibib}{\renewcommand*{\bibliographyhead}[1]{\subsection{#1}}}{}} +% thebibliography environment definition +\newenvironment{thebibliography}[1]% + {% + \bibliographyhead{\refname}% + \small% + \begin{list}{\bibliographyitemlabel}% + {% + \setlength{\topsep}{0pt}% + \setlength{\labelwidth}{\hintscolumnwidth}% + \setlength{\labelsep}{\separatorcolumnwidth}% + \leftmargin\labelwidth% + \advance\leftmargin\labelsep% + \@openbib@code% + \usecounter{enumiv}% + \let\p@enumiv\@empty% + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \sloppy\clubpenalty4000\widowpenalty4000% +% \sfcode`\.\@m% +% \sfcode `\=1000\relax% + }% + {% + \def\@noitemerr{\@latex@warning{Empty `thebibliography' environment}}% + \end{list}% + } +\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em} +\let\@openbib@code\@empty + +% itemize, enumerate and description environment +\setlength{\leftmargini} {1.2em} +\leftmargin\leftmargini +\setlength{\leftmarginii} {1em} +\setlength{\leftmarginiii} {1.87em} +\setlength{\leftmarginiv} {1.7em} +\setlength{\leftmarginv} {1em} +\setlength{\leftmarginvi} {1em} +\setlength{\labelsep} {.5em} +\setlength{\labelwidth} {\leftmargini} +\addtolength{\labelwidth} {-\labelsep} +\@beginparpenalty -\@lowpenalty +\@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty +% itemize labels +\newcommand\labelitemi{\listitemsymbol{}} +\newcommand\labelitemii{{\large\bfseries-}} +\newcommand\labelitemiii{\textperiodcentered}%{\textasteriskcentered} +\newcommand\labelitemiv{\textperiodcentered} +% enumerate labels +\renewcommand\theenumi{\@arabic\c@enumi} +\renewcommand\theenumii{\@alph\c@enumii} +\renewcommand\theenumiii{\@roman\c@enumiii} +\renewcommand\theenumiv{\@Alph\c@enumiv} +\newcommand\labelenumi{\theenumi.} +\newcommand\labelenumii{(\theenumii)} +\newcommand\labelenumiii{\theenumiii.} +\newcommand\labelenumiv{\theenumiv.} +\renewcommand\p@enumii{\theenumi} +\renewcommand\p@enumiii{\p@enumii(\theenumii)} +\renewcommand\p@enumiv{\p@enumiii\theenumiii} +% description label +\newcommand*\descriptionlabel[1]{\hspace\labelsep\normalfont\bfseries#1} +% hooks to adjust spacing (idea by Jakob Schiøtz; see http://dcwww.camd.dtu.dk/~schiotz/comp/LatexTips/tweaklist.sty) +\RequirePackage{tweaklist}% distributed with moderncv, not found on ctan and slightly modified +\renewcommand*{\itemhook}{ + \setlength{\topsep}{0pt}% + \setlength{\itemsep}{0pt}} +\renewcommand*{\enumhook}{\itemhook{}} +\renewcommand*{\deschook}{\itemhook{}} + +% classical \today definition +\def\today{\ifcase\month\or + January\or February\or March\or April\or May\or June\or + July\or August\or September\or October\or November\or December\fi + \space\number\day, \number\year} + + +\endinput + + +%% end of file `moderncv.cls'. diff --git a/moderncvcompatibility.sty b/moderncvcompatibility.sty new file mode 100644 index 0000000..f0e7945 --- /dev/null +++ b/moderncvcompatibility.sty @@ -0,0 +1,72 @@ +%% start of file `moderncvcompatibility.sty'. +%% Copyright 2006-2010 Xavier Danaux (xdanaux@gmail.com). +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License version 1.3c, +% available at http://www.latex-project.org/lppl/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncvcompatibility}[2010/08/03 v0.12 modern curriculum vitae compatibility patches] + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- + + +%------------------------------------------------------------------------------- +% package options +%------------------------------------------------------------------------------- +% old casual option (version 0.1) +%\DeclareOption{casual}{\input{moderncvstylecasual.sty}} + +% old classic option (version 0.1) +%\DeclareOption{classic}{\input{moderncvstyleclassic.sty}} + +\DeclareOption*{} + +% process given options +\ProcessOptions\relax + +%------------------------------------------------------------------------------- +% definitions +%------------------------------------------------------------------------------- +% compatibility with version 0.1 +\newcommand*{\cvresume}[2]{\cvlistdoubleitem{#1}{#2}} + +% compatibility with versions <= 0.2 +% section, cvline, ... with width argument... +%\newcommand*{\section}[2][0.825]{% +% \closesection{}% +% \@sectionopentrue% +% \addcontentsline{toc}{part}{#2} +% \begin{longtable}[t]{@{}r@{\hspace{.025\textwidth}}@{}p{#1\textwidth}@{}}% +%% \colorrule{.15\textwidth}&\mbox{\color{sectiontitlecolor}\sectionfont#2}\\[1ex]}% +% {\color{sectionrectanglecolor}\rule{0.15\textwidth}{1ex}}&\mbox{\color{sectiontitlecolor}\sectionfont#2}\\[1ex]}% +%\newcommand*{\cvline}[3][.825]{% +% \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\small\sffamily#2\end{minipage}&\begin{minipage}[t]{\maincolumnwidth}#3\end{minipage}\\} +%\newcommand*{\cvitem}[3][.825]{% +% \cvline[#1]{#2}{#3\vspace*{.75em}}} % the \vspace*{} inside the cvline environment is a hack... (should conceptually be outside the environment) + +% compatibility with versions <= 0.5 +\newcommand*{\cvitem}[2]{\cvline{#1}{#2}} +\newcommand*{\moderncvstyle}[1]{\moderncvtheme{#1}} + +% compatibility with versions <=0.7 +\newcommand*{\closesection}{} +\newcommand*{\emptysection}{} +\newcommand*{\sethintscolumnlength}[1]{% + \setlength{\hintscolumnwidth}{#1}% + \recomputelengths} +\newcommand*{\sethintscolumntowidth}[1]{% + \settowidth{\hintscolumnwidth}{#1}% + \recomputelengths} + +\endinput + + +%% end of file `moderncvcompatibility.sty'. diff --git a/moderncvthemecasual.sty b/moderncvthemecasual.sty new file mode 100644 index 0000000..b4b3562 --- /dev/null +++ b/moderncvthemecasual.sty @@ -0,0 +1,154 @@ +%% start of file `moderncvthemecasual.sty'. +%% Copyright 2006-2010 Xavier Danaux (xdanaux@gmail.com). +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License version 1.3c, +% available at http://www.latex-project.org/lppl/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncvthemecasual}[2010/08/03 v0.12 modern curriculum vitae style: casual] + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- + + +%------------------------------------------------------------------------------- +% package options +%------------------------------------------------------------------------------- +% color options +% blue (default option) +\DeclareOption{blue}{} +% orange +\newif\if@colororange\@colororangefalse +\DeclareOption{orange}{\@colororangetrue} +% green +\newif\if@colorgreen\@colorgreenfalse +\DeclareOption{green}{\@colorgreentrue} +% red +\newif\if@colorred\@colorredfalse +\DeclareOption{red}{\@colorredtrue} +% grey +\newif\if@colorgrey\@colorgreyfalse +\DeclareOption{grey}{\@colorgreytrue} + +% roman option +\newif\if@roman\@romanfalse +\DeclareOption{roman}{\@romantrue} + +% unused options +\DeclareOption*{ + \PackageWarning{moderncvthemecasual}{Unknown option ‘\CurrentOption’}} + +% execute default options +\ExecuteOptions{color} + +% process given options +\ProcessOptions\relax + + +%------------------------------------------------------------------------------- +% style definition +%------------------------------------------------------------------------------- +% symbols used + +% colors +\definecolor{firstnamecolor}{rgb}{0.65,0.65,0.65} +\definecolor{familynamecolor}{rgb}{0.45,0.45,0.45} +\definecolor{quotecolor}{rgb}{0.35,0.35,0.35} +\definecolor{addresscolor}{rgb}{0.35,0.35,0.35} +% default blue color + \definecolor{sectionrectanglecolor}{rgb}{0.25,0.50,0.75} + \definecolor{sectiontitlecolor}{rgb}{0.20,0.40,0.65} + \definecolor{subsectioncolor}{rgb}{0.20,0.40,0.65} + \definecolor{footersymbolcolor}{rgb}{0.25,0.50,0.75} +\if@colororange + \definecolor{sectionrectanglecolor}{rgb}{1.00,0.65,0.20} + \definecolor{sectiontitlecolor}{rgb}{0.95,0.55,0.15} + \definecolor{subsectioncolor}{rgb}{0.95,0.55,0.15} + \definecolor{footersymbolcolor}{rgb}{0.95,0.55,0.15}\fi +\if@colorgreen + \definecolor{sectionrectanglecolor}{rgb}{0.55,0.85,0.35} + \definecolor{sectiontitlecolor}{rgb}{0.30,0.65,0.15} + \definecolor{subsectioncolor}{rgb}{0.30,0.65,0.15} + \definecolor{footersymbolcolor}{rgb}{0.30,0.65,0.15}\fi +\if@colorred + \definecolor{sectionrectanglecolor}{rgb}{1.00,0.30,0.30} + \definecolor{sectiontitlecolor}{rgb}{0.95,0.20,0.20} + \definecolor{subsectioncolor}{rgb}{0.95,0.20,0.20} + \definecolor{footersymbolcolor}{rgb}{0.95,0.20,0.20}\fi +\if@colorgrey + \definecolor{sectionrectanglecolor}{rgb}{0.75,0.75,0.75} + \definecolor{sectiontitlecolor}{rgb}{0.35,0.35,0.35} + \definecolor{subsectioncolor}{rgb}{0.35,0.35,0.35} + \definecolor{footersymbolcolor}{rgb}{0.35,0.35,0.35}\fi + +% fonts +\if@roman + \AtBeginDocument{\rmfamily} +\else + \AtBeginDocument{\sffamily}\fi +\renewcommand*{\ttdefault}{pcr} +\renewcommand*{\firstnamefont}{\fontsize{38}{40}\sffamily\mdseries\upshape} +\renewcommand*{\familynamefont}{\firstnamefont} +\renewcommand*{\addressfont}{\normalsize\sffamily\mdseries\slshape} +\renewcommand*{\quotefont}{\large\slshape} +\renewcommand*{\sectionfont}{\Large\sffamily\mdseries\upshape} +\renewcommand*{\subsectionfont}{\large\sffamily\mdseries\upshape} + +% styles + +% maketitle +\renewcommand*{\maketitle}{% + {% + \ifthenelse{\isundefined{\@photo}}% + {}% + {{\color{firstnamecolor}\framebox{\includegraphics[width=\@photowidth]{\@photo}}}}% + \hfill% +% \raggedleft{\firstnamestyle{\MakeLowercase{\@firstname}}\familynamestyle{\MakeLowercase{\@familyname}}}\\[-.35em]}% + \raggedleft{\firstnamestyle{\@firstname}~\familynamestyle{\@familyname}}\\[-.35em]}% + {\color{firstnamecolor}\rule{\textwidth}{.25ex}\\[2.5em]}% +% optional quote + \ifthenelse{\isundefined{\@quote}}% + {}% + {{\centering{}\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}% + \par}% to avoid weird spacing bug at the first section if no blank line is left after \maketitle + +% cv footer +\newif\if@firstfooterelement\@firstfooterelementtrue +\providecommand*{\footersymbol}{} +\renewcommand*{\footersymbol}{% + \if@firstfooterelement% + \else% + { ~~\color{footersymbolcolor}\textbullet~~~}\fi} +\providecommand*{\makefooter}{} +\renewcommand*{\makefooter}{% + \fancypagestyle{plain}{% + \fancyfoot[c]{% + \parbox{0.8\textwidth}{% + \centering% + \addressfont\color{addresscolor}% + \ifthenelse{\isundefined{\@addressstreet}}{}{% + \addresssymbol~\@addressstreet% + \@firstfooterelementfalse% + \ifthenelse{\isundefined{\@addresscity}}{}{~--~\@addresscity}\\\@firstfooterelementtrue}% + \ifthenelse{\isundefined{\@mobile}}{}{\footersymbol\mobilesymbol~\@mobile\@firstfooterelementfalse}% + \ifthenelse{\isundefined{\@phone}}{}{\footersymbol\phonesymbol~\@phone\@firstfooterelementfalse}% + \ifthenelse{\isundefined{\@fax}}{}{\footersymbol\faxsymbol~\@fax\@firstfooterelementfalse}% + \ifthenelse{\isundefined{\@email}}{}{\footersymbol\emailsymbol~\emaillink{\@email}\@firstfooterelementfalse}% + \ifthenelse{\isundefined{\@homepage}}{}{\footersymbol\homepagesymbol~\httplink{\@homepage}\@firstfooterelementfalse}% + \ifthenelse{\isundefined{\@extrainfo}}{}{\footersymbol\@extrainfo\@firstfooterelementfalse}}}% + }% + \pagestyle{plain}} +\AtBeginDocument{\makefooter} + + +\endinput + + +%% end of file `moderncvthemecasual.sty'. diff --git a/moderncvthemeclassic.sty b/moderncvthemeclassic.sty new file mode 100644 index 0000000..666c724 --- /dev/null +++ b/moderncvthemeclassic.sty @@ -0,0 +1,173 @@ +%% start of file `moderncvthemeclassic.sty'. +%% Copyright 2006-2010 Xavier Danaux (xdanaux@gmail.com). +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License version 1.3c, +% available at http://www.latex-project.org/lppl/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncvthemeclassic}[2010/08/03 v0.12 modern curriculum vitae style: classic] + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- + + +%------------------------------------------------------------------------------- +% package options +%------------------------------------------------------------------------------- +% color options +% blue (default option) +\DeclareOption{blue}{} +% orange +\newif\if@colororange\@colororangefalse +\DeclareOption{orange}{\@colororangetrue} +% green +\newif\if@colorgreen\@colorgreenfalse +\DeclareOption{green}{\@colorgreentrue} +% red +\newif\if@colorred\@colorredfalse +\DeclareOption{red}{\@colorredtrue} +% grey +\newif\if@colorgrey\@colorgreyfalse +\DeclareOption{grey}{\@colorgreytrue} + +% roman option +\newif\if@roman\@romanfalse +\DeclareOption{roman}{\@romantrue} + +% unused options +\DeclareOption*{ + \PackageWarning{moderncvthemeclassic}{Unknown option ‘\CurrentOption’}} + +% execute default options +\ExecuteOptions{color} + +% process given options +\ProcessOptions\relax + + +%------------------------------------------------------------------------------- +% style definition +%------------------------------------------------------------------------------- +% symbols used + +% colors +\definecolor{firstnamecolor}{rgb}{0,0,0} +\definecolor{familynamecolor}{rgb}{0,0,0} +\definecolor{titlecolor}{rgb}{0.35,0.35,0.35} +\definecolor{quotecolor}{rgb}{0.35,0.35,0.35} +% default blue color + \definecolor{addresscolor}{rgb}{0.25,0.5,0.75} + \definecolor{sectionrectanglecolor}{rgb}{0.25,0.5,0.75} + \definecolor{sectiontitlecolor}{rgb}{0.2,0.4,0.65} + \definecolor{subsectioncolor}{rgb}{0.2,0.4,0.65} +\if@colororange + \definecolor{addresscolor}{rgb}{0.95,0.55,0.15} + \definecolor{sectionrectanglecolor}{rgb}{1,0.65,0.20} + \definecolor{sectiontitlecolor}{rgb}{0.95,0.55,0.15} + \definecolor{subsectioncolor}{rgb}{0.95,0.55,0.15}\fi +\if@colorgreen + \definecolor{addresscolor}{rgb}{0.30,0.65,0.15} + \definecolor{sectionrectanglecolor}{rgb}{0.55,0.85,0.35} + \definecolor{sectiontitlecolor}{rgb}{0.30,0.65,0.15} + \definecolor{subsectioncolor}{rgb}{0.30,0.65,0.15}\fi +\if@colorred + \definecolor{addresscolor}{rgb}{0.95,0.20,0.20} + \definecolor{sectionrectanglecolor}{rgb}{1.00,0.30,0.30} + \definecolor{sectiontitlecolor}{rgb}{0.95,0.20,0.20} + \definecolor{subsectioncolor}{rgb}{0.95,0.20,0.20}\fi +\if@colorgrey + \definecolor{addresscolor}{rgb}{0.35,0.35,0.35} + \definecolor{sectionrectanglecolor}{rgb}{0.75,0.75,0.75} + \definecolor{sectiontitlecolor}{rgb}{0.35,0.35,0.35} + \definecolor{subsectioncolor}{rgb}{0.35,0.35,0.35}\fi + +% fonts +\if@roman + \AtBeginDocument{\rmfamily} +\else + \AtBeginDocument{\sffamily}\fi +\renewcommand*{\ttdefault}{pcr} +\renewcommand*{\firstnamefont}{\fontsize{34}{36}\sffamily\mdseries\upshape} +\renewcommand*{\titlefont}{\LARGE\sffamily\mdseries\slshape} +\renewcommand*{\addressfont}{\normalsize\rmfamily\mdseries\slshape} +\renewcommand*{\familynamefont}{\firstnamefont} +\renewcommand*{\quotefont}{\large\slshape} +\renewcommand*{\sectionfont}{\Large\sffamily\mdseries\upshape} +\renewcommand*{\subsectionfont}{\large\sffamily\mdseries\upshape} + +% styles + +% maketitle +% setmaketitlenamemaxwidth to the full name length, capped by \maketitlenamemaxwidth +\newlength{\maketitlenamemaxwidth} +\setlength{\maketitlenamemaxwidth}{.525\textwidth} +\newlength{\maketitlenamefullwidth} +\settowidth{\maketitlenamefullwidth}{\firstnamestyle{\@firstname~}\familynamestyle{\@familyname}} +\newlength{\maketitlenamewidth} +\ifnum\maketitlenamemaxwidth<\maketitlenamefullwidth\setlength{\maketitlenamewidth}{\maketitlenamemaxwidth}\else\setlength{\maketitlenamewidth}{\maketitlenamefullwidth}\fi +% other lengths +\newlength{\maketitlepicturewidth} +\setlength{\maketitlepicturewidth}{\@photowidth} +\newlength{\maketitledetailswidth} +% recompute theme-specific lengths, called by class to recompute all lengths +\renewcommand*{\recomputethemelengths}{% + \setlength{\maketitledetailswidth}{\textwidth}% + \addtolength{\maketitledetailswidth}{-\maketitlenamewidth}% + \ifthenelse{\lengthtest{\maketitlepicturewidth=0pt}}% + {}% + {\addtolength{\maketitledetailswidth}{-\separatorcolumnwidth}% + \addtolength{\maketitledetailswidth}{-\maketitlepicturewidth}}} +\recomputethemelengths +\newif\if@firstdetailselement\@firstdetailselementtrue +\newcommand*{\maketitledetailsnewline}{ + \if@firstdetailselement% + \@firstdetailselementfalse% + \else% + \\[.2em]\fi} +\renewcommand*{\maketitle}{% + % name and title + \begin{minipage}[b]{\maketitlenamewidth}% + \firstnamestyle{\@firstname~}\familynamestyle{\@familyname}% + \ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}% + \end{minipage}% + % optional data + \begin{minipage}[b]{\maketitledetailswidth}% + \raggedleft\addressfont\color{addresscolor}% + \ifthenelse{\isundefined{\@addressstreet}}{}{% + \maketitledetailsnewline% + \addresssymbol~\@addressstreet% + \ifthenelse{\isundefined{\@addresscity}}{}{\\\@addresscity}}% + \ifthenelse{\isundefined{\@mobile}}{}{\maketitledetailsnewline\mobilesymbol~\@mobile}% + \ifthenelse{\isundefined{\@phone}}{}{\maketitledetailsnewline\phonesymbol~\@phone}% + \ifthenelse{\isundefined{\@fax}}{}{\maketitledetailsnewline\faxsymbol~\@fax}% + \ifthenelse{\isundefined{\@email}}{}{\maketitledetailsnewline\emailsymbol~\emaillink{\@email}}% + \ifthenelse{\isundefined{\@homepage}}{}{\maketitledetailsnewline\homepagesymbol~\httplink{\@homepage}}% + \ifthenelse{\isundefined{\@extrainfo}}{}{\maketitledetailsnewline\@extrainfo}% + \end{minipage}% + % optional photo + \ifthenelse{\isundefined{\@photo}}% + {}% + {% + \hspace*{\separatorcolumnwidth}% + \begin{minipage}[b]{\maketitlepicturewidth}% + \raggedleft{}\addressfont\color{addresscolor}% required to correctly align content + \framebox{\includegraphics[width=\maketitlepicturewidth]{\@photo}}% + \end{minipage}}\\[3em]% + % optional quote + \ifthenelse{\isundefined{\@quote}}% + {}% + {{\centering{}\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}% + } + + +\endinput + + +%% end of file `moderncvthemeclassic.sty'. diff --git a/moderncvthemecustom.sty b/moderncvthemecustom.sty new file mode 100644 index 0000000..088cacb --- /dev/null +++ b/moderncvthemecustom.sty @@ -0,0 +1,179 @@ +%% start of file `moderncvthemecustom.sty'. +%% Copyright 2011 Alexis Lahouze (xals@lahouze.org). +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License version 1.3c, +% available at http://www.latex-project.org/lppl/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncvthemecustom}[2011/08/03 v0.1 custom curriculum vitae style: custom] + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- + + +%------------------------------------------------------------------------------- +% package options +%------------------------------------------------------------------------------- +% color options +% blue (default option) +\DeclareOption{blue}{} +% orange +\newif\if@colororange\@colororangefalse +\DeclareOption{orange}{\@colororangetrue} +% green +\newif\if@colorgreen\@colorgreenfalse +\DeclareOption{green}{\@colorgreentrue} +% red +\newif\if@colorred\@colorredfalse +\DeclareOption{red}{\@colorredtrue} +% grey +\newif\if@colorgrey\@colorgreyfalse +\DeclareOption{grey}{\@colorgreytrue} + +% unused options +\DeclareOption*{ + \PackageWarning{moderncvthemecustom}{Unknown option ‘\CurrentOption’}} + +% execute default options +\ExecuteOptions{color} + +% process given options +\ProcessOptions\relax + + +%------------------------------------------------------------------------------- +% style definition +%------------------------------------------------------------------------------- +% symbols used + +% colors +\definecolor{firstnamecolor}{rgb}{0,0,0} +\definecolor{familynamecolor}{rgb}{0,0,0} +\definecolor{titlecolor}{rgb}{0.35,0.35,0.35} +\definecolor{quotecolor}{rgb}{0.35,0.35,0.35} +\definecolor{addresscolor}{rgb}{0.35,0.35,0.35} +% default blue color + \definecolor{sectionrectanglecolor}{rgb}{0.25,0.50,0.75} + \definecolor{sectiontitlecolor}{rgb}{0.20,0.40,0.65} + \definecolor{subsectioncolor}{rgb}{0.20,0.40,0.65} + \definecolor{footersymbolcolor}{rgb}{0.25,0.50,0.75} +\if@colororange + \definecolor{sectionrectanglecolor}{rgb}{1.00,0.65,0.20} + \definecolor{sectiontitlecolor}{rgb}{0.95,0.55,0.15} + \definecolor{subsectioncolor}{rgb}{0.95,0.55,0.15} + \definecolor{footersymbolcolor}{rgb}{0.95,0.55,0.15}\fi +\if@colorgreen + \definecolor{sectionrectanglecolor}{rgb}{0.55,0.85,0.35} + \definecolor{sectiontitlecolor}{rgb}{0.30,0.65,0.15} + \definecolor{subsectioncolor}{rgb}{0.30,0.65,0.15} + \definecolor{footersymbolcolor}{rgb}{0.30,0.65,0.15}\fi +\if@colorred + \definecolor{sectionrectanglecolor}{rgb}{1.00,0.30,0.30} + \definecolor{sectiontitlecolor}{rgb}{0.95,0.20,0.20} + \definecolor{subsectioncolor}{rgb}{0.95,0.20,0.20} + \definecolor{footersymbolcolor}{rgb}{0.95,0.20,0.20}\fi +\if@colorgrey + \definecolor{sectionrectanglecolor}{rgb}{0.75,0.75,0.75} + \definecolor{sectiontitlecolor}{rgb}{0.35,0.35,0.35} + \definecolor{subsectioncolor}{rgb}{0.35,0.35,0.35} + \definecolor{footersymbolcolor}{rgb}{0.35,0.35,0.35}\fi + + +%\definecolor{sectionrectanglecolor}{rgb}{0.75,0.75,0.75} +%\definecolor{sectionrectanglecolor}{rgb}{0.55,0.85,0.35} +%\definecolor{sectiontitlecolor}{rgb}{0.35,0.35,0.35} +%\definecolor{sectiontitlecolor}{rgb}{0.30,0.65,0.15} +%\definecolor{subsectioncolor}{rgb}{0.35,0.35,0.35} +%\definecolor{subsectioncolor}{rgb}{0.30,0.65,0.15} +%\definecolor{footersymbolcolor}{rgb}{0.30,0.65,0.15} + + + +% fonts +\renewcommand*{\ttdefault}{phv} % Arial +\renewcommand*{\rmdefault}{phv} % Arial +\renewcommand*{\sfdefault}{phv} % Arial +\renewcommand*{\firstnamefont}{\huge\sffamily\mdseries\upshape} +\renewcommand*{\titlefont}{\LARGE\sffamily\mdseries\slshape} +\renewcommand*{\addressfont}{\small\rmfamily\mdseries\slshape} +\renewcommand*{\familynamefont}{\firstnamefont} +\renewcommand*{\quotefont}{\large\slshape} +\renewcommand*{\sectionfont}{\Large\sffamily\mdseries\upshape} +\renewcommand*{\subsectionfont}{\large\sffamily\mdseries\upshape} + +% styles + +% maketitle +% setmaketitlenamemaxwidth to the full name length, capped by \maketitlenamemaxwidth +\newlength{\maketitlenamemaxwidth} +\setlength{\maketitlenamemaxwidth}{.525\textwidth} +\newlength{\maketitlenamefullwidth} +\settowidth{\maketitlenamefullwidth}{\firstnamestyle{\@firstname~}\familynamestyle{\@familyname}} +% other lengths +\newlength{\maketitlepicturewidth} +\setlength{\maketitlepicturewidth}{\@photowidth} +\newlength{\maketitledetailswidth} +% recompute theme-specific lengths, called by class to recompute all lengths +\renewcommand*{\recomputethemelengths}{% + \setlength{\maketitledetailswidth}{\textwidth}% + \ifthenelse{\lengthtest{\maketitlepicturewidth=0pt}}% + {}% + {\addtolength{\maketitledetailswidth}{-\separatorcolumnwidth}% + \addtolength{\maketitledetailswidth}{-\maketitlepicturewidth}}} +\recomputethemelengths +\newif\if@firstdetailselement\@firstdetailselementtrue +\newcommand*{\maketitledetailsnewline}{ + \if@firstdetailselement% + \@firstdetailselementfalse% + \else% + \\[.2em]\fi} +\newcommand*{\logo}[2]{ + \\[0.5em]\includegraphics[height=#2]{#1} +} + +\renewcommand*{\maketitle}{% + % name and title + \begin{minipage}[t]{\maketitledetailswidth}% + \raggedright\firstnamestyle{\@firstname~}\familynamestyle{\@familyname}\\[1em]% + \addressfont\color{addresscolor}% + \ifthenelse{\isundefined{\@addressstreet}}{}{% + \@addressstreet% + \ifthenelse{\isundefined{\@addresscity}}{}{\\\@addresscity\\[1em]}}% + \ifthenelse{\isundefined{\@mobile}}{}{\maketitledetailsnewline\mobilesymbol~\@mobile}% + \ifthenelse{\isundefined{\@phone}}{}{\maketitledetailsnewline\phonesymbol~\@phone}% + \ifthenelse{\isundefined{\@fax}}{}{\maketitledetailsnewline\faxsymbol~\@fax}% + \ifthenelse{\isundefined{\@email}}{}{\maketitledetailsnewline\emailsymbol~\emaillink{\@email}}% + \ifthenelse{\isundefined{\@homepage}}{}{\maketitledetailsnewline\homepagesymbol~\httplink{\@homepage}}% + \ifthenelse{\isundefined{\@extrainfo}}{}{\\[1em]\@extrainfo}% + % optional quote + \ifthenelse{\isundefined{\@quote}}% + {}% + {{\\[1.5em]\centering{}\begin{minipage}{\maketitledetailswidth}\flushright\quotestyle{\@quote}\end{minipage}}}% + \end{minipage}% + % optional photo + \ifthenelse{\isundefined{\@photo}}% + {}% + {% + \hspace*{\separatorcolumnwidth}% + \begin{minipage}[t]{\maketitlepicturewidth}% + \raggedleft{}\addressfont\color{addresscolor}% required to correctly align content + \framebox{\includegraphics[width=\maketitlepicturewidth]{\@photo}}% + \end{minipage}}\\[1.5em]% + % title + \ifthenelse{\isundefined{\@title}}% + {}% + {{\centering{}\begin{minipage}{\quotewidth}\centering\titlestyle{\@title}\end{minipage}\\[1.25em]}}% + } + + +\endinput + + +%% end of file `moderncvthemecustom.sty'. diff --git a/moderncvthemeempty.sty b/moderncvthemeempty.sty new file mode 100644 index 0000000..fc4fadf --- /dev/null +++ b/moderncvthemeempty.sty @@ -0,0 +1,43 @@ +%% start of file `moderncvthemeempty.sty'. +%% Copyright 2006-2010 Xavier Danaux (xdanaux@gmail.com). +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License version 1.3c, +% available at http://www.latex-project.org/lppl/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncvthemeempty}[2010/08/03 v0.12 modern curriculum vitae style: empty] + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- + + +%------------------------------------------------------------------------------- +% package options +%------------------------------------------------------------------------------- +% unused options +\DeclareOption*{ + \PackageWarning{moderncvthemeempty}{Unknown option ‘\CurrentOption’}} + +% execute default options +\ExecuteOptions{} + +% process given options +\ProcessOptions\relax + + +%------------------------------------------------------------------------------- +% style definition +%------------------------------------------------------------------------------- + + +\endinput + + +%% end of file `moderncvthemeempty.sty'. diff --git a/tweaklist.sty b/tweaklist.sty new file mode 100644 index 0000000..096bc3f --- /dev/null +++ b/tweaklist.sty @@ -0,0 +1,52 @@ +%% start of file `tweaklist.sty'. +%% Original by Jakob Schiøtz, downloaded from http://dcwww.camd.dtu.dk/~schiotz/comp/LatexTips/tweaklist.sty; not found on ctan. +%% Modified by Xavier Danaux (xdanaux@gmail.com). +% +% The tweaklist.sty package redefines the itemize, enumerate and description packages, so that all parameters can be adjusted. +% This was done by copying the original definitions, and adding "hook commands" that are executed when entering the environment. +% The hook commands are initially empty, but can be redefined with \renewcommand. +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License version 1.3c, +% available at http://www.latex-project.org/lppl/. + + +% hooks for the itemize environment +\def\itemhook{} +\def\itemhooki{} +\def\itemhookii{} +\def\itemhookiii{} +\def\itemhookiv{} +% hooks for the enumerate environment +\def\enumhook{} +\def\enumhooki{} +\def\enumhookii{} +\def\enumhookiii{} +\def\enumhookiv{} +% hook for the description environment +\def\deschook{} +% original environment definitions, with hooks added +\def\enumerate{% + \ifnum \@enumdepth >\thr@@\@toodeep\else + \advance\@enumdepth\@ne + \edef\@enumctr{enum\romannumeral\the\@enumdepth}% + \expandafter + \list + \csname label\@enumctr\endcsname + {\usecounter\@enumctr\def\makelabel##1{\hss\llap{##1}}% + \enumhook \csname enumhook\romannumeral\the\@enumdepth\endcsname}% + \fi} +\def\itemize{% + \ifnum \@itemdepth >\thr@@\@toodeep\else + \advance\@itemdepth\@ne + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \expandafter + \list + \csname\@itemitem\endcsname + {\def\makelabel##1{\hss\llap{##1}}% + \itemhook \csname itemhook\romannumeral\the\@itemdepth\endcsname}% + \fi} +\newenvironment{description} + {\list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel\deschook}} + {\endlist}