Importing gnus-5.6.38
authorichikawa <ichikawa>
Thu, 20 Aug 1998 11:28:23 +0000 (11:28 +0000)
committerichikawa <ichikawa>
Thu, 20 Aug 1998 11:28:23 +0000 (11:28 +0000)
17 files changed:
lisp/ChangeLog
lisp/gnus-agent.el
lisp/gnus-art.el
lisp/gnus-cite.el
lisp/gnus-ems.el
lisp/gnus-group.el
lisp/gnus-int.el
lisp/gnus-msg.el
lisp/gnus-start.el
lisp/gnus-sum.el
lisp/gnus.el
lisp/message.el
lisp/messcompat.el
lisp/nneething.el
make.bat
texi/ChangeLog
texi/gnus.texi

index 18236cd..9b31bb0 100644 (file)
@@ -1,3 +1,57 @@
+Thu Aug 20 00:28:35 1998  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
+
+       * gnus.el: Gnus v5.6.38 is released.
+
+1998-08-20 00:02:50  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * message.el (message-mail): Doc fix.
+
+1998-08-19 23:22:02  Bill Pringlemeir  <bpringle@my-dejanews.com>
+
+       * messcompat.el (message-send-mail-function): Initialized from
+       send-mail-function. 
+
+1998-08-19 23:20:42  Martin Larose  <larosem@IRO.UMontreal.CA>
+
+       * message.el (message-send-coding-system): New variable.
+
+1998-08-19 19:00:37  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus-msg.el (gnus-configure-posting-styles): Reinstated most of
+       old code.
+
+       * gnus-start.el (gnus-save-newsrc-file): Use coding system.
+
+1980-06-08 03:53:56  Mike McEwan  <mike@lotusland.demon.co.uk>
+
+       * gnus-agent.el (gnus-agent-braid-nov): Go to right place. 
+
+1980-06-08 03:01:48  Shuhei KOBAYASHI  <shuhei-k@jaist.ac.jp>
+
+       * gnus-group.el (gnus-group-suspend): Fix.
+
+1998-08-18 00:25:11  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus-cite.el (gnus-cited-opened-text-button-line-format-alist):
+       New n spec.
+
+       * gnus-group.el (gnus-group-suspend): Use mapcar.
+
+1998-08-17 14:35:33  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus-ems.el (gnus-add-minor-mode): Set mode var.
+
+       * gnus-start.el (gnus-slave-mode): New function.
+
+       * gnus-msg.el (gnus-post-method): Work with current in nndraft. 
+
+1998-08-16 23:30:14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus-art.el (gnus-request-article-this-buffer): Allow recursive
+       selection of nneething groups.
+
+       * nneething.el (nneething-address): Renamed from directory.
+
 Sun Aug 16 18:59:41 1998  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
 
        * gnus.el: Gnus v5.6.37 is released.
index 4fc231f..b4af6ee 100644 (file)
@@ -801,7 +801,7 @@ the actual number of articles toggled is returned."
     (set-buffer nntp-server-buffer)
     (erase-buffer)
     (insert-file-contents file)
-    (goto-char (point-min))
+    (goto-char (point-max))
     (if (or (= (point-min) (point-max))
            (progn
              (forward-line -1)
index 49c3228..da95c7f 100644 (file)
@@ -2056,7 +2056,8 @@ If ALL-HEADERS is non-nil, no headers are hidden."
                  (unless (memq article gnus-newsgroup-sparse)
                    (gnus-error 1
                     "No such article (may have expired or been canceled)")))))
-         (if (or (eq result 'pseudo) (eq result 'nneething))
+         (if (or (eq result 'pseudo)
+                 (eq result 'nneething))
              (progn
                (save-excursion
                  (set-buffer summary-buffer)
@@ -2470,8 +2471,11 @@ If given a prefix, show the hidden text instead."
                               gnus-newsgroup-name)))
                  (when (and (eq (car method) 'nneething)
                             (vectorp header))
-                   (let ((dir (concat (file-name-as-directory (nth 1 method))
-                                      (mail-header-subject header))))
+                   (let ((dir (concat
+                               (file-name-as-directory
+                                (or (cadr (assq 'nneething-address method))
+                                    (nth 1 method)))
+                               (mail-header-subject header))))
                      (when (file-directory-p dir)
                        (setq article 'nneething)
                        (gnus-group-enter-directory dir))))))))
index 5710910..8866867 100644 (file)
@@ -284,6 +284,7 @@ This should make it easier to see who wrote what."
 (defvar gnus-cited-opened-text-button-line-format-alist
   `((?b (marker-position beg) ?d)
     (?e (marker-position end) ?d)
+    (?n (count-lines beg end) ?d)
     (?l (- end beg) ?d)))
 (defvar gnus-cited-opened-text-button-line-format-spec nil)
 (defvar gnus-cited-closed-text-button-line-format-alist
index 2f5a9f6..0e95762 100644 (file)
 (defun gnus-add-minor-mode (mode name map)
   (if (fboundp 'add-minor-mode)
       (add-minor-mode mode name map)
+    (set (make-local-variable mode) t)
     (unless (assq mode minor-mode-alist)
       (push `(,mode ,name) minor-mode-alist))
     (unless (assq mode minor-mode-map-alist)
index 029a2a0..66ffb0c 100644 (file)
@@ -773,6 +773,8 @@ The following commands are available:
   (add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t)
   (when gnus-use-undo
     (gnus-undo-mode 1))
+  (when gnus-slave
+    (gnus-slave-mode))
   (gnus-run-hooks 'gnus-group-mode-hook))
 
 (defun gnus-update-group-mark-positions ()
@@ -3163,11 +3165,11 @@ The hook gnus-suspend-gnus-hook is called before actually suspending."
   (interactive)
   (gnus-run-hooks 'gnus-suspend-gnus-hook)
   ;; Kill Gnus buffers except for group mode buffer.
-  (let* ((group-buf (get-buffer gnus-group-buffer)))
-    (apply (lambda (buf)
-            (unless (equal buf group-buf)
-              (kill-buffer buf)))
-          (gnus-buffers))
+  (let ((group-buf (get-buffer gnus-group-buffer)))
+    (mapcar (lambda (buf)
+             (unless (equal buf group-buf)
+               (kill-buffer buf)))
+           (gnus-buffers))
     (gnus-kill-gnus-frames)
     (when group-buf
       (bury-buffer group-buf)
index 6eff329..8143d0d 100644 (file)
@@ -308,7 +308,7 @@ If FETCH-OLD, retrieve all headers (or some subset thereof) in the group."
               (gnus-group-real-name group) article))))
 
 (defun gnus-request-update-mark (group article mark)
-  "Return the type (`post' or `mail') of GROUP (and ARTICLE)."
+  "Allow the backend to change the mark the user tries to put on an article."
   (let ((gnus-command-method (gnus-find-method-for-group group)))
     (if (not (gnus-check-backend-function
              'request-update-mark (car gnus-command-method)))
index bf00d4a..ef0ded7 100644 (file)
@@ -511,7 +511,8 @@ If SILENT, don't prompt the user."
           (not (eq (car group-method) 'nndraft))
           (not arg))
       group-method) 
-     (gnus-post-method
+     ((and gnus-post-method
+          (not (eq gnus-post-method 'current)))
       gnus-post-method)
      ;; Use the normal select method.
      (t gnus-select-method))))
@@ -1111,17 +1112,23 @@ this is a reply."
                ;; This is an ordinary variable.
                (set (make-local-variable variable) value-value)
               ;; This is either a body or a header to be inserted in the
-              ;; message
-              (when value-value
-                (let ((attr (car attribute)))
+              ;; message.
+             (when value-value
+               (let ((attr (car attribute)))
+                 (make-local-variable 'message-setup-hook)
                   (if (eq 'body attr)
-                      (save-excursion
-                        (goto-char (point-max))
-                        (insert value-value))
-                    (save-excursion
-                     (message-goto-eoh)
-                      (insert (if (stringp attr) attr (symbol-name attr))
-                              ": " value-value "\n"))))))))))))
+                     (add-hook 'message-setup-hook
+                               `(lambda ()
+                                  (save-excursion
+                                    (message-goto-body)
+                                    (insert ,value-value))))
+                   (add-hook
+                    'message-setup-hook
+                    `(lambda ()
+                       (save-excursion
+                         (message-goto-eoh)
+                         (insert ,(if (stringp attr) attr (symbol-name attr))
+                                 ": " ,value-value "\n"))))))))))))))
 
 ;;; Allow redefinition of functions.
 
index bcb7fa3..530aac6 100644 (file)
@@ -2279,7 +2279,8 @@ If FORCE is non-nil, the .newsrc file is read."
          (gnus-message 5 "Saving %s.eld..." gnus-current-startup-file)
          (gnus-gnus-to-quick-newsrc-format)
          (gnus-run-hooks 'gnus-save-quick-newsrc-hook)
-         (save-buffer)
+         (let ((coding-system-for-write gnus-startup-file-coding-system))
+           (save-buffer))
          (kill-buffer (current-buffer))
          (gnus-message
           5 "Saving %s.eld...done" gnus-current-startup-file))
@@ -2389,6 +2390,13 @@ If FORCE is non-nil, the .newsrc file is read."
 ;;; Slave functions.
 ;;;
 
+(defvar gnus-slave-mode nil)
+
+(defun gnus-slave-mode ()
+  "Minor mode for slave Gnusae."
+  (gnus-add-minor-mode 'gnus-slave-mode " Slave" (make-sparse-keymap))
+  (gnus-run-hooks 'gnus-slave-mode-hook))
+
 (defun gnus-slave-save-newsrc ()
   (save-excursion
     (set-buffer gnus-dribble-buffer)
index d01d28b..ce9638a 100644 (file)
@@ -3834,7 +3834,7 @@ If SELECT-ARTICLES, only select those articles from GROUP."
   (let* ((entry (gnus-gethash group gnus-newsrc-hashtb))
         ;;!!! Dirty hack; should be removed.
         (gnus-summary-ignore-duplicates
-         (if (eq (car (gnus-find-method-for-group group)) 'nnvirtual)
+         (if (eq (car (gnus-find-method-for-group group)) 'nnvirtual)
              t
            gnus-summary-ignore-duplicates))
         (info (nth 2 entry))
index b95f441..24f4d71 100644 (file)
@@ -250,7 +250,7 @@ is restarted, and sometimes reloaded."
   :link '(custom-manual "(gnus)Exiting Gnus")
   :group 'gnus)
 
-(defconst gnus-version-number "5.6.37"
+(defconst gnus-version-number "5.6.38"
   "Version number for this version of Gnus.")
 
 (defconst gnus-version (format "Gnus v%s" gnus-version-number)
@@ -1649,7 +1649,8 @@ gnus-newsrc-hashtb should be kept so that both hold the same information.")
       gnus-uu-decode-binhex gnus-uu-decode-uu-view
       gnus-uu-decode-uu-and-save-view gnus-uu-decode-unshar-view
       gnus-uu-decode-unshar-and-save-view gnus-uu-decode-save-view
-      gnus-uu-decode-binhex-view gnus-uu-unmark-thread)
+      gnus-uu-decode-binhex-view gnus-uu-unmark-thread
+      gnus-uu-mark-over)
      ("gnus-uu" gnus-uu-delete-work-dir gnus-quote-arg-for-sh-or-csh
       gnus-uu-unmark-thread)
      ("gnus-msg" (gnus-summary-send-map keymap)
index 2dc2193..0e8d373 100644 (file)
@@ -843,6 +843,9 @@ The cdr of ech entry is a function for applying the face to a region.")
   :group 'message-various
   :type 'hook)
 
+(defvar message-send-coding-system 'binary
+  "Coding system to encode outgoing mail.")
+
 ;;; Internal variables.
 
 (defvar message-buffer-list nil)
@@ -2056,7 +2059,7 @@ the user from the mailer."
          (set-buffer errbuf)
          (erase-buffer))))
     (let ((default-directory "/")
-         (coding-system-for-write 'binary))
+         (coding-system-for-write message-send-coding-system))
       (apply 'call-process-region
             (append (list (point-min) (point-max)
                           (if (boundp 'sendmail-program)
@@ -2104,7 +2107,7 @@ to find out how to use this."
   (run-hooks 'message-send-mail-hook)
   ;; send the message
   (case
-      (let ((coding-system-for-write 'binary))
+      (let ((coding-system-for-write message-send-coding-system))
        (apply
         'call-process-region 1 (point-max) message-qmail-inject-program
         nil nil nil
@@ -3233,7 +3236,8 @@ Headers already prepared in the buffer are not modified."
 (defun message-mail (&optional to subject
                               other-headers continue switch-function
                               yank-action send-actions)
-  "Start editing a mail message to be sent."
+  "Start editing a mail message to be sent.
+OTHER-HEADERS is an alist of header/value pairs."
   (interactive)
   (let ((message-this-is-mail t))
     (message-pop-to-buffer (message-buffer-name "mail" to))
index 337ab6f..153f76d 100644 (file)
@@ -82,6 +82,11 @@ these lines.")
 (defvar message-send-hook mail-send-hook
   "Hook run before sending messages.")
 
+(defvar message-send-mail-function send-mail-function
+  "Function to call to send the current buffer as mail.
+The headers should be delimited by a line whose contents match the
+variable `mail-header-separator'.")
+
 (provide 'messcompat)
 
 ;;; messcompat.el ends here
index 97f5d2f..7da5466 100644 (file)
@@ -64,7 +64,7 @@ If this variable is nil, no files will be excluded.")
 (defvoo nneething-map nil)
 (defvoo nneething-read-only nil)
 (defvoo nneething-active nil)
-(defvoo nneething-directory nil)
+(defvoo nneething-address nil)
 
 \f
 
@@ -158,8 +158,8 @@ If this variable is nil, no files will be excluded.")
   (nnheader-init-server-buffer)
   (if (nneething-server-opened server)
       t
-    (unless (assq 'nneething-directory defs)
-      (setq defs (append defs (list (list 'nneething-directory server)))))
+    (unless (assq 'nneething-address defs)
+      (setq defs (append defs (list (list 'nneething-address server)))))
     (nnoo-change-server 'nneething server defs)))
 
 \f
@@ -185,9 +185,9 @@ If this variable is nil, no files will be excluded.")
 
 (defun nneething-create-mapping ()
   ;; Read nneething-active and nneething-map.
-  (when (file-exists-p nneething-directory)
+  (when (file-exists-p nneething-address)
     (let ((map-file (nneething-map-file))
-         (files (directory-files nneething-directory))
+         (files (directory-files nneething-address))
          touched map-files)
       (when (file-exists-p map-file)
        (ignore-errors
@@ -344,7 +344,7 @@ If this variable is nil, no files will be excluded.")
 
 (defun nneething-file-name (article)
   "Return the file name of ARTICLE."
-  (concat (file-name-as-directory nneething-directory)
+  (concat (file-name-as-directory nneething-address)
          (if (numberp article)
              (cadr (assq article nneething-map))
            article)))
index 4a6b8a0..d183af9 100755 (executable)
--- a/make.bat
+++ b/make.bat
@@ -1,57 +1,57 @@
-@echo off\r
-\r
-rem Written by David Charlap <shamino@writeme.com>\r
-\r
-rem There are two catches, however.  The emacs.bat batch file may not exist\r
-rem in all distributions.  It is part of the Voelker build of Emacs 19.34\r
-rem (http://www.cs.washington.edu/homes/voelker/ntemacs.html).  If the user\r
-rem installs Gnus with some other build, he may have to replace calls to\r
-rem %1\emacs.bat with something else.\r
-rem \r
-rem Also, the emacs.bat file that Voelker ships does not accept more than 9\r
-rem parameters, so the attempts to compile the .texi files will fail.  To\r
-rem fix that (at least on NT.  I don't know about Win95), the following\r
-rem change should be made to emacs.bat:\r
-rem \r
-rem     %emacs_dir%\bin\emacs.exe %1 %2 %3 %4 %5 %6 %7 %8 %9\r
-rem \r
-rem should become\r
-rem \r
-rem     %emacs_dir%\bin\emacs.exe %*\r
-rem \r
-rem which will allow the batch file to accept an unlimited number of\r
-rem parameters.\r
-\r
-if "%1" == "" goto usage\r
-\r
-cd lisp\r
-call %1\bin\emacs.bat -batch -q -no-site-file -l ./dgnushack.el -f dgnushack-compile\r
-if not "%2" == "copy" goto info\r
-copy *.el* %1\lisp\r
-\r
-:info\r
-cd ..\texi\r
-call %1\bin\emacs.bat -batch -q -no-site-file gnus.texi -l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer\r
-call %1\bin\emacs.bat -batch -q -no-site-file message.texi -l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer\r
-if not "%2" == "copy" goto done\r
-copy gnus %1\info\r
-copy gnus-?? %1\info\r
-copy message %1\info\r
-\r
-:etc\r
-cd ..\etc\r
-copy gnus-tut.txt %1\etc\r
-\r
-:done\r
-cd ..\r
-goto end\r
-\r
-:usage\r
-echo Usage: make ^<emacs-dir^> [copy]\r
-echo.\r
-echo where: ^<emacs-dir^> is the directory you installed emacs in\r
-echo                    eg. d:\emacs\19.34\r
-echo        copy indicates that the compiled files should be copied to your\r
-echo             emacs lisp, info, and etc directories\r
-\r
-:end\r
+@echo off
+
+rem Written by David Charlap <shamino@writeme.com>
+
+rem There are two catches, however.  The emacs.bat batch file may not exist
+rem in all distributions.  It is part of the Voelker build of Emacs 19.34
+rem (http://www.cs.washington.edu/homes/voelker/ntemacs.html).  If the user
+rem installs Gnus with some other build, he may have to replace calls to
+rem %1\emacs.bat with something else.
+rem 
+rem Also, the emacs.bat file that Voelker ships does not accept more than 9
+rem parameters, so the attempts to compile the .texi files will fail.  To
+rem fix that (at least on NT.  I don't know about Win95), the following
+rem change should be made to emacs.bat:
+rem 
+rem     %emacs_dir%\bin\emacs.exe %1 %2 %3 %4 %5 %6 %7 %8 %9
+rem 
+rem should become
+rem 
+rem     %emacs_dir%\bin\emacs.exe %*
+rem 
+rem which will allow the batch file to accept an unlimited number of
+rem parameters.
+
+if "%1" == "" goto usage
+
+cd lisp
+call %1\bin\emacs.bat -batch -q -no-site-file -l ./dgnushack.el -f dgnushack-compile
+if not "%2" == "copy" goto info
+copy *.el* %1\lisp
+
+:info
+cd ..\texi
+call %1\bin\emacs.bat -batch -q -no-site-file gnus.texi -l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer
+call %1\bin\emacs.bat -batch -q -no-site-file message.texi -l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer
+if not "%2" == "copy" goto done
+copy gnus %1\info
+copy gnus-?? %1\info
+copy message %1\info
+
+:etc
+cd ..\etc
+copy gnus-tut.txt %1\etc
+
+:done
+cd ..
+goto end
+
+:usage
+echo Usage: make ^<emacs-dir^> [copy]
+echo.
+echo where: ^<emacs-dir^> is the directory you installed emacs in
+echo                    eg. d:\emacs\19.34
+echo        copy indicates that the compiled files should be copied to your
+echo             emacs lisp, info, and etc directories
+
+:end
index 1310f27..0524893 100644 (file)
@@ -1,3 +1,7 @@
+1998-08-18 00:30:05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus.texi (Article Hiding): Addition.
+
 1998-08-16 14:53:45  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
        * gnus.texi (NNTP): Reinstated.
index 1cafc50..e46846f 100644 (file)
@@ -6316,11 +6316,13 @@ specs are valid:
 
 @table @samp
 @item b
-Start point of the hidden text.
+Starting point of the hidden text.
 @item e
-End point of the hidden text.
+Ending point of the hidden text.
 @item l
-Length of the hidden text.
+Number of characters in the hidden region.
+@item n
+Number of lines of hidden text.
 @end table
 
 @item gnus-cited-lines-visible