学习再学习,多少大秘密

06 11

试着配置了一下 emacs/gnus 的 imap

以前一直不想配,所以信件被堆到了本地,昨天晚上检查了下,发现那个信件目录有几百 M
之大了,想着由于订阅了些 mailing list 而就这样任这个目录疯长,那还是有些郁闷的。
虽然 gmail 的 imap 有些小 bug, 好在我所订阅的东西里面采用这个解码的不多,所以试
一试还是值得的,想下,可以把这样的信件转发到另一个信箱,然后再使用 imap 登录上
去,嘿嘿,这样乱码问题就解决了。。


其实 imap 的配置很简单,核心的是这么几句

  1. (setq gnus-secondary-select-methods
  2.       '((nnimap "gmail"
  3. (nnimap-address "imap.gmail.com")
  4. (nnimap-stream ssl)
  5. (nnimap-list-pattern ("INBOX.*"))
  6. (nnimap-authinfo-file "~/.emacs.d/.imap-gmail")
  7.                 )
  8.  
  9. (nnimap "other"
  10. (nnimap-address "imap.otherserver")
  11.                 (nnimap-list-pattern ("INBOX"))
  12.         (nnimap-stream network)
  13. (nnimap-authinfo-file "~/.emacs.d/.imap-other")
  14. )))

因为我同时还看新闻组,所以设置了 gnus-secondary-select-methods, 对应的是新闻组的
设置 (setq gnus-select-method ‘(nntp “news.yaako.com”))。所以如果不看新闻组的话,可
以直接设置 gnus-select-method 这个变量为 nnimap 的几个。

此外,那个 authinfo-file 的格式是这样,以 .imap-gmail 为例

  1. machine imap.gmail.com login "" password ""

list-pattern 是列举的显示出来的邮箱,一般没有特殊的操作的话可以缺省,就是
“INBOX”, gmail 中由于有些邮件列表,因此我使用标签和过滤分了 INBOX.xxx 的邮件夹。
使相应的邮件直接发送到相应的邮件夹。其实这个还可以在本地操作,不过昨天测试了下,
速度很慢,就放弃了,如果有这个需求可以研究下面代码中的几个变量,给个示例。。

  1. (setq nnimap-split-inbox '("INBOX") ;;对 INBOX 中的新邮件进行 split
  2.       ;; 该变量如果不设置,将不会进行 split
  3.        nnimap-split-rule 'nnimap-split-fancy ;; 灵活的分类方式
  4.        nnimap-split-fancy
  5.        `(| ;; 根据 mailing list 分类
  6.   (any "kde-china@kde.org" ,"INBOX.kdecn");;邮件头符合kdecn邮件列表的。。。
  7.   (any "xetex@tug.org" ,"INBOX.xetex")
  8.   (any "ubuntu-zh@lists.ubuntu.com" ,"INBOX.ubuntu-zh")
  9.   (any "python-chinese@lists.python.cn" ,"INBOX.python-china")
  10.   (any "gentoo-user@lists.gentoo.org", "INBOX.gentoo")
  11.   .....
  12.         ))

Leave a Reply



© 2008 学习再学习,多少大秘密 | Entries (RSS) and Comments (RSS)

Your Index Web Directorywordpress logo