Se faire un CV en rst

Posté le Sat 03 October 2015 dans Informatique

Article obsolète

Je propose désormais une solution complète pour se faire son modèle de CV en rst: encore des cvs !

Je n’en finis plus de proposer le format rst à toutes les sauces. Cette fois-ci je vous propose d’écrire votre CV en rst, et donner le rendu à latex via moderncv pour obtenir un rendu qui sort du lot.

Moderncv

moderncv est une classe latex (entendre au sens template), qui permet de présenter et mettre en forme le CV simplement. Une image valant mieux qu’un long discours, ça donne un résultat comme celui-ci:

Exemple de rendu

Le but est de séparer la mise en forme du contenu, en déclarant à travers quelques balises quelles sont éléments à afficher sur le cv.

Voici quelques exemples de rendu possible avec la classe:

Alors quand on latex on dit simplement, en vérité ça veut dire ça:

\section{Education}
\cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}  % arguments 3 to 6 can be left empty
\cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}

\section{Master thesis}
\cvitem{title}{\emph{Title}}
\cvitem{supervisors}{Supervisors}
\cvitem{description}{Short thesis abstract}

La version RST

Ce que je propose, c’est de l’écrire comme ça:

Formation
---------

:2008:

    **Mon dernier diplôme***Université de France*

    après j'ai arrêté.

:2006:

    **Un autre diplôme***Université de Navarre*

    il faut que j'aille le chercher depuis ce temps…

:2005:

    **Encore un***Université*

    mention « Assez bien »

Avouez que c’est quand même plus simple!

Comment faire

Compilation latex

Pour commencer, assurez-vous que vous pouvez produire le CV à partir du code latex.

$ wget https://raw.githubusercontent.com/xdanaux/moderncv/master/examples/template.tex
$ wget https://raw.githubusercontent.com/xdanaux/moderncv/master/examples/picture.jpg
$ pdflatex template.tex

Si tout va bien, vous devriez avoir votre pdf généré dans le répertoire.

Quelques problèmes:

command not found: pdflatex : pdflatex n’est pas installé. Il va vous falloir installer toute l’architecture: texlive, texlive-latex-extra, texlive-fonts-extra et je conseille aussi texlive-xelatex.

LaTeX Error File `fontawesome.sty` not found : il vous manque la police awesome. Dans debian, elle est disponible dans le paquet texlive-fonts-extra.

docutils

Ensuite assurez de disposer de docutils pour pouvoir lancer rst2latex ou rst2latex.py :

$ rst2latex -V
rst2latex (Docutils 0.12 [release], Python 2.7.10, on linux2)

C’est parti!

get the file

Télécharger

Vous trouverez dans l’archive un Makefile et l’exemple qui m’a servi à écrire illustrer l’article. Il suffit de lancer make pour produire le pdf du CV, plus un exemple de lettre d’accompagnement.

Tous les fichiers .rst qui sont présent dans le répertoire où est lancé la commande seront automatiquement convertis en pdf.

Attention

Le Makefile est configuré pour lancer xelatex au lieu de pdflatex (meilleure gestion des polices). Il faut changer la première ligne du fichier si vous souhaiter utiliser un autre moteur de rendu.

Comment ça marche?

En fait, la classe moderncv utilise des directives qui ne sont pas standard par mettre le cv en forme. Par conséquent, il n’est pas possible de l’utiliser directement avec rst2latex. On est obligé de construire son propre writer pour pouvoir produire une sortie qui soit compatible, c’est ce qui est contenu dans le fichier bin/moderncv.py de l’archive. (Je détaillerai comment se construire ses propres classes si on me le demande.)

Voilà, il ne reste plus qu’à faire le votre!