;ELC   
;;; compiled by amu@tux.mit.edu on Sun Nov 15 14:42:24 1998
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/gnus-5.6.44/lisp/gnus-srvr.el
;;; emacs version 19.34.1.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`gnus-srvr.el' was compiled for Emacs 19.29 or later"))


(byte-code "!!!!!" [require gnus gnus-spec gnus-group gnus-int gnus-range] 2)
#@41 Hook run in `gnus-server-mode' buffers.
(defvar gnus-server-mode-hook nil (#$ . 593))
#@193 Format of server lines.
It works along the same lines as a normal formatting string,
with some simple extensions.

The following specs are understood:

%h backend
%n name
%w address
%s status
(defconst gnus-server-line-format "     {%(%h:%w%)} %s\n" (#$ . 686))
#@52 The format specification for the server mode line.
(defvar gnus-server-mode-line-format "Gnus: %%b" (#$ . 954))
#@43 *Hook run when exiting the server buffer.
(defvar gnus-server-exit-hook nil (#$ . -1072))
(byte-code "! B! B!! B!. B!; 	B!H \nBB" [boundp gnus-inserted-opened-servers nil current-load-list gnus-server-line-format-alist ((104 gnus-tmp-how 115) (110 gnus-tmp-name 115) (119 gnus-tmp-where 115) (115 gnus-tmp-status 115)) gnus-server-mode-line-format-alist ((83 gnus-tmp-news-server 115) (77 gnus-tmp-news-method 115) (117 gnus-tmp-user-defined 115)) gnus-server-line-format-spec gnus-server-mode-line-format-spec gnus-server-killed-servers gnus-server-mode-map] 2)
#@55 *Hook run after the creation of the server mode menu.
(defvar gnus-server-menu-hook nil (#$ . -1698))
(defalias 'gnus-server-make-menu-bar #[nil "!!?C ! B#\n$!. \fB#\n$!" [gnus-turn-off-edit-menu server boundp gnus-server-server-menu nil current-load-list put variable-documentation "" easy-menu-do-define gnus-server-mode-map ("Server" ["Add" gnus-server-add-server t] ["Browse" gnus-server-read-server t] ["Scan" gnus-server-scan-server t] ["List" gnus-server-list-servers t] ["Kill" gnus-server-kill-server t] ["Yank" gnus-server-yank-server t] ["Copy" gnus-server-copy-server t] ["Edit" gnus-server-edit-server t] ["Regenerate" gnus-server-regenerate-server t] ["Exit" gnus-server-exit t]) gnus-server-connections-menu ("Connections" ["Open" gnus-server-open-server t] ["Close" gnus-server-close-server t] ["Deny" gnus-server-deny-server t] "---" ["Open All" gnus-server-open-all-servers t] ["Close All" gnus-server-close-all-servers t] ["Reset All" gnus-server-remove-denials t]) gnus-run-hooks gnus-server-menu-hook] 5])
(byte-code "! B#	\"  	!\"" [boundp gnus-server-mode-map nil current-load-list put gnus-server-mode mode-class special make-sparse-keymap suppress-keymap gnus-define-keys-1 (" " gnus-server-read-server "" gnus-server-read-server gnus-mouse-2 gnus-server-pick-server "q" gnus-server-exit "l" gnus-server-list-servers "k" gnus-server-kill-server "y" gnus-server-yank-server "c" gnus-server-copy-server "a" gnus-server-add-server "e" gnus-server-edit-server "s" gnus-server-scan-server "O" gnus-server-open-server "" gnus-server-open-all-servers "C" gnus-server-close-server "" gnus-server-close-all-servers "D" gnus-server-deny-server "R" gnus-server-remove-denials "g" gnus-server-regenerate-server "	" gnus-info-find-node "" gnus-bug)] 4)
#@268 Major mode for listing and editing servers.

All normal editing commands are switched off.
\<gnus-server-mode-map>
For more in-depth information on this mode, read the manual
(`\[gnus-info-find-node]').

The following commands are available:

\{gnus-server-mode-map}
(defalias 'gnus-server-mode #[nil "\"\n    	 \f!p!!" [gnus-visual-p server-menu menu gnus-server-make-menu-bar kill-all-local-variables gnus-simplify-mode-line gnus-server-mode major-mode "Server" mode-name gnus-set-default-directory nil mode-line-process use-local-map gnus-server-mode-map buffer-disable-undo t truncate-lines buffer-read-only gnus-run-hooks gnus-server-mode-hook] 3 (#$ . 3549) nil])
(defalias 'gnus-server-insert-server-line #[(gnus-tmp-name method) "@A@\f\"A@= ǂ+ !& A@=* ʂ+ \fy``T!!D#," [method gnus-tmp-how gnus-tmp-where assoc gnus-opened-servers elem denied "(denied)" gnus-server-opened ok "(opened)" "(closed)" gnus-tmp-status 0 gnus-add-text-properties eval gnus-server-line-format-spec gnus-server intern gnus-tmp-name] 7])
#@27 Set up the server buffer.
(defalias 'gnus-enter-server-buffer #[nil " ! " [gnus-server-setup-buffer gnus-configure-windows server gnus-server-prepare] 2 (#$ . 4642)])
#@31 Initialize the server buffer.
(defalias 'gnus-server-setup-buffer #[nil "	!? 	!q \f !)" [get-buffer gnus-server-buffer gnus-get-buffer-create gnus-server-mode gnus-carpal gnus-carpal-setup-buffer server] 2 (#$ . 4822)])
(defalias 'gnus-server-prepare #[nil "!\"\fŉ	\n j @AV @ABA@V \n@V \nAV \n@\nA\"@A! A! 	 	@@ 	@@ 	@@B	@@@	@@A@#	@@\"	@@DB	A	o .eb " [gnus-set-format server-mode server t gnus-server-alist nil gnus-opened-servers op-ser done opened buffer-read-only alist erase-buffer gnus-inserted-opened-servers gnus-server-insert-server-line gnus-ephemeral-servers format "%s:%s" gnus-server-position-point] 7])
(defalias 'gnus-server-server-name #[nil " \" !)" [get-text-property gnus-point-at-bol gnus-server server symbol-name] 4])
(byte-code "\"B" [defalias gnus-server-position-point gnus-goto-colon "*Gnus edit server*" gnus-server-edit-buffer current-load-list] 3)
(defalias 'gnus-server-update-server #[(server) "q\f\"\f!\"	( \fA!ΰ!2 	k ~\f!E y`y`|V @A\"h 	@@	@A@#	@\" )," [gnus-server-buffer nil buffer-read-only assoc server gnus-server-alist entry gnus-server-to-method gnus-opened-servers oentry gnus-dribble-enter "(gnus-server-set-info \"" "\" '" prin1-to-string ")\n" gnus-server-goto-server 0 1 gnus-server-insert-server-line format "%s:%s" gnus-server-position-point] 6])
(defalias 'gnus-server-set-info #[(server info) "5 	5 	!ư!	A@\"	* 		4 	BC*" [server info gnus-dribble-enter "(gnus-server-set-info \"" "\" '" prin1-to-string ")" assoc gnus-server-alist entry] 7])
#@38 Kill the server on the current line.
(defalias 'gnus-server-kill-server #[(server) "	! 	 	\" !	\"# 	\" \ny`y`|)	\"B@\" " [gnus-server-goto-server server error "No such server: %s" "No server on the current line" assoc gnus-server-alist "Read-only server %s" gnus-dribble-touch nil buffer-read-only 0 1 gnus-server-killed-servers delq gnus-server-position-point] 3 (#$ . 6552) (list (gnus-server-server-name))])
#@36 Yank the previously killed server.
(defalias 'gnus-server-yank-server #[nil " ! @ C] @@/ B] AI A@@I A1 Z AB] C@!A +" [gnus-server-killed-servers error "No killed servers to be yanked" gnus-server-alist gnus-server-server-name killed server alist gnus-server-update-server gnus-server-position-point] 4 (#$ . 7014) nil])
#@29 Return to the group buffer.
(defalias 'gnus-server-exit #[nil "!p!\"" [gnus-run-hooks gnus-server-exit-hook kill-buffer gnus-configure-windows group t] 3 (#$ . 7407) nil])
#@29 List all available servers.
(defalias 'gnus-server-list-servers #[nil "  	 	! dby )" [gnus-server-server-name cur gnus-server-prepare gnus-server-goto-server -1 gnus-server-position-point] 2 (#$ . 7594) nil])
#@26 Make METHOD have STATUS.
(defalias 'gnus-server-set-status #[(method status) "	\n\" A\f 	\fD\nB)" [assoc method gnus-opened-servers entry status] 4 (#$ . 7824)])
#@48 Remove METHOD from the list of opened servers.
(defalias 'gnus-opened-servers-remove #[(method) "\n\"\"" [delq assoc method gnus-opened-servers] 4 (#$ . 8004)])
#@26 Force an open of SERVER.
(defalias 'gnus-server-open-server #[(server) "	! 	\"\n\"\n! 	\"	! )" [gnus-server-to-method server method error "No such server: %s" gnus-server-set-status ok gnus-open-server message "Couldn't open %s" nil gnus-server-update-server gnus-server-position-point] 4 (#$ . 8178) (list (gnus-server-server-name))])
#@19 Open all servers.
(defalias 'gnus-server-open-all-servers #[nil "	 	A@@! )" [gnus-inserted-opened-servers servers gnus-server-open-server] 3 (#$ . 8543) nil])
#@15 Close SERVER.
(defalias 'gnus-server-close-server #[(server) "	! 	\"\n\"\n!	! )" [gnus-server-to-method server method error "No such server: %s" gnus-server-set-status closed gnus-close-server gnus-server-update-server gnus-server-position-point] 4 (#$ . 8719) (list (gnus-server-server-name))])
#@20 Close all servers.
(defalias 'gnus-server-close-all-servers #[nil "	 	A@@! )" [gnus-inserted-opened-servers servers gnus-server-close-server] 3 (#$ . 9038) nil])
#@50 Make sure SERVER will never be attempted opened.
(defalias 'gnus-server-deny-server #[(server) "	! 	\"\n\")	! ɇ" [gnus-server-to-method server method error "No such server: %s" gnus-server-set-status denied gnus-server-update-server gnus-server-position-point t] 4 (#$ . 9217) (list (gnus-server-server-name))])
#@46 Make all denied servers into closed servers.
(defalias 'gnus-server-remove-denials #[nil " 	@A@= 	@Aà	A ) " [gnus-opened-servers servers denied closed gnus-server-list-servers] 3 (#$ . 9551) nil])
(defalias 'gnus-server-copy-server #[(from to) " ! Ę !\"# \"!. \"!!B\f\fAA\fB )" [from error "No server on current line" to "" "No name to copy to" assoc gnus-server-alist "%s already exists" gnus-server-to-method "%s: no such server" gnus-copy-sequence to-entry gnus-server-killed-servers gnus-server-yank-server] 5 nil (list (or (gnus-server-server-name) (error "No server on the current line")) (read-string "Copy to: "))])
(defalias 'gnus-server-add-server #[(how where) "	\n !\fEB " [where gnus-server-alist error "Server with that name already defined" how gnus-server-killed-servers gnus-server-yank-server] 3 nil (list (intern (completing-read "Server method: " gnus-valid-select-methods nil t)) (read-string "Server name: "))])
#@24 Jump to a server line.
(defalias 'gnus-server-goto-server #[(server) "ed!$ \fb )" [text-property-any gnus-server intern server to gnus-server-position-point] 7 (#$ . 10571) (list (completing-read "Goto server: " gnus-server-alist nil t))])
#@38 Edit the server on the current line.
(defalias 'gnus-server-edit-server #[(server) " !\f\" !\f\"A!BBBBB#)" [server error "No server on current line" assoc gnus-server-alist "This server can't be edited" info gnus-close-server gnus-edit-form "Editing the server." lambda (form) gnus-server-set-info (form) ((gnus-server-list-servers) (gnus-server-position-point))] 8 (#$ . 10828) (list (gnus-server-server-name))])
#@41 Request a scan from the current server.
(defalias 'gnus-server-scan-server #[(server) "	!\n\" \n@\"# 	#\n\"	#)" [gnus-server-to-method server method gnus-get-function request-scan error "Server %s can't scan" gnus-message 3 "Scanning %s..." gnus-request-scan nil "Scanning %s...done"] 4 (#$ . 11280) (list (gnus-server-server-name))])
#@18 Browse a server.
(defalias 'gnus-server-read-server #[(server) "p\n\"q ! *" [buf gnus-browse-foreign-server server gnus-server-update-server gnus-server-server-name gnus-server-position-point] 3 (#$ . 11641) (list (gnus-server-server-name))])
(defalias 'gnus-server-pick-server #[(e) "	! !" [mouse-set-point e gnus-server-read-server gnus-server-server-name] 2 nil "e"])
#@55 *Hook run after the creation of the browse mode menu.
(defvar gnus-browse-menu-hook nil (#$ . -12035))
(byte-code "! B! B#\f.  \f!\"" [boundp gnus-browse-mode-hook nil current-load-list gnus-browse-mode-map put gnus-browse-mode mode-class special make-keymap suppress-keymap gnus-define-keys-1 (" " gnus-browse-read-group "=" gnus-browse-select-group "n" gnus-browse-next-group "p" gnus-browse-prev-group "" gnus-browse-prev-group [delete] gnus-browse-prev-group "N" gnus-browse-next-group "P" gnus-browse-prev-group "" gnus-browse-next-group "" gnus-browse-prev-group "" gnus-browse-select-group "u" gnus-browse-unsubscribe-current-group "l" gnus-browse-exit "L" gnus-browse-exit "q" gnus-browse-exit "Q" gnus-browse-exit "" gnus-browse-exit "?" gnus-browse-describe-briefly "	" gnus-info-find-node "" gnus-bug)] 4)
(defalias 'gnus-browse-make-menu-bar #[nil "!!?( ! B#\n$!" [gnus-turn-off-edit-menu browse boundp gnus-browse-menu nil current-load-list put variable-documentation "" easy-menu-do-define gnus-browse-mode-map ("Browse" ["Subscribe" gnus-browse-unsubscribe-current-group t] ["Read" gnus-browse-read-group t] ["Select" gnus-browse-select-group t] ["Next" gnus-browse-next-group t] ["Prev" gnus-browse-next-group t] ["Exit" gnus-browse-exit t]) gnus-run-hooks gnus-browse-menu-hook] 5])
(byte-code "! B! B!  B" [boundp gnus-browse-current-method nil current-load-list gnus-browse-return-buffer gnus-browse-buffer "*Gnus Browse Server*"] 2)
#@27 Browse the server SERVER.
(defalias 'gnus-browse-foreign-server #[(server &optional return-buffer) "\n!	A@#!. A@!$ǂ \"!\"J !#ǂ !X !!p! ) @A@#C\"#qp$eb%昄 %!# Εb쏈 *\" @		A	@#cA )p!eb A@#," [server gnus-browse-current-method return-buffer gnus-browse-return-buffer gnus-server-to-method method gnus-select-method nil groups group gnus-message 5 "Connecting to %s..." gnus-check-server 1 "Unable to contact server %s: %s" gnus-status-message 6 "Reading active file..." gnus-request-list "Reading active file...done" "Couldn't request list: %s" gnus-get-buffer-create gnus-browse-buffer gnus-carpal gnus-carpal-setup-buffer browse gnus-configure-windows buffer-disable-undo buffer-read-only erase-buffer gnus-browse-mode format "Gnus: %%b {%s:%s}" mode-line-buffer-identification nntp-server-buffer cur gnus-ignored-newsgroups "" delete-matching-lines re-search-forward "\\(^[^ 	]+\\)[ 	]+[0-9]+[ 	]+[0-9]+" t (byte-code "!\f!T\f!Z]BB" [match-string 1 0 read cur groups] 5) ((error)) sort #[(l1 l2) "@	@" [l1 l2] 2] "K%7d: %s\n" switch-to-buffer gnus-group-position-point "Connecting to %s...done"] 7 (#$ . 13594)])
#@427 Major mode for browsing a foreign server.

All normal editing commands are switched off.

\<gnus-browse-mode-map>
The only things you can do in this buffer is

1) `\[gnus-browse-unsubscribe-current-group]' to subscribe to a group.
The group will be inserted into the group buffer upon exit from this
buffer.

2) `\[gnus-browse-read-group]' to read a group ephemerally.

3) `\[gnus-browse-exit]' to return to the group buffer.
(defalias 'gnus-browse-mode #[nil " \"   	!p! !" [kill-all-local-variables gnus-visual-p browse-menu menu gnus-browse-make-menu-bar gnus-simplify-mode-line gnus-browse-mode major-mode "Browse Server" mode-name nil mode-line-process use-local-map gnus-browse-mode-map buffer-disable-undo t truncate-lines gnus-set-default-directory buffer-read-only gnus-run-hooks gnus-browse-mode-hook] 3 (#$ . 14867) nil])
#@38 Enter the group at the current line.
(defalias 'gnus-browse-read-group #[(&optional no-article) " 	\f\"J8 	!' 	pB$?5 	\"5 	#?5 	\")" [gnus-browse-group-name group 2 intern-soft gnus-newsrc-hashtb gnus-ephemeral-group-p gnus-group-read-ephemeral-group gnus-browse-current-method nil browse error "Couldn't enter %s" gnus-group-read-group no-article] 6 (#$ . 15742) nil])
#@27 Select the current group.
(defalias 'gnus-browse-select-group #[nil "!" [gnus-browse-read-group no] 2 (#$ . 16143) nil])
#@23 Go to the next group.
(defalias 'gnus-browse-next-group #[(n) "y " [n gnus-group-position-point] 2 (#$ . 16273) "p"])
#@23 Go to the next group.
(defalias 'gnus-browse-prev-group #[(n) "	[!" [gnus-browse-next-group n] 2 (#$ . 16401) "p"])
#@39 (Un)subscribe to the next ARG groups.
(defalias 'gnus-browse-unsubscribe-current-group #[(arg) "m !\nW Ă \n!\nV8 m8  8 !U8 \nS  \nUF \"\n*" [error "No group at current line" arg 0 -1 1 abs ward gnus-browse-unsubscribe-group gnus-browse-next-group gnus-group-position-point gnus-message 7 "No more newsgroups"] 4 (#$ . 16525) "p"])
(defalias 'gnus-browse-group-name #[nil "y # !\"\n\")" [0 re-search-forward ": \\(.*\\)$" gnus-point-at-eol t gnus-group-prefixed-name format "%s" match-string 1 gnus-browse-current-method] 5])
#@64 Toggle subscription of the current group in the browse buffer.
(defalias 'gnus-browse-unsubscribe-group #[nil "ygU  ( 		\"JA@( !!g 	!	\"?F A@@^ A@@	\"J%cr 	#c,Ƈ" [nil group buffer-read-only sub 0 75 t gnus-browse-group-name intern-soft gnus-newsrc-hashtb error "Group already subscribed" delete-char 1 gnus-kill-ephemeral-group gnus-group-change-level gnus-level-default-subscribed gnus-server-equal gnus-browse-current-method "native" gnus-level-killed gnus-newsrc-alist 32] 9 (#$ . 17110)])
#@47 Quit browsing and return to the group buffer.
(defalias 'gnus-browse-exit #[nil "=\n p!q!) \"\"" [major-mode gnus-browse-mode kill-buffer gnus-group-buffer gnus-group-list-groups nil gnus-browse-return-buffer gnus-configure-windows server force group] 3 (#$ . 17680) nil])
#@57 Give a one line description of the group mode commands.
(defalias 'gnus-browse-describe-briefly #[nil "!\"" [gnus-message 6 substitute-command-keys "\\<gnus-browse-mode-map>\\[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"] 4 (#$ . 17982) nil])
#@70 Issue a command to the server to regenerate all its data structures.
(defalias 'gnus-server-regenerate-server #[nil "  !	!@ʏ*\" !E 	#	!2 !	!@ 	#E 	#)" [gnus-server-server-name server error "No server on the current line" request-regenerate gnus-server-to-method group func G99182 (byte-code ";\f !@ \n! \n!\n	#!!)" [group gnus-find-method-for-group method featurep require fboundp intern format "%s-%s" func] 6) ((error)) "This backend doesn't support regeneration" gnus-message 5 "Requesting regeneration of %s..." gnus-open-server "Couldn't open server" gnus-request-regenerate "Requesting regeneration of %s...done" "Couldn't regenerate %s"] 5 (#$ . 18364) nil])
(provide (quote gnus-srvr))
