La date et l'heure

From Base de connaissances eggdrops & TCL
Jump to: navigation, search

La commande clock permet d’accéder aux fonctions d’heure et de date au sein de l’interpréteur Tcl. Elle fournit plusieurs sous-commandes, pour obtenir la valeur de l’horloge, ou pour convertir des dates/heures d’un format en un autre.

Cette commande fonctionne indépendamment du système sur lequel l’interpréteur Tcl est installé.

clock seconds

Cette commande retourne le nombre de secondes depuis l’epoch, la date origine qui varie fortement entre les différents systèmes. Elle permet de mesurer la durée entre deux évènements, en faisant une soustraction entre les deux valeurs retournées. Elle sert également d’entrée � la commande clock format.

clock format valeur ?-gmt booléen? ?-format chaine?

Formate une valeur de retour de clock clicks en une date lisible (jour, mois, année, heures, minutes, secondes).

L’option -gmt, lorsqu’elle est suivie d’une valeur booléenne égale � vrai, indique que la date sera formatée en Temps Méridien de Greenwich, sinon elle suivra l’heure locale.

L’option -format contrôle l’ordre et la conversion des éléments de la date en chaîne de caractères.

-> Voici les types de format: (les jours et les mois sont en Anglais)

* %a . . . . Jour de la semaine abrégé (Mon, Tue, …)
* %A . . . . Jour de la semaine complet (Monday, Tuesday, …)
* %b . . . . Mois abrégé (Jan, Feb, …)
* %B . . . . Mois complet (January, February, …)
* %d . . . . Jour dans le mois (1 �  31)
* %j . . . . Jour dans l’année (1 �  366)
* %m . . . . Nombre du mois (1 �  12)
* %y . . . . Année abrégée (00 �  99)
* %Y . . . . Année complète

* %H . . . . Heure (00-23)
* %I . . . . Heure (01-12)
* %M . . . . Minutes (00-59)
* %S . . . . Secondes (00-61)
* %p . . . . PM ou AM
* %Z . . . . Nom de la zone locale de temps

Bien que la plus part des gens pense que c'est compliquer, vous allez voir, ca n'a rien de compliquer du tout.

Voici un snippet qui vous montre comment utiliser l'heure et la date :

#################
# CONFIGURATION #
#################

# -> Format ou vous voulez que l'heure apparaisse

set cmd_heure(format) "Il est %T et nous sommes le %A %m %B %Y"

########
# BIND #
########

bind pub - !heure cmd_heure

#########
# HEURE #
#########

proc cmd_heure {nick uhost hand chan text} {
   global cmd_heure
   # Ont envoie sur le salon la date & l'heure
   puthelp "PRIVMSG $chan :[clock format [clock seconds] -format $cmd_heure(format)]"
}