From 5a3d773c46d46b7eb93e7a8203c4989af58ec96b Mon Sep 17 00:00:00 2001 From: ichikawa Date: Thu, 20 Aug 1998 13:34:04 +0000 Subject: [PATCH] Sync up with gnus-5.6.38 --- ChangeLog | 6 +++ lisp/ChangeLog | 54 +++++++++++++++++++++++++ lisp/gnus-agent.el | 4 +- lisp/gnus-art.el | 10 +++-- lisp/gnus-cite.el | 1 + lisp/gnus-ems.el | 1 + lisp/gnus-group.el | 12 +++--- lisp/gnus-int.el | 2 +- lisp/gnus-msg.el | 29 ++++++++----- lisp/gnus-start.el | 7 ++++ lisp/gnus-sum.el | 2 +- lisp/gnus.el | 7 ++-- lisp/message.el | 10 +++-- lisp/messcompat.el | 5 +++ lisp/nneething.el | 12 +++--- make.bat | 114 ++++++++++++++++++++++++++-------------------------- texi/ChangeLog | 4 ++ texi/gnus.texi | 8 ++-- 18 files changed, 193 insertions(+), 95 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6813b60..93cec82 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +1998-08-20 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.14. + + * Sync up with Gnus 5.6.38. + 1998-08-20 Keiichi Suzuki * lisp/message.el (message-frames): New custom group. diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 18236cd..9b31bb0 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,57 @@ +Thu Aug 20 00:28:35 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.38 is released. + +1998-08-20 00:02:50 Lars Magne Ingebrigtsen + + * message.el (message-mail): Doc fix. + +1998-08-19 23:22:02 Bill Pringlemeir + + * messcompat.el (message-send-mail-function): Initialized from + send-mail-function. + +1998-08-19 23:20:42 Martin Larose + + * message.el (message-send-coding-system): New variable. + +1998-08-19 19:00:37 Lars Magne Ingebrigtsen + + * 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 + + * gnus-agent.el (gnus-agent-braid-nov): Go to right place. + +1980-06-08 03:01:48 Shuhei KOBAYASHI + + * gnus-group.el (gnus-group-suspend): Fix. + +1998-08-18 00:25:11 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * 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 * gnus.el: Gnus v5.6.37 is released. diff --git a/lisp/gnus-agent.el b/lisp/gnus-agent.el index 9e0d6ba..ef8fce9 100644 --- a/lisp/gnus-agent.el +++ b/lisp/gnus-agent.el @@ -811,8 +811,8 @@ the actual number of articles toggled is returned." (goto-char (point-min)) (set-buffer nntp-server-buffer) (erase-buffer) - (nnheader-insert-file-contents file) - (goto-char (point-min)) + (insert-file-contents file) + (goto-char (point-max)) (if (or (= (point-min) (point-max)) (progn (forward-line -1) diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index a155b4d..6f4d9bf 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -2040,7 +2040,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) @@ -2458,8 +2459,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)))))))) diff --git a/lisp/gnus-cite.el b/lisp/gnus-cite.el index 5710910..8866867 100644 --- a/lisp/gnus-cite.el +++ b/lisp/gnus-cite.el @@ -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 diff --git a/lisp/gnus-ems.el b/lisp/gnus-ems.el index 203c863..a29494b 100644 --- a/lisp/gnus-ems.el +++ b/lisp/gnus-ems.el @@ -276,6 +276,7 @@ (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) diff --git a/lisp/gnus-group.el b/lisp/gnus-group.el index 029a2a0..66ffb0c 100644 --- a/lisp/gnus-group.el +++ b/lisp/gnus-group.el @@ -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) diff --git a/lisp/gnus-int.el b/lisp/gnus-int.el index 6eff329..8143d0d 100644 --- a/lisp/gnus-int.el +++ b/lisp/gnus-int.el @@ -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))) diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index 1a0666a..c7bc00d 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -514,7 +514,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)))) @@ -1068,17 +1069,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. diff --git a/lisp/gnus-start.el b/lisp/gnus-start.el index 536ea29..60c936d 100644 --- a/lisp/gnus-start.el +++ b/lisp/gnus-start.el @@ -2388,6 +2388,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) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 1fcba5b..1bd7981 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -3842,7 +3842,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)) diff --git a/lisp/gnus.el b/lisp/gnus.el index 510fb40..1241c18 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -250,11 +250,11 @@ is restarted, and sometimes reloaded." :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) -(defconst gnus-version-number "6.8.13" +(defconst gnus-version-number "6.8.14" "Version number for this version of gnus.") (defconst gnus-version - (format "Semi-gnus %s (based on Gnus 5.6.37; for SEMI 1.8, FLIM 1.8/1.9)" + (format "Semi-gnus %s (based on Gnus 5.6.38; for SEMI 1.8, FLIM 1.8/1.9)" gnus-version-number) "Version string for this version of gnus.") @@ -1650,7 +1650,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) diff --git a/lisp/message.el b/lisp/message.el index ab9ef0a..1e49daa 100644 --- a/lisp/message.el +++ b/lisp/message.el @@ -873,6 +873,9 @@ The cdr of ech entry is a function for applying the face to a region.") (const :tag "always" t) (const :tag "ask" ask))) +(defvar message-send-coding-system 'binary + "Coding system to encode outgoing mail.") + ;;; Internal variables. (defvar message-buffer-list nil) @@ -2123,7 +2126,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) @@ -2171,7 +2174,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 @@ -3481,7 +3484,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)) diff --git a/lisp/messcompat.el b/lisp/messcompat.el index 337ab6f..153f76d 100644 --- a/lisp/messcompat.el +++ b/lisp/messcompat.el @@ -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 diff --git a/lisp/nneething.el b/lisp/nneething.el index 97f5d2f..7da5466 100644 --- a/lisp/nneething.el +++ b/lisp/nneething.el @@ -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) @@ -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))) @@ -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))) diff --git a/make.bat b/make.bat index 4a6b8a0..d183af9 100755 --- a/make.bat +++ b/make.bat @@ -1,57 +1,57 @@ -@echo off - -rem Written by David Charlap - -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 ^ [copy] -echo. -echo where: ^ 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 +@echo off + +rem Written by David Charlap + +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 ^ [copy] +echo. +echo where: ^ 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 diff --git a/texi/ChangeLog b/texi/ChangeLog index 1310f27..0524893 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,7 @@ +1998-08-18 00:30:05 Lars Magne Ingebrigtsen + + * gnus.texi (Article Hiding): Addition. + 1998-08-16 14:53:45 Lars Magne Ingebrigtsen * gnus.texi (NNTP): Reinstated. diff --git a/texi/gnus.texi b/texi/gnus.texi index a22618c..b51f9d0 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -6327,11 +6327,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 -- 1.7.10.4