HOME


sh-3ll 1.0
DIR:/usr/share/emacs/26.1/lisp/url/
Upload File :
Current File : //usr/share/emacs/26.1/lisp/url/url-file.elc
;ELC
;;; Compiled
;;; in Emacs version 26.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 "\300\301!\210\300\302!\210\300\303!\210\300\304!\207" [require mailcap url-vars url-parse url-dired] 2)
#@19 Default FTP port.
(defconst url-file-default-port 21 (#$ . 524))
#@33 FTP transfers are asynchronous.
(defconst url-file-asynchronous-p t (#$ . 595))
(defalias 'url-file-expand-file-name 'url-default-expander)
#@323 Find the exact file referenced by `fname'.
This tries the common compression extensions, because things like
ange-ftp and efs are not quite smart enough to realize when a server
can do automatic decompression for them, and won't find 'foo' if
'foo.gz' exists, even though the FTP server would happily serve it up
to them.
(defalias 'url-file-find-possibly-compressed-file #[(fname &rest args) "\304\305\304	\203!\204!\306	\211A\242P\211!\203\n\202+\207" [found compressed-extensions scratch fname nil ("" ".gz" ".z" ".Z" ".bz2" ".xz") file-exists-p] 4 (#$ . 742)])
#@48 Return t if HOST references our local machine.
(defalias 'url-file-host-is-local-p #[(host) "\302	?\206?	\303\230\206?	\227\304 \227\232\206?\305\306	\"\203!\302\202?\305\307	\"?\205?	\227\305\307\304 \"\203<\304 \310\211\224O\202>\304 \232)\207" [case-fold-search host t "" system-name string-match "^localhost$" "\\." 0] 4 (#$ . 1328)])
(defalias 'url-file-asynch-callback #[(x y name buff func args &optional efs) "\306\307!\204\n\f\310\311	!8rq\210db\210
\312U\204'\313\314
\"c\210\315c\210\316	!\210\317\320!>\204A\321\322\323D\"\210\324H!\204Y\3251T\326	!0\202X\210\202Y\210\327\n\"*\207" [buff name func args efs size featurep ange-ftp 7 file-attributes -1 format "Content-length: %d\n" "\n" insert-file-contents-literally url-file-host-is-local-p type-of signal wrong-type-argument url 4 (error) delete-file apply url-current-object cl-struct-url-tags] 5])
(defalias 'url-file-build-filename #[(url) "\306!	>\204\f\307!\306!	>\204\310\311\300D\"\210\312H\306!	>\204.\310\311\300D\"\210\313H\306!	>\204B\310\311\300D\"\210\211\314H\206r\306!	>\204W\310\311\300D\"\210\211\315H\205r\316\306!	>\204m\310\311\300D\"\210\315H\317\"\262\306!	>\204\204\310\311\300D\"\210\320H\f\203\250\f\321U\204\250\322\323!\203\240\324\325
\f#\202\251\324\326
\f#\202\251
,\327\306!	>\204\273\310\311\300D\"\210\330H!-\n\204\313\331
!\204\334\332\n\206\321\333\334,\335-\260\202\336\337-\"\203\363.\340>\203\363-\315\341O\202\336\342-\"\203\343-P\202-/\3410\n\203\203\322\323!\203\344
\n#\210\345/!\203H\336\346/\"\204H\306!	>\204;\310\311\300D\"\210\2111\330\324\347/\"I\210)\345/!\203r2\203r\3502/\"\2110\203r\3510!\203r\3520!\203r0/\353/!\211/.\207" [url cl-struct-url-tags user pass port host type-of url-generic-parse-url signal wrong-type-argument 2 3 5 1 url-scheme-get-property default-port 4 21 featurep ange-ftp format "%s %d" "%s#%d" url-unhex-string 6 url-file-host-is-local-p "/" "anonymous" "@" ":" string-match "\\`/[a-zA-Z]:/" (ms-dos windows-nt) nil "\\`/[^/]+:/" "/:" ange-ftp-set-passwd file-directory-p "/\\'" "%s/" expand-file-name file-exists-p file-readable-p url-file-find-possibly-compressed-file site file system-type filename pos-index #1=#:v url-directory-index-file] 7])
#@29 Handle file: and ftp: URLs.
(defalias 'url-file #[(url callback cbargs) "\306\211\306\211\307\310
!\2117\204\311\312\313
!\"\210\314\3157\"\203+7\316\211\224O\202-7\317\320	!!\3207!\2118\321\235\203D\322\202|8\323\232\203O\324\202|8\325\232\203Z\326\202|8\327\232\203e\330\202|8\331\232\203p\332\202|8\333\232\203{\334\202|\306)\3357!\203\215\3367!\210\202r\337\340!\211q\210\341\342!\210\343 \210
9\344\n\206\245\345\346\261\210\203\263\347\346\261\210\350\351
!:>\204\304\352\353\305
D\"\210
\354H!\203\362\355\356!\203\341\357\306\2117p;<&\210\202\357\306\211\2117p;<&\210\202\360\361\362\363 \"!=\355\356!\203\3647\365=!\366\306\366\357=p;<\257\366&\210)).\207" [buffer uncompressed-filename content-type content-encoding coding-system-for-read url nil binary url-file-build-filename error "File does not exist: %s" url-recreate-url string-match "\\.\\(gz\\|Z\\|z\\)$" 0 mailcap-extension-to-mime url-file-extension (".gz" ".z") "gzip" ".Z" "compress" ".uue" "x-uuencoded" ".hqx" "x-hqx" ".bz2" "x-bzip2" ".xz" "x-xz" file-directory-p url-find-file-dired generate-new-buffer " *url-file*" require mm-util mm-disable-multibyte "Content-type: " "application/octet-stream" "\n" "Content-transfer-encoding: " url-file-host-is-local-p type-of signal wrong-type-argument 4 featurep ange-ftp url-file-asynch-callback make-temp-file format "url-tmp.%d" user-real-uid ange-ftp-copy-file-internal expand-file-name t filename #1=#:val url-current-object cl-struct-url-tags callback cbargs new] 12 (#$ . 3661)])
(defalias 'url-file-create-wrapper '(macro . #[(method args) "\302\303\304\305\306\"!D\307\304\305\310\"!	\305\311\"\312\313\314\315\316\315\317	\"\"BE\257E\207" [method args defalias quote intern format "url-ftp-%s" defun "url-file-%s" "FTP/FILE URL wrapper around `%s' call." (setq url (url-file-build-filename url)) and url remove &rest &optional] 15]))
(byte-code "\300\301\300\302\303\"\"\210\300\304\300\305\306\"\"\210\300\307\300\310\311\"\"\210\300\312\300\313\314\"\"\210\300\315\300\316\317\"\"\210\300\320\300\321\322\"\"\210\300\323\300\324\325\"\"\210\300\326\300\327\330\"\"\210\331\332!\207" [defalias url-ftp-file-exists-p url-file-file-exists-p #[(url) "\301!\211\205\302!\207" [url url-file-build-filename file-exists-p] 3 "FTP/FILE URL wrapper around `file-exists-p' call."] url-ftp-file-attributes url-file-file-attributes #[(url &optional id-format) "\302!\211\205\f\303	\"\207" [url id-format url-file-build-filename file-attributes] 4 "FTP/FILE URL wrapper around `file-attributes' call."] url-ftp-file-symlink-p url-file-file-symlink-p #[(url) "\301!\211\205\302!\207" [url url-file-build-filename file-symlink-p] 3 "FTP/FILE URL wrapper around `file-symlink-p' call."] url-ftp-file-readable-p url-file-file-readable-p #[(url) "\301!\211\205\302!\207" [url url-file-build-filename file-readable-p] 3 "FTP/FILE URL wrapper around `file-readable-p' call."] url-ftp-file-writable-p url-file-file-writable-p #[(url) "\301!\211\205\302!\207" [url url-file-build-filename file-writable-p] 3 "FTP/FILE URL wrapper around `file-writable-p' call."] url-ftp-file-executable-p url-file-file-executable-p #[(url) "\301!\211\205\302!\207" [url url-file-build-filename file-executable-p] 3 "FTP/FILE URL wrapper around `file-executable-p' call."] url-ftp-directory-files url-file-directory-files #[(url &optional full match nosort) "\304!\211\205\305	\n$\207" [url full match nosort url-file-build-filename directory-files] 6 "FTP/FILE URL wrapper around `directory-files' call."] url-ftp-file-truename url-file-file-truename #[(url &optional counter prev-dirs) "\303!\211\205
\304	\n#\207" [url counter prev-dirs url-file-build-filename file-truename] 5 "FTP/FILE URL wrapper around `file-truename' call."] provide url-file] 5)