- NOM
- RÉSUMÉ
- PRÉREQUIS
- SYMBOLES EXPORTÉS
- DESCRIPTION
- BUGS CONNUS ET AVERTISSEMENTS
- NOTES HISTORIQUES
- AUTEUR
- VOIR ÉGALEMENT
- BARATIN LÉGAL
NOM
Date::Convert::French_Rev - Conversion à partir du calendrier révolutionnaire, ou vers ce calendrier.
RÉSUMÉ
use Date::Convert::French_Rev;
Conversion du calendrier grégorien vers le calendrier révolutionnaire
$date=new Date::Convert::Gregorian(1799, 11, 9); convert Date::Convert::French_Rev $date; print $date->date_string, "\n"; print $date->date_string($format), "\n";
Conversion du calendrier révolutionnaire vers le calendrier grégorien
$date=new Date::Convert::French_Rev(8, 2, 18); convert Date::Convert::Gregorian $date; print $date->date_string, "\n";
PRÉREQUIS
Date::Convert, Roman
SYMBOLES EXPORTÉS
Aucun.
DESCRIPTION
Ce module fournit les méthodes suivantes :
- new
-
Crée un nouvel objet ``date révolutionnaire'', initialisé avec les valeurs fournies en paramètre. Par exemple
$date = new Date::Convert::French_Rev(8, 2, 18)
pour le 18 Brumaire VIII. - date
-
Renvoie une liste contenant l'année, le mois et le jour. Les jours complémentaires de la fin de l'année sont affectés à un treizième mois hypothétique.
- year
-
Renvoie juste l'élément ``année'' de la date.
- month
-
Renvoie l'élément ``mois'' de la date, ou bien 13 s'il s'agit d'un jour complémentaire.
- day
-
Renvoie le jour dans le mois.
- is_leap
-
Booléen indiquant si l'année est bissextile.
- convert
-
Convertit la date vers un nouveau format.
- date_string
-
Renvoie la date dans un format agréable. Cette méthode accepte un paramètre facultatif, de façon à ajuster ce format à vos préférences.
Le paramètre de format de date_string est une chaîne contenant n'importe quels caractères (lettre, chiffres,
caractères d'espacement, ou autres), ainsi que des descripteurs de champs
préfixés par un %
, inspirés de la commande standard Unix date(1).
Le module reconnaît les descripteurs suivants :
- %y
-
année - 00 à 99
- %Y, %G, %L
-
année - 0001 à 9999. Dans le cas du calendrier révolutionnaire, il n'y a pas de différence entre ces trois variantes. En effet, dans le calendrier révolutionnaire, le début de l'année coïncide toujours avec le début d'une décade, tandis que dans le calendrier grégorien, le début de l'année correspond rarement avec le début d'une semaine.
- %EY, %Ey
-
année, exprimée en chiffres romains - I à MMM
- %m
-
mois de l'année - 01 à 12, ou 13 pour les jours complémentaires.
- %f
-
mois de l'année - `` 1'' à ``12'', ou ``13'' pour les jours complémentaires.
- %b, %h
-
abréviation du mois - Ven à Fru, ou S-C pour les jours complémentaires (également appelés Sans-Culottides).
- %B
-
nom complet du mois - Vendémiaire à Fructidor, ou ``jour complémentaire'' à la fin de l'année.
- %d
-
jour du mois - 01 à 30
- %e
-
jour du mois - `` 1'' à ``30''
- %A
-
jour de la décade - ``Primidi'' à ``Décadi''. Cette valeur n'a aucune signification pour les jours complémentaires. Dans ce cas, le champ obtenu est la chaîne vide.
- %a
-
abrévation du jour de la décade - ``Pri'' à ``Déc''. Cette valeur n'a aucune signification pour les jours complémentaires. Dans ce cas, le champ obtenu est une chaîne constituée d'espaces. Attention : ne pas confondre Sep, Oct et Déc avec les mois du calendrier grégoriens.
- %w
-
jour de la décade - `` 1'' à ``10'' (`` 1'' pour Pridi, `` 2'' pour Duodi, etc). Cette valeur n'a aucune signification pour les jours complémentaires. Dans ce cas, le champ obtenu est une chaîne constituée d'espaces.
- %j
-
jour de l'année - ``001'' à ``366''.
- %Ej
-
Nom complet du jour de l'année. Au lieu d'associer un saint à chaque jour, les créateurs du calendrier ont décidé d'associer une plante, un animal ou un outil agricole.
- %EJ
-
Comme %Ej, mais avec des majuscules.
- %Oj
-
Nom simplifié du jour de l'année. Comme %Ej, mais sans le préfixe.
- %n, %t, %%, %+
-
Remplacés respectivement par un saut de ligne, une tabulation, un pourcent ou un plus.
La commande date(1) prévoit des descripteurs de champs pour les heures. Ces descripteurs n'ont pas de signification pour le présent module. Du coup, la méthode date_string les renvoie tels quels dans la chaîne retournée. Ce sont les descripteurs suivants :
%h, %k, %i, %I, %p, %M, %S, %s, %o, %Z, %z
De même, les descripteurs composés ne sont pas implémentés :
%c, %C, %u, %g, %D, %x, %l, %r, %R, %T, %X, %V, %Q, %q, %P, %F, %J, %K
BUGS CONNUS ET AVERTISSEMENTS
Il y a peu de bugs, mais beaucoup d'avertissements.
Certains noms de jour correspondent à des plantes peu connues. J'ai trouvé certains noms dans divers dictionnaires, mais pour les autres, mes recherches ont échoué, et je ne sais pas s'il s'agit d'un nom masculin ou féminin. Ces noms sont préfixés par un 4, un 5 ou un 6.
Mes sources divergent quant au quatrième jour complémentaire. L'une dit ``jour de l'opinion'', l'autre indique ``jour de la raison''.
Une autre source de désaccord porte sur la règle de Romme, certaines sources utilisant encore la date de l'équinoxe pour fixer le début de l'année. Il en résulte parfois un écart d'un ou deux jours.
L'interface utilisateur de ce module est héritée du module Date::Convert
de Mordechai Abzug, qui est, selon l'auteur, ``au stade pré-alpha''. Si
cette interface venait à changer, l'interface de Date::Convert::French_Rev
changerait elle aussi.
J'ai consulté la documentation de date(1) sur diverses variantes du système Unix (Linux, AIX). Il en ressort que la
signification des descripteurs %Ex
et %Oy
est floue dans le meilleur des cas, et n'est pas documentée la plupart du
temps.
NOTES HISTORIQUES
Le calendrier révolutionnaire a été utilisé en France du 24 novembre 1793 (4 Frimaire II) au 31 décembre 1805 (10 Nivôse XIV). Il s'agissait d'un essai d'application de la règle décimale, comme pour le système métrique. D'où la disparition de la semaine, remplacée par la décade (à ne pas confondre avec le mot anglais decade, qui signifie décennie). Cela permettait d'avoir un nombre entier de décades dans un mois, chaque mois faisant 30 jours.
Au début, l'année commençait le jour de l'équinoxe d'automne. Il y avait deux raisons à cela. Tout d'abord, la République a été proclamée le 22 septembre 1792, soit le jour de l'équinoxe. D'autre part, l'équinoxe est le symbole de l'égalité, le jour et la nuit durant chacun 12 heures exactement. L'équinoxe collait donc parfaitement à la devise de la République ``Liberté, égalité, fraternité''. Cette règle s'est révélée peu pratique à l'usage, c'est pourquoi Gilbert Romme a proposé une règle pour les années bissextiles, semblable à celle du calendrier grégorien.
AUTEUR
Jean Forget <J-FORGET@wanadoo.fr>
D'après le module de Mordechai T. Abzug <morty@umbc.edu>
VOIR ÉGALEMENT
logiciels
date(1),
perl(1),
Date::DateCalc(3),
Date::Convert(3)
calendar/cal-french.el dans les sources de emacs-20.6 et de xemacs 21.1.8
livres
Quid 2001, M et D Frémy, éditions Robert Laffont
Agenda Républicain 197 (1988/89), éditions Syros Alternatives
N'importe quel livre scolaire sur la Révolution Française
The French Revolution, Thomas Carlyle, Oxford University Press (en Anglais)
Internet
http://www.faqs.org/faqs/calendars/faq/part3/ (en Anglais)
BARATIN LÉGAL
Copyright (c) 2001 Jean Forget. Tous droits réservés.
Vous pouvez distribuer, modifier et triturer Date::Convert::French_Rev sous les mêmes conditions que Perl.