From d3bb53f30697512fa35ecee6d4962c04cf5bb848 Mon Sep 17 00:00:00 2001 From: Josh Huber Date: Fri, 14 Dec 2001 04:04:13 +0000 Subject: [PATCH] 2001-12-13 Josh Huber * gnus-cus.el (gnus-extra-topic-parameters): added topic parameter subscribe-level * gnus-topic.el (gnus-subscribe-topics): use it. --- lisp/ChangeLog | 6 ++++++ lisp/gnus-cus.el | 7 ++++++- lisp/gnus-topic.el | 6 ++++++ texi/gnus.texi | 5 +++++ 4 files changed, 23 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 72e7c4d9d..a6731e17f 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2001-12-13 Josh Huber + + * gnus-cus.el (gnus-extra-topic-parameters): added topic parameter + subscribe-level + * gnus-topic.el (gnus-subscribe-topics): use it. + 2001-12-13 22:00:00 ShengHuo ZHU * gnus-msg.el (gnus-summary-mail-forward): Forward all marked diff --git a/lisp/gnus-cus.el b/lisp/gnus-cus.el index f58e369d2..6df3ffafa 100644 --- a/lisp/gnus-cus.el +++ b/lisp/gnus-cus.el @@ -242,7 +242,12 @@ DOC is a documentation string for the parameter.") If `gnus-subscribe-newsgroup-method' or `gnus-subscribe-options-newsgroup-method' is set to `gnus-subscribe-topics', new groups that matches this regexp will -automatically be subscribed to this topic")) +automatically be subscribed to this topic") + (subscribe-level (integer :tag "Subscribe Level" :value 1) "\ +If this topic parameter is set, when new groups are subscribed +automatically under this topic (via the `subscribe' topic parameter) +assign this level to the group, rather than the default level +set in `gnus-level-default-subscribed'")) "Alist of topic parameters that are not also group parameters. Each entry has the form (NAME TYPE DOC), where NAME is the parameter diff --git a/lisp/gnus-topic.el b/lisp/gnus-topic.el index ead95c351..064bcb092 100644 --- a/lisp/gnus-topic.el +++ b/lisp/gnus-topic.el @@ -1690,6 +1690,12 @@ If REVERSE, reverse the sorting order." (gnus-subscribe-alphabetically newsgroup) ;; Add the group to the topic. (nconc (assoc topic gnus-topic-alist) (list newsgroup)) + ;; if this topic specifies a default level, use it + (let ((subscribe-level (cdr (assq 'subscribe-level + (gnus-topic-parameters topic))))) + (when subscribe-level + (gnus-group-change-level newsgroup subscribe-level + gnus-level-default-subscribed))) (throw 'end t))) nil))) diff --git a/texi/gnus.texi b/texi/gnus.texi index c9aa46368..032086087 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -3776,6 +3776,11 @@ When subscribing new groups by topic (@pxref{Subscription Methods}), the value should be a regexp to match the groups that should go in that topic. +@item subscribe-level +When subscribing new groups by topic (see the @code{subscribe} parameter), +the group will be subscribed with the level specified in the +@code{subscribe-level} instead of @code{gnus-level-default-subscribed}. + @end table Group parameters (of course) override topic parameters, and topic -- 2.25.1