Comment enregistrer vraiment facilement toutes les pièces jointes étiquetées dans mutt?

19

Vous pouvez enregistrer toutes les pièces jointes via

  1. baliser toutes les pièces jointes en appuyant sur t
  2. ;
  3. s
  4. choisissez le répertoire de destination et cliquez sur a(tous)

Cela fonctionne mais a des effets secondaires graves: vous devez frapper n fois enterpour n pièces jointes.

Cela signifie même s'il n'y a pas de collision de noms de fichiers dans le répertoire de destination.

Ceci est également documenté dans la FAQ Mutt .

Très gênant.

Certains utilisateurs de mutt semblent recommander d' envoyer des messages à munpack (exemple de message lié). Bonne idée - mais comment faire en sorte que Mutt demande un répertoire de destination (dans le cadre d'une munpackmacro d'appel)?

Comment puis-je construire une telle macro? Ou existe-t-il de meilleures solutions à ce problème?

maxschlepzig
la source
Je crois que la raison pour laquelle personne n'a répondu à votre question avec une macro mutt, c'est parce <tag-pattern>que ne fonctionne pas en mode pièce jointe. Il n'y a donc aucun moyen de marquer par programme toutes les pièces jointes (une condition nécessaire pour pouvoir faire quelque chose d'utile avec toutes ).
g33kz0r

Réponses:

14

Vous pouvez diriger le message vers ripmime , ce qui vous permet de spécifier un répertoire de destination sur la ligne de commande ... par exemple:

ripmime -i - -d ~/myfiles/

Le -i -dit ripmimede lire à partir de l'entrée standard et -dspécifie un répertoire de destination. Si c'est trop de saisie, collez-le dans un script shell et appelez cela (ce qui facilitera également la tâche si vous souhaitez utiliser d'autres ripmimeoptions pour contrôler son comportement).

Si vous ajoutez une macro comme celle-ci à votre configuration:

macro index,pager X "<pipe-message>ripmime -i - -d "

Ensuite, vous pouvez appuyer sur "X", entrer un répertoire de destination et appuyez sur <RETURN>pour exécuter la commande.

larsks
la source
ok, c'est similaire à l' munpackapproche - mais comment l'intégrer bien dans mutt (via une macro qui demande un répertoire de destination - de sorte que vous n'ayez pas à utiliser un répertoire global)
maxschlepzig
J'ai mis à jour ma réponse avec un exemple.
larsks
ok, c'est plus facile que je ne le pensais - parce que les macros mutt ne sont qu'une séquence de touches. Ainsi, si vous omettez simplement un <return>dans votre macro, vous pouvez terminer l'interaction de manière interactive.
maxschlepzig
1
Fantastique! Dommage que je ne puisse voter qu'une seule fois. Ce qui est vraiment génial avec cette solution, c'est qu'elle fonctionne également pour plusieurs messages. Il suffit de les étiqueter et ;|.
Aryeh Leib Taurog
Très bien, cela n'a pas fonctionné pour plusieurs messages balisés, @AryehLeibTaurog vous appuyez simplement sur tpuis X?
Alex