From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/64978 Path: news.gmane.org!not-for-mail From: Ted Zlatanov Newsgroups: gmane.emacs.gnus.general Subject: Re: closing all inactive server connections Date: Fri, 27 Jul 2007 13:06:14 -0400 Organization: =?utf-8?B?0KLQtdC+0LTQvtGAINCX0LvQsNGC0LDQvdC+0LI=?= @ Cienfuegos Message-ID: References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: sea.gmane.org 1185556039 19065 80.91.229.12 (27 Jul 2007 17:07:19 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 27 Jul 2007 17:07:19 +0000 (UTC) To: Ding Mailing List Original-X-From: ding-owner+M13488@lists.math.uh.edu Fri Jul 27 19:07:13 2007 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by lo.gmane.org with esmtp (Exim 4.50) id 1IETHU-0001uv-NJ for ding-account@gmane.org; Fri, 27 Jul 2007 19:07:13 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1IETHK-0005b6-Rf; Fri, 27 Jul 2007 12:07:02 -0500 Original-Received: from mx1.math.uh.edu ([129.7.128.32]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1IETHH-0005ab-RD for ding@lists.math.uh.edu; Fri, 27 Jul 2007 12:06:59 -0500 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx1.math.uh.edu with esmtp (Exim 4.67) (envelope-from ) id 1IETH9-0004Wm-Sv for ding@lists.math.uh.edu; Fri, 27 Jul 2007 12:06:59 -0500 Original-Received: from blockstar.com ([170.224.69.95] helo=mail.blockstar.com) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1IETH8-0002O6-00 for ; Fri, 27 Jul 2007 19:06:50 +0200 Original-Received: from tzz (c-24-14-57-89.hsd1.il.comcast.net [24.14.57.89]) by mail.blockstar.com (Postfix) with ESMTP id E4573418489 for ; Fri, 27 Jul 2007 10:12:16 -0700 (PDT) X-Face: bd.DQ~'29fIs`T_%O%C\g%6jW)yi[zuz6;d4V0`@y-~$#3P_Ng{@m+e4o<4P'#(_GJQ%TT= D}[Ep*b!\e,fBZ'j_+#"Ps?s2!4H2-Y"sx" Mail-Followup-To: Ding Mailing List In-Reply-To: (Ted Zlatanov's message of "Thu, 19 Jul 2007 09:46:43 -0400") User-Agent: Gnus/5.110007 (No Gnus v0.7) Emacs/22.1.50 (darwin) X-Spam-Score: -1.8 (-) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:64978 Archived-At: --=-=-= On Thu, 19 Jul 2007 09:46:43 -0400 Ted Zlatanov wrote: TZ> On Tue, 10 Jul 2007 15:54:58 -0400 Ted Zlatanov wrote: TZ> On Sat, 07 Jul 2007 11:59:40 -0400 Ted Zlatanov wrote: TZ> Very often, my company's VPN will disconnect and my server connections TZ> will hang. I have to manually go into the server buffer and hit `C' on TZ> each server to close the connection, then C-g to cancel the ensuing TZ> timeout. I have 8 servers (NNTP and IMAP) so this is slow and annoying. TZ> My questions are: TZ> 1) is there a way to close all the server connections without the TZ> connection timeout? TZ> I should mention that I know about gnus-server-close-all-servers, but it TZ> doesn't do all the server connections. For some reason the variable TZ> gnus-inserted-opened-servers is an incomplete list after a VPN TZ> outage. TZ> I figured it out, finally. gnus-server-close-all-servers works on the TZ> servers defined in my Gnus setup, but not on those I subscribed directly TZ> through newsrc.eld (by visiting a foreign news server and subscribing to TZ> individual newsgroups). I believe this is a bug, can anyone verify? Here's a version of gnus-server-close-all-servers that works on all the server in the buffer. I preserved the old (buggy I think) behavior with the `some' parameter. Can I commit this change? It works for me. Unfortunately there were tabs in the gnus-srvr.el file (aren't we supposed to use untabify?) so the patch comes out too long. Here's the method: (defun gnus-server-close-all-servers (&optional some) "Close all servers. With SOME, only the inserted opened ones will be closed." (interactive) (let ((servers (if some gnus-inserted-opened-servers gnus-server-alist))) (dolist (server servers) (gnus-server-close-server (car server))))) in case you don't want to slog through the patch. Thanks Ted --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=gnus-srvr.patch Index: gnus-srvr.el =================================================================== RCS file: /usr/local/cvsroot/gnus/lisp/gnus-srvr.el,v retrieving revision 7.29 diff -r7.29 gnus-srvr.el 254c254 < '(gnus-server-font-lock-keywords t))) --- > '(gnus-server-font-lock-keywords t))) 259,275c259,275 < (gnus-tmp-where (nth 1 method)) < (elem (assoc method gnus-opened-servers)) < (gnus-tmp-status < (cond < ((eq (nth 1 elem) 'denied) "(denied)") < ((eq (nth 1 elem) 'offline) "(offline)") < (t < (condition-case nil < (if (or (gnus-server-opened method) < (eq (nth 1 elem) 'ok)) < "(opened)" < "(closed)") < ((error) "(error)"))))) < (gnus-tmp-agent (if (and gnus-agent < (gnus-agent-method-p method)) < " (agent)" < ""))) --- > (gnus-tmp-where (nth 1 method)) > (elem (assoc method gnus-opened-servers)) > (gnus-tmp-status > (cond > ((eq (nth 1 elem) 'denied) "(denied)") > ((eq (nth 1 elem) 'offline) "(offline)") > (t > (condition-case nil > (if (or (gnus-server-opened method) > (eq (nth 1 elem) 'ok)) > "(opened)" > "(closed)") > ((error) "(error)"))))) > (gnus-tmp-agent (if (and gnus-agent > (gnus-agent-method-p method)) > " (agent)" > ""))) 298c298 < (gnus-carpal-setup-buffer 'server))))) --- > (gnus-carpal-setup-buffer 'server))))) 304,305c304,305 < (buffer-read-only nil) < done server op-ser) --- > (buffer-read-only nil) > done server op-ser) 311,314c311,314 < (push (cdar alist) done) < (setq server (pop alist)) < (when (and server (car server) (cdr server)) < (gnus-server-insert-server-line (car server) (cdr server)))) --- > (push (cdar alist) done) > (setq server (pop alist)) > (when (and server (car server) (cdr server)) > (gnus-server-insert-server-line (car server) (cdr server)))) 316c316 < (pop alist))) --- > (pop alist))) 321,327c321,327 < ;; Just ignore ephemeral servers. < (not (member (car open) gnus-ephemeral-servers))) < (push (car open) done) < (gnus-server-insert-server-line < (setq op-ser (format "%s:%s" (caar open) (nth 1 (car open)))) < (car open)) < (push (list op-ser (car open)) gnus-inserted-opened-servers)))) --- > ;; Just ignore ephemeral servers. > (not (member (car open) gnus-ephemeral-servers))) > (push (car open) done) > (gnus-server-insert-server-line > (setq op-ser (format "%s:%s" (caar open) (nth 1 (car open)))) > (car open)) > (push (list op-ser (car open)) gnus-inserted-opened-servers)))) 349,351c349,351 < (entry (assoc server gnus-server-alist)) < (oentry (assoc (gnus-server-to-method server) < gnus-opened-servers))) --- > (entry (assoc server gnus-server-alist)) > (oentry (assoc (gnus-server-to-method server) > gnus-opened-servers))) 353,355c353,355 < (gnus-dribble-enter < (concat "(gnus-server-set-info \"" server "\" '" < (gnus-prin1-to-string (cdr entry)) ")\n"))) --- > (gnus-dribble-enter > (concat "(gnus-server-set-info \"" server "\" '" > (gnus-prin1-to-string (cdr entry)) ")\n"))) 357,367c357,367 < ;; Buffer may be narrowed. < (save-restriction < (widen) < (when (gnus-server-goto-server server) < (gnus-delete-line)) < (if entry < (gnus-server-insert-server-line (car entry) (cdr entry)) < (gnus-server-insert-server-line < (format "%s:%s" (caar oentry) (nth 1 (car oentry))) < (car oentry))) < (gnus-server-position-point)))))) --- > ;; Buffer may be narrowed. > (save-restriction > (widen) > (when (gnus-server-goto-server server) > (gnus-delete-line)) > (if entry > (gnus-server-insert-server-line (car entry) (cdr entry)) > (gnus-server-insert-server-line > (format "%s:%s" (caar oentry) (nth 1 (car oentry))) > (car oentry))) > (gnus-server-position-point)))))) 374c374 < (gnus-prin1-to-string info) ")")) --- > (gnus-prin1-to-string info) ")")) 376,377c376,377 < (entry (assoc server gnus-server-alist)) < (cached (assoc server gnus-server-method-cache))) --- > (entry (assoc server gnus-server-alist)) > (cached (assoc server gnus-server-method-cache))) 379,380c379,380 < (setq gnus-server-method-cache < (delq cached gnus-server-method-cache))) --- > (setq gnus-server-method-cache > (delq cached gnus-server-method-cache))) 382,390c382,390 < (progn < ;; Remove the server from `gnus-opened-servers' since < ;; it has never been opened with the new `info' yet. < (gnus-opened-servers-remove (cdr entry)) < ;; Don't make a new Lisp object. < (setcar (cdr entry) (car info)) < (setcdr (cdr entry) (cdr info))) < (setq gnus-server-alist < (nconc gnus-server-alist (list (cons server info)))))))) --- > (progn > ;; Remove the server from `gnus-opened-servers' since > ;; it has never been opened with the new `info' yet. > (gnus-opened-servers-remove (cdr entry)) > ;; Don't make a new Lisp object. > (setcar (cdr entry) (car info)) > (setcdr (cdr entry) (cdr info))) > (setq gnus-server-alist > (nconc gnus-server-alist (list (cons server info)))))))) 407c407 < gnus-server-alist)) --- > gnus-server-alist)) 410,412c410,412 < (gnus-yes-or-no-p < (format "Kill all %s groups from this server? " < (length groups)))) --- > (gnus-yes-or-no-p > (format "Kill all %s groups from this server? " > (length groups)))) 414,419c414,419 < (setq gnus-newsrc-alist < (delq (assoc group gnus-newsrc-alist) < gnus-newsrc-alist)) < (when gnus-group-change-level-function < (funcall gnus-group-change-level-function < group gnus-level-killed 3))))) --- > (setq gnus-newsrc-alist > (delq (assoc group gnus-newsrc-alist) > gnus-newsrc-alist)) > (when gnus-group-change-level-function > (funcall gnus-group-change-level-function > group gnus-level-killed 3))))) 428,429c428,429 < (server (gnus-server-server-name)) < (killed (car gnus-server-killed-servers))) --- > (server (gnus-server-server-name)) > (killed (car gnus-server-killed-servers))) 431c431 < (setq gnus-server-alist (nconc gnus-server-alist (list killed))) --- > (setq gnus-server-alist (nconc gnus-server-alist (list killed))) 433,439c433,439 < (push killed gnus-server-alist) < (while (and (cdr alist) < (not (string= server (caadr alist)))) < (setq alist (cdr alist))) < (if alist < (setcdr alist (cons killed (cdr alist))) < (setq gnus-server-alist (list killed))))) --- > (push killed gnus-server-alist) > (while (and (cdr alist) > (not (string= server (caadr alist)))) > (setq alist (cdr alist))) > (if alist > (setcdr alist (cons killed (cdr alist))) > (setq gnus-server-alist (list killed))))) 465c465 < (setcar (cdr entry) status) --- > (setcar (cdr entry) status) 471c471 < gnus-opened-servers))) --- > gnus-opened-servers))) 481,482c481,482 < (or (gnus-open-server method) < (progn (message "Couldn't open %s" server) nil)) --- > (or (gnus-open-server method) > (progn (message "Couldn't open %s" server) nil)) 500c500 < (gnus-close-server method) --- > (gnus-close-server method) 511c511 < (gnus-close-server method) --- > (gnus-close-server method) 516,517c516,517 < (defun gnus-server-close-all-servers () < "Close all servers." --- > (defun gnus-server-close-all-servers (&optional some) > "Close all servers. With SOME, only the inserted opened ones will be closed." 519,520c519,523 < (dolist (server gnus-inserted-opened-servers) < (gnus-server-close-server (car server)))) --- > (let ((servers (if some > gnus-inserted-opened-servers > gnus-server-alist))) > (dolist (server servers) > (gnus-server-close-server (car server))))) 545c548 < (error "No server on the current line")) --- > (error "No server on the current line")) 556c559 < (gnus-server-to-method from))))) --- > (gnus-server-to-method from))))) 565,566c568,569 < gnus-valid-select-methods nil t)) < (read-string "Server name: "))) --- > gnus-valid-select-methods nil t)) > (read-string "Server name: "))) 577c580 < 'gnus-server (intern server)))) --- > 'gnus-server (intern server)))) 594,596c597,599 < (gnus-server-set-info ,server form) < (gnus-server-list-servers) < (gnus-server-position-point)) --- > (gnus-server-set-info ,server form) > (gnus-server-list-servers) > (gnus-server-position-point)) 604c607 < (error "Server %s can't scan" (car method)) --- > (error "Server %s can't scan" (car method)) 620c623 < (gnus-browse-foreign-server server buf) --- > (gnus-browse-foreign-server server buf) 622,624c625,627 < (set-buffer buf) < (gnus-server-update-server (gnus-server-server-name)) < (gnus-server-position-point))))) --- > (set-buffer buf) > (gnus-server-update-server (gnus-server-server-name)) > (gnus-server-position-point))))) 697,699c700,702 < (orig-select-method gnus-select-method) < (gnus-select-method method) < groups group) --- > (orig-select-method gnus-select-method) > (gnus-select-method method) > groups group) 709,711c712,714 < (gnus-message 6 "Reading active file...") < (gnus-request-list method) < (gnus-message 6 "Reading active file...done"))) --- > (gnus-message 6 "Reading active file...") > (gnus-request-list method) > (gnus-message 6 "Reading active file...done"))) 717,757c720,760 < (let ((cur (current-buffer))) < (goto-char (point-min)) < (unless (string= gnus-ignored-newsgroups "") < (delete-matching-lines gnus-ignored-newsgroups)) < ;; We treat NNTP as a special case to avoid problems with < ;; garbage group names like `"foo' that appear in some badly < ;; managed active files. -jh. < (if (eq (car method) 'nntp) < (while (not (eobp)) < (ignore-errors < (push (cons < (mm-string-as-unibyte < (buffer-substring < (point) < (progn < (skip-chars-forward "^ \t") < (point)))) < (let ((last (read cur))) < (cons (read cur) last))) < groups)) < (forward-line)) < (while (not (eobp)) < (ignore-errors < (push (cons < (mm-string-as-unibyte < (if (eq (char-after) ?\") < (read cur) < (let ((p (point)) (name "")) < (skip-chars-forward "^ \t\\\\") < (setq name (buffer-substring p (point))) < (while (eq (char-after) ?\\) < (setq p (1+ (point))) < (forward-char 2) < (skip-chars-forward "^ \t\\\\") < (setq name (concat name (buffer-substring < p (point))))) < name))) < (let ((last (read cur))) < (cons (read cur) last))) < groups)) < (forward-line))))) --- > (let ((cur (current-buffer))) > (goto-char (point-min)) > (unless (string= gnus-ignored-newsgroups "") > (delete-matching-lines gnus-ignored-newsgroups)) > ;; We treat NNTP as a special case to avoid problems with > ;; garbage group names like `"foo' that appear in some badly > ;; managed active files. -jh. > (if (eq (car method) 'nntp) > (while (not (eobp)) > (ignore-errors > (push (cons > (mm-string-as-unibyte > (buffer-substring > (point) > (progn > (skip-chars-forward "^ \t") > (point)))) > (let ((last (read cur))) > (cons (read cur) last))) > groups)) > (forward-line)) > (while (not (eobp)) > (ignore-errors > (push (cons > (mm-string-as-unibyte > (if (eq (char-after) ?\") > (read cur) > (let ((p (point)) (name "")) > (skip-chars-forward "^ \t\\\\") > (setq name (buffer-substring p (point))) > (while (eq (char-after) ?\\) > (setq p (1+ (point))) > (forward-char 2) > (skip-chars-forward "^ \t\\\\") > (setq name (concat name (buffer-substring > p (point))))) > name))) > (let ((last (read cur))) > (cons (read cur) last))) > groups)) > (forward-line))))) 759,760c762,763 < (lambda (l1 l2) < (string< (car l1) (car l2))))) --- > (lambda (l1 l2) > (string< (car l1) (car l2))))) 762,816c765,819 < (let* ((gnus-select-method orig-select-method) < (gnus-group-listed-groups < (mapcar (lambda (group) < (let ((name < (gnus-group-prefixed-name < (car group) method))) < (gnus-set-active name (cdr group)) < name)) < groups))) < (gnus-configure-windows 'group) < (funcall gnus-group-prepare-function < gnus-level-killed 'ignore 1 'ignore)) < (gnus-get-buffer-create gnus-browse-buffer) < (when gnus-carpal < (gnus-carpal-setup-buffer 'browse)) < (gnus-configure-windows 'browse) < (buffer-disable-undo) < (let ((buffer-read-only nil)) < (erase-buffer)) < (gnus-browse-mode) < (setq mode-line-buffer-identification < (list < (format < "Gnus: %%b {%s:%s}" (car method) (cadr method)))) < (let ((buffer-read-only nil) < name < (prefix (let ((gnus-select-method orig-select-method)) < (gnus-group-prefixed-name "" method)))) < (while (setq group (pop groups)) < (gnus-add-text-properties < (point) < (prog1 (1+ (point)) < (insert < (format "%c%7d: %s\n" < (let ((level < (if (string= prefix "") < (gnus-group-level (setq name (car group))) < (gnus-group-level < (concat prefix (setq name (car group))))))) < (cond < ((<= level gnus-level-subscribed) ? ) < ((<= level gnus-level-unsubscribed) ?U) < ((= level gnus-level-zombie) ?Z) < (t ?K))) < (max 0 (- (1+ (cddr group)) (cadr group))) < ;; Don't decode if name is ASCII < (if (and (fboundp 'detect-coding-string) < (eq (detect-coding-string name t) 'undecided)) < name < (mm-decode-coding-string < name < (inline (gnus-group-name-charset method name))))))) < (list 'gnus-group name) < ))) < (switch-to-buffer (current-buffer))) --- > (let* ((gnus-select-method orig-select-method) > (gnus-group-listed-groups > (mapcar (lambda (group) > (let ((name > (gnus-group-prefixed-name > (car group) method))) > (gnus-set-active name (cdr group)) > name)) > groups))) > (gnus-configure-windows 'group) > (funcall gnus-group-prepare-function > gnus-level-killed 'ignore 1 'ignore)) > (gnus-get-buffer-create gnus-browse-buffer) > (when gnus-carpal > (gnus-carpal-setup-buffer 'browse)) > (gnus-configure-windows 'browse) > (buffer-disable-undo) > (let ((buffer-read-only nil)) > (erase-buffer)) > (gnus-browse-mode) > (setq mode-line-buffer-identification > (list > (format > "Gnus: %%b {%s:%s}" (car method) (cadr method)))) > (let ((buffer-read-only nil) > name > (prefix (let ((gnus-select-method orig-select-method)) > (gnus-group-prefixed-name "" method)))) > (while (setq group (pop groups)) > (gnus-add-text-properties > (point) > (prog1 (1+ (point)) > (insert > (format "%c%7d: %s\n" > (let ((level > (if (string= prefix "") > (gnus-group-level (setq name (car group))) > (gnus-group-level > (concat prefix (setq name (car group))))))) > (cond > ((<= level gnus-level-subscribed) ? ) > ((<= level gnus-level-unsubscribed) ?U) > ((= level gnus-level-zombie) ?Z) > (t ?K))) > (max 0 (- (1+ (cddr group)) (cadr group))) > ;; Don't decode if name is ASCII > (if (and (fboundp 'detect-coding-string) > (eq (detect-coding-string name t) 'undecided)) > name > (mm-decode-coding-string > name > (inline (gnus-group-name-charset method name))))))) > (list 'gnus-group name) > ))) > (switch-to-buffer (current-buffer))) 858,863c861,866 < (gnus-ephemeral-group-p group)) < (unless (gnus-group-read-ephemeral-group < group gnus-browse-current-method nil < (cons (current-buffer) 'browse) < nil nil nil number) < (error "Couldn't enter %s" group)) --- > (gnus-ephemeral-group-p group)) > (unless (gnus-group-read-ephemeral-group > group gnus-browse-current-method nil > (cons (current-buffer) 'browse) > nil nil nil number) > (error "Couldn't enter %s" group)) 865c868 < (error "Couldn't enter %s" group))))) --- > (error "Couldn't enter %s" group))))) 891c894 < (arg (abs arg))) --- > (arg (abs arg))) 893,895c896,898 < (not (eobp)) < (gnus-browse-unsubscribe-group) < (zerop (gnus-browse-next-group ward))) --- > (not (eobp)) > (gnus-browse-unsubscribe-group) > (zerop (gnus-browse-next-group ward))) 907,909c910,912 < (concat (gnus-method-to-server-name gnus-browse-current-method) ":" < (or name < (match-string-no-properties 1))))))) --- > (concat (gnus-method-to-server-name gnus-browse-current-method) ":" > (or name > (match-string-no-properties 1))))))) 919,920c922,923 < (buffer-read-only nil) < group) --- > (buffer-read-only nil) > group) 925c928 < (setq sub t)) --- > (setq sub t)) 928c931 < (setq group (gnus-group-real-name group))) --- > (setq group (gnus-group-real-name group))) 930,954c933,957 < (progn < ;; Make sure the group has been properly removed before we < ;; subscribe to it. < (if (gnus-ephemeral-group-p group) < (gnus-kill-ephemeral-group group)) < ;; We need to discern between killed/zombie groups and < ;; just unsubscribed ones. < (gnus-group-change-level < (or (gnus-group-entry group) < (list t group gnus-level-default-subscribed < nil nil (if (gnus-server-equal < gnus-browse-current-method "native") < nil < (gnus-method-simplify < gnus-browse-current-method)))) < gnus-level-default-subscribed (gnus-group-level group) < (and (car (nth 1 gnus-newsrc-alist)) < (gnus-group-entry (car (nth 1 gnus-newsrc-alist)))) < (null (gnus-group-entry group))) < (delete-char 1) < (insert ? )) < (gnus-group-change-level < group gnus-level-unsubscribed gnus-level-default-subscribed) < (delete-char 1) < (insert ?U))) --- > (progn > ;; Make sure the group has been properly removed before we > ;; subscribe to it. > (if (gnus-ephemeral-group-p group) > (gnus-kill-ephemeral-group group)) > ;; We need to discern between killed/zombie groups and > ;; just unsubscribed ones. > (gnus-group-change-level > (or (gnus-group-entry group) > (list t group gnus-level-default-subscribed > nil nil (if (gnus-server-equal > gnus-browse-current-method "native") > nil > (gnus-method-simplify > gnus-browse-current-method)))) > gnus-level-default-subscribed (gnus-group-level group) > (and (car (nth 1 gnus-newsrc-alist)) > (gnus-group-entry (car (nth 1 gnus-newsrc-alist)))) > (null (gnus-group-entry group))) > (delete-char 1) > (insert ? )) > (gnus-group-change-level > group gnus-level-unsubscribed gnus-level-default-subscribed) > (delete-char 1) > (insert ?U))) 974c977 < (substitute-command-keys "\\\\[gnus-group-next-group]:Forward \\[gnus-group-prev-group]:Backward \\[gnus-browse-exit]:Exit \\[gnus-info-find-node]:Run Info \\[gnus-browse-describe-briefly]:This help"))) --- > (substitute-command-keys "\\\\[gnus-group-next-group]:Forward \\[gnus-group-prev-group]:Backward \\[gnus-browse-exit]:Exit \\[gnus-info-find-node]:Run Info \\[gnus-browse-describe-briefly]:This help"))) 983,984c986,987 < (gnus-get-function (gnus-server-to-method server) < 'request-regenerate) --- > (gnus-get-function (gnus-server-to-method server) > 'request-regenerate) 986c989 < (error "This back end doesn't support regeneration"))) --- > (error "This back end doesn't support regeneration"))) 991c994 < (gnus-message 5 "Requesting regeneration of %s...done" server) --- > (gnus-message 5 "Requesting regeneration of %s...done" server) 1010,1011c1013,1014 < (gnus-get-function (gnus-server-to-method server) < 'request-compact) --- > (gnus-get-function (gnus-server-to-method server) > 'request-compact) 1016c1019 < server) --- > server) 1020c1023 < (gnus-message 5 "Couldn't compact %s" server) --- > (gnus-message 5 "Couldn't compact %s" server) 1026c1029 < (and original (gnus-kill-buffer original)))))) --- > (and original (gnus-kill-buffer original)))))) --=-=-=--