Modules externes pour python 2.7

CE script en python permet de produire un fichier HTML contenant un tableau dont les colonnes contiennent des chronologies que l'on peut comparer. Il est possible de prévoir des couleurs pour les colonnes.

Script en débogage !

Cette archive contient le script chrono.py, un fichier d'«événements» chrono.dat et quelques indications générales chrono.txt, et leur équivalent chrono-w.py et chrono-w.dat.

Structure des données

Entrées des événements

Chaque entrée doit comporter un préfixe, une date, une espace et un texte. Elle peut comporter un second texte précédé du signe § (paragraphe).

&800 Couronnement de Charlemagne§Cette date a probablement été choisie pour la facilité des écoliers, comme Marignan en 1515.

Déclaration des préfixes utilisés et couleurs des colonnes

Le préfixe & doit préalablement avoir été déclaré sous une forme un peu barbare :

préfixe=fond=texte=infobulle=lien

Les couleurs sont ajustables avec un code de trois chiffres hexadécimaux, c'est-à-dire ayant 16 valeurs, de 0 à 9 et de a (10) à f (15), dans l'ordre RVB (rouge, vert et bleu). b04 signifie beaucoup de rouge, pas de vert et un peu de bleu. Vous trouverez une animation pour choisir les nuances à l'adresse jchr.be/html/rouge.htm

Il est également possible de coder une couleur en RRVVBB pour plus de nuances. fff7f7 signifie le maximum de rouge et très près du maximum pour les deux autres couleurs, soit un rose très pâle. Note : bb0044 vaut b04.

La déclaration des préfixes permet également de définir l'ordre des colonnes selon les préfixes :

:=efe===008 # concerne tout ce qui est à l'extérieur du tableau: titre, paragraphe, lien
&=ffe==840 # première colonne avec fond jaune très pâle; les textes à info-bulle sera marron
_=000=fff  # préfixe réservé à l'emplacement de la colonne des dates, ici la deuxième, en blanc sur fond noir
!= la troisième colonne contient les événements préfixés par !
@= la dernière colonne contient les événement préfixés par @

Les couleurs par défaut sont le fond blanc fff, le texte noir 000, bleu nuit 008 pour les textes à info-bulle et framboise foncé b04 pour les liens.

Le choix du préfixe est relativement libre, mais évitez les chiffres et le trait d'union ; le # est interdit car ce qui est à droite est supprimé!

Exemple fonctionnel

Fichier des donnée

Voici le fichier des données, dont le nom se termine par .dat

# Tout ce qui est situé à droite de '#' est un commentaire et est ignoré

# D E F I N I T I O N   D E S   P R É F I X E S   E T   C O U L E U R S
# préfixe=fond=texte=infobulle=lien

:= # concerne le titre et les paragraphes avant le tableau
!=ffd # toute donnée préfixée par '!' aura un fond jaune pâle
%=  # texte noir sur fond blanc pour les données préfixée par '%'
_=000=fff # la colonne des dates est blanc sur fond noir (l'inverse par défaut)
@=ddf=090 # bleu pâle pour le fond ; le texte apparaît verdâtre
&=fdd==088 # la troisième chaîne concerne la couleur du texte pour l'info-bulle
$=dfd=a60==080 # fond vert pâle, les liens sont en vert foncé

# D O N N É E S :

: Titre de la page  # le titre de la page est la première ligne préfixée de ':'
: Un premier paragraphe est défini avec la deuxième ligne préfixée avec ':' . Il doit être saisi d'une seule traite, le retour-chariot est interdit. Les couleurs utilisées ici piquent les yeux, elles servent à montrer les possibilités. Pour la composition des couleurs, voir jchr.be/html/rouge.htm.
: Deuxième paragraphe.

# préfixe [négation] date espace texte [§infobulle]
!-5   # pour éventuellement commencer par une date antérieure au premier événement
!-3 Ce texte s'écrira sur fond jaune (ffd)
&7 Ce texte s'affichera sur fond rose (fdd)
&7 info-bulle en bleu-vert§et un texte qui n'apparaîtra qu'en info-bulle
@-2 Texte verdâtre sur fond bleu ciel
%5 Texte noir sur fond blanc (par défaut)
%5 Autre texte à la même date
$3 fond vert pale§autre info-bulle

Résultat

Titre de la page

Un premier paragraphe est défini avec la deuxième ligne préfixée avec ':' . Il doit être saisi d'une seule traite, le retour-chariot est interdit. Les couleurs utilisées ici piquent les yeux, elles servent à montrer les possibilités. Pour la composition des couleurs, voir jchr.be/html/rouge.htm.

Deuxième paragraphe.

 -5
-4
Ce texte s'écrira sur fond jaune (ffd)-3
-2Texte verdâtre sur fond bleu ciel
-1
1
2
3autre info-bullefond vert pale 
4
Texte noir sur fond blanc (par défaut)
Autre texte à la même date
5
6
7Ce texte s'affichera sur fond rose (fdd)
et un texte qui n'apparaîtra qu'en info-bulleinfo-bulle en bleu-vert