;ELC ;;; Compiled ;;; in Emacs version 27.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\302\303!\210\302\304!\210\302\305!\210\302\306!\210\302\307!\210\302\310!\210\302\311!\210\302\312!\210\313\236\2033 \313\236A\314\315\316\"\240\210\202> \313\314\315\316\"\316\211FB\313 \236\204J \313\317D B\316\207" [nnoo-definition-alist nnoo-state-alist require nnoo message gnus-util gnus nnmail mm-util mm-url url nnweb mapcar list nil "*internal-non-initialized-backend*"] 4) #@106 Where nnweb will save its files. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnweb-directory (nnheader-concat gnus-directory "nnweb/") (#$ . 810)) (nnoo-define 'nnweb-directory nil) #@167 What search engine type is being used. Valid types include `google', `dejanews', and `gmane'. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnweb-type 'google (#$ . 1035)) (nnoo-define 'nnweb-type nil) #@24 Type-definition alist. (defvar nnweb-type-definition '((google (id . "http://www.google.com/groups?as_umsgid=%s&hl=en&dmode=source") (result . "http://groups.google.com/group/%s/msg/%s?dmode=source") (article . nnweb-google-wash-article) (reference . identity) (map . nnweb-google-create-mapping) (search . nnweb-google-search) (address . "http://groups.google.com/groups") (base . "http://groups.google.com") (identifier . nnweb-google-identity)) (dejanews (id . "http://www.google.com/groups?as_umsgid=%s&hl=en&dmode=source") (result . "http://groups.google.com/group/%s/msg/%s?dmode=source") (article . nnweb-google-wash-article) (reference . identity) (map . nnweb-google-create-mapping) (search . nnweb-google-search) (address . "http://groups.google.com/groups") (base . "http://groups.google.com") (identifier . nnweb-google-identity)) (gmane (article . nnweb-gmane-wash-article) (id . "http://gmane.org/view.php?group=%s") (reference . identity) (map . nnweb-gmane-create-mapping) (search . nnweb-gmane-search) (address . "http://search.gmane.org/nov.php") (identifier . nnweb-gmane-identity))) (#$ . 1277)) #@106 Search string to feed to Google. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnweb-search nil (#$ . 2400)) (nnoo-define 'nnweb-search nil) #@108 Maximum number of hits to display. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnweb-max-hits 999 (#$ . 2582)) (nnoo-define 'nnweb-max-hits nil) #@113 Whether this nnweb server is ephemeral. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnweb-ephemeral-p nil (#$ . 2770)) (nnoo-define 'nnweb-ephemeral-p nil) (defvar nnweb-articles nil) (nnoo-define 'nnweb-articles nil) (defvar nnweb-buffer nil) (nnoo-define 'nnweb-buffer nil) (defvar nnweb-group-alist nil) (nnoo-define 'nnweb-group-alist nil) (defvar nnweb-group nil) (nnoo-define 'nnweb-group nil) (defvar nnweb-hashtb nil) (byte-code "\300\301\302\"\210\303\304!\207" [nnoo-define nnweb-hashtb nil nnoo-define-basics-1 nnweb] 3) (defalias 'nnweb-retrieve-headers #[(articles &optional group server fetch-old) "\306 \"\210r\nq\210\307 \210\310\211 \211A\242\211\203, \f\236A@\211\203 \311!\210\202 +\312\207" [group server nntp-server-buffer header article articles nnweb-possibly-change-server erase-buffer nil nnheader-insert-nov nov nnweb-articles] 3]) (nnoo-register-function 'nnweb-retrieve-headers) (defalias 'nnweb-request-scan #[(&optional group server) "\306 \"\210\n\203 \307\310\311\206 \312\313\314$)\202\" \204\" \315!\210\316\317! \210\n?\2052 \320 \210\321!\207" [group server nnweb-ephemeral-p size nnweb-hashtb nnweb-articles nnweb-possibly-change-server 4000 make-hash-table :size 300 :test equal nnweb-read-overview nnweb-definition map nnweb-write-active nnweb-write-overview] 5]) (nnoo-register-function 'nnweb-request-scan) (defalias 'nnweb-request-group #[(group &optional server dont-check info) "\306 \"\210\n\204 \204 \f\204 \307!\210\f\204 \310\311\312\"\207\n\203. \f@@\313\f!@@B\2024 \314 \"A@\310\311\315#\210\316\317\fG@A%)\207" [group server nnweb-ephemeral-p dont-check nnweb-articles nnweb-group-alist nnweb-possibly-change-server nnweb-read-overview nnheader-report nnweb "No matching articles" last assoc "Opened group %s" nnheader-insert "211 %d %d %d %s\n" active] 6]) (nnoo-register-function 'nnweb-request-group) (defalias 'nnweb-close-group #[(group &optional server) "\304 \"\210\n\211\205 \305\306!\211!\205 )\203' r\nq\210\307\310!\210\311\n!\210)\312\207" [group server nnweb-buffer buffer nnweb-possibly-change-server buffer-live-p get-buffer set-buffer-modified-p nil kill-buffer t] 4]) (nnoo-register-function 'nnweb-close-group) (defalias 'nnweb-request-article #[(article &optional group server buffer) "\306 \"\210r\n\206 q\210\f \236A@\211\205 \307H\211\203) \310!\204x \f;\205\220 \311\312\313\"\205\220 \311\312!\314\211\315\316\f\"\203M \317\320\f\"\205t \205t \321\322!\"\310!\210\311\323\313\"\205t \311\323!\f!\211+\205\220 \204\202 \311\304! \210\324\325\326\f#\210\f\247\205\217 \fB+\207" [group server buffer nntp-server-buffer article nnweb-articles nnweb-possibly-change-server 8 mm-url-insert nnweb-definition id t nil string-match "^<\\(.*\\)>$" match-string 1 format mm-url-form-encode-xwfu reference nnheader-report nnweb "Fetched article %s" header url active art fetch nnheader-callback-function] 5]) (nnoo-register-function 'nnweb-request-article) (defalias 'nnweb-close-server #[(&optional server _defs) "\303!\203( \211\205 \304\305\n!\211!\205 \n)\203( r q\210\306\307!\210\310 !\210)\311\312\"\207" [server nnweb-buffer buffer nnweb-server-opened buffer-live-p get-buffer set-buffer-modified-p nil kill-buffer nnoo-close-server nnweb] 4]) (nnoo-register-function 'nnweb-close-server) (defalias 'nnweb-request-list #[(&optional server) "\303\304\"\210r q\210\305\306\n\"C!\210)\307\207" [server nntp-server-buffer nnweb-group-alist nnweb-possibly-change-server nil nnmail-generate-active assoc t] 4]) (nnoo-register-function 'nnweb-request-list) (defalias 'nnweb-request-update-info #[(group info &optional server) "\300\207" [nil] 1]) (nnoo-register-function 'nnweb-request-update-info) (defalias 'nnweb-asynchronous-p #[nil "\300\207" [nil] 1]) (nnoo-register-function 'nnweb-asynchronous-p) (defalias 'nnweb-request-create-group #[(group &optional server args) "\303\304\"\210\305 !\210 \306\307BD\nB\310 \210\311\207" [server group nnweb-group-alist nnweb-possibly-change-server nil nnweb-request-delete-group 1 0 nnweb-write-active t] 3]) (nnoo-register-function 'nnweb-request-create-group) (defalias 'nnweb-request-delete-group #[(group &optional force server) "\303 \"\210\304\305\n\"\n\"\306 \210\307\310!!\210\311\207" [group server nnweb-group-alist nnweb-possibly-change-server delq assoc nnweb-write-active gnus-delete-file nnweb-overview-file t] 4]) (byte-code "\300\301!\210\302\303!\207" [nnoo-register-function nnweb-request-delete-group nnoo-define-skeleton-1 nnweb] 2) #@47 Read the overview of GROUP and build the map. (defalias 'nnweb-read-overview #[(group) "\303\304!!\2053 \305\304!!\210eb\210\306m?\2052 \307 \310y\210 \311H \211\312HE\nB\313 \n@\"\210\202 )\207" [group header nnweb-articles file-exists-p nnweb-overview-file nnheader-insert-file-contents nil nnheader-parse-nov 1 0 8 nnweb-set-hashtb] 4 (#$ . 7369)]) #@36 Write the overview file for GROUP. (defalias 'nnweb-write-overview #[(group) "\305!\306\307!\310\216r q\210\f\205! \311\f\211A\242A@!\210\202 *r q\210\312\313\211\n\313\314%\210,\207" [group #1=#:temp-buffer #2=#:temp-file nnweb-articles articles nnweb-overview-file generate-new-buffer " *temp file*" #[nil "\301!\205 \302!\207" [#1# buffer-name kill-buffer] 2] nnheader-insert-nov write-region nil 0] 7 (#$ . 7733)]) (defalias 'nnweb-set-hashtb #[(header data) "\303\304\305H! \n#\207" [header data nnweb-hashtb puthash nnweb-identifier 8] 4]) (defalias 'nnweb-get-hashtb #[(url) "\302\303! \"\207" [url nnweb-hashtb gethash nnweb-identifier] 3]) (defalias 'nnweb-identifier #[(ident) "\301\302!!\207" [ident nnweb-definition identifier] 2]) #@48 Return the name of the overview file of GROUP. (defalias 'nnweb-overview-file #[(group) "\302 \303#\207" [nnweb-directory group nnheader-concat ".overview"] 4 (#$ . 8496)]) #@23 Save the active file. (defalias 'nnweb-write-active #[nil "\304!\210\305\306\"\307\310!\311\216r q\210\312\313\303\314DEp\")r q\210\315\316\211\n\316\317%\210,\207" [nnweb-directory #1=#:temp-buffer #2=#:temp-file nnweb-group-alist gnus-make-directory nnheader-concat "active" generate-new-buffer " *temp file*" #[nil "\301!\205 \302!\207" [#1# buffer-name kill-buffer] 2] prin1 setq quote write-region nil 0] 7 (#$ . 8676)]) #@23 Read the active file. (defalias 'nnweb-read-active #[nil "\301\302\303\"\304\211\211$\207" [nnweb-directory load nnheader-concat "active" t] 5 (#$ . 9116)]) #@32 Return the definition of TYPE. (defalias 'nnweb-definition #[(type &optional noerror) " \n\236\236A\211\204 \f\204 \305\306\"\210)\207" [type nnweb-type nnweb-type-definition def noerror error "Undefined definition %s"] 4 (#$ . 9280)]) (defalias 'nnweb-possibly-change-server #[(&optional group server) "\203 \305!\204 \306!\210\307!\210 \204 \310 \210\n\204$ \311\312\313\314\315$\205+ \211\207" [server nnweb-group-alist nnweb-hashtb group nnweb-group nnweb-server-opened nnweb-open-server nnweb-init nnweb-read-active make-hash-table :size 4000 :test equal] 5]) #@30 Initialize buffers and such. (defalias 'nnweb-init #[(server) "\211\205 \305\306 !\211!\205 )?\205' r\307\310\311\n\f$!\210\312 \210p)\211\207" [nnweb-buffer buffer nnweb-type nnweb-search server buffer-live-p get-buffer nnheader-set-temp-buffer format " *nnweb %s %s %s*" mm-disable-multibyte] 7 (#$ . 9868)]) (defalias 'nnweb-google-wash-article #[nil "\303\304\305eb\210\212\306\307\310\303#\206 \306 \310\303#\205 \306\310\303#?)\203. \311\312\313\"\210\314 \202B e\306 !|\210eb\210\306!\210\315\224d|\210\316 +\207" [end-re start-re case-fold-search t "
[ \n ]*" "[ \n ]*" re-search-forward "The requested message.*could not be found." nil gnus-message 3 "Requested article not found" erase-buffer 0 mm-url-decode-entities] 4]) #@40 Parse search result in current buffer. (defalias 'nnweb-google-parse-1 #[(&optional Message-ID) "\306\307\310 \"A@\311\211\211\211\211\211\211\211'()*+,-+\2042 \312\306B\211+D Beb\210\313\314\311\307#\203\362 \315\312!'\315\316!\317\320\321!'\n#\322\323\311\307#\322\324\311\307#}\210\325 \210\326 \210\327 *db\210~\210`\322\330\311\307#}\210\325 \210\326 \210db\210\331\332\311\307#\203\246 \333\312!\203\236 \317\334\333\312!\333\316!\333\335!\206\232 \336\337!$\202\240 \340 (\333\341!~\210-T-\342!\2045 +\211.\211AT\241)\343+A'\203\320 \344'\345*R\202\322 * (/\206\333 \n\311\306\211\311&\nD\fB\346\f@A@\f@\"\210\2025 \f.\207" [nnweb-group nnweb-group-alist mid url map From 0 t assoc nil 1 re-search-forward "a +href=\"/group/\\([^>\"]+\\)/browse_thread/[^>]+#\\([0-9a-f]+\\)" match-string-no-properties 2 format nnweb-definition result search-forward ">" "" mm-url-remove-markup mm-url-decode-entities buffer-string "