Search script Mairix & Mutt macros

Ce n’est très certainement avec ce genre d’articles au thème aussi accrocheur, au titre aussi racoleur que je parviendrai à rivaliser avec le blog de Cyrille et ses $3606.2 USD au compteur ! — Et puis, comme son dernier article me le rappelle cruellement, en négligeant le réseautage social, les Facebook et autres charcuteries binaires, je n’ai très certainement pas choisi la meilleure des façons pour construire et gérer mon identité numérique. — À dire vrai, je suis tout de même assez tranquille quant à ma notoriété dans le cybermonde. Bref, revenons à nos moutons…

Mairix, comme je l’ai dit dans mon article précédent, est un outil de recherche extrêmement efficace dont implémentation dans Mutt est assez simple à mettre en place.

Configuration de Mairix

J’ai quelque peu modifié la configuration de Mairix donnée précédemment. Alors… reprenons :

  • Il faut commencer par créer le répertoire ~/.mairix qui accueillera la base de données de Mairix :

mkdir ~/.mairix

  • Quant à la configuration de Mairix proprement dite, elle dépendra nécessairement de la configuration de votre client de messagerie. Je donne mon ~/.mairixrc pour exemple :

### Répertoire Mail
base=~/Mail
maildir=*

### Base de données
database=~/.mairix/database

### Boîtes à indexer et méthode d’indexation
# Indexation récursive de la base
mbox=*…

# Boîtes exclues de l’indexation
omit=msearch:mail.backup:spam

### Dossier virtuel (résultats de la recherche)
mfolder=msearch

Attention à ne pas oublier d’exclure de l’indexation le dossier virtuel qui recevra le résultat de la recherche !

Script de recherche Mairix

Le script msearch.sh supprime le dossier virtuel contenant le résultat de la recherche précédente, met à jour l’index puis exécute la nouvelle requête sur l’ensemble des champs :

#!/bin/sh
#
# msearch.sh 0.1 Christophe Gallaire
# http://www.road2mayotte.org/blog/
# Script to execute mairix searches

mairix=/usr/bin/mairix
RESULTS_DIR=$HOME/Mail/msearch

### Suppression des anciens résultats
rm -f ${mbox}
### Purge et mise à jour de l’index en mode bavard
${mairix} -v -p
### Exécution de la recherche de Mairix
${mairix} $*
### Voir les résultats dans un nouveau Mutt
mutt -f $RESULTS_DIR

J’ai placé ce script dans mon répertoire ~/.mutt. Un p’tit chmod +x est bien entendu nécessaire pour rendre le script exécutable :

chmod +x ~/.mutt/msearch.sh

Ce script tourne bien, je veux dire qu’il répond à mes besoins mais il est très certainement perfectible. Alors N’hésitez pas à donner vos suggestions (expliquées) en commentaire.

Pour intégrer ce script à Mutt, il suffit d’ajouter le répertoire virtuel (résultat de la recherche) et les deux macros au ~/.muttrc :

mailboxes = msearch
macro index “\es” “$HOME/.mutt/msearch.sh ” “Exécution de la recherche de Mairix”
macro index “\em” “=msearch\n” “Switch dans le répertoire des résultats”

Voyez la documentation de Mutt, “3.3 Modifier les raccourcis clavier“, pour définir d’autres réglages.

La deuxième macro n’est pas franchement utile, dans la mesure où les résultats sont affichés dans une nouvelle instance de Mutt. Mais on ne sait jamais…

Pour lancer la recherche, il suffit de taper “Alt” + “s” et de renseigner le(s) mot(s) clé(s)…


À propos de cet article