Mensaje de Emacs: guardar los correos enviados

Mensaje de Emacs: guardar los correos enviados

¿Cómo se hace que Emacs Message ( C-x m) guarde los correos salientes?

¿Existe una forma estándar de hacer esto?

Podrías C-x C-s, pero esto es ineficiente y fácil de olvidar, además, no puedes estar 100% seguro de que es el correo realmente enviado: es posible que hayas hecho algunos cambios de última hora que luego olvidaste.

¿Podría invocarse este ( save-buffer) desde un enlace de "enviar mensaje" y automatizarse? (Como text-mode-hook...) Si es así, ¿qué gancho? (¿Cómo se consiguen los ganchos de un modo?)

BCCpara ti mismo: ¿no muy elegante?

FCC: parece ser la mejor solución, aún así, debe automatizarse, generarse tanto la invocación como un buen nombre de archivo.

Respuesta1

Acabo de hacer que esto funcione. Poner en .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)

Respuesta2

Puede configurar la variable gcc-selfpara Tcualquier grupo que desee archivar.

Ver su documentación aquí. (o (gnus) Group Parameters)

EDITAR: gcc-selfno es una variable «clásica», debes configurarla mediante gnus-parameter.

(setq gnus-parameters
      '((".*"
         (gcc-self . t))))

Respuesta3

Yo uso una solución más complicada:

(defconst mi-nombre-de-archivo-seguro-char-regex "[[:alnum:]-_!.@]"
  "Nombres de archivos seguros.")

(defun my-clean-filename (nombre de archivo)
  (mapaconcat
   (lambda (ch) (o (cuando (string-match my-safe-filename-char-regex (char-to-string ch)) (char-to-string ch)) "-"))
   Nombre del archivo "") )

(desactivar mi-mensaje-guardar ()
  "Almacenar mensaje en `gnus-article-save-directory' después
Envío exitoso. Es posible que el correo haya sido rechazado y lo haya perdido.
completamente, esta función lo guarda para mí."
  (a menos que (eq modo-mayor 'modo-mensaje)
    (error "Intento llamar a my-message-save en un búfer que no está en modo mensaje"))
  (directorio-creación-directorio-guardado-artículo-gnus t)
  (let ( (buf (búfer-actual))
         (campo-a (mi-nombre-de-archivo-limpio (o (campo-búsqueda-mensaje "Grupos de noticias") (campo-búsqueda-mensaje "Para"))))
         (campo-asunto (mi-nombre-de-archivo-limpio (campo-de-búsqueda-de-mensaje "Asunto")))
         archivo )
    (archivo setq (concat gnus-article-save-directory "/" (formato-hora-cadena "%F_%T") "_" campo-a "_" campo-sujeto))
    (con archivo temporal
      (insertar-buffer buffer)
      )) )
(añadir-hook 'mensaje-enviado-hook 'mi-mensaje-guardar)

También tenga en cuenta que usogancho-mensaje-enviadoen lugar degancho-enviar-mensaje.

información relacionada