Utilisateur Debian GNU/Linux, je compile mes fichiers LaTeX avec la commande pdfLaTeX.

Pour montrer la rapidité d'utilisation de ces outils, j'aimerais créer un document dans lequel figurerait son heure de création, à la seconde près, ainsi que celle de sa compilation, avec la même précision.

Sauriez-vous comment faire ?

Posée 05 Sep '15, 20:41

Pathe's gravatar image

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

Modifiée 05 Sep '15, 21:20

denis's gravatar image

denis ♦♦
7.0k1510


Date de compilation

Le package datetime2 fournit une commande \DTMnow permettant d'insérer la date de compilation (qui est la date de création du fichier PDF produit):

Ouvrir dans l'éditeur
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage[useregional]{datetime2}
\begin{document}
\DTMnow
\end{document}

(Sur les distributions plus anciennes qui ne proposent pas le package datetime2, il est possible d'utiliser le package datetime).

Date de dernière modification

Le package filemod permet d'obtenir et d'afficher la date de dernière modification d'un fichier.

Date de création

Concernant la date de création du fichier source, ça pose plusieurs questions :

  • De quels fichiers source ? Le fichier principal ? Tous les fichiers utilisés ?
  • Les systèmes de fichiers sur lesquels sont stockés ces fichiers fournissent-ils cette information ?

À ma connaissance, aucun package (La)TeX ne propose cette fonctionnalité. Le plus simple serait peut-être de coder en dur la date de création lors de la création du fichier.

Lien permanent

Publiée 06 Sep '15, 02:02

Paul%20Gaborit's gravatar image

Paul Gaborit
2.0k16
Taux d'acceptation : 32%

Modifiée 12 Sep '15, 12:36

Certes, mais je désire que le fichier présente :

  • la date de création du fichier .tex
  • la date de création du fichier .pdf

Il faudrait donc récupérer, pour l'incorporer dans le fichier, la valeur à l'aide d'une commande unix.

Comment faire ?

(06 Sep '15, 02:38) Pathe ♦♦ Pathe's gravatar image

Le fichier ne compile pas sur overleaf.com : une erreur est détectée à la ligne 'begin{document}'

(06 Sep '15, 03:03) Pathe ♦♦ Pathe's gravatar image

Pour overleaf.com, il faut attendre que le site se mette à jour car le package datetime2 est assez récent. En attendant, vous pouvez toujours utiliser datetime (son prédécesseur).

(06 Sep '15, 10:01) Paul Gaborit Paul%20Gaborit's gravatar image
1

Cette réponse (qui n'en est pas une) devrait être un commentaire...

(06 Sep '15, 10:08) Paul Gaborit Paul%20Gaborit's gravatar image

je pense pouvoir m'en sortir avec filemod et son option \filemodcmp : il suffit de créer un fichier A.tex (celui dont je cherche à extraire les date et heure de création) et de le copier sous le nom de B.tex : en comparant dans B.tex l'heure de création de A.tex à celle de modification de B.pdf, j'obtiendrai le résultat désiré, non ?

(06 Sep '15, 14:11) Pathe ♦♦ Pathe's gravatar image

@Pathe filemod ne fournit que les dates de dernière modification. Il ne donne pas accès aux dates de création des fichiers. De nombreux systèmes de fichiers ne fournissent pas la date de création.

(10 Sep '15, 09:02) Paul Gaborit Paul%20Gaborit's gravatar image

Certes. C'est pour cette raison que je parle de DEUX fichiers source : du premier on ne gardera que la date de modification, égale à celle de création, puisqu'il ne sera pas modifié. Il ne sera que copié vers un deuxième fichier, qui lui sera compilé : je pourrai donc comparer les deux dates de modification, l'une d'entre elles se trouvant aussi être la date de création du premier fichier.

(10 Sep '15, 10:16) Pathe ♦♦ Pathe's gravatar image

@Pathe Ok. Dans ce cas, le contenu du premier fichier (qui sert de référence et qu'il ne faut jamais modifier) n'a aucune importance. Un simple fichier vide appeler 'timestamp' peut faire l'affaire. L'autre possibilité consisterait à "hardcoder" dans le fichier .tex la date initiale de création.

(10 Sep '15, 12:04) Paul Gaborit Paul%20Gaborit's gravatar image
Affichage de 5 parmi 8 Afficher 3 commentaire(s) en plus
Ouvrir dans l'éditeur Overleaf
\documentclass[french]{book}
\usepackage[scrtime]{prelim2e}  % Affiche en bas de page:
%                                 Version préliminaire - date heure de compilation
\usepackage[french]{babel}
\begin{document}
blabla
\end{document}

Exemple, en bas de chaque page:

Version préliminaire - 10 novembre 2017 - 17:45

Le french comme argument de classe francise «version préliminaire»

babel est nécessaire pour franciser aussi la date (novembre et pas november)

Lien permanent

Publiée 10 Nov '17, 22:09

joseph-tux's gravatar image

joseph-tux
42722452
Taux d'acceptation : 4%

Modifiée 11 Nov '17, 20:10

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.