Como realmente facilmente salvar todos os anexos marcados em mutt?

19

Você pode salvar todos os anexos via

  1. marcar todos os anexos pressionando t
  2. ;
  3. s
  4. escolha o diretório de destino e pressione a(todos)

Isso funciona, mas tem o seguinte efeito colateral grave: você precisa pressionar n-vezes enterpara n anexos.

Isso significa que mesmo se não houver colisões de nomes de arquivos no diretório de destino.

Isso também está documentado nas Perguntas frequentes sobre o Mutt .

Muito inconveniente.

Alguns usuários de vira-lata parecem recomendar canalizar mensagens para munpack (exemplo de mensagem vinculada). Boa ideia - mas como fazer o Mutt solicitar um diretório de destino (como parte de uma munpackmacro de chamada)?

Como eu construo essa macro? Ou existem soluções melhores para esse problema?

maxschlepzig
fonte
Acredito que a razão pela qual ninguém respondeu à sua pergunta com uma macro mutt é porque <tag-pattern>não funciona no modo de anexo. Portanto, não há como marcar programaticamente todos os anexos (uma condição necessária para poder fazer algo útil com todos eles).
g33kz0r

Respostas:

14

Você pode canalizar a mensagem para ripmime , o que permite especificar um diretório de destino na linha de comando ... por exemplo:

ripmime -i - -d ~/myfiles/

O -i -instrui ripmimea ler da entrada padrão e -despecifica um diretório de destino. Se for digitar demais, cole-o em um script shell e chame-o (o que também tornará mais fácil se você quiser usar outras ripmimeopções para controlar seu comportamento).

Se você adicionar uma macro como esta à sua configuração:

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

Então você pode pressionar "X", inserir um diretório de destino e pressionar <RETURN>para executar o comando.

larsks
fonte
ok, isso é semelhante à munpackabordagem - mas como integrá-lo muito bem em vira-lata (via uma macro que pede um diretório de destino - de tal forma que você não tem que usar um diretório global)
maxschlepzig
Atualizei minha resposta com um exemplo.
Larsks
ok, é mais fácil do que eu pensava - porque as macros mutt são apenas uma sequência de pressionamentos de tecla. Portanto, se você deixar de fora um <return>na sua macro, poderá concluir o prompt de maneira interativa.
maxschlepzig
11
Fantástico! Pena que eu posso votar apenas uma vez. O que é realmente ótimo nessa solução é que ela também funciona para várias mensagens. Apenas marque-os e ;|.
Aryeh Leib Taurog
Muito bom, mas não funcionou para várias mensagens marcadas, @AryehLeibTaurog você acabou de pressionar te depois X?
11288 Alex