;ELC   
;;; compiled by kwzh@nutrimat.gnu.ai.mit.edu on Wed Jul 17 16:54:25 1996
;;; from file /gd/gnu/emacs/19.0/lisp/gnus-srvr.el
;;; emacs version 19.31.94.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"))


(require (quote gnus))
#@41 Hook run in `gnus-server-mode' buffers.
(defvar gnus-server-mode-hook nil (#$ . 505))
#@115 Format of server lines.
It works along the same lines as a normal formatting string,
with some simple extensions.
(defconst gnus-server-line-format "     {%(%h:%w%)} %s\n" (#$ . 598))
#@52 The format specification for the server mode line.
(defvar gnus-server-mode-line-format "Gnus  List of servers" (#$ . 788))
#@43 *Hook run when exiting the server buffer.
(defvar gnus-server-exit-hook nil (#$ . -918))
(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 how 115) (110 name 115) (119 where 115) (115 status 115)) gnus-server-mode-line-format-alist ((83 news-server 115) (77 news-method 115) (117 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 (#$ . -1480))
(defalias 'gnus-server-make-menu-bar #[nil "!!?C ! B#\n$!. \fB#\n$!" [gnus-visual-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] ["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] ["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] ["Reset" gnus-server-remove-denials t]) 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 "O" gnus-server-open-server "C" gnus-server-close-server "D" gnus-server-deny-server "R" gnus-server-remove-denials "	" gnus-info-find-node)] 4)
#@270 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!!" [menu-bar-mode 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 nil mode-line-process use-local-map gnus-server-mode-map buffer-disable-undo t truncate-lines buffer-read-only run-hooks gnus-server-mode-hook] 3 (#$ . 3008) nil])
(defalias 'gnus-server-insert-server-line #[(name method) "@A@\f\"A@= ǂ+ !& A@=* ʂ+ \fy``T!!D#," [method how where assoc gnus-opened-servers elem denied "(denied)" gnus-server-opened ok "(opened)" "(closed)" status 0 gnus-add-text-properties eval gnus-server-line-format-spec gnus-server intern 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 (#$ . 4041)])
#@31 Initialize the server buffer.
(defalias 'gnus-server-setup-buffer #[nil "	!? 	!q \f !)" [get-buffer gnus-server-buffer get-buffer-create gnus-server-mode gnus-carpal gnus-carpal-setup-buffer server] 2 (#$ . 4221)])
(defalias 'gnus-server-prepare #[nil "	\n\"\f#\nɉ\f X A@\fAB\f& \f@& \fA& \f@\fA\"&  @@ @@@@@A@#@@\"@@DBA] .eb " [gnus-parse-format gnus-server-mode-line-format gnus-server-mode-line-format-alist gnus-server-mode-line-format-spec gnus-server-line-format gnus-server-line-format-alist t gnus-server-line-format-spec gnus-server-alist nil gnus-opened-servers op-ser server done opened buffer-read-only alist erase-buffer gnus-inserted-opened-servers gnus-server-insert-server-line format "%s:%s" gnus-server-position-point] 7])
(defalias 'gnus-server-server-name #[nil "`y`	b)\" \f!)" [get-text-property p 0 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 ")" 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) "	! 	 	\" !	\"# 	\"!y`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-enter "" nil buffer-read-only 0 1 gnus-server-killed-servers delq gnus-server-position-point] 3 (#$ . 6054) (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 (#$ . 6519) nil])
#@29 Return to the group buffer.
(defalias 'gnus-server-exit #[nil "p!\n!!" [kill-buffer switch-to-buffer gnus-group-buffer run-hooks gnus-server-exit-hook] 2 (#$ . 6912) 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 (#$ . 7097) 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 (#$ . 7327)])
#@48 Remove METHOD from the list of opened servers.
(defalias 'gnus-opened-servers-remove #[(method) "\n\"\"" [delq assoc method gnus-opened-servers] 4 (#$ . 7507)])
#@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 (#$ . 7681) (list (gnus-server-server-name))])
#@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 (#$ . 8046) (list (gnus-server-server-name))])
#@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 (#$ . 8365) (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 (#$ . 8699) nil])
(defalias 'gnus-server-copy-server #[(from to) " ! Ę !\"# \"\"0 \"\"!AA\fB\f )" [from error "No server on current line" to "" "No name to copy to" assoc gnus-server-alist "%s already exists" "%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) "	E\nB " [where 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 (#$ . 9625) (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!!!  ! !!8A\") c!c*" [server error "No server on current line" assoc gnus-server-alist "This server can't be edited" current-window-configuration info winconf gnus-close-server get-buffer-create gnus-server-edit-buffer gnus-configure-windows edit-server gnus-add-current-to-buffer-list emacs-lisp-mode make-local-variable gnus-prev-winconf use-local-map copy-keymap current-local-map (lambda nil "Exit editing mode and update the information." (interactive) (gnus-server-edit-server-done (quote group))) done-func 4 local-set-key "" erase-buffer ";; Type `C-c C-c' after you have edited the server.\n\n" pp-to-string] 4 (#$ . 9881) (list (gnus-server-server-name))])
(defalias 'gnus-server-edit-server-done #[(server) "	!qebp!\"p!\f  \f!\nq!  *" [get-buffer-create gnus-server-edit-buffer read gnus-prev-winconf winconf form gnus-server-set-info server kill-buffer set-window-configuration gnus-server-buffer gnus-server-update-server gnus-server-list-servers gnus-server-position-point] 3 nil nil])
#@18 Browse a server.
(defalias 'gnus-server-read-server #[(server) "p!\"q ! *" [buf gnus-browse-foreign-server gnus-server-to-method server gnus-server-update-server gnus-server-server-name gnus-server-position-point] 3 (#$ . 11082) (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 (#$ . -11499))
(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 "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)] 4)
(defalias 'gnus-browse-make-menu-bar #[nil "!!' ! B#\n$!" [gnus-visual-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-read-group t] ["Next" gnus-browse-next-group t] ["Prev" gnus-browse-next-group t] ["Exit" gnus-browse-exit t]) 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 METHOD.
(defalias 'gnus-browse-foreign-server #[(method &optional return-buffer) "\nĉA@#!& !#Ă !8 !#Ă ! I !!p! ) @A@#Cqp eb!☄} !!# ̕b! !T !Z]BB} *\" @A@#cA )p!eb A@#+" [method gnus-browse-current-method return-buffer gnus-browse-return-buffer nil group groups gnus-select-method gnus-message 5 "Connecting to %s..." gnus-check-server 1 "Unable to contact server: %s" gnus-status-message gnus-request-list "Couldn't request list: %s" get-buffer-create gnus-browse-buffer gnus-add-current-to-buffer-list 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 match-string 0 read sort #[(l1 l2) "@	@" [l1 l2] 2] "K%7d: %s\n" switch-to-buffer gnus-group-position-point "Connecting to %s...done"] 6 (#$ . 13011)])
#@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 " 	 \"   \n\f!p!!" [kill-all-local-variables menu-bar-mode 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 buffer-read-only run-hooks gnus-browse-mode-hook] 3 (#$ . 14155) nil])
#@38 Enter the group at the current line.
(defalias 'gnus-browse-read-group #[(&optional no-article) " 	pB$ 	\")" [gnus-browse-group-name group gnus-group-read-ephemeral-group gnus-browse-current-method nil browse error "Couldn't enter %s"] 6 (#$ . 15015) nil])
#@27 Select the current group.
(defalias 'gnus-browse-select-group #[nil "!" [gnus-browse-read-group no] 2 (#$ . 15289) nil])
#@23 Go to the next group.
(defalias 'gnus-browse-next-group #[(n) "y " [n gnus-group-position-point] 2 (#$ . 15419) "p"])
#@23 Go to the next group.
(defalias 'gnus-browse-prev-group #[(n) "	[!" [gnus-browse-next-group n] 2 (#$ . 15547) "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 (#$ . 15671) "p"])
(defalias 'gnus-browse-group-name #[nil "y``b)# !	\")" [0 re-search-forward ": \\(.*\\)$" p nil t gnus-group-prefixed-name match-string 1 gnus-browse-current-method] 4])
#@64 Toggle subscription of the current group in the browse buffer.
(defalias 'gnus-browse-unsubscribe-group #[nil "ygU  !G 	\fA@@> A@@\"J%cR 	#c,Ƈ" [nil group buffer-read-only sub 0 75 t gnus-browse-group-name delete-char 1 gnus-group-change-level gnus-level-default-subscribed gnus-browse-current-method gnus-level-killed gnus-newsrc-alist intern-soft gnus-newsrc-hashtb 32] 7 (#$ . 16236)])
#@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 (#$ . 16687) 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 (#$ . 16989) nil])
(provide (quote gnus-srvr))
