]> code.delx.au - gnu-emacs/blobdiff - lisp/gnus.el
Delete the hilit19 support--it doesn't work.
[gnu-emacs] / lisp / gnus.el
index b0d843a2cdf1770bcd3bdf6082e3553f43bb0771..efbf496ce6f9257d266e08eba55fb0a17a938ba1 100644 (file)
@@ -1,5 +1,6 @@
 ;;; gnus.el --- a newsreader for GNU Emacs
-;; Copyright (C) 1987,88,89,90,93,94,95 Free Software Foundation, Inc.
+
+;; Copyright (C) 1987,88,89,90,93,94,95,96 Free Software Foundation, Inc.
 
 ;; Author: Masanobu UMEDA <umerin@flab.flab.fujitsu.junet>
 ;;     Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
@@ -18,8 +19,9 @@
 ;; GNU General Public License for more details.
 
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to
-;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+;; along with GNU Emacs; see the file COPYING.  If not, write to the
+;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
 
 ;;; Commentary:
 
@@ -708,6 +710,9 @@ beginning of a line.")
     (article ([summary 0.25 point] 
              (if gnus-carpal [summary-carpal 4]) 
              [article 1.0]))
+    (pipe ([summary 0.25 point] 
+          (if gnus-carpal [summary-carpal 4]) 
+          [pipe 1.0]))
     (server ([server 1.0 point]
             (if gnus-carpal [server-carpal 2])))
     (browse ([browse 1.0 point]
@@ -755,6 +760,7 @@ buffer configuration.")
     (article . gnus-article-buffer)
     (server . gnus-server-buffer)
     (browse . "*Gnus Browse Server*")
+    (pipe . "*Shell Command Output*")
     (edit-group . gnus-group-edit-buffer)
     (edit-server . gnus-server-edit-buffer)
     (group-carpal . gnus-carpal-group-buffer)
@@ -3279,6 +3285,11 @@ As opposed to `gnus', this command will not connect to the local server."
     (gnus (or arg (1- gnus-level-default-subscribed)) t)
     (setq gnus-tmp-prev-perm perm)))
 
+;;;###autoload
+(defun read-news (&optional arg dont-connect)
+  "Read network news.  This is an alias for the `gnus' command."
+  (gnus arg dont-connect))
+
 ;;;###autoload
 (defun gnus (&optional arg dont-connect)
   "Read network news.
@@ -4257,7 +4268,9 @@ ADDRESS."
 (defun gnus-group-make-help-group ()
   "Create the Gnus documentation group."
   (interactive)
-  (let ((path (cons (concat installation-directory "etc/") load-path))
+  (let ((path (if installation-directory
+                 (cons (concat installation-directory "etc/") load-path)
+               (cons data-directory load-path)))
        (name (gnus-group-prefixed-name "gnus-help" '(nndoc "gnus-help")))
        file)
     (and (gnus-gethash name gnus-newsrc-hashtb)
@@ -6493,7 +6506,7 @@ Unscored articles will be counted as having a score of zero."
   "Prepare summary buffer from THREADS and indentation LEVEL.  
 THREADS is either a list of `(PARENT [(CHILD1 [(GRANDCHILD ...]...) ...])'  
 or a straight list of headers."
-  (message "Generating summary...")
+  (gnus-message 5 "Generating summary...")
   (let ((level 0)
        thread header number subject stack state gnus-tmp-gathered)
     (if (vectorp (car threads))
@@ -6619,7 +6632,7 @@ or a straight list of headers."
            (setq stack (cons (cons (max 0 level) (nthcdr 1 thread)) stack)))
        (setq level (1+ level))
        (setq threads (cdr (car thread))))))
-  (message "Generating summary...done"))
+  (gnus-message 5 "Generating summary...done"))
 
 
 
@@ -6868,12 +6881,13 @@ If READ-ALL is non-nil, all articles in the group are selected."
       (cond ((or (eq 'tick (car prev)) (eq 'dormant (car prev)))
             ;; Make sure that all ticked articles are a subset of the
             ;; unread/unselected articles.
-            (while m
-              (if (or (memq (car m) gnus-newsgroup-unreads)
-                      (memq (car m) gnus-newsgroup-unselected))
-                  (setq prev m)
-                (setcdr prev (cdr m)))
-              (setq m (cdr m))))
+            ;;(while m
+            ;;  (if (or (memq (car m) gnus-newsgroup-unreads)
+            ;;  (memq (car m) gnus-newsgroup-unselected))
+            ;; (setq prev m)
+            ;; (setcdr prev (cdr m)))
+            ;; (setq m (cdr m)))
+            )
            ((eq 'score (car prev))
             ;; Scored articles should be a subset of
             ;; unread/unselected articles. 
@@ -10408,7 +10422,8 @@ pipe those articles instead."
   (interactive "P")
   (gnus-set-global-variables)
   (let ((gnus-default-article-saver 'gnus-summary-save-in-pipe))
-    (gnus-summary-save-article arg)))
+    (gnus-summary-save-article arg))
+  (gnus-configure-windows 'pipe))
 
 (defun gnus-summary-save-article-mail (&optional arg)
   "Append the current article to an mail file.
@@ -11945,6 +11960,8 @@ is returned insted of the status string."
             (nth 1 method) accept-function last)))
 
 (defun gnus-request-accept-article (group &optional last)
+  (goto-char (point-max))
+  (or (bolp) (insert "\n"))
   (let ((func (if (symbolp group) group
                (car (gnus-find-method-for-group group)))))
     (funcall (intern (format "%s-request-accept-article" func))
@@ -12704,6 +12721,12 @@ Returns whether the updating was successful."
       (while (and dormant (< (car dormant) (car active)))
        (setq dormant (cdr dormant)))
       (setq unread (sort (append unselected unread) '<))
+      ;; Weed out duplicates.
+      (let ((un unread))
+       (while (cdr un)
+         (if (eq (car un) (car (cdr un)))
+             (setcdr un (cdr (cdr un)))
+           (setq un (cdr un)))))
       ;; Compute the ranges of read articles by looking at the list of
       ;; unread articles.  
       (while unread
@@ -13402,6 +13425,8 @@ If FORCE is non-nil, the .newsrc file is read."
                                 gnus-current-startup-file)))
             ;; Quickly loadable .newsrc.
             (set-buffer (get-buffer-create " *Gnus-newsrc*"))
+            (make-local-variable 'version-control)
+            (setq version-control 'never)
             (setq buffer-file-name (concat gnus-current-startup-file ".eld"))
             (gnus-add-current-to-buffer-list)
             (buffer-disable-undo (current-buffer))
@@ -13476,6 +13501,8 @@ If FORCE is non-nil, the .newsrc file is read."
                        (if ranges (insert ","))))))
              (insert "\n")))
        (setq newsrc (cdr newsrc)))
+      (make-local-variable 'version-control)
+      (setq version-control 'never)
       ;; It has been reported that sometime the modtime on the .newsrc
       ;; file seems to be off. We really do want to overwrite it, so
       ;; we clear the modtime here before saving. It's a bit odd,