1
1

Je rédige des feuilles d'heures avec LaTeX. Elles ressemblent à ceci :

À rédiger, c'est astreignant : je fais tout ça à la main. Ci-dessous un ECM correspondant peu ou prou à ce que je rédige :

Ouvrir dans l'éditeur Overleaf
\documentclass[a4paper, 12pt, french, BCOR=0pt, DIV=14]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[light, largesmallcaps]{kpfonts}
\usepackage{babel}
\begin{document}
\begin{tabular}{lllr}
Date & Horaire & Nombre d'heures & Montant\\
\cline{1-4}\\[-9pt]
    Samedi\\[-5pt]
    \tiny gamberge & \tiny\itshape 12:15 -- 19:15 & \tiny\itshape 7 heures & \tiny\itshape 14,00 \\[-7pt]
    \tiny\itshape heures supplémentaires 25 \% & \tiny\itshape 19:15 -- 21:15 & \tiny\itshape 2 heures & \tiny\itshape 5,00\\[-7pt]
    \tiny\itshape heures supplémentaires 50 \%  & \tiny\itshape 21:15 -- 22:45 & \tiny\itshape 1,5 heures & \tiny\itshape 4,50\\[-2pt]
            & 12:15 -- 22:45 & 13,5 heures & 23,50 \\
\cline{1-3}\\[-9pt]
    Dimanche \\[-5pt]
    \tiny gamberge & \tiny\itshape 13:00 -- 20:00 & \tiny\itshape 7 heures & \tiny\itshape 21,00\\[-7pt]
\tiny\itshape heures supplémentaires 25\% & \tiny\itshape 20:00 -- 22:00 & \tiny\itshape 2 heures & \tiny\itshape 7,50\\[-2pt]
            & 13:00 -- 22:00 & 9 heures & 28,50 \\
\cline{1-4}\\[-9pt]
    \multicolumn{3}{r}{\textbf{Total}} & \textbf{52,00}\\[48pt]
\end{tabular}
\end{document}

Comme l'ensemble des données mises en page sont issues du jour de la semaine, de l'heure de début et de celle de fin, une commande du type \schedule{jour}{début}{fin} devrait être suffisante pour une journée, non ? Il faudrait évidemment spécifier quelque part la valeur du tarif horaire et celle de la majoration pour le dimanche (et avoir une autre commande pour le montant total), mais ça me semble possible. Oui mais comment ?

J'aimerais donc me servir de cet exemple pour apprendre à rédiger une commande LaTeX un peu complexe.

Posée 21 Jan '18, 13:43

Pathe's gravatar image

Pathe ♦♦
7.4k28196245
Taux d'acceptation : 55%

Modifiée 21 Jan '18, 14:26

En cherchant un peu, j'ai trouvé cette page ; et il y a le package invoice2.

(21 Jan '18, 13:46) Pathe ♦♦ Pathe's gravatar image

Personnellement quand j'ai ce genre de choses à faire je fais les calculs dans un tableur SES d'Emacs, avec des formules en Elisp utilisant la bibliothèque Elisp Calc, puis j'exporte ça en une portion de fichier LaTeX grace à un script fait pour écrit en Elisp…

Bon… il se trouve que je suis le mainteneur de SES, et que j'ai aussi contribué plusieurs fois à Calc…

Lien permanent

Publiée 13 Mar '18, 03:50

vincentb1's gravatar image

vincentb1
1874
Taux d'acceptation : 0%

C’est là une raison supplémentaire pour me mettre à emacs toutes affaires cessantes.

(13 Mar '18, 08:44) Pathe ♦♦ Pathe's gravatar image

Sérieux ? C'est un peu comme LaTeX, on n'y va pas en se disant que la marche est trop haute, mais quand on y est on ne peut plus s'en passer…

(13 Mar '18, 10:53) vincentb1 vincentb1's gravatar image

Très bon exemple !

(13 Mar '18, 12:11) Pathe ♦♦ Pathe's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.