Les Mongueurs de Perl


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.


© Les Mongueurs de Perl, 2001-2021 Contact - HTML 5 - CSS v3 - 19 septembre 2020