;ELC   
;;; Compiled by amu@quiche-lorraine.mit.edu on Thu Jan  6 19:18:09 2000
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/gnus-5.8.3/lisp/nnkiboze.el
;;; in Emacs version 20.4.1
;;; with bytecomp version 2.56
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`nnkiboze.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\302\303!\210\302\304!\210\302\305!\210\302\306!\210\302\307!\210\310\311\312\313\"\313\211FB\310\314D	B\313\207" [nnoo-definition-alist nnoo-state-alist require nntp nnheader gnus gnus-score nnoo nnkiboze mapcar #[(p) "C\207" [p] 1] nil "*internal-non-initialized-backend*"] 4)
#@48 nnkiboze will put its files in this directory.
(defvar nnkiboze-directory (nnheader-concat gnus-directory "kiboze/") (#$ . 938))
(nnoo-define 'nnkiboze-directory nil)
#@48 The maximum level to be searched for articles.
(defvar nnkiboze-level 9 (#$ . 1111))
(nnoo-define 'nnkiboze-level nil)
#@71 If non-nil, nnkiboze will remove read articles from the kiboze group.
(defvar nnkiboze-remove-read-articles t (#$ . 1236))
(nnoo-define 'nnkiboze-remove-read-articles nil)
#@44 If non-nil, don't store any data anywhere.
(defvar nnkiboze-ephemeral nil (#$ . 1414))
(nnoo-define 'nnkiboze-ephemeral nil)
#@48 Score rules for generating the nnkiboze group.
(defvar nnkiboze-scores nil (#$ . 1545))
(nnoo-define 'nnkiboze-scores nil)
#@39 Regexp for matching component groups.
(defvar nnkiboze-regexp nil (#$ . 1674))
(byte-code "\305\306\307\"\210\310\300	B\311\302!\204 \307\302	B\305\302\307\"\210\311\303!\204$ \312\303	B\305\303\307\"\210\311\304!\2045 \307\304	B\305\304\307\"\210\313\314!\207" [nnkiboze-version current-load-list nnkiboze-current-group nnkiboze-status-string nnkiboze-headers nnoo-define nnkiboze-regexp nil "nnkiboze 1.0" boundp "" nnoo-define-basics-1 nnkiboze] 3)
(defalias 'nnkiboze-retrieve-headers #[(articles &optional group server fetch-old) "\305!\210	?\2051 \n@;\203 \306\207\307 \310!\2050 \212\fq\210\311 \210\312!\210\313\n@\314\n!@\"\210)\303)\207" [group gnus-nov-is-evil articles nov nntp-server-buffer nnkiboze-possibly-change-group headers nnkiboze-nov-file-name file-exists-p erase-buffer nnheader-insert-file-contents nnheader-nov-delete-outside-range last] 4])
(nnoo-register-function 'nnkiboze-retrieve-headers)
(defalias 'nnkiboze-request-article #[(article &optional newsgroup server buffer) "\306!\210	\247\204 \307	\n$\207\310	\f\2368\211\311H\211\204# \312\313!\210\314\315\"\204/ \312\316!\210\317\320\321\322\"!\321\323\"#*\207" [newsgroup article gnus-nntp-server buffer gnus-newsgroup-data header nnkiboze-possibly-change-group nntp-request-article 3 8 error "nnkiboze: No xref" string-match " \\([^ ]+\\):\\([0-9]+\\)" "nnkiboze: Malformed xref" gnus-request-article string-to-int match-string 2 1 xref] 6])
(nnoo-register-function 'nnkiboze-request-article)
(defalias 'nnkiboze-request-scan #[(&optional group server) "\301\302P!\207" [group nnkiboze-generate-group "nnkiboze:"] 3])
(nnoo-register-function 'nnkiboze-request-scan)
#@35 Make GROUP the current newsgroup.
(defalias 'nnkiboze-request-group #[(group &optional server dont-check) "\306!\210	\203\n \307\207\310 \311\211\211\212q\210\312 \210\313!\204% \314!\210\313!\2043 \315\316\317#\202m \320!\210\321 \322U\203E \323\324\"\202m eb\210\325\326!\203R \327p!db\210\330\331\311\307#\203a \327p!\332ed\"\323\333\n\f%-\207" [group dont-check total end beg nov-file nnkiboze-possibly-change-group t nnkiboze-nov-file-name nil erase-buffer file-exists-p nnkiboze-request-scan nnheader-report nnkiboze "Can't select group %s" nnheader-insert-file-contents buffer-size 0 nnheader-insert "211 0 0 0 %s\n" looking-at "[0-9]+" read re-search-backward "^[0-9]" count-lines "211 %d %d %d %s\n" nntp-server-buffer] 6 (#$ . 3358)])
(nnoo-register-function 'nnkiboze-request-group)
(defalias 'nnkiboze-close-group #[(group &optional server) "\306!\210\307\310 !\203W 	\203W \310 \311\312\313!!\314\216r\nq\210p\315\310 !\210eb\210m\204G \316\317\f!!\204: \320y\210\202( \321y\210`\320y\210`|\210\202( *r\nq\210~\210\322ed\323\321%\210,\323\211\207" [group nnkiboze-remove-read-articles #1=#:temp-buffer #2=#:temp-file cur nnkiboze-current-group nnkiboze-possibly-change-group file-exists-p nnkiboze-nov-file-name get-buffer-create generate-new-buffer-name " *temp file*" ((byte-code "\301!\203\n \302!\210\301\207" [#1# buffer-name kill-buffer] 2)) nnheader-insert-file-contents gnus-article-read-p read 1 0 write-region nil] 6])
(nnoo-register-function 'nnkiboze-close-group)
(defalias 'nnkiboze-open-server #[(server &optional defs) "\302\236\204\f \302	DB\303\304	#\207" [defs server nnkiboze-regexp nnoo-change-server nnkiboze] 4])
(nnoo-register-function 'nnkiboze-open-server)
(defalias 'nnkiboze-request-delete-group #[(group &optional force server) "\304!\210	\2032 \305!\306 \306\307!D\244\211\2031 \310\n@!\203* \311\n@!\203* \312\n@!\210\nA\211\204 )\313\314\207" [group force files nnkiboze-current-group nnkiboze-possibly-change-group nnkiboze-score-file nnkiboze-nov-file-name ".newsrc" file-exists-p file-writable-p delete-file nil t] 5])
(byte-code "\300\301!\210\302\303!\207" [nnoo-register-function nnkiboze-request-delete-group nnoo-define-skeleton-1 nnkiboze] 2)
(defalias 'nnkiboze-possibly-change-group #[(group) "\211\207" [group nnkiboze-current-group] 2])
(defalias 'nnkiboze-prefixed-name #[(group) "\301\302\"\207" [group gnus-group-prefixed-name (nnkiboze "")] 3])
#@127 "Usage: emacs -batch -l nnkiboze -f nnkiboze-generate-groups".
Finds out what articles are to be part of the nnkiboze groups.
(defalias 'nnkiboze-generate-groups #[nil "\306\211\307\211\310 \210,\311\f!\211A\306\306\312 \210\211A@\211\2059 \313\314@\"\203 \315@!\210\202 ,\207" [gnus-expert-user gnus-read-active-file gnus-use-dribble-file nnmail-spool-file gnus-newsrc-alist newsrc nil t gnus gnus-copy-sequence gnus-make-hashtable-from-newsrc-alist string-match "nnkiboze" nnkiboze-generate-group gnus-newsrc-hashtb info] 5 (#$ . 5810) nil])
(defalias 'nnkiboze-score-file #[(group) "\303\304!\305\306	!\307\nQ!P!C\207" [gnus-kill-files-directory nnkiboze-current-group gnus-score-file-suffix expand-file-name file-name-as-directory nnheader-translate-file-chars nnkiboze-prefixed-name "."] 6])
(defalias 'nnkiboze-generate-group #[(group) "\306\307	\"J8\310\311P!P\310\312P!P\3133\3134\3135\3136\3137\3138\3139\313:\313;\313<\314=\313>\315?@\316^@\313A\313B\313C\313D\313E\313F\313G\n\204c \317\320\"\210\321\f!\203m \322\f!\210\323\324\325!!HI\326\216rHq\210\321!\203\210 \327!\210p<\330\331J\"\2104\2116\203\213\3076@@J\"J\2117\204\264 \3326@4\"4\202q6@A9\333K!\210\3346@@!\210\335\316\3366@@#\210\306\307\337 	\"J88\3408!;\3076@@	\"J@G\341\216\31688\203\372 \3168\233\313\240\2108\2038AA9\342U?\205\3429B\240\2108\203!\3438@!G\344V\203p\345\346\347\217\210L\350=\203p\351M!\2113N=\203=\3133O\203eO@@9V\203\\\352<\316O@@P\2368M#\210OA\211O\204BL\350=\203p\353p!\210)6@7@\241\210\335\316\3546@@#\2106A\2116\204\231 )rHq\210~\210\355edI\313\344%\210,\f\323\324\325!!QR\356\216rQq\210\357c\210\3604!\210\361c\210)rQq\210~\210\355edR\313\344%\210.\212Kq\210\362 \210)\314\207" [group gnus-newsrc-hashtb info nnkiboze-directory newsrc-file nov-file 2 intern-soft nnheader-translate-file-chars ".newsrc" ".nov" nil t nnkiboze-score-file 3 error "No such group: %s" file-exists-p load get-buffer-create generate-new-buffer-name " *temp file*" ((byte-code "\301!\203\n \302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) insert-file-contents mapatoms #[(group) "\306\307	!\211\"\205H \310\n\"?\205H 	J@\247\205H \f\311V\2046 \312\313\n\"J8A@\211\205H \fY\205H \306\314\n\"?\205H \n	J@SBB\211\207" [nnkiboze-regexp group gname nnkiboze-newsrc nnkiboze-level gnus-newsrc-hashtb string-match symbol-name assoc 7 2 intern-soft "^nnkiboze:" glevel] 4] delq switch-to-buffer gnus-group-jump-to-group gnus-message "nnkiboze: Checking %s..." gnus-group-group-name gnus-copy-sequence ((byte-code "\203	 	A\241\210\305\n@@\"J\f\240\207" [ginfo orig-info newsrc gnus-newsrc-hashtb num-unread intern-soft] 3)) 1 gnus-list-of-unread-articles 0 #2=#:G82157 (gnus-group-select-group nil) ((error)) gnus-summary-mode gnus-find-method-for-group nnkiboze-enter-nov kill-buffer "nnkiboze: Checking %s...done" write-region ((byte-code "\301!\203\n \302!\210\301\207" [#3=#:temp-buffer buffer-name kill-buffer] 2)) "(setq nnkiboze-newsrc '" gnus-prin1 ")\n" gnus-group-list-groups method nnkiboze-newsrc gname newsrc active ginfo lowest glevel orig-info nov-buffer gnus-expert-user gnus-large-newsgroup gnus-score-find-score-files-function gnus-verbose gnus-select-group-hook gnus-summary-prepare-hook gnus-thread-sort-functions gnus-show-threads gnus-visual gnus-suppress-duplicates num-unread #1# #4=#:temp-file gnus-active-hashtb gnus-group-buffer major-mode gnus-newsgroup-name gnus-select-method gnus-newsgroup-scored gnus-newsgroup-data #3# #5=#:temp-file] 7])
(defalias 'nnkiboze-enter-nov #[(buffer header group) "\212q\210db\210\306	!\307\n!\310\311y\312U\203# \313p!T\314y\210\202% \314\f\312I\210\315\f!\210\316\317\310\320\321$\210\322\323\310\320#\203D \312\224b\210\202G \314u\210\324	\325\326\n\312H!\324\261\210\322\323\310\320#\205f \312\224Tb\210c\210\202S ,\207" [buffer group header article oheader prefix gnus-group-real-prefix copy-sequence nil -1 0 read 1 nnheader-insert-nov search-backward "	" t 2 re-search-forward " [^ ]+:[0-9]+" " " ":" int-to-string] 6])
(defalias 'nnkiboze-nov-file-name #[(&optional suffix) "\303!\304\305	!\n\206\f \306P!P\207" [nnkiboze-directory nnkiboze-current-group suffix file-name-as-directory nnheader-translate-file-chars nnkiboze-prefixed-name ".nov"] 4])
(provide 'nnkiboze)
