Emacs 메시지: 보낸 메시지 저장

Emacs 메시지: 보낸 메시지 저장

보내는 이메일을 저장하기 위해 Emacs 메시지( )를 얻는 방법은 무엇입니까 C-x m?

이를 수행하는 표준 방법이 있습니까?

할 수는 있지만 C-x C-s비효율적이고 잊어버리기 쉬우며 실제로 이메일을 100% 보낼 수는 없습니다. 나중에 잊어버린 마지막 순간에 변경 사항을 적용했을 수도 있습니다.

이( save-buffer)를 "메시지 보내기" 후크에서 호출하여 자동화할 수 있나요? (예 text-mode-hook: .) 그렇다면 어떤 후크가 있습니까? (패턴의 고리를 얻는 방법은 무엇입니까?)

BCC스스로에게 말해보세요: 우아하지 않나요?

FCC: 최선의 해결책인 것 같지만 여전히 자동화되어 좋은 파일 이름을 호출하고 생성해야 합니다.

답변1

방금 일을 시작했습니다. 푸틴 .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)

답변2

보관하려는 그룹에 대해 gcc-self이 변수를 설정할 수 있습니다.T

해당 문서 보기 여기. (또는 (gnus) Group Parameters)

편집: gcc-self"클래식" 변수가 아니므로 gnus-parameter.

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

답변3

나는 더 복잡한 솔루션을 사용합니다.

(defconst my-safe-filename-char-regex "[[:alnum:]-_!.@]"
  "안전한 파일 이름.")

(my-clean-filename (파일 이름)을 정의했습니다.
  (지도 링크
   (lambda (ch) (또는 (when (string-match my-safe-filename-char-regex (char-to-string ch)) (char-to-string ch)) "-"))
   파일 이름"") )

(내 메시지 저장을 거부함()
  "그런 다음 메시지는 'gnus-article-save-directory'에 저장됩니다.
성공적으로 보냈습니다. 이메일이 거부되어 분실되었을 수도 있습니다.
물론, 이 기능은 저장하는 데 도움이 됩니다. "
  ((eq 메인 모드 '메시지 모드)가 아닌 경우)
    ("비메시지 모드 버퍼에 내 메시지 저장을 호출하려고 시도하는 중" 오류)
  (make-디렉토리 gnus-article-save-디렉토리 t)
  (let ( (buf (현재 버퍼))
         (field-to (my-clean-filename (또는 (message-fetch-field "Newsgroup") (message-fetch-field "To"))))
         (필드 제목(내 깨끗한 파일 이름(메시지 가져오기 필드 "제목")))
         문서)
    (setq 파일(concat gnus-article-save-directory "/" (형식-시간-문자열 "%F_%T") "_" 필드-"_" 필드-주제))
    (임시 파일이 있는 파일
      (버퍼 버퍼 삽입)
      ))))
(내 메시지 저장에 "메시지 전송 훅" 추가)

또한 내가 사용하는 점에 유의하십시오.메시지 전송 후크바꾸다메시지 전송 후크.

관련 정보