%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/gnus/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/gnus/nnweb.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; 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\206q\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 \202Be\306	!|\210eb\210\306!\210\315\224d|\210\316 +\207" [end-re start-re case-fold-search t "<pre>[
\n ]*" "[
\n ]*</pre>" 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 ">" "</a>" mm-url-remove-markup mm-url-decode-entities buffer-string "</table" re-search-backward "^\\(?:\\(\\w+\\) \\([0-9]+\\)\\|\\S-+\\)\\(?: \\([0-9]\\{4\\}\\)\\)? by ?\\(.*\\)" match-string "%s %s 00:00:00 %s" 3 format-time-string "%Y" current-time-string 4 nnweb-get-hashtb vector "(" ") " nnweb-set-hashtb Newsgroups Date Score Subject active case-fold-search i #1=#:v Message-ID] 13 (#$ . 10632)])
(defalias 'nnweb-google-reference #[(id) "\304!\305\n\244\n@A@\211\205\306	\307H!\210\n@@*\207" [id header map nnweb-articles nnweb-google-parse-1 nil mm-url-insert 8] 3])
#@54 Perform the search and create a number-to-url alist.
(defalias 'nnweb-google-create-mapping #[nil "rq\210\306 \210\307\310\311\"\210\312\313!	!\205d\314\315\203X\f\316 \244eb\210\n\317\\\320\321\322\314#\2036\n
Y\203<\322\211\202\312\323!\324\325!P\211\203\306 \210\307\310\326\n#\210\327!\210\202\307\310\330\"\210\331\f\332\"\211*)\207" [nnweb-buffer nnweb-search i more nnweb-articles nnweb-max-hits erase-buffer nnheader-message 7 "Searching google..." nnweb-definition search t 0 nnweb-google-parse-1 100 re-search-forward "<a [^>]+href=\"\n?\\([^>\" \n	]+\\)[^<]*<img[^>]+src=[^>]+next" nil base match-string 1 "Searching google...(%d)" mm-url-insert "Searching google...done" sort car-less-than-car] 5 (#$ . 12119)])
(defalias 'nnweb-google-search #[(search) "\302\303\304!\305\306\307B\310\311\312	^!B\313BB!Q!\210\314\207" [search nnweb-max-hits mm-url-insert nnweb-definition address "?" mm-url-encode-www-form-urlencoded "q" "num" number-to-string 100 (("hq" . #1="") ("hl" . "en") ("lr" . #1#) ("safe" . "off") ("sites" . "groups") ("filter" . "0")) t] 9])
#@42 Return a unique identifier based on URL.
(defalias 'nnweb-google-identity #[(url) "\301\302\"\203\f\303\304\"\207\207" [url string-match "selm=\\([^ &>]+\\)" match-string 1] 3 (#$ . 13215)])
#@54 Perform the search and create a number-to-url alist.
(defalias 'nnweb-gmane-create-mapping #[nil "rq\210\306\307	\n\"A@\206\310\311B\312\313 \210\314\315\316\"\210\317\320!$!\203\307eb\210\310y\210m\204\307l\204\301\321\322!\204\301\323 \211%\324H%\325H%\310H\326&'()\327\330)\"\203p%\211*\324\331\332\333\310)\"\333\325)\"#I\210)\327\334(\"\203\205%\211+\325(\335PI\210)%\211,\310\336'!I\210)\337%\324H!\204\300%\211-\311\f\211.\211AT\241)I\210)%\311H%DB\340@A@@\"\210-\310y\210\202,\314\315\341\"\210\342/\244\343\"\211/,\207" [nnweb-buffer nnweb-group nnweb-group-alist map active case-fold-search t assoc 1 0 nil erase-buffer nnheader-message 7 "Searching Gmane..." nnweb-definition search looking-at "
" nnheader-parse-nov 8 2 mime string-match " \\([^:]+\\)[:/]\\([0-9]+\\)" format "http://article.gmane.org/%s/%s/raw" match-string "@$" "public.gmane.org" rfc2047-encode-string nnweb-get-hashtb nnweb-set-hashtb "Searching Gmane...done" sort car-less-than-car nnweb-search header rfc2047-encoding-type subject from xref #1=#:v #2=#:v #3=#:v #4=#:v #5=#:v nnweb-articles] 9 (#$ . 13416)])
(defalias 'nnweb-gmane-wash-article #[nil "\301eb\210\302\303\304\301#\205'e`|\210eb\210\305\306!\203%\307\310\301\"\210\311y\210\202\312 )\207" [case-fold-search t search-forward "<!--X-Head-of-Message-->" nil looking-at "^<li><em>\\([^ ]+\\)</em>.*</li>" replace-match "\\1\\2" 1 mm-url-remove-markup] 4])
(defalias 'nnweb-gmane-search #[(search) "\303\304\305!\306\307\310B\311\312	!BD!Q!\210\313\314\315!\210\316ed\317#\210\315\207" [search nnweb-max-hits buffer-file-name mm-url-insert nnweb-definition address "?" mm-url-encode-www-form-urlencoded "query" "HITSPERPAGE" number-to-string nil set-buffer-multibyte t decode-coding-region utf-8] 8])
#@42 Return a unique identifier based on URL.
(defalias 'nnweb-gmane-identity #[(url) "\301\302\"\203\f\303\304\"\207\207" [url string-match "group=\\(.+\\)" match-string 1] 3 (#$ . 15222)])
#@39 Insert HTML based on a w3 parse tree.
(defalias 'nnweb-insert-html #[(parse) ";\203c\207\301\302@!\303\261\210\304\305A@\303#c\210\306c\210\307\310\3118\"\210\312\302@!\306\261\207" [parse "<" symbol-name " " mapconcat #[(param) "\301@!\302\303A:\203A@\202A!Q\207" [param symbol-name "=" prin1-to-string] 4] ">\n" mapc nnweb-insert-html 2 "</"] 4 (#$ . 15418)])
#@36 Find the element of TYPE in PARSE.
(defalias 'nnweb-parse-find #[(type parse &optional maxdepth) "\3032\n\304	\n#0\207" [type parse maxdepth found nnweb-parse-find-1] 4 (#$ . 15804)])
(defalias 'nnweb-parse-find-1 #[(type contents maxdepth) "\203\305U?\205F	:\205F	@\n=\203\306\307	\"\210	A<\205F	\310\211\205E\f@\211:\203=\311\n\205;S#\210\fA\211\204*\310*\207" [maxdepth contents type element --dolist-tail-- 0 throw found nil nnweb-parse-find-1] 5])
#@37 Find all elements of TYPE in PARSE.
(defalias 'nnweb-parse-find-all #[(type parse) "\3022	\303	\"0\207" [type parse found nnweb-parse-find-all-1] 3 (#$ . 16285)])
(defalias 'nnweb-parse-find-all-1 #[(type contents) "\305	:\203:	@\n=\203	B\202:	A<\203:	\305\211\2039\f@\211:\2032\306\n\"\244\fA\211\204#*)\207" [result contents type element --dolist-tail-- nil nnweb-parse-find-all-1] 5])
#@42 Return a list of text contents in PARSE.
(defalias 'nnweb-text #[(parse) "\302\303	!\210\237)\207" [nnweb-text parse nil nnweb-text-1] 2 (#$ . 16700)])
(defalias 'nnweb-text-1 #[(contents) "\304\211\205.\n@\211;\203	B\202&	:\203&	A<\203&\305	!\210\nA\211\204\304*\207" [contents element --dolist-tail-- nnweb-text nil nnweb-text-1] 3])
(provide 'nnweb)

Zerion Mini Shell 1.0