*** empty log message ***
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Sat, 1 Jul 2000 21:10:57 +0000 (21:10 +0000)
committerLars Magne Ingebrigtsen <larsi@gnus.org>
Sat, 1 Jul 2000 21:10:57 +0000 (21:10 +0000)
Makefile.in
lisp/ChangeLog
lisp/gnus-ml.el [new file with mode: 0644]
lisp/gnus-start.el
lisp/gnus-sum.el
lisp/gnus.el
lisp/nnultimate.el

index a91fabc..4702536 100644 (file)
@@ -5,7 +5,7 @@ srcdir = @srcdir@
 
 @SET_MAKE@
 EMACS = @EMACS@
-XEMACS = xemacs21
+XEMACS = xemacs
 
 all: lick info
 
@@ -28,14 +28,14 @@ info:
 clean:
        rm -f */*.orig */*.rej *.orig *.rej
 
-xsome:
-       cd lisp && $(MAKE) EMACS="$(XEMACS)" some
-
 elclean:
        rm lisp/*.elc
 
 x:
-       make EMACS=xemacs21
+       $(MAKE) EMACS=$(XEMACS)
+
+xsome:
+       $(MAKE) EMACS="$(XEMACS)" some
 
 distclean:
        make clean
@@ -43,9 +43,6 @@ distclean:
        for i in lisp texi; do (cd $$i; make distclean); done
        rm -f config.log config.status config.cache Makefile
 
-osome:
-       make EMACS=xemacs21 some
-
 config.status: $(srcdir)/configure
        $(SHELL) ./config.status --recheck
 $(srcdir)/configure: $(srcdir)/configure.in
index 27e082d..2a1dfdf 100644 (file)
@@ -1,3 +1,17 @@
+2000-07-03 00:29:08  Julien Gilles  <julien.gilles@bcv01y01.vz.cit.alcatel.fr>
+
+       * gnus-ml.el: New file. 
+
+2000-07-02 16:11:25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * nnultimate.el (nnultimate-request-close): New function.
+
+       * gnus-start.el (gnus-clear-system): Clear nnmail-split-history. 
+
+2000-06-18  Norbert Koch  <norbert@s.netic.de>
+
+       * Makefile.in: Better support for xemacs builds
+
 Sun Jul  2 15:11:35 2000  Lars Magne Ingebrigtsen  <lmi@quimbies.gnus.org>
 
        * gnus.el: Gnus v5.8.7 is released.
diff --git a/lisp/gnus-ml.el b/lisp/gnus-ml.el
new file mode 100644 (file)
index 0000000..645f218
--- /dev/null
@@ -0,0 +1,162 @@
+;;; gnus-ml.el --- Mailing list minor mode for gnus
+
+;; Copyright (C) 2000 by Julien Gilles 
+
+;; Author: Julien Gilles  <jgilles@free.fr>
+;; Keywords: news
+
+;; This program is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program; if not, write to the Free Software
+;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+;;; Commentary:
+
+;; implement (small subset of) RFC 2369
+
+;;; Code:
+
+(require 'gnus)
+(eval-when-compile (require 'cl))
+
+;;; Mailing list minor mode
+
+(defvar gnus-mailing-list-mode nil
+  "Minor mode for providing mailing-list commands.")
+
+(defvar gnus-mailing-list-mode-map nil)
+
+(unless gnus-mailing-list-mode-map
+  (setq gnus-mailing-list-mode-map (make-sparse-keymap))
+
+  (gnus-define-keys gnus-mailing-list-mode-map
+    "\C-nh" gnus-mailing-list-help
+    "\C-ns" gnus-mailing-list-subscribe
+    "\C-nu" gnus-mailing-list-unsubscribe
+    "\C-np" gnus-mailing-list-post
+    "\C-no" gnus-mailing-list-owner
+    "\C-na" gnus-mailing-list-archive
+    ))
+
+(defun gnus-mailing-list-make-menu-bar ()
+  (unless (boundp 'gnus-mailing-list-menu)
+    (easy-menu-define
+     gnus-mailing-list-menu gnus-mailing-list-mode-map ""
+     '("Mailing-Lists"
+       ["Get help" gnus-mailing-list-help t]
+       ["Subscribe" gnus-mailing-list-subscribe t]
+       ["Unsubscribe" gnus-mailing-list-unsubscribe t]
+       ["Post a message" gnus-mailing-list-post t]
+       ["Mail to owner" gnus-mailing-list-owner t]
+       ["Browse archive" gnus-mailing-list-archive t]))))
+
+(defun turn-on-gnus-mailing-list-mode ()
+  (when (gnus-group-get-parameter group 'to-list)
+    (gnus-mailing-list-mode 1)))
+
+(defun gnus-mailing-list-mode (&optional arg)
+  "Minor mode for providing mailing-list commands.
+
+\\{gnus-mailing-list-mode-map}"
+  (interactive "P")
+  (when (eq major-mode 'gnus-summary-mode)
+    (when (set (make-local-variable 'gnus-mailing-list-mode)
+              (if (null arg) (not gnus-mailing-list-mode)
+                (> (prefix-numeric-value arg) 0)))
+      ;; Set up the menu.
+      (when (gnus-visual-p 'mailing-list-menu 'menu)
+       (gnus-mailing-list-make-menu-bar))
+      (gnus-add-minor-mode 'gnus-mailing-list-mode " Mailing-List" gnus-mailing-list-mode-map)
+      (gnus-run-hooks 'gnus-mailing-list-mode-hook))))
+
+;;; Commands
+
+(defun gnus-mailing-list-help ()
+  "Get help from mailing list server."
+  (interactive)  
+  (cond (list-help (gnus-mailing-list-message list-help))
+       (t (display-message 'no-log "no list-help in this group"))))
+
+(defun gnus-mailing-list-subscribe ()
+  "Subscribe"
+  (interactive)
+  (cond (list-subscribe (gnus-mailing-list-message list-subscribe))
+       (t (display-message 'no-log "no list-subscribe in this group"))))
+
+
+(defun gnus-mailing-list-unsubscribe ()
+  "Unsubscribe"
+  (interactive)
+  (cond (list-unsubscribe (gnus-mailing-list-message list-unsubscribe))
+       (t (display-message 'no-log "no list-unsubscribe in this group"))))
+
+(defun gnus-mailing-list-post ()
+  "Post message (really useful ?)"
+  (interactive)
+  (cond (list-post (gnus-mailing-list-message list-post))
+       (t (display-message 'no-log "no list-post in this group")))
+  )
+
+(defun gnus-mailing-list-owner ()
+  "Mail to the owner"
+  (interactive)
+  (cond (list-owner (gnus-mailing-list-message list-owner))
+       (t (display-message 'no-log "no list-owner in this group")))
+  )
+
+(defun gnus-mailing-list-archive ()
+  "Browse archive"
+  (interactive)
+  (cond (list-archive (gnus-mailing-list-message list-archive))
+       (t (display-message 'no-log "no list-owner in this group")))
+  )
+
+;;; Utility functions
+
+(defun gnus-xmas-mailing-list-menu-add ()
+  (gnus-xmas-menu-add mailing-list
+    gnus-mailing-list-menu))
+
+(add-hook 'gnus-mailing-list-mode-hook 'gnus-xmas-mailing-list-menu-add)
+
+(defun gnus-mailing-list-message (address)
+  ""
+  (let ((mailto  "")
+       (to ())
+       (subject "None")
+       (body "")
+       )
+    (cond 
+     ((string-match "<mailto:\\([^>]*\\)>" address)
+      (let ((args (match-string 1 address)))
+       (cond                                   ; with param
+        ((string-match "\\(.*\\)\\?\\(.*\\)" args)
+         (setq mailto (match-string 1 args))
+         (let ((param (match-string 2 args)))
+           (if (string-match "subject=\\([^&]*\\)" param)
+               (setq subject (match-string 1 param)))
+           (if (string-match "body=\\([^&]*\\)" param)
+               (setq body (match-string 1 param)))
+           (if (string-match "to=\\([^&]*\\)" param)
+               (push (match-string 1 param) to))
+           ))   
+        (t (setq mailto args)))))                      ; without param
+     
+     ; other case <http://... to be done.
+     (t nil))
+    (gnus-setup-message 'message (message-mail mailto subject))
+    (insert body)
+    ))
+
+(provide 'gnus-ml)
+
+;;; gnus-ml.el ends here
index 70edf24..d409619 100644 (file)
@@ -621,6 +621,7 @@ the first newsgroup."
        gnus-newsgroup-unreads nil
        nnoo-state-alist nil
        gnus-current-select-method nil
+       nnmail-split-history nil
        gnus-ephemeral-servers nil)
   (gnus-shutdown 'gnus)
   ;; Kill the startup file.
index 1570b81..b35c3a6 100644 (file)
@@ -9188,7 +9188,9 @@ If REVERSE, save parts that do not match TYPE."
                    (or
                     (mail-content-type-get
                      (mm-handle-disposition handle) 'filename)
-                    (concat gnus-newsgroup-name "." gnus-current-article)))
+                    (concat gnus-newsgroup-name
+                            "." (number-to-string
+                                 (cdr gnus-article-current)))))
                   dir)))
        (unless (file-exists-p file)
          (mm-save-part-to-file handle file))))))
index 3caec43..210a3bc 100644 (file)
@@ -257,7 +257,7 @@ is restarted, and sometimes reloaded."
   :link '(custom-manual "(gnus)Exiting Gnus")
   :group 'gnus)
 
-(defconst gnus-version-number "5.8.7"
+(defconst gnus-version-number "5.8.8"
   "Version number for this version of Gnus.")
 
 (defconst gnus-version (format "Gnus v%s" gnus-version-number)
index bf8fcb9..734ab71 100644 (file)
        "211 %d %d %d %s\n" (cadr elem) 1 (cadr elem)
        (prin1-to-string group))))))
 
+(deffoo nnultimate-request-close ()
+  (setq nnultimate-groups-alist nil
+       nnultimate-groups nil))
+
 (deffoo nnultimate-request-article (article &optional group server buffer)
   (nnultimate-possibly-change-server group server)
   (let ((contents (cdr (assq article nnultimate-articles))))