Já faz algum tempo que descobri que, quando tento visualizar um arquivo HTML em meu navegador (do Mutt, vpara ver todos os anexos, selecione o text/html
anexo e enter), meu navegador abre uma nova guia em, file:///tmp/mutt.html
mas sempre diz
Arquivo não encontrado
O Firefox não consegue encontrar o arquivo em /tmp/mutt.html.
Verifique se há letras maiúsculas ou outros erros de digitação no nome do arquivo. Verifique se o arquivo foi movido, renomeado ou excluído.
Não tenho certeza de como solucionar isso. Funcionou bem até que não funcionou. E então, apenas para me manter na ponta dos pés, a cada 10 ou 12 vezes, ele mostra aleatoriamente o e-mail em HTML.
Por exemplo, agora mesmo, eu...
- tentou visualizar um e-mail em HTML,
- decidi que quero finalmente solucionar isso,
- começou a compor os primeiros 2/3 desta questão,
- abriu uma segunda guia do terminal
/var/log/
para ver se há um arquivo de log óbvio para ver - correu
tail -f /var/log/syslog
- com tail follow em execução, voltei para tentar visualizar o e-mail HTML novamente, apenas para ver se alguma coisa foi gravada no syslog (embora eu não ache que seria) e a) nada foi gravado no syslog, b) o mesmo e-mail exato realmente abriu muito bem em uma guia do navegador.
Então ... onde devo procurar alguma indicação de por que as mensagens mutt html às vezes abrem bem em um navegador e às vezes /tmp/mutt.html
não podem ser encontradas?
Eu tive alguns problemas com isso também. A entrada mailcap para text/html é o ponto a ser observado. Com cromo era de fato a
needsterminal
bandeira. Para o firefox, acopiousoutput
bandeira funcionou.Se você ainda não possui um mailcap personalizado, pode criar um arquivo em,
~/.mailcap
por exemplo, e adicionar a linha firefox a ele. Não se esqueça de especificar o caminho em seu.muttrc
Talvez seja uma condição de corrida entre a linha de comando do Firefox retornando ao mutt e mutt excluindo o arquivo temporário antes que o processo do Firefox realmente leia o arquivo.
Tente, em sua entrada mailcap, adicionar o
needsterminal
sinalizador.Ou melhor ainda, em vez de chamar o Firefox diretamente, chame um simples shell script seu que copia o arquivo html com outro nome e depois chama o Firefox nesse novo arquivo, antes de retornar o comando para o mutt (que excluirá o arquivo original).
Algumas pessoas adicionam um
sleep
comando depois de chamar o firefox. Veja aqui ou aqui por exemplo (procure porsleep
).