3.16.5 Topic Parameters

All groups in a topic will inherit group parameters from the parent (and ancestor) topic parameters. All valid group parameters are valid topic parameters (see Group Parameters). When the agent is enabled, all agent parameters (See Agent Parameters in Category Syntax) are also valid topic parameters.

In addition, the following parameters are only valid as topic parameters:

subscribe

When subscribing new groups by topic (see Subscription Methods), the subscribe topic parameter says what groups go in what topic. Its value should be a regexp to match the groups that should go in that topic.

subscribe-level

When subscribing new groups by topic (see the subscribe parameter), the group will be subscribed with the level specified in the subscribe-level instead of gnus-level-default-subscribed.

Group parameters (of course) override topic parameters, and topic parameters in sub-topics override topic parameters in super-topics. You know. Normal inheritance rules. (Rules is here a noun, not a verb, although you may feel free to disagree with me here.)

Gnus
  Emacs
     3: comp.emacs
     2: alt.religion.emacs
   452: alt.sex.emacs
    Relief
     452: alt.sex.emacs
       0: comp.talk.emacs.recovery
  Misc
     8: comp.binaries.fractals
    13: comp.sources.unix
   452: alt.sex.emacs

The ‘Emacs’ topic has the topic parameter (score-file . "emacs.SCORE"); the ‘Relief’ topic has the topic parameter (score-file . "relief.SCORE"); and the ‘Misc’ topic has the topic parameter (score-file . "emacs.SCORE"). In addition,
alt.religion.emacs’ has the group parameter (score-file . "religion.SCORE").

Now, when you enter ‘alt.sex.emacs’ in the ‘Relief’ topic, you will get the relief.SCORE home score file. If you enter the same group in the ‘Emacs’ topic, you’ll get the emacs.SCORE home score file. If you enter the group ‘alt.religion.emacs’, you’ll get the religion.SCORE home score file.

This seems rather simple and self-evident, doesn’t it? Well, yes. But there are some problems, especially with the total-expiry parameter. Say you have a mail group in two topics; one with total-expiry and one without. What happens when you do M-x gnus-expire-all-expirable-groups? Gnus has no way of telling which one of these topics you mean to expire articles from, so anything may happen. In fact, I hereby declare that it is undefined what happens. You just have to be careful if you do stuff like that.