Mutt et le calendrier révolutionnaire

Le module Calendar d'emacs permet d'obtenir la date sous différents formats dont celui du calendrier révolutionnaire.
Pour récupérer la chaîne de caractères formée par calendar-french-date-string, on va utiliser emacsclient --eval puis créer une chaîne qu'on va inclure dans le fichier .muttrc

Bash
#!/bin/bash
dater=$(emacsclient --eval "(calendar-french-date-string (calendar-current-date))")
echo "set attribution='Le $dater, je fus ravi de lire ce message de %n :'" | tr -d '\"'

Puis dans .muttrc

Bash
source '~/bin/rev_date.sh|'

On peut ajouter un peu de hasard dans les attributions avec $RANDOM :

Bash
#!/bin/bash
dater=$(emacsclient --eval "(calendar-french-date-string (calendar-current-date))");
 
mes[0]=" je fus ravi de lire ce message de %n :";
mes[1]=" quelle joie de lire ce message de %n :";
mes[2]=" je faillis tomber de ma chaise en lisant ce sympathique message de %n :";
mes[3]=" quel bonheur me procura la lecture de ce message de %n :";
mes[4]=" ce message de %n me transporta de joie :";
mes[5]=" la tristesse me gagnait quand je lus ce message de %n et repris espoir en la vie :";
mes[6]=" quelle surprise et quel bonheur de lire ce gentil message de %n :";
mes[7]=" ma vie a enfin un sens depuis que %n m\'a fait parvenir ce message :";
mes[8]=" j\'errai sans but sur le web quand ce message de %n m\'a sorti de ma torpeur :";
mes[9]=" perdu dans une monade haskellienne, ce message de %n m\'a remis les pieds sur terre :"; 
mes[10]=" le ciel est gris, la ville est morne mais ce message de %n est un rayon de soleil :";
mes[11]=" voici qu\'arrive ce message de %n et je me dis \" You talkin\' to me ? You talkin\' to me ? Well I\'m the only one here\" :";
 
let "long=${#mes[@]}"
 
let "hasard = $RANDOM % $long";
 
echo "set attribution='Le $dater, ${mes[$hasard]}'" | tr -d '\"';

Alors par exemple:

Bash
moi@barbarian:~/bin$ rev_date.sh 
set attribution='Le 15 Frimaire an 224 de la Révolution,  la tristesse me gagnait quand je lus ce message de %n et repris espoir en la vie :'
moi@barbarian:~/bin$ rev_date.sh 
set attribution='Le 15 Frimaire an 224 de la Révolution,  quelle joie de lire ce message de %n :'
moi@barbarian:~/bin$ rev_date.sh 
set attribution='Le 15 Frimaire an 224 de la Révolution,  je faillis tomber de ma chaise en lisant ce sympathique message de %n :'
moi@barbarian:~/bin$ rev_date.sh 
set attribution='Le 15 Frimaire an 224 de la Révolution,  quel bonheur me procura la lecture de ce message de %n :'

courtesy of webmatter.de