All groups have a level of subscribedness. For instance, if a group is on level 2, it is more subscribed than a group on level 5. You can ask Gnus to just list groups on a given level or lower (see Listing Groups), or to just check for new articles in groups on a given level or lower (see Scanning New Messages).
Remember: The higher the level of the group, the less important it is.
Gnus considers groups from levels 1 to
gnus-level-subscribed (inclusive) (default 5) to be subscribed,
gnus-level-subscribed (exclusive) and
gnus-level-unsubscribed (inclusive) (default 7) to be
gnus-level-zombie to be zombies (walking dead)
(default 8) and
gnus-level-killed to be killed (completely dead)
(default 9). Gnus treats subscribed and unsubscribed groups exactly the
same, but zombie and killed groups store no information on what articles
you have read, etc. This distinction between dead and living
groups isn't done because it is nice or clever, it is done purely for
reasons of efficiency.
It is recommended that you keep all your mail groups (if any) on quite low levels (e.g., 1 or 2).
Maybe the following description of the default behavior of Gnus helps to understand what these levels are all about. By default, Gnus shows you subscribed nonempty groups, but by hitting L you can have it show empty subscribed groups and unsubscribed groups, too. Type l to go back to showing nonempty subscribed groups again. Thus, unsubscribed groups are hidden, in a way.
Zombie and killed groups are similar to unsubscribed groups in that they are hidden by default. But they are different from subscribed and unsubscribed groups in that Gnus doesn't ask the news server for information (number of messages, number of unread messages) on zombie and killed groups. Normally, you use C-k to kill the groups you aren't interested in. If most groups are killed, Gnus is faster.
Why does Gnus distinguish between zombie and killed groups? Well, when a new group arrives on the server, Gnus by default makes it a zombie group. This means that you are normally not bothered with new groups, but you can type A z to get a list of all new groups. Subscribe the ones you like and kill the ones you don't want. (A k shows a list of killed groups.)
If you want to play with the level variables, you should show some care. Set them once, and don't touch them ever again. Better yet, don't touch them at all unless you know exactly what you're doing.
Two closely related variables are
(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.
gnus-keep-same-level is non-
nil, some movement commands
will only move to groups of the same level (or lower). In
particular, going from the last article in one group to the next group
will go to the next group of the same level (or lower). This might be
handy if you want to read the most important groups before you read the
If this variable is
best, Gnus will make the next newsgroup the
one with the best level.
All groups with a level less than or equal to
gnus-group-default-list-level will be listed in the group buffer
This variable can also be a function. In that case, that function will
be called and the result will be used as value.
gnus-group-list-inactive-groups is non-
groups will be listed along with the unread groups. This variable is
t by default. If it is
nil, inactive groups won't be
gnus-group-use-permanent-levels is non-
nil, once you
give a level prefix to g or l, all subsequent commands will
use this level as the “work” level.
Gnus will normally just activate (i.e., query the server about) groups
gnus-activate-level or less. If you don't want to
activate unsubscribed groups, for instance, you might set this variable
to 5. The default is 6.