I don't want to expire mail in gnus

有些话、适合烂在心里 提交于 2019-12-06 07:52:39

问题


I am using gnus and I would rather it not expire read mail in the usenet fashion.

This doesn't seem to be working:

(remove-hook 'gnus-mark-article-hook                                                                                                                                      
             'gnus-summary-mark-read-and-unread-as-read)                                                                                                                  
(add-hook 'gnus-mark-article-hook 'gnus-summary-mark-unread-as-read)

Any ideas to make it a little bit more like a "normal" MUA?


回答1:


As all reasonable mail agent, gnus won't destroy (or expire) mail unless you ask it to do it.

It will hide them, so when entering a group (mailbox/folder) it will only show you mail that are unread or ticked. But if you enter a group with C-u RET, or if you use C-u M-g in the summary buffer, all hidden message will be shown.

If you really want to have all article all the time, you could use

 (defun rv-gnus-topic-select-group ()
     (gnus-topic-select-group t))

 (eval-after-load 'gnus-topic
     (gnus-define-keys gnus-topic-mode-map
    "\r" rv-gnus-topic-select-group))

But you'd better do as gnus does, and tick message you use often, and use the prefix arg when you want more.

(this is untested code, but it could work)




回答2:


I believe you need to set your gnus-parameters display setting. The relevant bit from info node (gnus) Gnus Parameters is:

`all'
     Display all articles, both read and unread.

Here is an example taken from the manual:

(setq gnus-parameters
      '(("mail\\..*"
         (gnus-show-threads nil)
         (gnus-use-scoring nil)
         (gnus-summary-line-format
          "%U%R%z%I%(%[%d:%ub%-23,23f%]%) %s\n")
         (gcc-self . t)
         (display . all))

        ("^nnimap:\\(foo.bar\\)$"
         (to-group . "\\1"))

        ("mail\\.me"
         (gnus-use-scoring  t))

        ("list\\..*"
         (total-expire . t)
         (broken-reply-to . t))))

This is likely not exactly what you want, but you should be able to construct a parameter set that works.

Also, Gnus will not actually expire your mail by default. For example, in your current groups the read messages should still be there, just not visible. You can check by entering the group with a C-u prefix. See (gnus) Expiring Mail info for details.




回答3:


(setq gnus-large-newsgroup 'nil)

Is the only way I found to stop gnus to

  • ask me "how many articles from" and
  • show-me-all-my-mail-all-ways.


来源:https://stackoverflow.com/questions/4982831/i-dont-want-to-expire-mail-in-gnus

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!