Rechercher du contenu de messagerie avec Mutt

23

Est-il possible dans Mutt de rechercher un contenu de messagerie spécifique en utilisant la fonctionnalité intégrée? Ou, en dernier recours, comment configurer greppour être utilisé dans Mutt?

La documentation ne mentionne que les fonctions searchet limit, qui ne recherchent que les en-têtes.

alex_reader
la source
2
En plus des réponses ci-dessous, vous devez noter que la recherche à l'aide de mutt est très lente, que vous utilisiez ou non un cache. Si vous avez souvent besoin de rechercher, je recommanderais fortement un indexeur tel que notmuch . C'est beaucoup plus rapide que la recherche intégrée de mutt.
Marco
1
En plus des réponses, pensez à examiner de près la variable de configuration approfondie_search . Si vous ne travaillez pas exclusivement avec le courrier électronique US-ASCII sans codage de message, vous souhaiterez probablement qu'il soit configuré pour que la recherche fonctionne comme vous vous y attendez normalement. (Cela m'a pris une éternité pour comprendre cela ...)
un CVn

Réponses:

29

searchet limitpeut également rechercher dans les messages, en fonction des modèles de recherche que vous donnez. De la sous-section Patterns de la référence Mutt:

~b EXPR         messages which contain EXPR in the message body
~B EXPR         messages which contain EXPR in the whole message

Autrement dit, ~bseules les recherches dans le corps, tandis que les ~Brecherches dans les en-têtes.

Notez que cela peut être assez lent, car il peut être nécessaire de télécharger chaque message un par un s'ils ne sont pas déjà mis en cache. Si vous avez une version mutt supérieure ou égale à 1.5.12, vous pouvez mettre en cache celles que vous téléchargez pour une utilisation ultérieure en définissant message_cachedirun répertoire dans lequel vous souhaitez stocker les corps de message, ce qui peut accélérer considérablement leur recherche (et la même chose pour en-têtes avec header_cache).

Chris Down
la source
Exactement ce que j'ai recherché, merci. Met-il message_cachedirtous les messages dans le cache, ou seulement les nouveaux?
alex_reader
1
@alex_reader Seuls ceux que vous avez téléchargés depuis qu'il a été défini. Si vous effectuez une recherche qui inclut le corps dans un dossier entier, il doit mettre ce dossier en cache en tant que garantie.
Chris Down
7

Vous pouvez ajouter des drapeaux à la commande de recherche, pour rechercher le corps, utilisez la fonction de recherche avec le ~bmodificateur. Donc, pour rechercher un cheesecake dans votre corps de courrier:

/~b cheesecake
Drav Sloan
la source
6

Mettez ~bdevant votre modèle de recherche pour rechercher uniquement dans le corps des e-mails. Pour rechercher en plus dans les en-têtes, utilisez~B

Il existe de nombreux autres modèles décrits dans le manuel mutt .

jofel
la source