Gnus Group Levels

Gnus

Main information: http://www.gnus.org/manual/big-gnus.html#SEC24

Conventional newsreaders have a notion of "subscribed" and "unsubscribed" groups. The newsreader will typically query the server about subscribed groups and ignore the unsubscribed groups. This is all done client side; the server has no notion of subscribed versus unsubscribed.

Gnus, on the other hand, has a rather convoluted idea of "subscribed" and "unsubscribed", which is all tied up to it's notion of "group levels". In a nutshell, here we go.

Each group has a group level. You are subscribed to groups with levels between 1 and gnus-level-subscribed. You are unsubscribed to groups between gnus-level-subscribed + 1 and gnus-level-unsubscribed. A group is a zombie if its level is gnus-level-zombie and killed if its level is gnus-level-killed. These variables all have default values which you can change. So here's a handy cheat sheet:

Or, to make it all concrete, the default setup is :

Now, why do we do all this? Well, we can control various group operations by level. For example:

Change the level of a group by hitting S l in the group buffer.

Two more variables deserve mention, from the manual:

Two closely related variables are gnus-level-default-subscribed (default 3) and gnus-level-default-unsubscribed (default 6), which are the levels that new groups will be put on if they are (un)subscribed. These two variables should, of course, be inside the relevant valid ranges.

Note that there is very little difference between subscribed and unsubscribed groups. Gnus can still track article information for a group even it's unsubscribed. The difference only comes into play when figuring which groups to display by default. This brings us to the next point:

The default value of gnus-activate-level is 6. Note that 6, in the default setup, is one level of "unsubscribed". So we have the following point:

You can make gnus act in a bit more conventional manner by setting gnus-activate-level to 5, so that unsubscribed groups don't get queried. Alternatively you can make sure your unsubscribed groups are always at level 7. You can set gnus-level-default-unsubscribed to 7 to help with this.

(As an aside, to speed things up on my own system, I have opted to put all my big archive mail groups on level 7 and to leave the rest of default variables values alone. Hence they do not get activated. This seemed like the least riskiest thing I could do)

One more thing: gnus-group-list-inactive-groups (default t) controls whether inactive groups are listed or not. In my experiments, however, if you have this set to nil, and if you run gnus-group-list-all-groups, the unsubscribed groups win over and will be displayed.