当我使用其中一个*-with-original函数在emacs中使用gnus(message)回复消息时,我得到类似于此的引用:
"Doe, John" <johndoe@example.com> writes:
> Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
> Consectetuer adipiscing elit. Lorem ipsum dolor sit
> amet, consectetuer adipiscing elit.
Run Code Online (Sandbox Code Playgroud)
我希望gnus的行为与其他包含原始消息的日期和时间的MUA一样,例如:
On Thu 11 October 2012 09:20:12 "Doe, John" <johndoe@example.com> wrote:
> Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
> Consectetuer adipiscing elit. Lorem ipsum dolor sit
> amet, consectetuer adipiscing elit.
Run Code Online (Sandbox Code Playgroud)
有没有办法改变报价方式来实现这个目标?
更新2:我现在使用更简单的解决方案,来自kindahero的回答:
(setq message-citation-line-function 'message-insert-formatted-citation-line)
(setq message-citation-line-format "On %a, %b %d %Y at %r, %f wrote:")
Run Code Online (Sandbox Code Playgroud)
更新1:根据perh的回答,我最终得到了以下解决方案:
(defun my-citation-line ()
"Inserts name, email, and date"
(when message-reply-headers
(insert "On "
(format-time-string "%a, %b %e, %Y at %r"
(date-to-time (mail-header-date message-reply-headers)))
", "
(or (gnus-extract-address-component-name (mail-header-from message-reply-headers))
"Somebody")
(format " <%s>"
(or (gnus-extract-address-component-email (mail-header-from message-reply-headers))
"somebody@example.com"))
" wrote:\n")))
(setq message-citation-line-function 'my-citation-line)
Run Code Online (Sandbox Code Playgroud)
最终结果如下:
On Fri, Oct 12, 2012 at 03:11:48 PM, John Doe <johndoe@example.com> wrote:
Run Code Online (Sandbox Code Playgroud)
实际上gnus为您提供格式化的功能.
(setq message-citation-line-function 'message-insert-formatted-citation-line)
(setq message-citation-line-format "On %a, %b %d %Y, %f wrote:\n")
Run Code Online (Sandbox Code Playgroud)
根据你的口味改变变量..`format-time-string'有选项列表
减少.emacs中的行:)