Gnus 里缓冲区的基本结构通过上面最简单、最基本的配置,我们已经可以使用 Gnus 了。用命令 M-x gnus开始进行新闻组、邮件阅读。
一启动,就可以看到如下默认的 Group Buffer 了:
图 1. Gnus 默认分组总的来说,Gnus 分为三大缓冲区 ( Buffer ):
Group 缓冲区,Summary 缓冲区以及 Article 缓冲区,分别显示为 *Group*,*Summary*, *Article* 这样三个名称。
*Group* 缓冲区用来显示新闻组以及邮件分组的列表,而 *Summary* 缓冲区则显示特定新闻组或邮件文件夹里的文章列表,*Article* 缓冲区则显示指定文章的全部内容。
总的来说,我们每次都是按 Group Buffer --> Summary Buffer --> Article Buffer 这样的顺序来进行新闻组或邮件阅读。
和在 Emacs 里进行文本编辑一样,在 *Group* 缓冲区里,你可以把光标上 ( C-p) 下 ( C-n) 移动到某个 group 上面,按回车就可以进入该新闻组或邮件文件夹进行阅读。上下移动的操作和一般的 Emacs 编辑操作完全相同。
在 *Summary* 缓冲区里,会显示出一长串的帖子列表,如果要读某个帖子,只要这个帖子的标题上按下空格或回车键就行了。按下 q键将返回到 *Group* 缓冲区里。
订阅新的新闻组熟悉了 Gnus 的基本结构与操作后,我们需要添加一些新的、自己感兴趣的新闻组。
在 *Group* 缓冲区里,用命令 AA可以列出所有的新闻组列表,如图 2 所示:
图 2. Gnus 显示的新闻组列表清单如果想订阅某个新闻组,只要把光标放到你想要订阅的新闻组上,用命令 u就可以订阅该新闻组了。
订阅完了你需要的新闻组后,按 L则可以回到普通的 *Group* 缓冲区里;如果你只需要 Gnus 显示包含有未读邮件或文章的组,则用小写的 l即可。
如果你读了一段时间,觉得这个新闻组对你来说没有价值了,按 u则可以退订该新闻组。
这里值得提醒的是,当你按 u来退订某个新闻组时,并没有把它从你的列表里删除,只是让它处于“僵尸”状态(即哪怕有新的未读文章出现,Gnus 也不会让它打扰你),而你用命令 L依然能在列表里看到它,只是前面标记了一个大写的 U符号。如果你想彻底把这个新闻组从 *Group* 列表里删除的话,则要用 C-k命令。
新闻组里的发帖、回帖在 *Group* 缓冲区里订阅了新闻组后,我们就可以通过 *Group* 缓冲区进入 *Summary* 缓冲区里进行新闻组阅读。
在新闻组里发帖子叫 post article,即相当于把文章贴到一个公告栏里供大家检索。发帖子的操作很简单,只要我们在 *Summary* 里按下 a这个键,Emacs 即会自动根据当前的状态设定相关参数,我们需要做的,只是填写帖子的标题 (subject) 和内容。写完后用快捷键 C-c C-c发出,如果写了一半想取消,则键入 C-c C-k删除。
在新闻组里回帖子叫 follow up,按下 f键就可以进入到回帖的编辑状态。但是用小写的 f 回帖并不引用原作者的文章,而在大多数情况下,为了方便别人承前启后的阅读,我们需要在回帖里引用原文,这时可以用 F这个命令。
如果你对某个文章很感兴趣,想回复或是联系作者,但是你并不想让别人知道这些内容(相信我,很多情况下是这样的),这时你就可以用 r或者 R键通过邮件来和作者私下聊聊,这个给原作者回信的动作叫做 reply to。这个操作与 follow up 不同,follow up 的时候,相当于你把你的回复贴在了一个公告栏里,凡是订阅了该新闻组的人都能读到你发出的帖子。这里要注意的是,你在回信给作者的时候,一定要记得确认他的邮件地址是否正确,因为很多人会用 来发文章到新闻组里。
在 *Group* 和 *Summary* 缓冲区里上下移动的操作是相同,你还可以用 n移动到下一个未读新闻组或未读文章,用 p来移动到上一个未读文章或新闻组,用 C-n移动到下一个文章或是新闻组,用 C-p移动到上一个文章或是新闻组。
给帖子加标记当你进行了一段时间的 Gnus 新闻组阅读后,相信你已经注意到了,当你读过一个帖子之后,Gnus 会自动在帖子的最左边加上一个或多个字母、符号,这就是标记。类似的标记还有好多种,这些标记有些是我们自己加上的,有些是 Gnus 自动加上的。这些标记表明了帖子的状态,是为了方便你判断帖子的状态而设计的,简洁高效。
要熟练、高效地用 Gnus 来进行新闻组阅读,就必须熟练掌握一些常用标记。总的来说,标记分为两大类,一类是“已读 (read)”标记,一般用字母表示,比如 R,r, O,E等等;另一类是“未读 (unread)”标记,一般用特殊符号表示,比如 !, ?, *等等。Gnus 针对帖子的状态,采取的处理方式截然不同。如果一个帖子被标记为“已读”并且没有保留标志,那么当你离开这个 group(用 q命令)以后,下次再进入的时候,你就不会再见到它了(当然,你可以要求 Gnus 把已读的帖子翻出来给你看),只有那些被标记为“未读”的帖子、新帖以及一些带有保留标记的帖子等才会显示给你看。
这些标记数量虽多,但和 Emacs 的其他功能一样,只要掌握了 20% 的内容,我们就可以胜任平时 80% 的工作,现把常用的标记及其含义整理如表 1 和表 2 所示。
表 1. 已读标记命令解释R每次你读完一篇帖子之后,Gnus 就会自动加上这个标记,表示这篇帖子你已经读过了,并且下次你再进入这个新闻组,默认并不显示该帖子。r表示当前帖子已读,但这个标记是你自己手动用 d 命令添加的,实际上你可能并没读过。有些文章,你一看到标题就没有阅读的胃口了,那就用 d 把它标记成已读吧,省时省力!O表示这是个老帖,上次新闻组阅读的时候你已经读过了。默认情况下,Gnus 并不会显示老帖,只有当你用 / o 命令时,才可以让 Gnus 把老贴翻出来。
表 2. 未读标记命令解释!保留 (ticked) 标记,带有这个标记的帖子将一直保持可见,如果你对某个帖子感兴趣,想留着方便以后的查阅,可以加上这个标记;如果有某个帖子,你想一直追踪与它相关的文章,那就可以把它标记为 !。注意:帖子标记为 ! 状态,并不是说这个帖子就永久保留下来了,如果这个帖子被管理员从新闻组服务器上删除了,那么你就再也看不到它了。新闻组服务器按照相应的设置,定期删除过期(expired)的老帖。对于一些真正有价值的文章,安全起见,你需要把它们保存到本地的硬盘里。?休眠 (dormant) 标记,标记当前的帖子进入“休眠状态”,即除非有人跟帖,否则你以后不会见到这个帖子。也就是说,平常这个帖子和标记为 R 的帖子没有差别,但是一旦有人跟帖,它就会自动显身,方便你联系上下文进行阅读。用 ? 命令可以加上这个标记。空格如果一个帖子前面什么符号也没有,就表示这是一个“未读”的帖子。 |