* gnus-group.el (gnus-topic-mode-p): Fixed free variable
[gnus] / lisp / gnus-cus.el
index b3b4246..2f80b47 100644 (file)
@@ -1,6 +1,7 @@
 ;;; gnus-cus.el --- customization commands for Gnus
 ;;
-;; Copyright (C) 1996,1999, 2000 Free Software Foundation, Inc.
+;; Copyright (C) 1996, 1999, 2000, 2001, 2002, 2003
+;;        Free Software Foundation, Inc.
 
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: news
@@ -130,7 +131,7 @@ All posts will be sent to the specified group.")
                      (string :format "%v" :hide-front-space t)) "\
 Specify default value for GCC header.
 
-If this symbol is present in the group parameter list and set to `t',
+If this symbol is present in the group parameter list and set to 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
@@ -151,10 +152,10 @@ days (not necessarily an integer) or the symbols `never' or
 `immediate'.")
 
     (expiry-target (choice :tag "Expiry Target"
-                           :value delete
-                           (const delete)
-                           (function :format "%v" nnmail-)
-                           string) "\
+                          :value delete
+                          (const delete)
+                          (function :format "%v" nnmail-)
+                          string) "\
 Where expired messages end up.
 
 Overrides `nnmail-expiry-target', which see.")
@@ -178,15 +179,25 @@ you to put the admin address somewhere convenient.")
     (display (choice :tag "Display"
                     :value default
                     (const all)
-                    (const default)) "\
+                    (integer)
+                    (const default)
+                    (sexp  :tag "Other")) "\
 Which articles to display on entering the group.
 
 `all'
      Display all articles, both read and unread.
 
+`integer'
+     Display the last NUMBER articles in the group.  This is the same as
+     entering the group with C-u NUMBER.
+
 `default'
      Display the default visible articles, which normally includes
-     unread and ticked articles.")
+     unread and ticked articles.
+
+`Other'
+     Display the articles that satisfy the S-expression. The S-expression
+     should be in an array form.")
 
     (comment (string :tag  "Comment") "\
 An arbitrary comment on the group.")
@@ -195,32 +206,32 @@ An arbitrary comment on the group.")
 Always display this group, even when there are no unread articles
 in it..")
 
-    (highlight-words 
+    (highlight-words
      (choice :tag "Highlight words"
             :value nil
             (repeat (list (regexp :tag "Highlight regexp")
                           (number :tag "Group for entire word" 0)
                           (number :tag "Group for displayed part" 0)
-                          (symbol :tag "Face" 
+                          (symbol :tag "Face"
                                   gnus-emphasis-highlight-words))))
      "highlight regexps.
-See gnus-emphasis-alist.")
+See `gnus-emphasis-alist'.")
 
     (posting-style
      (choice :tag "Posting style"
             :value nil
             (repeat (list
-                     (choice :tag "Type"
+                     (choice :tag "Type"
                              :value nil
                              (const signature)
-                             (const signature-file) 
-                             (const organization) 
-                             (const address)
-                             (const name)
-                             (const body))
+                             (const signature-file)
+                             (const organization)
+                             (const address)
+                             (const name)
+                             (const body))
                      (string :format "%v"))))
      "post style.
-See gnus-posting-styles."))
+See `gnus-posting-styles'."))
   "Alist of valid group or topic parameters.
 
 Each entry has the form (NAME TYPE DOC), where NAME is the parameter
@@ -229,10 +240,15 @@ DOC is a documentation string for the parameter.")
 
 (defconst gnus-extra-topic-parameters
   '((subscribe (regexp :tag "Subscribe") "\
-If `gnus-subscribe-newsgroup-method' or 
+If `gnus-subscribe-newsgroup-method' or
 `gnus-subscribe-options-newsgroup-method' is set to
 `gnus-subscribe-topics', new groups that matches this regexp will
-automatically be subscribed to this topic")) 
+automatically be subscribed to this topic")
+    (subscribe-level (integer :tag "Subscribe Level" :value 1) "\
+If this topic parameter is set, when new groups are subscribed
+automatically under this topic (via the `subscribe' topic parameter)
+assign this level to the group, rather than the default level
+set in `gnus-level-default-subscribed'"))
   "Alist of topic parameters that are not also group parameters.
 
 Each entry has the form (NAME TYPE DOC), where NAME is the parameter
@@ -262,7 +278,7 @@ DOC is a documentation string for the parameter.")
                                (const :format "" ,(nth 0 entry))
                                ,(nth 1 entry)))
                       (append (reverse gnus-group-parameters-more)
-                              gnus-group-parameters 
+                              gnus-group-parameters
                               (if group
                                   gnus-extra-group-parameters
                                 gnus-extra-topic-parameters)))))
@@ -323,7 +339,7 @@ Set variables local to the group you are entering.
 If you want to turn threading off in `news.answers', you could put
 `(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.
+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
@@ -436,15 +452,15 @@ by ordinary scoring rules.")
                   (sexp :format "%v"
                         :hide-front-space t)) "\
 This entry controls the adaptive scoring.
-If it is `t', the default adaptive scoring rules will be used.  If it
+If it is t, the default adaptive scoring rules will be used.  If it
 is `ignore', no adaptive scoring will be performed on this group.  If
 it is a list, this list will be used as the adaptive scoring rules.
-If it isn't present, or is something other than `t' or `ignore', the
+If it isn't present, or is something other than t or `ignore', the
 default adaptive scoring rules will be used.  If you want to use
 adaptive scoring on most groups, you'd set `gnus-use-adaptive-scoring'
-to `t', and insert an `(adapt ignore)' in the groups where you do not
+to t, and insert an `(adapt ignore)' in the groups where you do not
 want adaptive scoring.  If you only want adaptive scoring in a few
-groups, you'd set `gnus-use-adaptive-scoring' to `nil', and insert
+groups, you'd set `gnus-use-adaptive-scoring' to nil, and insert
 `(adapt t)' in the score files of the groups where you want it.")
 
     (adapt-file (file :tag "Adapt-file") "\
@@ -642,7 +658,7 @@ When called interactively, FILE defaults to the current score file.
 This can be changed using the `\\[gnus-score-change-score-file]' command."
   (interactive (list gnus-current-score-file))
   (unless file
-    (error (format "No score file for %s" 
+    (error (format "No score file for %s"
                   (gnus-group-decoded-name gnus-newsgroup-name))))
   (let ((scores (gnus-score-load file))
        (types (mapcar (lambda (entry)