Explications sur le processus de génération de mon cv ===================================================== Contexte -------- J'aime conserver toutes les informations sur mon expérience professionnelle ; mais ce n'est souvent pas pertinent pour ceux qui veulent mon CV. Je souhaite également mes autres CV : hors-industrie, pour le loisir, en escalade, etc. Je travaille depuis un certain temps avec le format `markdown` et je le trouve très flexible. Enfin, pouvoir publier mon CV en ligne est un atout pour la visibilité ainsi qu'un exercice utile. Solution -------- Pour éviter de m'y perdre, voici de quoi je pars. J'ai deux versions, une courte et synthétique, et une longue et très complète. La première s'adapte bien à un format A4, tandis que la deuxième est à défiler. J'ajoute aussi une partie « à propos » avec mes informations personnelles. Enfin, un petit pied-de-page vient compléter l'ensemble avec quelques annexes. Cela nous donne donc : ``` . `-- Contenu |-- tiny.md |-- long.md |-- about.md `-- footer.md ``` En sortie je veux concaténer cela afin d'avoir 3 fichiers utiles : 2 `html` correspondants aux formats court et longs, et un `pdf` issue du court. Pour y parvenir je m'appuie sur `Pandoc` et pour me simplifier la vie encore +, j'utilise un script `shell` qui va tout m'exécuter automatiquement (notamment la concaténation dans des fichiers intermédiaires). Et bien sûr un `css` pour la feuille de style viendra appliquer une mise en forme légère, notamment sur une photo qui est incrustée dans l'en-tête. Résultat -------- Avec les outils, cela nous donne l'architecture suivante ; à noter le `cv.html` créé à la racine et l'actuel `how.txt` : ``` . |-- Contenu | |-- tiny.md | |-- long.md | |-- about.md | |-- footer.md | `-- links.md |-- Outils | |-- generate.sh | |-- style.css | |-- print.css | `-- pierre_dubois.jpg |-- cv-tiny.html |-- cv-long.html |-- CV_Pierre-DUBOIS.pdf |-- cv.html `-- how.txt ``` Dépendances ----------- Pour la génération en `pdf`, cela dépend de `wkhtmltopdf` (`LaTeX` — nécessaire par Pandoc pour ce format de fichier — étant trop compliqué à arranger en termes de style) et d'une feuille de style `css` adaptée à l'impression. Aussi, j'ai dû utiliser un second footer pour distinguer les liens dans le pdf de ceux en ligne. NB : Avec `wkhtmltopdf 0.12.6` et `pandoc 2.9.2.1` (lenovo) la mise en page est différente, en comparaison avec `wkhtmltopdf 0.12.5` et `pandoc 2.5` (clevo). À faire ------- - [ ] ajouter un sommaire en html format long - [x] reprendre le titre des fichiers générés - [ ] rendre la photo "responsive" en html (sur smartphone elle se superpose au texte) - [x] ~~ajouter des commentaires au script shell et des références/alias~~ avoir des commandes claires dans le script - [x] recentrer le visage sur la photo pour qu'elle apparaisse toujours correctement lors d'extraits - [ ] utiliser un css minimal comme [water](https://watercss.kognise.dev/) pour rendre cela + « esthétique » - [ ] ajouter un paragraphe "autres formations" - [ ] utiliser le format actuel pour un cv autre que professionnel