The group buffer lists all (or parts) of the available groups. It is the first buffer shown when Gnus starts, and will never be killed as long as Gnus is active.
The default format of the group buffer is nice and dull, but you can make it as exciting and ugly as you feel like.
Here's a couple of example group lines:
25: news.announce.newusers * 0: alt.fan.andrea-dworkin
Quite simple, huh?
You can see that there are 25 unread articles in `news.announce.newusers'. There are no unread articles, but some ticked articles, in `alt.fan.andrea-dworkin' (see that little asterisk at the beginning of the line?)
You can change that format to whatever you want by fiddling with the
gnus-group-line-format
variable. This variable works along the
lines of a format
specification, which is pretty much the same as
a printf
specifications, for those of you who use (feh!) C.
See section Formatting Variables.
`%M%S%5y: %(%g%)\n' is the value that produced those lines above.
There should always be a colon on the line; the cursor always moves to the colon after performing an operation. Nothing else is required--not even the group name. All displayed text is just window dressing, and is never examined by Gnus. Gnus stores all real information it needs using text properties.
(Note that if you make a really strange, wonderful, spreadsheet-like layout, everybody will believe you are hard at work with the accounting instead of wasting time reading news.)
Here's a list of all available format characters:
gnus-group-uncollapsed-levels
variable says how many levels to leave at the end of the group name.
The default is 1--this will mean that group names like
`gnu.emacs.gnus' will be shortened to `g.emacs.gnus'.
gnus-new-mail-mark
) if there has arrived new mail to
the group lately.
gnus-user-format-function-
`X', where `X' is the letter
following `%u'. The function will be passed a single dummy
parameter as argument. The function should return a string, which will
be inserted into the buffer just like information from any other
specifier.
All the "number-of" specs will be filled with an asterisk (`*') if no info is available--for instance, if it is a non-activated foreign group, or a bogus native group.
The mode line can be changed by setting
gnus-group-mode-line-format
(see section Formatting Variables). It
doesn't understand that many format specifiers:
Highlighting in the group buffer is controlled by the
gnus-group-highlight
variable. This is an alist with elements
that look like (form . face). If form evaluates to
something non-nil
, the face will be used on the line.
Here's an example value for this variable that might look nice if the background is dark:
(setq gnus-group-highlight `(((> unread 200) . ,(custom-face-lookup "Red" nil nil t nil nil)) ((and (< level 3) (zerop unread)) . ,(custom-face-lookup "SeaGreen" nil nil t nil nil)) ((< level 3) . ,(custom-face-lookup "SpringGreen" nil nil t nil nil)) ((zerop unread) . ,(custom-face-lookup "SteelBlue" nil nil t nil nil)) (t . ,(custom-face-lookup "SkyBlue" nil nil t nil nil))))
Variables that are dynamically bound when the forms are evaluated include:
group
unread
method
mailp
level
score
ticked
total
topic
When the forms are eval
ed, point is at the beginning of the line
of the group in question, so you can use many of the normal Gnus
functions for snarfing info on the group.
gnus-group-update-hook
is called when a group line is changed.
It will not be called when gnus-visual
is nil
. This hook
calls gnus-group-highlight-line
by default.
All movement commands understand the numeric prefix and will behave as expected, hopefully.
gnus-group-next-unread-group
).
gnus-group-prev-unread-group
).
gnus-group-next-group
).
gnus-group-prev-group
).
gnus-group-next-unread-group-same-level
).
gnus-group-prev-unread-group-same-level
).
Three commands for jumping to groups:
gnus-group-jump-to-group
). Killed groups can be jumped to, just
like living groups.
gnus-group-best-unread-group
).
gnus-group-first-unread-group
).
If gnus-group-goto-unread
is nil
, all the movement
commands will move to the next group, not the next unread group. Even
the commands that say they move to the next unread group. The default
is t
.
gnus-group-read-group
). If there are no
unread articles in the group, or if you give a non-numerical prefix to
this command, Gnus will offer to fetch all the old articles in this
group from the server. If you give a numerical prefix N, N
determines the number of articles Gnus will fetch. If N is
positive, Gnus fetches the N newest articles, if N is
negative, Gnus fetches the abs(N) oldest articles.
gnus-group-select-group
). Takes the same arguments as
gnus-group-read-group
---the only difference is that this command
does not display the first unread article automatically upon group
entry.
gnus-group-quick-select-group
). No
scoring/killing will be performed, there will be no highlights and no
expunging. This might be useful if you're in a real hurry and have to
enter some humongous group. If you give a 0 prefix to this command
(i.e., 0 M-RET), Gnus won't even generate the summary buffer.
This might be useful if you want to toggle threading before entering the
group.
gnus-group-visible-select-group
).
gnus-group-select-group-ephemerally
). Even threading has been
turned off. Everything you do in the group after selecting it in this
manner will have no permanent effects.
The gnus-large-newsgroup
variable says what Gnus should consider
to be a big group. This is 200 by default. If the group has more
(unread and/or ticked) articles than this, Gnus will query the user
before entering the group. The user can then specify how many articles
should be fetched from the server. If the user specifies a negative
number (-n
), the n
oldest articles will be fetched. If it
is positive, the n
articles that have arrived most recently will
be fetched.
gnus-auto-select-first
control whether any articles are selected
automatically when entering a group with the SPACE command.
nil
t
best
If you want to prevent automatic selection in some group (say, in a
binary group with Huge articles) you can set this variable to nil
in gnus-select-group-hook
, which is called when a group is
selected.
gnus-group-unsubscribe-current-group
).
gnus-group-unsubscribe-group
).
gnus-group-kill-group
).
gnus-group-yank-group
).
gnus-group-transpose-groups
). This isn't
really a subscription command, but you can use it instead of a
kill-and-yank sequence sometimes.
gnus-group-kill-region
).
gnus-group-kill-all-zombies
).
gnus-group-kill-level
).
These groups can't be yanked back after killing, so this command should
be used with some caution. The only time where this command comes in
really handy is when you have a `.newsrc' with lots of unsubscribed
groups that you want to get rid off. S C-k on level 7 will
kill off all unsubscribed groups that do not have message numbers in the
`.newsrc' file.
Also see section Group Levels.
gnus-group-catchup-current
).
gnus-group-catchup-group-hook
is called when catching up a group from
the group buffer.
gnus-group-catchup-current-all
).
gnus-group-clear-data
).
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 section Listing Groups), or to just check for new articles in groups on a given level or lower (see section Scanning New Messages).
Remember: The higher the level of the group, the less important it is.
Gnus considers groups on between levels 1 and
gnus-level-subscribed
(inclusive) (default 5) to be subscribed,
gnus-level-subscribed
(exclusive) and
gnus-level-unsubscribed
(inclusive) (default 7) to be
unsubscribed, gnus-level-zombie
to be zombies (walking dead)
(default 8) and gnus-level-killed
to be killed (default 9),
completely dead. Gnus treats subscribed and unsubscribed groups exactly
the same, but zombie and killed groups have no information on what
articles you have read, etc, stored. 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).
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 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 legal ranges.
If gnus-keep-same-level
is non-nil
, some movement commands
will only move to groups that are 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
rest.
All groups with a level less than or equal to
gnus-group-default-list-level
will be listed in the group buffer
by default.
If gnus-group-list-inactive-groups
is non-nil
, non-active
groups will be listed along with the unread groups. This variable is
t
by default. If it is nil
, inactive groups won't be
listed.
If 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 groups that are on level
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.
You would normally keep important groups on high levels, but that scheme is somewhat restrictive. Don't you wish you could have Gnus sort the group buffer according to how often you read groups, perhaps? Within reason?
This is what group score is for. You can assign a score to each group. You can then sort the group buffer based on this score. Alternatively, you can sort on score and then level. (Taken together, the level and the score is called the rank of the group. A group that is on level 4 and has a score of 1 has a higher rank than a group on level 5 that has a score of 300. (The level is the most significant part and the score is the least significant part.))
If you want groups you read often to get higher scores than groups you
read seldom you can add the gnus-summary-bubble-group
function to
the gnus-summary-exit-hook
hook. This will result (after
sorting) in a bubbling sort of action. If you want to see that in
action after each summary exit, you can add
gnus-group-sort-groups-by-rank
or
gnus-group-sort-groups-by-score
to the same hook, but that will
slow things down somewhat.
If you want to perform some command on several groups, and they appear subsequently in the group buffer, you would normally just give a numerical prefix to the command. Most group commands will then do your bidding on those groups.
However, if the groups are not in sequential order, you can still perform a command on several groups. You simply mark the groups first with the process mark and then execute the command.
gnus-group-mark-group
).
gnus-group-unmark-group
).
gnus-group-unmark-all-groups
).
gnus-group-mark-region
).
gnus-group-mark-buffer
).
gnus-group-mark-regexp
).
Also see section Process/Prefix.
If you want to execute some command on all groups that have been marked
with the process mark, you can use the M-&
(gnus-group-universal-argument
) command. It will prompt you for
the command to be executed.
Below are some group mode commands for making and editing general foreign
groups, as well as commands to ease the creation of a few
special-purpose groups. All these commands insert the newly created
groups under point---gnus-subscribe-newsgroup-method
is not
consulted.
gnus-group-make-group
). Gnus will prompt you
for a name, a method and possibly an address. For an easier way
to subscribe to NNTP groups, see section Browse Foreign Server.
gnus-group-rename-group
). This is legal only on some
groups--mail groups mostly. This command might very well be quite slow
on some backends.
gnus-group-customize
).
gnus-group-edit-group-method
).
gnus-group-edit-group-parameters
).
gnus-group-edit-group
).
gnus-group-make-directory-group
).
gnus-group-make-help-group
).
gnus-group-make-archive-group
). By
default a group pointing to the most recent articles will be created
(gnus-group-recent-archive-directory
), but given a prefix, a full
group will be created from gnus-group-archive-directory
.
gnus-group-make-kiboze-group
).
See section Kibozed Groups.
nneething
backend (gnus-group-enter-directory
).
See section Anything Groups.
gnus-group-make-doc-group
). If you give a prefix to this
command, you will be prompted for a file name and a file type.
Currently supported types are babyl
, mbox
, digest
,
mmdf
, news
, rnews
, clari-briefs
,
rfc934
, rfc822-forward
, and forward
. If you run
this command without a prefix, Gnus will guess at the file type.
See section Document Groups.
gnus-group-make-web-group
). If you give a prefix to this
command, make a solid group instead. You will be prompted for the
search engine type and the search string. Legal search engine types
include dejanews
, altavista
and reference
.
See section Web Searches.
gnus-group-delete-group
). If given a prefix, this function will
actually delete all the articles in the group, and forcibly remove the
group itself from the face of the Earth. Use a prefix only if you are
absolutely sure of what you are doing.
nnvirtual
group
(gnus-group-make-empty-virtual
). See section Virtual Groups.
nnvirtual
group
(gnus-group-add-to-virtual
). Uses the process/prefix convention.
See section Select Methods for more information on the various select methods.
If gnus-activate-foreign-newsgroups
is a positive number,
Gnus will check all foreign groups with this level or lower at startup.
This might take quite a while, especially if you subscribe to lots of
groups from different NNTP servers.
The group parameters store information local to a particular group:
to-address
(to-address . "some@where.com")
, that address will be used by
the backend when doing followups and posts. This is primarily useful in
mail groups that represent closed mailing lists--mailing lists where
it's expected that everybody that writes to the mailing list is
subscribed to it. Since using this parameter ensures that the mail only
goes to the mailing list itself, it means that members won't receive two
copies of your followups.
Using to-address
will actually work whether the group is foreign
or not. Let's say there's a group on the server that is called
`fa.4ad-l'. This is a real newsgroup, but the server has gotten
the articles from a mail-to-news gateway. Posting directly to this
group is therefore impossible--you have to send mail to the mailing
list address instead.
to-list
(to-list . "some@where.com")
, that address will be used when
doing a a in any group. It is totally ignored when doing a
followup--except that if it is present in a news group, you'll get mail
group semantics when doing f.
If you do an a command in a mail group and you don't have a
to-list
group parameter, one will be added automatically upon
sending the message.
broken-reply-to
(broken-reply-to . t)
signals that Reply-To
headers in this group are to be ignored. This can be useful if you're
reading a mailing list group where the listserv has inserted
Reply-To
headers that point back to the listserv itself. This is
broken behavior. So there!
to-group
(to-group . "some.group.name")
means that all
posts in that group will be sent to some.group.name
.
newsgroup
gcc-self
t
, new composed messages will be Gcc
'd to the current
group. If it is present and set to none
, no Gcc:
header
will be generated, if it is present and a string, this string will be
inserted literally as a gcc
header (this symbol takes precedence over
any default Gcc
rules as described later).
auto-expire
(auto-expire
. t)
, , all articles that are read will be marked as expirable. For an
alternative approach, see section Expiring Mail.
total-expire
(total-expire . t)
, all read articles will be put through the
expiry process, even if they are not marked as expirable. Use with
caution.
expiry-wait
(expiry-wait
. 10)
, this value will override any nnmail-expiry-wait
and
nnmail-expiry-wait-function
when expiring expirable messages.
The value can either be a number of days (not necessarily an integer) or
the symbols never
or immediate
.
score-file
(score-file . "file")
will make
`file' into the current score file for the group in question. This
means that all score commands you issue will end up in that file.
adapt-file
(adapt-file . "file")
will make
`file' into the current adaptive file for the group in question.
All adaptive score entries will be put into this file.
admin-address
display
(display . MODE)
says which articles to
display on entering the group. Legal values are:
all
default
comment
(comment . "This is a comment")
are arbitrary comments on the group. They are currently ignored by
Gnus, but provide a place for you to store information on particular
groups.
(variable form)
(gnus-show-threads nil)
in the group parameters of
that group. gnus-show-threads
will be made into a local variable
in the summary buffer you enter, and the form nil
will be
eval
ed there.
This can also be used as a group-specific hook function, if you'd like.
If you want to hear a beep when you enter a group, you could put
something like (dummy-variable (ding))
in the parameters of that
group. dummy-variable
will be set to the result of the
(ding)
form, but who cares?
Use the G p command to edit group parameters of a group.
Also see section Topic Parameters.
Here's an example group parameter list:
((to-address . "ding@gnus.org") (auto-expiry . t))
These commands all list various slices of the groups that are available.
gnus-group-list-groups
). If the numeric prefix is used, this
command will list only groups of level ARG and lower. By default, it
only lists groups of level five (i. e.,
gnus-group-default-list-level
) or lower (i.e., just subscribed
groups).
gnus-group-list-all-groups
). If the numeric prefix is used,
this command will list only groups of level ARG and lower. By default,
it lists groups of level seven or lower (i.e., just subscribed and
unsubscribed groups).
gnus-group-list-level
). If given a prefix, also list the groups
with no unread articles.
gnus-group-list-killed
). If given a
prefix argument, really list all groups that are available, but aren't
currently (un)subscribed. This could entail reading the active file
from the server.
gnus-group-list-zombies
).
gnus-group-list-matching
).
gnus-group-list-all-matching
).
gnus-group-list-active
). This
might very well take quite a while. It might actually be a better idea
to do a A M to list all matching, and just give `.' as the
thing to match on. Also note that this command may list group that
don't exist (yet)---these will be listed as if they are killed groups.
Take the output with some grains of salt.
gnus-group-apropos
).
gnus-group-description-apropos
).
Groups that match the gnus-permanently-visible-groups
regexp will
always be shown, whether they have unread articles or not. You can also
add the visible
element to the group parameters in question to
get the same effect.
Groups that have just ticked articles in it are normally listed in the
group buffer. If gnus-list-groups-with-ticked-articles
is
nil
, these groups will be treated just like totally empty
groups. It is t
by default.
The C-c C-s (gnus-group-sort-groups
) command sorts the
group buffer according to the function(s) given by the
gnus-group-sort-function
variable. Available sorting functions
include:
gnus-group-sort-by-alphabet
gnus-group-sort-by-real-name
gnus-group-sort-by-level
gnus-group-sort-by-score
gnus-group-sort-by-rank
gnus-group-sort-by-unread
gnus-group-sort-by-method
gnus-group-sort-function
can also be a list of sorting
functions. In that case, the most significant sort key function must be
the last one.
There are also a number of commands for sorting directly according to some sorting criteria:
gnus-group-sort-groups-by-alphabet
).
gnus-group-sort-groups-by-unread
).
gnus-group-sort-groups-by-level
).
gnus-group-sort-groups-by-score
).
gnus-group-sort-groups-by-rank
).
gnus-group-sort-groups-by-method
).
When given a prefix, all these commands will sort in reverse order.
You can also sort a subset of the groups:
gnus-group-sort-selected-groups-by-alphabet
).
gnus-group-sort-selected-groups-by-unread
).
gnus-group-sort-selected-groups-by-level
).
gnus-group-sort-selected-groups-by-score
).
gnus-group-sort-selected-groups-by-rank
).
gnus-group-sort-selected-groups-by-method
).
gnus-group-check-bogus-groups
).
gnus-find-new-newsgroups
). If
given a prefix, use the ask-server
method to query the server for
new groups.
gnus-group-expire-articles
).
gnus-group-expire-all-groups
).
gnus-group-browse-foreign-server
).
A new buffer with a list of available groups will appear. This buffer
will be use the gnus-browse-mode
. This buffer looks a bit (well,
a lot) like a normal group buffer.
Here's a list of keystrokes available in the browse mode:
gnus-group-next-group
).
gnus-group-prev-group
).
gnus-browse-read-group
).
gnus-browse-select-group
).
gnus-browse-unsubscribe-current-group
).
gnus-browse-exit
).
gnus-browse-describe-briefly
).
Yes, Gnus is ex(c)iting.
gnus-group-suspend
). This doesn't really exit Gnus,
but it kills all buffers except the Group buffer. I'm not sure why this
is a gain, but then who am I to judge?
gnus-group-exit
).
gnus-group-quit
).
The dribble file will be saved, though (see section Auto Save).
gnus-suspend-gnus-hook
is called when you suspend Gnus and
gnus-exit-gnus-hook
is called when you quit Gnus, while
gnus-after-exiting-gnus-hook
is called as the final item when
exiting Gnus.
If you wish to completely unload Gnus and all its adherents, you can use
the gnus-unload
command. This command is also very handy when
trying to customize meta-variables.
Note:
Miss Lisa Cannifax, while sitting in English class, felt her feet go numbly heavy and herself fall into a hazy trance as the boy sitting behind her drew repeated lines with his pencil across the back of her plastic chair.
If you read lots and lots of groups, it might be convenient to group them hierarchically according to topics. You put your Emacs groups over here, your sex groups over there, and the rest (what, two groups or so?) you put in some misc section that you never bother with anyway. You can even group the Emacs sex groups as a sub-topic to either the Emacs groups or the sex groups--or both! Go wild!
Here's an example:
Gnus Emacs -- I wuw it! 3: comp.emacs 2: alt.religion.emacs Naughty Emacs 452: alt.sex.emacs 0: comp.talk.emacs.recovery Misc 8: comp.binaries.fractals 13: comp.sources.unix
To get this fab functionality you simply turn on (ooh!) the
gnus-topic
minor mode--type t in the group buffer. (This
is a toggling command.)
Go ahead, just try it. I'll still be here when you get back. La de dum... Nice tune, that... la la la... What, you're back? Yes, and now press l. There. All your groups are now listed under `misc'. Doesn't that make you feel all warm and fuzzy? Hot and bothered?
If you want this permanently enabled, you should add that minor mode to the hook for the group mode:
(add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
Now, if you select a topic, if will fold/unfold that topic, which is really neat, I think.
The topic lines themselves are created according to the
gnus-topic-line-format
variable (see section Formatting Variables).
Legal elements are:
Each sub-topic (and the groups in the sub-topics) will be indented with
gnus-topic-indent-level
times the topic level number of spaces.
The default is 2.
gnus-topic-mode-hook
is called in topic minor mode buffers.
The gnus-topic-display-empty-topics
says whether to display even
topics that have no unread articles in them. The default is t
.
When the topic minor mode is turned on, a new T submap will be available. In addition, a few of the standard keys change their definitions slightly.
gnus-topic-create-topic
).
gnus-topic-move-group
). This command uses the process/prefix
convention (see section Process/Prefix).
gnus-topic-copy-group
). This command uses the process/prefix
convention (see section Process/Prefix).
gnus-topic-remove-group
).
This command uses the process/prefix convention
(see section Process/Prefix).
gnus-topic-move-matching
).
gnus-topic-copy-matching
).
gnus-topic-mark-topic
).
gnus-topic-unmark-topic
).
gnus-topic-select-group
).
When you perform this command on a group, you'll enter the group, as
usual. When done on a topic line, the topic will be folded (if it was
visible) or unfolded (if it was folded already). So it's basically a
toggling command on topics. In addition, if you give a numerical
prefix, group on that level (and lower) will be displayed.
gnus-topic-indent
). If given a prefix,
"un-indent" the topic instead.
gnus-topic-kill-group
). All groups in the
topic will be removed along with the topic.
gnus-topic-yank-group
). Note that all topics will be yanked
before all groups.
gnus-topic-rename
).
gnus-topic-delete
).
gnus-topic-list-active
).
gnus-topic-edit-parameters
).
See section Topic Parameters.
You can sort the groups in each topic individually with the following commands:
gnus-topic-sort-groups-by-alphabet
).
gnus-topic-sort-groups-by-unread
).
gnus-topic-sort-groups-by-level
).
gnus-topic-sort-groups-by-score
).
gnus-topic-sort-groups-by-rank
).
gnus-topic-sort-groups-by-method
).
See section Sorting Groups for more information about group sorting.
So, let's have a look at an example group buffer:
Gnus Emacs -- I wuw it! 3: comp.emacs 2: alt.religion.emacs Naughty Emacs 452: alt.sex.emacs 0: comp.talk.emacs.recovery Misc 8: comp.binaries.fractals 13: comp.sources.unix
So, here we have one top-level topic (`Gnus'), two topics under that, and one sub-topic under one of the sub-topics. (There is always just one (1) top-level topic). This topology can be expressed as follows:
(("Gnus" visible) (("Emacs -- I wuw it!" visible) (("Naughty Emacs" visible))) (("Misc" visible)))
This is in fact how the variable gnus-topic-topology
would look
for the display above. That variable is saved in the `.newsrc.eld'
file, and shouldn't be messed with manually--unless you really want
to. Since this variable is read from the `.newsrc.eld' file,
setting it in any other startup files will have no effect.
This topology shows what topics are sub-topics of what topics (right),
and which topics are visible. Two settings are currently
allowed---visible
and invisible
.
All groups in a topic will inherit group parameters from the parent (and ancestor) topic parameters. All legal group parameters are legal topic parameters (see section Group Parameters).
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.
gnus-group-enter-server-mode
).
See section The Server Buffer.
gnus-group-post-news
). The current
group name will be used as the default.
gnus-group-mail
).
Variables for the group buffer:
gnus-group-mode-hook
gnus-group-mode-hook
is called after the group buffer has been
created.
gnus-group-prepare-hook
gnus-group-prepare-hook
is called after the group buffer is
generated. It may be used to modify the buffer in some strange,
unnatural way.
gnus-permanently-visible-groups
gnus-group-get-new-news
). If given a non-numerical prefix, this
command will force a total rereading of the active file(s) from the
backend(s).
gnus-group-get-new-news-this-group
).
gnus-goto-next-group-when-activating
says whether this command is
to move point to the next group or not. It is t
by default.
gnus-activate-all-groups
).
gnus-group-restart
). This saves the `.newsrc'
file(s), closes the connection to all servers, clears up all run-time
Gnus variables, and then starts Gnus all over again.
gnus-get-new-news-hook
is run just before checking for new news.
gnus-after-getting-new-news-hook
is run after checking for new
news.
gnus-group-fetch-faq
). Gnus will try to get the FAQ from
gnus-group-faq-directory
, which is usually a directory on a
remote machine. This variable can also be a list of directories. In
that case, giving a prefix to this command will allow you to choose
between the various sites. ange-ftp
(or efs
) will be used
for fetching the file.
If fetching from the first site is unsuccessful, Gnus will attempt to go
through gnus-group-faq-directory
and try to open them one by one.
gnus-group-describe-group
). If given
a prefix, force Gnus to re-read the description from the server.
gnus-group-describe-all-groups
). If given a
prefix, force Gnus to re-read the description file from the server.
gnus-version
).
gnus-group-describe-briefly
).
gnus-info-find-node
).
It can be convenient to let Gnus keep track of when you last read a
group. To set the ball rolling, you should add
gnus-group-set-timestamp
to gnus-select-group-hook
:
(add-hook 'gnus-select-group-hook 'gnus-group-set-timestamp)
After doing this, each time you enter a group, it'll be recorded.
This information can be displayed in various ways--the easiest is to use the `%d' spec in the group line format:
(setq gnus-group-line-format "%M\%S\%p\%P\%5y: %(%-40,40g%) %d\n")
This will result in lines looking like:
* 0: mail.ding 19961002T012943 0: custom 19961002T012713
As you can see, the date is displayed in compact ISO 8601 format. This may be a bit too much, so to just display the date, you could say something like:
(setq gnus-group-line-format "%M\%S\%p\%P\%5y: %(%-40,40g%) %6,6~(cut 2)d\n")
gnus-init-file
, which defaults to
`~/.gnus') (gnus-group-read-init-file
).
gnus-group-save-newsrc
). If given a prefix, force saving the
file(s) whether Gnus thinks it is necessary or not.
Go to the first, previous, next, last section, table of contents.