%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/gnus/ |
Current File : //usr/local/share/emacs/27.2/lisp/gnus/nnspool.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 "\300\301!\210\300\302!\210\300\303!\210\304\305\306\"\207" [require nnheader nntp nnoo defvaralias news-path news-directory] 3) #@59 The root directory below which all news files are stored. (defvar news-directory (byte-code "\300\301!\203 \301\207\302\207" [file-exists-p "/usr/spool/news/" "/var/spool/news/"] 2) (#$ . 548)) #@23 Program to post news. (defvar news-inews-program (byte-code "\300\301!\203 \301\207\300\302!\203 \302\207\300\303!\203 \303\207\300\304!\203 \304\207\300\305!\203( \305\207\306\207" [file-exists-p "/usr/bin/inews" "/usr/local/inews" "/usr/local/bin/inews" "/usr/contrib/lib/news/inews" "/usr/lib/news/inews" "inews"] 2) (#$ . 749)) (byte-code "\302\236\203 \302\236A\303\304\305\"\240\210\202 \302\303\304\305\"\305\211FB\302 \236\204* \302\306D B\305\207" [nnoo-definition-alist nnoo-state-alist nnspool mapcar list nil "*internal-non-initialized-backend*"] 4) #@139 Program to post news. This is most commonly `inews' or `injnews'. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-inews-program news-inews-program (#$ . 1329)) (nnoo-define 'nnspool-inews-program nil) #@214 Switches for nnspool-request-post to pass to `inews' for posting news. If you are using Cnews, you probably should set this variable to nil. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-inews-switches '("-h" "-S") (#$ . 1577)) (nnoo-define 'nnspool-inews-switches nil) #@101 Local news spool directory. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-spool-directory (byte-code "\301\302\303!\203\f \303J\202 !\207" [news-path file-name-as-directory boundp news-directory] 3) (#$ . 1896)) (nnoo-define 'nnspool-spool-directory nil) #@99 Local news nov directory. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-nov-directory (concat nnspool-spool-directory "over.view/") (#$ . 2201)) (nnoo-define 'nnspool-nov-directory nil) #@120 Where the local news library files are stored. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-lib-dir (byte-code "\300\301!\203 \302\207\303\207" [file-exists-p "/usr/lib/news/active" "/usr/lib/news/" "/var/lib/news/"] 2) (#$ . 2436)) (nnoo-define 'nnspool-lib-dir nil) #@97 Local news active file. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-active-file (concat nnspool-lib-dir "active") (#$ . 2754)) (nnoo-define 'nnspool-active-file nil) #@101 Local news newsgroups file. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-newsgroups-file (concat nnspool-lib-dir "newsgroups") (#$ . 2971)) (nnoo-define 'nnspool-newsgroups-file nil) #@104 Local news distributions file. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-distributions-file (concat nnspool-lib-dir "distribs.pat") (#$ . 3204)) (nnoo-define 'nnspool-distributions-file nil) #@98 Local news history file. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-history-file (concat nnspool-lib-dir "history") (#$ . 3447)) (nnoo-define 'nnspool-history-file nil) #@102 Local news active date file. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-active-times-file (concat nnspool-lib-dir "active.times") (#$ . 3668)) (nnoo-define 'nnspool-active-times-file nil) #@247 The number of articles which indicates a large newsgroup. If the number of articles is greater than the value, verbose messages will be shown to indicate the current status. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-large-newsgroup 50 (#$ . 3908)) (nnoo-define 'nnspool-large-newsgroup nil) #@148 Non-nil means that nnspool will never return NOV lines instead of headers. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-nov-is-evil nil (#$ . 4252)) (nnoo-define 'nnspool-nov-is-evil nil) #@151 If non-nil, use sed to get the relevant portion from the overview file. If nil, nnspool will load the entire file into a buffer and process it there. (defconst nnspool-sift-nov-with-sed nil (#$ . 4490)) #@146 A hook that will be run when an article has been rejected by the server. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-rejected-article-hook nil (#$ . 4700)) (nnoo-define 'nnspool-rejected-article-hook nil) #@100 Coding system for nnspool. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-file-coding-system nnheader-file-coding-system (#$ . 4956)) (nnoo-define 'nnspool-file-coding-system nil) #@45 Version numbers of this version of NNSPOOL. (defconst nnspool-version "nnspool 2.0" (#$ . 5183)) #@103 Current news group directory. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnspool-current-directory nil (#$ . 5287)) (nnoo-define 'nnspool-current-directory nil) (defvar nnspool-current-group nil) (nnoo-define 'nnspool-current-group nil) (defvar nnspool-status-string "") (byte-code "\300\301\302\"\210\303\304!\207" [nnoo-define nnspool-status-string nil nnoo-define-basics-1 nnspool] 3) #@35 Retrieve the headers of ARTICLES. (defalias 'nnspool-retrieve-headers #[(articles &optional group server fetch-old) "rq\210\306 \210\307 !\205M\nG\310 )*\247\205 *V+,-\311\211./\311\21101\n@\247\203C \312\n2\"\203C \313\202K\n\211A\242\2110\203=0;\203p \3140!\2111\205f \3151@1A\".1A0\202v \3160!..\203\317.!\203\320c\210\3210p\"\210\322c\210`/..\317.!\205\364 3\323=\203\253 \324.!\210\202\363 \310`\32545/6\326.\311/\2116\\\211/$A@=\203\343 \327\330\311\323#?db\210\203\343 3\203\264 /3W\204\264 \331-!\203\362 \3325d-#\210+\323)\210/b\210\333\334\311\323#\203\335u\210\336c\210\202db\210n\203\336c\210\202\337c\210`d|\210+\203C \fT\211\340\246\310U\203C \341\342\343\344\f\345_\"#\210\202C +\203G\341\342\346\"\210\347 \210\350. )\207" [nntp-server-buffer group articles number count nnspool-current-directory erase-buffer nnspool-possibly-change-directory 0 nil nnspool-retrieve-headers-with-nov nov nnspool-find-id nnspool-article-pathname int-to-string file-exists-p "221 " princ " Article retrieved.\n" t nnheader-insert-file-contents binary mm-insert-file-contents re-search-forward "\n ?\n\\| " mm-coding-system-p decode-coding-region search-forward "\n\n" -1 ".\n" "\n.\n" 20 nnheader-message 5 "nnspool: Receiving headers... %d%%" floor 100.0 "nnspool: Receiving headers...done" nnheader-fold-continuation-lines headers default-directory nnspool-large-newsgroup do-message nnspool-file-coding-system nnheader-file-coding-system file beg article ag fetch-old nnheader-max-head-length coding-system-for-read start nnheader-head-chop-length] 8 (#$ . 5718)]) (nnoo-register-function 'nnspool-retrieve-headers) (defalias 'nnspool-open-server #[(server &optional defs) "\304\305 #\210\306\n!\204 \307 \210\310\305\311\n#\207\312\313\314\n!!!\204( \307 \210\310\305\315\n#\207\306!\2044 \310\305\316#\207\310\305\317\n$\210\320\207" [server defs nnspool-spool-directory nnspool-active-file nnoo-change-server nnspool file-exists-p nnspool-close-server nnheader-report "Spool directory doesn't exist: %s" file-directory-p directory-file-name file-truename "Not a directory: %s" "The active file doesn't exist: %s" "Opened server %s using directory %s" t] 5]) (nnoo-register-function 'nnspool-open-server) #@43 Select article by message ID (or number). (defalias 'nnspool-request-article #[(id &optional group server buffer) "\306!\210 \206 \n\307\211 ;\203% \310 !\211\203+ \311@A\"\202+ \311 \"\f\205Q \312\f!\205Q \313\f!?\205Q \212\314\f!)\205Q \247\203P B\202Q +\207" [group buffer nntp-server-buffer ag file id nnspool-possibly-change-directory nil nnspool-find-id nnspool-article-pathname file-exists-p file-directory-p nnspool-find-file nnspool-current-group] 3 (#$ . 8010)]) (nnoo-register-function 'nnspool-request-article) #@48 Select article body by message ID (or number). (defalias 'nnspool-request-body #[(id &optional group server) "\304!\210\305 !\211\205! rq\210eb\210\306\307\310\311#\203 e`|\210\n))\207" [group id res nntp-server-buffer nnspool-possibly-change-directory nnspool-request-article search-forward "\n\n" nil t] 5 (#$ . 8556)]) (nnoo-register-function 'nnspool-request-body) #@48 Select article head by message ID (or number). (defalias 'nnspool-request-head #[(id &optional group server) "\304!\210\305 !\211\203$ rq\210eb\210\306\307\310\311#\203 `Sd|\210\312 \210)\n)\207" [group id res nntp-server-buffer nnspool-possibly-change-directory nnspool-request-article search-forward "\n\n" nil t nnheader-fold-continuation-lines] 5 (#$ . 8935)]) (nnoo-register-function 'nnspool-request-head) #@20 Select news GROUP. (defalias 'nnspool-request-group #[(group &optional server dont-check info) "\305!\306\307\n!\204 \310\311\312#\202Z \n\310\311\313#\210\f\203* \310\311\313#\210\314\202Z \315\n\306\316\314$\211\203= \317\320\321 \"\322\" \203P \323\324 G @\325 !@%\202Z \310\311\326#\210\323\327\"*\207" [group dir pathname nnspool-current-directory dont-check nnspool-article-pathname nil file-directory-p nnheader-report nnspool "Invalid group name (no such directory): %s" "Selected group %s" t directory-files "\\`[0-9]+\\'" sort mapcar string-to-number < nnheader-insert "211 %d %d %d %s\n" last "Empty group %s" "211 0 0 0 %s\n"] 6 (#$ . 9357)]) (nnoo-register-function 'nnspool-request-group) (defalias 'nnspool-request-type #[(group &optional article) "\300\207" [news] 1]) (nnoo-register-function 'nnspool-request-type) (defalias 'nnspool-close-group #[(group &optional server) "\300\207" [t] 1]) (nnoo-register-function 'nnspool-close-group) #@25 List active newsgroups. (defalias 'nnspool-request-list #[(&optional server) "\212\301!\206 \302\303\304!\")\207" [nnspool-active-file nnspool-find-file nnheader-report nnspool nnheader-file-error] 4 (#$ . 10331)]) (nnoo-register-function 'nnspool-request-list) #@37 List newsgroups (defined in NNTP2). (defalias 'nnspool-request-list-newsgroups #[(&optional server) "\212\301!\206 \302\303\304!\")\207" [nnspool-newsgroups-file nnspool-find-file nnheader-report nnspool nnheader-file-error] 4 (#$ . 10602)]) (nnoo-register-function 'nnspool-request-list-newsgroups) #@40 List distributions (defined in NNTP2). (defalias 'nnspool-request-list-distributions #[(&optional server) "\212\301!\206 \302\303\304!\")\207" [nnspool-distributions-file nnspool-find-file nnheader-report nnspool nnheader-file-error] 4 (#$ . 10911)]) (nnoo-register-function 'nnspool-request-list-distributions) #@33 List groups created after DATE. (defalias 'nnspool-request-newgroups #[(date &optional server) "\306!\205] \212db\210\307\310!\204 \311y\312U\204\n \313\314 !\315\"\316\307\317!\203A \320\225b\210\321p!W\203A \320\224\320\225{\nB\311y\312U\204 \322 \210\n\316\211\203[ @\211\323\261\210 A\211\204L -\324\207" [nnspool-active-times-file date groups seconds group --dolist-tail-- nnspool-find-file looking-at "\\([^ ]+\\) +\\([0-9]+\\)[0-9][0-9][0-9] " -1 0 time-convert date-to-time integer nil "\\([^ ]+\\) +[0-9]+ " 1 read erase-buffer " 0 0 y\n" t] 4 (#$ . 11232)]) (nnoo-register-function 'nnspool-request-newgroups) #@36 Post a new news in current buffer. (defalias 'nnspool-request-post #[(&optional server) "\212\306\307\310!p\3111 \312\313\314 \f%0\202 \315\316\317 #)\211\205e \315\316\320\"\210\321\322\"\210\307\323!rq\210\324\216\325\306!\210\326\n!\210\327ed#\210\330ed#\210+\3311_ \332!0\202c \210\202d \210\333-\207" [process-connection-type inews-buffer buf nnspool-inews-program nnspool-inews-switches err nil generate-new-buffer " *nnspool post*" (error) apply start-process "*nnspool inews*" nnheader-report nnspool "inews error: %S" "" set-process-sentinel nnspool-inews-sentinel " *temp*" #[nil "\301!\205 \302!\207" [#1=#:temp-buffer buffer-name kill-buffer] 2] set-buffer-multibyte insert-buffer-substring encode-coding-region process-send-region (error) process-send-eof t proc #1# nnspool-file-coding-system] 7 (#$ . 11871)]) (nnoo-register-function 'nnspool-request-post) (defalias 'nnspool-inews-sentinel #[(proc status) "r\302!q\210eb\210\303 \304U\204 \305\306\307\310#\203 \311p!\202B \312\313\307\310#\203/ \314\315\310\211#\210\202 \316\317\320\321 #\210\322\323\324 #\210\325 \210\326\327!)\207" [proc nnspool-status-string process-buffer buffer-size 0 search-forward "spooled" nil t kill-buffer re-search-forward "[ \n]+" replace-match " " nnheader-report nnspool "%s" buffer-string nnheader-message 5 "nnspool: %s" ding run-hooks nnspool-rejected-article-hook] 4]) (defalias 'nnspool-retrieve-headers-with-nov #[(articles &optional fetch-old) "\206 ?\205\247 \306\n\307#\f \310\311!\205\246 rq\210\312 \210\2035 \313\f\"\202\245 \314!\210\203I \247\204I \315\202\245 \3161\243 \317\203] \320\f@Z]\202_ \f@\321\f!@\"\210\322 \323U?\205\237 \324y\210\325p!\211\f@U\203\200 \315\202\237 \203\230 @X\203\230 \211A\210\202\200 \326\327\"\210\3150\202\245 \210\310),\207" [gnus-nov-is-evil nnspool-nov-is-evil nnspool-current-group nnspool-nov-directory articles nnspool-file-coding-system nnheader-group-pathname ".overview" nil file-exists-p erase-buffer nnspool-sift-nov-with-sed nnheader-insert-file-contents t (error) nnheader-nov-delete-outside-range 1 last buffer-size 0 -1 read mapc nnspool-insert-nov-head nnheader-file-coding-system arts nov nntp-server-buffer fetch-old] 5]) #@63 Read the head of ARTICLE, convert to NOV headers, and insert. (defalias 'nnspool-insert-nov-head #[(article) "\212p\305\306\307!\310\311\n\"!\203' \312!\210eb\210\313 q\210db\210\314\f!\210)\315!+\207" [buf cur nnspool-current-group article headers nil nnheader-set-temp-buffer " *nnspool head*" nnheader-insert-head nnspool-article-pathname nnheader-insert-article-line nnheader-parse-head nnheader-insert-nov kill-buffer] 4 (#$ . 14139)]) (defalias 'nnspool-sift-nov-with-sed #[(articles file) "@\301!@\304\305\306\307\306\310\311\nS T#&*\207" [articles last first file call-process "awk" nil t format "BEGIN {firstmsg=%d; lastmsg=%d;}\n $1 >= firstmsg && $1 <= lastmsg {print;}"] 9]) (defalias 'nnspool-find-id #[(id) "\303\304!rq\210\305\216\3061 \307\310\311\312\311\313 !\n&0\202! \210\202\"