在摘要模式下,当我按 R 表示 gnus-summary-reply-with-original 或按 F 表示 gnus-summary-followup-with-original 时,我的签名会插入到原始消息文本下方。
我如何告诉 gnus 将我的签名插入到消息的最顶部,在原始引用文本之前?
看起来这不是 Gnus 内置的选项(从 v5.10.8 开始),因此您必须重新定义其中一个内置函数,如下所示:
(eval-after-load "gnus-msg"
(defun gnus-inews-yank-articles (articles)
(let (beg article yank-string)
(goto-char (point-max)) ; put articles after signature
(insert "\n") ; and one extra newline
; was this (message-goto-body)
(while (setq article (pop articles))
(when (listp article)
(setq yank-string (nth 1 article)
article (nth 0 article)))
(save-window-excursion
(set-buffer gnus-summary-buffer)
(gnus-summary-select-article nil nil nil article)
(gnus-summary-remove-process-mark article))
(gnus-copy-article-buffer nil yank-string)
(let ((message-reply-buffer gnus-article-copy)
(message-reply-headers
;; The headers are decoded.
(with-current-buffer gnus-article-copy
(save-restriction
(nnheader-narrow-to-headers)
(nnheader-parse-naked-head)))))
(message-yank-original)
(setq beg (or beg (mark t))))
(when articles
(insert "\n")))
(push-mark)
(goto-char beg))))
我将 的新定义包装'gnus-inews-yank-articles
在一个eval-after-load
表单中,以便在适当的时间对其进行定义。显然,如果您想允许自定义,请创建一个变量并编写适当的 if 语句。