\f
* Changes in Oort Gnus
+** gnus-group-charset-alist and gnus-group-ignored-charsets-alist
+
+The regexps in these variables are compared with full group names
+instead of real group names in 5.8. Users who customize these
+variables should change those regexps accordingly. For example:
+
+ ("^han\\>" euc-kr) -> ("\\(^\\|:\\)han\\>" euc-kr)
+
** Gnus now supports PGP-MIME (RFC2015) and SMIME.
** Gnus inlines external parts (message/external).
+2001-02-14 Katsumi Yamaoka <yamaoka@jpl.org>
+ Committed by ShengHuo ZHU <zsh@cs.rochester.edu>
+
+ * gnus.el (gnus-define-group-parameter): Fix.
+
+2001-02-14 15:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
+
+ * gnus.el (gnus-define-group-parameter): Improved.
+
+ * gnus-sum.el (charset): Define parameter.
+ (ignored-charsets): Ditto.
+ (gnus-summary-setup-default-charset): Use them.
+
+ * gnus-start.el (gnus-read-descriptions-file): Use them.
+
+ * gnus-cus.el (gnus-group-parameters): Remove them.
+
2001-02-14 00:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
* gnus-sum.el (gnus-summary-print-article): Redo highlight.
(to-list): Ditto.
* gnus-art.el (article-hide-boring-headers): Use them.
* gnus-msg.el (gnus-post-news): Ditto.
+ * gnus-cus.el (gnus-group-parameters): Remove them.
2001-02-13 19:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
Always display this group, even when there are no unread articles
in it..")
- (charset (symbol :tag "Charset") "\
-The default charset to use in the group.")
-
- (ignored-charsets
- (choice :tag "Ignored charsets"
- :value nil
- (repeat (symbol))) "\
-List of charsets that should be ignored.
-
-When these charsets are used in the \"charset\" parameter, the
-default charset will be used instead.")
-
(highlight-words
(choice :tag "Highlight words"
:value nil
(name (symbol-name group))
(charset
(or (gnus-group-name-charset method name)
- (let ((alist gnus-group-charset-alist)
- elem charset)
- (while (setq elem (pop alist))
- (when (and name (string-match (car elem) name))
- (setq alist nil
- charset (cadr elem))))
- charset))))
+ (gnus-parameter-charset name))))
(when (and str charset (featurep 'mule))
(setq str (decode-coding-string str charset)))
(set group str)))
:group 'gnus-summary
:type 'regexp)
-(defcustom gnus-group-charset-alist
- '(("^hk\\>\\|^tw\\>\\|\\<big5\\>" cn-big5)
- ("^cn\\>\\|\\<chinese\\>" cn-gb-2312)
- ("^fj\\>\\|^japan\\>" iso-2022-jp-2)
- ("^tnn\\>\\|^pin\\>\\|^sci.lang.japan" iso-2022-7bit)
- ("^relcom\\>" koi8-r)
- ("^fido7\\>" koi8-r)
- ("^\\(cz\\|hun\\|pl\\|sk\\|hr\\)\\>" iso-8859-2)
- ("^israel\\>" iso-8859-1)
- ("^han\\>" euc-kr)
- ("^alt.chinese.text.big5\\>" chinese-big5)
- ("^soc.culture.vietnamese\\>" vietnamese-viqr)
- ("^\\(comp\\|rec\\|alt\\|sci\\|soc\\|news\\|gnu\\|bofh\\)\\>" iso-8859-1)
- (".*" iso-8859-1))
+(gnus-define-group-parameter
+ charset
+ :function-document
+ "Return the default charset of GROUP."
+ :variable gnus-group-charset-alist
+ :variable-default
+ '(("\\(^\\|:\\)hk\\>\\|\\(^\\|:\\)tw\\>\\|\\<big5\\>" cn-big5)
+ ("\\(^\\|:\\)cn\\>\\|\\<chinese\\>" cn-gb-2312)
+ ("\\(^\\|:\\)fj\\>\\|\\(^\\|:\\)japan\\>" iso-2022-jp-2)
+ ("\\(^\\|:\\)tnn\\>\\|\\(^\\|:\\)pin\\>\\|\\(^\\|:\\)sci.lang.japan" iso-2022-7bit)
+ ("\\(^\\|:\\)relcom\\>" koi8-r)
+ ("\\(^\\|:\\)fido7\\>" koi8-r)
+ ("\\(^\\|:\\)\\(cz\\|hun\\|pl\\|sk\\|hr\\)\\>" iso-8859-2)
+ ("\\(^\\|:\\)israel\\>" iso-8859-1)
+ ("\\(^\\|:\\)han\\>" euc-kr)
+ ("\\(^\\|:\\)alt.chinese.text.big5\\>" chinese-big5)
+ ("\\(^\\|:\\)soc.culture.vietnamese\\>" vietnamese-viqr)
+ ("\\(^\\|:\\)\\(comp\\|rec\\|alt\\|sci\\|soc\\|news\\|gnu\\|bofh\\)\\>" iso-8859-1)
+ (".*" iso-8859-1))
+ :variable-document
"Alist of regexps (to match group names) and default charsets to be used when reading."
- :type '(repeat (list (regexp :tag "Group")
- (symbol :tag "Charset")))
- :group 'gnus-charset)
+ :variable-group gnus-charset
+ :variable-type '(repeat (list (regexp :tag "Group")
+ (symbol :tag "Charset")))
+ :parameter-type '(symbol :tag "Charset")
+ :parameter-document "\
+The default charset to use in the group.")
(defcustom gnus-newsgroup-ignored-charsets '(unknown-8bit x-unknown)
"List of charsets that should be ignored.
:type '(repeat symbol)
:group 'gnus-charset)
-(defcustom gnus-group-ignored-charsets-alist
- '(("alt\\.chinese\\.text" iso-8859-1))
- "Alist of regexps (to match group names) and charsets that should be ignored.
+(gnus-define-group-parameter
+ ignored-charsets
+ :type list
+ :function-document
+ "Return the ignored charsets of GROUP."
+ :variable gnus-group-ignored-charsets-alist
+ :variable-default
+ '(("alt\\.chinese\\.text" iso-8859-1))
+ :variable-document
+ "Alist of regexps (to match group names) and charsets that should be ignored.
When these charsets are used in the \"charset\" parameter, the
default charset will be used instead."
- :type '(repeat (cons (regexp :tag "Group")
- (repeat symbol)))
- :group 'gnus-charset)
+ :variable-group gnus-charset
+ :variable-type '(repeat (cons (regexp :tag "Group")
+ (repeat symbol)))
+ :parameter-type '(choice :tag "Ignored charsets"
+ :value nil
+ (repeat (symbol)))
+ :parameter-document "\
+List of charsets that should be ignored.
+
+When these charsets are used in the \"charset\" parameter, the
+default charset will be used instead.")
(defcustom gnus-group-highlight-words-alist nil
"Alist of group regexps and highlight regexps.
"Setup newsgroup default charset."
(if (equal gnus-newsgroup-name "nndraft:drafts")
(setq gnus-newsgroup-charset nil)
- (let* ((name (and gnus-newsgroup-name
- (gnus-group-real-name gnus-newsgroup-name)))
- (ignored-charsets
+ (let* ((ignored-charsets
(or gnus-newsgroup-ephemeral-ignored-charsets
(append
(and gnus-newsgroup-name
- (or (gnus-group-find-parameter gnus-newsgroup-name
- 'ignored-charsets t)
- (let ((alist gnus-group-ignored-charsets-alist)
- elem (charsets nil))
- (while (setq elem (pop alist))
- (when (and name
- (string-match (car elem) name))
- (setq alist nil
- charsets (cdr elem))))
- charsets)))
+ (gnus-parameter-ignored-charsets gnus-newsgroup-name))
gnus-newsgroup-ignored-charsets))))
(setq gnus-newsgroup-charset
(or gnus-newsgroup-ephemeral-charset
(and gnus-newsgroup-name
- (or (gnus-group-find-parameter gnus-newsgroup-name 'charset)
- (let ((alist gnus-group-charset-alist)
- elem charset)
- (while (setq elem (pop alist))
- (when (and name
- (string-match (car elem) name))
- (setq alist nil
- charset (cadr elem))))
- charset)))
+ (gnus-parameter-charset gnus-newsgroup-name))
gnus-default-charset))
(set (make-local-variable 'gnus-newsgroup-ignored-charsets)
ignored-charsets))))
,parameter-type
,parameter-document))
(if (eq type 'bool)
- `(defun ,function (group)
+ `(defun ,function (name)
,function-document
- (let ((params (gnus-group-find-parameter group))
+ (let ((params (gnus-group-find-parameter name))
val)
(cond
((memq ',param params)
t)
((setq val (assq ',param params))
(cdr val))
+ ((stringp ,variable)
+ (string-match ,variable name))
(,variable
- (string-match ,variable group)))))
+ (let ((alist ,variable)
+ elem value)
+ (while (setq elem (pop alist))
+ (when (and name
+ (string-match (car elem) name))
+ (setq alist nil
+ value (cdr elem))))
+ (if (consp value) (car value) value))))))
`(defun ,function (name)
,function-document
(and name
- (or (gnus-group-find-parameter name ',param)
+ (or (gnus-group-find-parameter name ',param ,(and type t))
(let ((alist ,variable)
elem value)
(while (setq elem (pop alist))
+2001-02-13 19:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
+
+ * gnus.texi (Saving Articles): Addition.
+
+2001-02-14 15:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
+
+ * gnus.texi (Group Parameters): Addition.
+
2001-02-11 13:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
* gnus.texi (Choosing Commands): Move `G j' here.
\e$B$m$KCM$,$"$k$b$N!"$G9=@.$5$l$^$9!#A4$F$N%Q%i%a!<%?$O$3$N7A<0$r<h$j$^$9$,!"\e(B
@emph{\e$BNc30\e(B}\e$B$H$7$F6I=jJQ?t$N;XDj$OE@BP$G$O$J$/DL>o$N%j%9%H$K$J$j$^$9!#\e(B
+\e$B$$$/$D$+$N%Q%i%a!<%?$OBP1~$9$k%+%9%?%^%$%:2DG=$JJQ?t$r;}$C$F$$$^$9!#$=$l\e(B
+\e$B$i$O@55,I=8=$HCM$NO"A[%j%9%H$G$9!#\e(B
+
\e$B0J2<$OMxMQ2DG=$J%0%k!<%W%Q%i%a!<%?$G$9\e(B:
@table @code
\e$B$7$FD>@\Ej9F$9$k$3$H$OIT2DG=$G!"Be$o$j$K$=$N%a!<%j%s%0%j%9%H$K%a!<%k$rAw\e(B
\e$B?.$7$J$1$l$P$J$j$^$;$s!#\e(B
+@code{gnus-parameter-to-address-alist} \e$B$b;2>H$7$F2<$5$$!#\e(B
+
@item to-list
@cindex to-list
\e$B$=$N%0%k!<%W$G\e(B @kbd{a} \e$B$r2!$7$?$H$-$K;HMQ$5$l$k%"%I%l%9!#\e(B
\e$B$b$7\e(B @kbd{a} \e$B%3%^%s%I$r%a!<%k%0%k!<%W$G<B9T$7$?$H$-!"\e(B@code{to-list} \e$B%0%k!<\e(B
\e$B%W%Q%i%a!<%?$,$J$1$l$P!"Aw?.;~$K<+F0E*$KIU2C$5$l$^$9!#\e(B
+@code{gnus-parameter-to-list-alist} \e$B$b;2>H$7$F2<$5$$!#\e(B
+
@item visible
@cindex visible
\e$B%0%k!<%W%Q%i%a!<%?$N%j%9%HCf$K\e(B @code{(visible . t)} \e$B$H$$$&MWAG$,$"$l$P!"\e(B
\e$B$N4{FI5-;v$O;~8B>C5n$5$l$k$h$&$K0u$rIU$1$i$l$^$9!#B>$NJ}K!$O!"\e(B
@pxref{Expiring Mail}\e$B!#\e(B
+@code{gnus-auto-expirable-newsgroups} \e$B$b;2>H$7$F2<$5$$!#\e(B
+
@item total-expire
@cindex total-expire
\e$B%0%k!<%W%Q%i%a!<%?$K\e(B @code{(total-expire . t)} \e$B$N$h$&$JMWAG$,$"$l$P!"4{\e(B
\e$B0U$7$F;HMQ$7$F$/$@$5$$!#L$FI5-;v!"0uIU$-5-;v!"J]N15-;v$O;~8B>C5n$5$l$^$;\e(B
\e$B$s!#\e(B
+@code{gnus-total-expirable-newsgroups} \e$B$b;2>H$7$F2<$5$$!#\e(B
+
@item expiry-wait
@cindex expiry-wait
@vindex nnmail-expiry-wait-function
\e$B$9$kG$0U$N%3%a%s%H$G$9!#$3$l$O8=:_$N\e(B gnus \e$B$G$OL5;k$5$l$^$9$,!"FCDj$N%0%k!<\e(B
\e$B%W$KBP$9$k>pJs$r3JG<$9$k>l=j$rDs6!$7$^$9!#\e(B
-@c FIXTGNUS Is this true?
-@c @item charset
-@c Elements that look like @code{(charset . iso-8859-1)} will make
-@c @code{iso-8859-1} the default charset; that is, the charset that will be
-@c used for all articles that do not specify a charset.
+@ignore
+@item charset
+Elements that look like @code{(charset . iso-8859-1)} will make
+@code{iso-8859-1} the default charset; that is, the charset that will be
+used for all articles that do not specify a charset.
-@item (@var{variable} @var{form})
-\e$B%0%k!<%W$KF~$k$H$-$K!"$=$N%0%k!<%W%m!<%+%k$NJQ?t$r@_Dj$9$k%0%k!<%W%Q%i%a!<\e(B
-\e$B%?$r;HMQ$9$k$3$H$,$G$-$^$9!#\e(B@samp{news.answers} \e$B$K$*$$$F%9%l%C%II=<($r9T\e(B
-\e$B$$$?$/$J$$$H$-$O!"$=$N%0%k!<%W$K%0%k!<%W%Q%i%a!<%?\e(B
-\e$B$K\e(B @code{(gnus-show-threads nil)} \e$B$H=q$1$^$9!#\e(B
-@code{gnus-show-threads} \e$B$O!"$=$N35N,%P%C%U%!$NCf$N%m!<%+%kJQ?t$K$J$j!"\e(B
-form \e$B$N\e(B @code{nil} \e$B$O$=$3$GI>2A$5$l$^$9!#\e(B
+See also @code{gnus-group-charset-alist}.
-\e$B$3$l$O$b$7I,MW$G$"$l$P!"%0%k!<%WKh$N%U%C%/4X?t$H$7$F$b;HMQ$G$-$^$9!#$b$7\e(B
-\e$B$"$k%0%k!<%W$KF~$C$?$H$-$K%S!<%W2;$rLD$i$7$?$1$l$P!"$=$N%0%k!<%W$N%Q%i%a!<\e(B
-\e$B%?$K\e(B @code{(dummy-variable (ding))} \e$B$_$?$$$J$b$N$r=q$$$F$*$/$3$H$b$G$-$^\e(B
-\e$B$9!#\e(B@code{dummy-variable} \e$B$H$$$&JQ?t$K\e(B @code{(ding)} \e$B$NI>2A7k2L$,@_Dj$5\e(B
-\e$B$l$^$9$,!"$^$"!"C/$b5$$K$7$J$$$G$7$g\e(B?
+@item ignored-charsets
+Elements that look like @code{(ignored-charsets x-known iso-8859-1)}
+will make @code{iso-8859-1} and @code{x-unknown} ignored; that is, the
+default charset will be used for decoding articles.
+See also @code{gnus-group-ignored-charsets-alist}.
+@end ignore
@item posting-style
\e$B$3$N%0%k!<%W$NDI2C$NEj9FMM<0$r$3$3$N$_$KJ]B8$9$k$3$H$,$G$-$^\e(B
\e$B$9\e(B (@pxref{Posting Styles})\e$B!#=q<0$O\e(B @code{gnus-posting-style} \e$BO"A[%j%9%H\e(B
\e$B=|\e(B) \e$B$dO"A[%j%9%H\e(B @code{gnus-article-banner-alist} \e$B$N3FMWAG$r;H$&$3$H$b$G\e(B
\e$B$-$^$9!#\e(B
+@item (@var{variable} @var{form})
+\e$B%0%k!<%W$KF~$k$H$-$K!"$=$N%0%k!<%W%m!<%+%k$NJQ?t$r@_Dj$9$k%0%k!<%W%Q%i%a!<\e(B
+\e$B%?$r;HMQ$9$k$3$H$,$G$-$^$9!#\e(B@samp{news.answers} \e$B$K$*$$$F%9%l%C%II=<($r9T\e(B
+\e$B$$$?$/$J$$$H$-$O!"$=$N%0%k!<%W$K%0%k!<%W%Q%i%a!<%?\e(B
+\e$B$K\e(B @code{(gnus-show-threads nil)} \e$B$H=q$1$^$9!#\e(B
+@code{gnus-show-threads} \e$B$O!"$=$N35N,%P%C%U%!$NCf$N%m!<%+%kJQ?t$K$J$j!"\e(B
+form \e$B$N\e(B @code{nil} \e$B$O$=$3$GI>2A$5$l$^$9!#\e(B
+
+\e$B$3$l$O$b$7I,MW$G$"$l$P!"%0%k!<%WKh$N%U%C%/4X?t$H$7$F$b;HMQ$G$-$^$9!#$b$7\e(B
+\e$B$"$k%0%k!<%W$KF~$C$?$H$-$K%S!<%W2;$rLD$i$7$?$1$l$P!"$=$N%0%k!<%W$N%Q%i%a!<\e(B
+\e$B%?$K\e(B @code{(dummy-variable (ding))} \e$B$_$?$$$J$b$N$r=q$$$F$*$/$3$H$b$G$-$^\e(B
+\e$B$9!#\e(B@code{dummy-variable} \e$B$H$$$&JQ?t$K\e(B @code{(ding)} \e$B$NI>2A7k2L$,@_Dj$5\e(B
+\e$B$l$^$9$,!"$^$"!"C/$b5$$K$7$J$$$G$7$g\e(B?
+
@end table
\e$B%0%k!<%W%Q%i%a!<%?$N=$@5$K$O\e(B @kbd{G p} \e$B$+\e(B @kbd{G c} \e$BL?Na$r;H$C$F$/$@$5\e(B
@item gnus-plain-save-name
@findex gnus-plain-save-name
@file{~/News/alt.andera-dworkin} \e$B$N$h$&$J%U%!%$%kL>!#\e(B
+
+@item gnus-sender-save-name
+@findex gnus-sender-save-name
+@file{~/News/larsi} \e$B$N$h$&$J%U%!%$%kL>!#\e(B
@end table
@vindex gnus-split-methods
\e$B$-\e(B @sc{imap} \e$B%/%i%$%"%s%H$G%a!<%k%\%C%/%9$r=|$-!"$$$/$D$+$N5-;v$K4{\e(B
\e$BFI\e(B (\e$B$b$7$/$O!"\e(BSEEN) \e$B$N0u$rIU$1$k$J$i!"\e(B@samp{nil} \e$B$K@_Dj$7$?$$$+$b$7$l$^\e(B
\e$B$;$s!#$=$&$9$l$P!"%a!<%k%\%C%/%9$NA4$F$N5-;v$O0u$NG!2?$K4X$o$i$:<hF@$5$l\e(B
-\e$B$^$9!#=R8l$N40A4$J0lMw$O!"\e(BRFC2060 \e.A\eN'6.4.4 \e$B$rFI$s$G$/$@$5$$!#\e(B
+\e$B$^$9!#=R8l$N40A4$J0lMw$O!"\e(BRFC2060 \eN'6.4.4 \e$B$rFI$s$G$/$@$5$$!#\e(B
@item :fetchflag
\e$B%5!<%P!<$G!"<hF@$7$?5-;v$K0u$rIU$1$kJ}K!!#=i4|CM$N\e(B @samp{\Deleted} \e$B$O$=\e(B
\e$B$l$i$K>C5n$N0u$rIU$1$^$9$,!"B>$K\e(B @samp{\Seen} \e$B$G$OC1$K4{FI$N0u$rIU$1$^$9!#\e(B
-\e$B$3$l$i$O:G$b$"$j$=$&$JFs$D$NA*Br$G$9$,!"B>$N0u$b\e(B RFC2060 \e.A\eN'2.3.2 \e$B$GDj5A$5\e(B
+\e$B$3$l$i$O:G$b$"$j$=$&$JFs$D$NA*Br$G$9$,!"B>$N0u$b\e(B RFC2060 \eN'2.3.2 \e$B$GDj5A$5\e(B
\e$B$l$F$$$^$9!#\e(B
@item :dontexpunge
@item !
@itemx not
-@itemx \e.A\eN,
+@itemx \eN,
\e$B$3$NO@M}:nMQ;R$OC10l$N0z?t$N$_$r$H$j$^$9!#$=$l$O$=$N0z?t$NCM$NO@M}H]Dj$r\e(B
\e$BJV$7$^$9!#\e(B
\e$B2<$5$$!#\e(B
@item
-Fran\e.A\eNgois Pinard---\e$BB?$/$N!"B?$/$N6=L#?<$/40A4$J%P%0%l%]!<%H$H\e(B autoconf \e$B$N\e(B
+Fran\eNgois Pinard---\e$BB?$/$N!"B?$/$N6=L#?<$/40A4$J%P%0%l%]!<%H$H\e(B autoconf \e$B$N\e(B
\e$B%5%]!<%H!#\e(B
@end itemize
Christopher Davis,
Andrew Eskilsson,
Kai Grossjohann,
-David K\e.A\eNegedal,
+David K\eNegedal,
Richard Pieri,
Fabrice Popineau,
Daniel Quinlan,
Richard Hoskins,
Brad Howes,
Miguel de Icaza,
-Fran\e.A\eNgois Felix Ingrand,
+Fran\eNgois Felix Ingrand,
Tatsuya Ichikawa, @c ?
Ishikawa Ichiro, @c Ishikawa
Lee Iverson,
parameters have this form @emph{except} local variable specs, which are
not dotted pairs, but proper lists.
+Some parameters have correspondant customizable variables, each of which
+is an alist of regexps and values.
+
The following group parameters can be used:
@table @code
group is therefore impossible---you have to send mail to the mailing
list address instead.
+See also @code{gnus-parameter-to-address-alist}.
+
@item to-list
@cindex to-list
Address used when doing @kbd{a} in that group.
@code{to-list} group parameter, one will be added automatically upon
sending the message.
+See also @code{gnus-parameter-to-list-alist}.
+
@item visible
@cindex visible
If the group parameter list has the element @code{(visible . t)},
. t)}, all articles read will be marked as expirable. For an
alternative approach, @pxref{Expiring Mail}.
+See also @code{gnus-auto-expirable-newsgroups}.
+
@item total-expire
@cindex total-expire
If the group parameter has an element that looks like
caution. Unread, ticked and dormant articles are not eligible for
expiry.
+See also @code{gnus-total-expirable-newsgroups}.
+
@item expiry-wait
@cindex expiry-wait
@vindex nnmail-expiry-wait-function
@code{iso-8859-1} the default charset; that is, the charset that will be
used for all articles that do not specify a charset.
-@item (@var{variable} @var{form})
-You can use the group parameters to set variables local to the group you
-are entering. If you want to turn threading off in @samp{news.answers},
-you could put @code{(gnus-show-threads nil)} in the group parameters of
-that group. @code{gnus-show-threads} will be made into a local variable
-in the summary buffer you enter, and the form @code{nil} will be
-@code{eval}ed there.
+See also @code{gnus-group-charset-alist}.
-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 @code{(dummy-variable (ding))} in the parameters of that
-group. @code{dummy-variable} will be set to the result of the
-@code{(ding)} form, but who cares?
+@item ignored-charsets
+Elements that look like @code{(ignored-charsets x-known iso-8859-1)}
+will make @code{iso-8859-1} and @code{x-unknown} ignored; that is, the
+default charset will be used for decoding articles.
+
+See also @code{gnus-group-ignored-charsets-alist}.
@item posting-style
You can store additional posting style information for this group only
last signature or any of the elements of the alist
@code{gnus-article-banner-alist}.
+@item (@var{variable} @var{form})
+You can use the group parameters to set variables local to the group you
+are entering. If you want to turn threading off in @samp{news.answers},
+you could put @code{(gnus-show-threads nil)} in the group parameters of
+that group. @code{gnus-show-threads} will be made into a local variable
+in the summary buffer you enter, and the form @code{nil} will be
+@code{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 @code{(dummy-variable (ding))} in the parameters of that
+group. @code{dummy-variable} will be set to the result of the
+@code{(ding)} form, but who cares?
+
@end table
Use the @kbd{G p} or the @kbd{G c} command to edit group parameters of a
@item gnus-plain-save-name
@findex gnus-plain-save-name
File names like @file{~/News/alt.andrea-dworkin}.
+
+@item gnus-sender-save-name
+@findex gnus-sender-save-name
+File names like @file{~/News/larsi}.
@end table
@vindex gnus-split-methods
@vindex gnus-group-charset-alist
This knowledge is encoded in the @code{gnus-group-charset-alist}
-variable, which is an alist of regexps (to match group names) and
+variable, which is an alist of regexps (to match full group names) and
default charsets to be used when reading these groups.
In addition, some people do use soi-disant @sc{mime}-aware agents that