Como você faz o Emacs Message ( C-x m
) salvar e-mails enviados?
Existe uma maneira padrão de fazer isso?
Você poderia C-x C-s
, mas isso é ineficiente e fácil de esquecer, além disso, você não pode estar 100% se o e-mail realmente foi enviado: você pode ter feito algumas alterações de última hora que mais tarde esqueceu.
Este ( save-buffer
) poderia ser invocado a partir de um gancho "enviar mensagem" e ser automatizado? (Como text-mode-hook
.) Se sim, que gancho? (Como você consegue os ganchos de um modo?)
BCC
para si mesmo: não é muito elegante?
FCC
: parece ser a melhor solução, ainda assim, deve ser automatizada, tanto a invocação quanto um bom nome de arquivo gerado.
Responder1
Acabei de fazer isso funcionar. Coloque em .emacs
:
(defun save-sent-mail ()
(write-file (format-time-string "~/Mail/sent/%Y-%m-%d_%T") nil) )
(add-hook 'message-send-hook 'save-sent-mail)
Responder2
Você pode definir a variável gcc-self
para T
qualquer grupo que deseja arquivar.
Veja sua documentação
aqui. (ou (gnus) Group Parameters
)
EDIT:
gcc-self
não é uma variável «clássica», você deve configurá-la via
gnus-parameter
.
(setq gnus-parameters
'((".*"
(gcc-self . t))))
Responder3
Eu uso uma solução mais complicada:
(defconst meu-nome-de-arquivo-seguro-char-regex "[[:alnum:]-_!.@]" "Nomes de arquivos seguros.") (defun meu-limpo-nome do arquivo (nome do arquivo) (mapconcat (lambda (ch) (ou (quando (string-match my-safe-filename-char-regex (char-to-string ch)) (char-to-string ch)) "-")) nome do arquivo "") ) (defun minha-salvar mensagem () "Armazenar mensagem em `gnus-article-save-directory' após envio bem-sucedido. É possível que o e-mail tenha sido rejeitado e eu tenha perdido completamente, esta função salva para mim." (a menos que (eq modo principal 'modo de mensagem) (erro "Tentativa de chamar my-message-save em buffer sem modo de mensagem")) (diretório make gnus-article-save-directory t) (deixe ((buf (buffer atual)) (campo para (meu-nome do arquivo limpo (ou (campo de busca de mensagem "Grupos de notícias") (campo de busca de mensagem "Para")))) (campo-assunto (meu-nome do arquivo limpo (campo de busca de mensagem "Assunto"))) arquivo ) (arquivo setq (concat gnus-article-save-directory "/" (format-time-string "%F_%T") "_" campo para "_" campo-assunto)) (arquivo com arquivo temporário (inserir buffer buf) )) ) (add-hook 'mensagem-enviada-hook' minha-mensagem-salvar)
Observe também que eu usogancho de mensagem enviadaem vez degancho de envio de mensagem.