%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/url/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/url/url-handlers.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.

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


(require 'url-parse)
#@60 Convert URL to a fully specified URL, and canonicalize it.
(autoload 'url-expand-file-name "url-expand" '(#$ . 429))
#@63 Dissect the current buffer and return a list of MIME handles.
(autoload 'mm-dissect-buffer "mm-decode" '(#$ . 552))
#@31 Get PROPERTY of a URL SCHEME.
(autoload 'url-scheme-get-property "url-methods" '(#$ . 674))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313\314\315&\207" [custom-declare-variable url-handler-mode funcall function #[0 "\300\207" [nil] 1] "Non-nil if Url-Handler mode is enabled.\nSee the `url-handler-mode' command\nfor a description of this minor mode.\nSetting this variable directly does not take effect;\neither customize it (see the info node `Easy Customization')\nor call the function `url-handler-mode'." :set custom-set-minor-mode :initialize custom-initialize-default :group url :type boolean] 12)
#@330 Toggle using `url' library for URL filenames (URL Handler mode).

If called interactively, enable Url-Handler mode if ARG is positive,
and disable it if ARG is zero or negative.  If called from Lisp, also
enable the mode if ARG is omitted or nil, and toggle it if ARG is
`toggle'; disable the mode otherwise.

(fn &optional ARG)
(defalias 'url-handler-mode #[256 "\303 \304\301\305=\203\306\301!?\202\307!\310V\"\210\311\312\313\"\"	\203*\n\313BB\314\315\306\301!\2036\316\2027\317\"\210\320\321!\203a\322\301!\210\303 \203O\211\303 \232\203a\323\324\325\306\301!\203\\\326\202]\327#\266\210\330 \210\306\301!\207" [file-name-handler-alist url-handler-mode url-handler-regexp current-message set-default toggle default-value prefix-numeric-value 0 delq rassq url-file-handler run-hooks url-handler-mode-hook url-handler-mode-on-hook url-handler-mode-off-hook called-interactively-p any customize-mark-as-set "" message "Url-Handler mode %sabled%s" "en" "dis" force-mode-line-update] 7 (#$ . 1304) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar url-handler-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\307\211%\210\311\312\313\314\315DD\316\317\320\321\322\323\324\325\326&\207" [url-handler-mode-map url-handler-mode-hook variable-documentation put "Hook run after entering or leaving `url-handler-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode url-handler-mode nil boundp custom-declare-variable url-handler-regexp funcall function #[0 "\300\207" [#1="\\`\\(?:https?\\|ftp\\|file\\|nfs\\|ssh\\|scp\\|rsync\\|telnet\\)://"] 1 #1#] "Regular expression for URLs handled by `url-handler-mode'.\nWhen URL Handler mode is enabled, this regular expression is\nadded to `file-name-handler-alist'.\n\nSome valid URL protocols just do not make sense to visit\ninteractively (about, data, info, irc, mailto, etc.).  This\nregular expression avoids conflicts with local files that look\nlike URLs (Gnus is particularly bad at this)." :group url :type regexp :version "25.1" :set #[514 "\300\301!\210\302\"\210\211\205\300 \207" [url-handler-mode 0 set-default] 6 "\n\n(fn SYMBOL VALUE)"]] 12)
#@23 

(fn OPERATION ARGS)
(defalias 'url-run-real-handler #[514 "\302=\205	B\303\"*\207" [inhibit-file-name-operation inhibit-file-name-handlers url-file-handler apply] 5 (#$ . 3594)])
#@27 Check for recursive load.
(defvar url-file-handler-load-in-progress nil (#$ . 3790))
#@214 Function called from the `file-name-handler-alist' routines.
OPERATION is what needs to be done (`file-exists-p', etc.).
ARGS are the arguments that would have been passed to OPERATION.

(fn OPERATION &rest ARGS)
(defalias 'url-file-handler #[385 "\203
	\203
\305\"\207\3062L\nB\211\205I\211@\211;\203B\307!\310!>\2043\311\312\313D\"\210\211\314H\262\f\235\203B\315\306\316\"\210A\266\202\202\2620\203W\317\320#\202\251\321N\322\204p\323\324\325\326\"!!\203p\327\330\"\210\203\214\331 \332\333\334\335\336!\337\"\340$\216\317\")\262\202\220\305\"\262\341\342\343\203\235\344\202\236\345&\210\262)\207" [load-in-progress url-file-handler-load-in-progress default-directory cl-struct-url-tags url-tramp-protocols url-run-real-handler :do url-generic-parse-url type-of signal wrong-type-argument url 1 throw t apply url-tramp-file-handler url-file-handlers nil fboundp intern-soft format "url-%s" error "Missing URL handler mapping for %s" match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 url-debug handlers "%s %S%S => %S" "Hooked" "Real"] 11 (#$ . 3882)])
#@26 

(fn ARG &rest IGNORED)
(defalias 'url-file-handler-identity #[385 "\207" [] 3 (#$ . 5041)])
(byte-code "\300\301\302\303#\210\300\304\302\305#\210\300\306\302\307#\210\300\310\302\311#\210\300\312\302\313#\210\300\314\302\315#\210\300\316\302\317#\210\300\320\302\321#\210\300\322\302\323#\210\300\324\302\323#\210\300\325\302\323#\207" [put file-readable-p url-file-handlers url-file-exists-p substitute-in-file-name url-file-handler-identity file-name-absolute-p #[128 "\300\207" [t] 2 "\n\n(fn &rest IGNORED)"] expand-file-name url-handler-expand-file-name directory-file-name url-handler-directory-file-name file-name-directory url-handler-file-name-directory unhandled-file-name-directory url-handler-unhandled-file-name-directory file-remote-p url-handler-file-remote-p file-writable-p ignore file-symlink-p vc-registered] 4)
#@28 

(fn FILE &optional BASE)
(defalias 'url-handler-expand-file-name #[513 "\300!\203\301\302\"\207\303\"\207" [file-name-absolute-p expand-file-name "/" url-expand-file-name] 5 (#$ . 5882)])
#@12 

(fn DIR)
(defalias 'url-handler-directory-file-name #[257 "\300\301\"\203\207\302\303C\"\207" [string-suffix-p "//" url-run-real-handler directory-file-name] 4 (#$ . 6084)])
#@17 

(fn FILENAME)
(defalias 'url-handler-unhandled-file-name-directory #[257 "\301!\302!>\204\303\304\305D\"\210\211\306H\307\232\2052\310\302!>\204*\303\304\305D\"\210\311H!\2062\312\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 "file" file-name-as-directory 6 "/"] 7 (#$ . 6270)])
#@12 

(fn DIR)
(defalias 'url-handler-file-name-directory #[257 "\301!\302!>\204\303\304\305D\"\210\211\306H\307\232\204<\302!>\204)\303\304\305D\"\210\211\310H\211\311\230\262\203<\312\313P!\202A\314\315C\"\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 "file" 6 "" url-handler-file-name-directory "/" url-run-real-handler file-name-directory] 6 (#$ . 6612)])
#@52 

(fn FILENAME &optional IDENTIFICATION CONNECTED)
(defalias 'url-handler-file-remote-p #[769 "\301!\302!>\204\303\304\305D\"\210\211\306H\205\302!>\204'\303\304\305D\"\210\211\306H\307\232?\205\310\267\202\212\302!>\204E\303\304\305D\"\210\211\306H\202\302!>\204Z\303\304\305D\"\210\211\311H\202\302!>\204o\303\304\305D\"\210\211\312H\202\302!>\204\204\303\304\305D\"\210\211\313H\202\314\302!>\204\232\303\304\305D\"\210\306H\302!>\204\254\303\304\305D\"\210\311H\302!>\204\277\303\304\305D\"\210\312H\302!>\204\322\303\304\305D\"\210\211\315H\206\302!>\204\347\303\304\305D\"\210\211\306H\205\316\302!>\204\375\303\304\305D\"\210\306H\317\"\262\320\305\321\321\211\211\211\211\322\211&
\266\204!\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 "file" #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (method 54 user 75 host 96 localname 117)) 2 4 6 url-recreate-url 5 url-scheme-get-property default-port record nil t] 23 (#$ . 7032)])
#@341 Copy URL to NEWNAME.  Both arguments must be strings.
Signal a `file-already-exists' error if file NEWNAME already
exists, unless a third argument OK-IF-ALREADY-EXISTS is supplied
and non-nil.  An integer as third argument means request
confirmation if NEWNAME already exists.

(fn URL NEWNAME &optional OK-IF-ALREADY-EXISTS &rest IGNORED)
(defalias 'url-copy-file #[898 "\301!\203\203\250\203\302\303\304\"!\204\305\306\307D\"\210\310!\206-\305\311\312\313E\"r\211q\210\314\315!)\316 \317\"\210)\320!\210\321!\207" [mm-attachment-file-modes file-exists-p yes-or-no-p format "File %s already exists; copy to it anyway? " signal file-already-exists "File already exists" url-retrieve-synchronously file-missing "Opening URL" "No such file or directory" mm-dissect-buffer t default-file-modes mm-save-part-to-file kill-buffer mm-destroy-parts] 9 (#$ . 8135)])
(put 'copy-file 'url-file-handlers 'url-copy-file)
#@149 Copy URL into a temporary file on this machine.
Returns the name of the local copy, or nil, if FILE is directly
accessible.

(fn URL &rest IGNORED)
(defalias 'url-file-local-copy #[385 "\300\301!\302\303#\210\211\207" [make-temp-file "url" url-copy-file ok-if-already-exists] 7 (#$ . 9074)])
(put 'file-local-copy 'url-file-handlers 'url-file-local-copy)
#@552 Insert the body of a URL object.
BUFFER should be a complete URL buffer as returned by `url-retrieve'.
If the headers specify a coding-system (and current buffer is multibyte),
it is applied to the body before it is inserted.
Returns a list of the form (SIZE CHARSET), where SIZE is the size in bytes
of the inserted text and CHARSET is the charset that was specified in the header,
or nil if none was found.
BEG and END can be used to only insert a subpart of the body.
They count bytes from the beginning of the body.

(fn BUFFER &optional BEG END)
(defalias 'url-insert #[769 "rq\210\301\302!)r\211@q\210\203#e\\\203e\\\202d{\202%\303 )\2050\304A@\305\"\306!\210\211\203A\307\310!\"\202Bc\210GD\207" [enable-multibyte-characters mm-dissect-buffer t buffer-string mail-content-type-get charset mm-destroy-parts mm-decode-string mm-charset-to-coding-system] 10 (#$ . 9438)])
#@214 Insert the contents of BUFFER into current buffer.
This is like `url-insert', but also decodes the current buffer as
if it had been inserted from a file named URL.

(fn BUFFER URL &optional VISIT BEG END REPLACE)
(defalias 'url-insert-buffer-contents #[1538 "\203\212`\301#\302!\210\203e|\210`d|\210\211A@\2045\303e`					&\210\211@\304\305!\203G\305	\"\206HD\262\266\202)\207" [buffer-file-name url-insert kill-buffer decode-coding-inserted-region fboundp after-insert-file-set-coding] 16 (#$ . 10343)])
#@44 

(fn URL &optional VISIT BEG END REPLACE)
(defalias 'url-insert-file-contents #[1281 "\300!\211\204\301\302\303D\"\210\304\305!\203\305#\210\306&\207" [url-retrieve-synchronously signal file-error "No Data" fboundp url-http--insert-file-helper url-insert-buffer-contents] 13 (#$ . 10883)])
(put 'insert-file-contents 'url-file-handlers 'url-insert-file-contents)
#@42 

(fn URL DIRECTORY &optional PREDICATE)
(defalias 'url-file-name-completion #[770 "\207" [] 4 (#$ . 11277)])
(put 'file-name-completion 'url-file-handlers 'url-file-name-completion)
#@23 

(fn FILE DIRECTORY)
(defalias 'url-file-name-all-completions #[514 "\300\207" [nil] 3 (#$ . 11467)])
(put 'file-name-all-completions 'url-file-handlers 'url-file-name-all-completions)
#@20 

(fn METHOD ARGS)
(defalias 'url-handlers-create-wrapper '(macro . #[514 "\300\301\302\303\304\"!\303\305\306	\307\"\206\310#\311\312\313\314\315\316\317
DE\320\321\320\322\"\"BBE\257\323\324\317D\325BB\326\317D\327\330\302\303\304\f\"!DFEE\207" [progn defun intern format "url-%s" "URL file-name-handler wrapper for `%s' call.\n---\n%s" documentation t "No original documentation." (setq url (url-generic-parse-url url)) when (url-type url) funcall url-scheme-get-property (url-type url) quote remq &rest &optional unless get ('url-file-handlers) put 'url-file-handlers function] 17 (#$ . 11659)]))
#@392 URL file-name-handler wrapper for `file-exists-p' call.
---
Return t if file FILENAME exists (whether or not you can read it).
Return nil if FILENAME does not exist, or if there was trouble
determining whether the file exists.
See also `file-readable-p' and `file-attributes'.
This returns nil for a symlink to a nonexistent file.
Use `file-symlink-p' to test for such links.

(fn FILENAME)
(defalias 'url-file-exists-p #[257 "\301!\262\302!>\204\303\304\305D\"\210\211\306H\2051\307\302!>\204*\303\304\305D\"\210\306H\310\"!\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 url-scheme-get-property file-exists-p] 6 (#$ . 12284)])
(byte-code "\300\301N\204\f\302\300\301\303#\210\300\207" [file-exists-p url-file-handlers put url-file-exists-p] 4)
#@2125 URL file-name-handler wrapper for `file-attributes' call.
---
Return a list of attributes of file FILENAME.
Value is nil if specified file does not exist.

ID-FORMAT specifies the preferred format of attributes uid and gid (see
below) - valid values are `string' and `integer'.  The latter is the
default, but we plan to change that, so you should specify a non-nil value
for ID-FORMAT if you use the returned uid or gid.

To access the elements returned, the following access functions are
provided: `file-attribute-type', `file-attribute-link-number',
`file-attribute-user-id', `file-attribute-group-id',
`file-attribute-access-time', `file-attribute-modification-time',
`file-attribute-status-change-time', `file-attribute-size',
`file-attribute-modes', `file-attribute-inode-number', and
`file-attribute-device-number'.

Elements of the attribute list are:
 0. t for directory, string (name linked to) for symbolic link, or nil.
 1. Number of links to file.
 2. File uid as a string or (if ID-FORMAT is `integer' or a string value
  cannot be looked up) as an integer.
 3. File gid, likewise.
 4. Last access time, in the style of `current-time'.
  (See a note below about access time on FAT-based filesystems.)
 5. Last modification time, likewise.  This is the time of the last
  change to the file's contents.
 6. Last status change time, likewise.  This is the time of last change
  to the file's attributes: owner and group, access mode bits, etc.
 7. Size in bytes, as an integer.
 8. File modes, as a string of ten letters or dashes as in ls -l.
 9. An unspecified value, present only for backward compatibility.
10. inode number, as a nonnegative integer.
11. Filesystem device number, as an integer.

Large integers are bignums, so `eq' might not work on them.
On most filesystems, the combination of the inode and the device
number uniquely identifies the file.

On MS-Windows, performance depends on `w32-get-true-file-attributes',
which see.

On some FAT-based filesystems, only the date of last access is recorded,
so last access time will always be midnight of that day.

(fn FILENAME &optional ID-FORMAT)
(defalias 'url-file-attributes #[513 "\301!\262\302!>\204\303\304\305D\"\210\306H\2052\307\302!>\204*\303\304\305D\"\210\306H\310\"\"\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 url-scheme-get-property file-attributes] 7 (#$ . 13094)])
(byte-code "\300\301N\204\f\302\300\301\303#\210\300\207" [file-attributes url-file-handlers put url-file-attributes] 4)
#@381 URL file-name-handler wrapper for `file-symlink-p' call.
---
Return non-nil if file FILENAME is the name of a symbolic link.
The value is the link target, as a string.
Return nil if FILENAME does not exist or is not a symbolic link,
of there was trouble determining whether the file is a symbolic link.

This function does not check whether the link target exists.

(fn FILENAME)
(defalias 'url-file-symlink-p #[257 "\301!\262\302!>\204\303\304\305D\"\210\211\306H\2051\307\302!>\204*\303\304\305D\"\210\306H\310\"!\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 url-scheme-get-property file-symlink-p] 6 (#$ . 15643)])
(byte-code "\300\301N\204\f\302\300\301\303#\210\300\207" [file-symlink-p url-file-handlers put url-file-symlink-p] 4)
#@138 URL file-name-handler wrapper for `file-writable-p' call.
---
Return t if file FILENAME can be written or created by you.

(fn FILENAME)
(defalias 'url-file-writable-p #[257 "\301!\262\302!>\204\303\304\305D\"\210\211\306H\2051\307\302!>\204*\303\304\305D\"\210\306H\310\"!\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 url-scheme-get-property file-writable-p] 6 (#$ . 16445)])
(byte-code "\300\301N\204\f\302\300\301\303#\210\300\207" [file-writable-p url-file-handlers put url-file-writable-p] 4)
#@346 URL file-name-handler wrapper for `file-directory-p' call.
---
Return t if FILENAME names an existing directory.
Return nil if FILENAME does not name a directory, or if there
was trouble determining whether FILENAME is a directory.
Symbolic links to directories count as directories.
See `file-symlink-p' to distinguish symlinks.

(fn FILENAME)
(defalias 'url-file-directory-p #[257 "\301!\262\302!>\204\303\304\305D\"\210\211\306H\2051\307\302!>\204*\303\304\305D\"\210\306H\310\"!\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 url-scheme-get-property file-directory-p] 6 (#$ . 17008)])
(byte-code "\300\301N\204\f\302\300\301\303#\210\300\207" [file-directory-p url-file-handlers put url-file-directory-p] 4)
#@281 URL file-name-handler wrapper for `file-executable-p' call.
---
Return t if FILENAME can be executed by you.
For a directory, this means you can access files in that directory.
(It is generally better to use `file-accessible-directory-p' for that
purpose, though.)

(fn FILENAME)
(defalias 'url-file-executable-p #[257 "\301!\262\302!>\204\303\304\305D\"\210\211\306H\2051\307\302!>\204*\303\304\305D\"\210\306H\310\"!\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 url-scheme-get-property file-executable-p] 6 (#$ . 17783)])
(byte-code "\300\301N\204\f\302\300\301\303#\210\300\207" [file-executable-p url-file-handlers put url-file-executable-p] 4)
#@576 URL file-name-handler wrapper for `directory-files' call.
---
Return a list of names of files in DIRECTORY.
There are three optional arguments:
If FULL is non-nil, return absolute file names.  Otherwise return names
 that are relative to the specified directory.
If MATCH is non-nil, mention only file names that match the regexp MATCH.
If NOSORT is non-nil, the list is not sorted--its order is unpredictable.
 Otherwise, the list returned is sorted with `string-lessp'.
 NOSORT is useful if you plan to sort the result yourself.

(fn DIRECTORY &optional FULL MATCH NOSORT)
(defalias 'url-directory-files #[1025 "\301!\262\302!>\204\303\304\305D\"\210\306H\2056\307\302!>\204,\303\304\305D\"\210\306H\310\"$\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 url-scheme-get-property directory-files] 9 (#$ . 18497)])
(byte-code "\300\301N\204\f\302\300\301\303#\210\300\207" [directory-files url-file-handlers put url-directory-files] 4)
#@366 URL file-name-handler wrapper for `file-truename' call.
---
Return the truename of FILENAME.
If FILENAME is not absolute, first expands it against `default-directory'.
The truename of a file name is found by chasing symbolic links
both at the level of the file and at the level of the directories
containing it, until no links are left at any level.

(fn FILENAME)
(defalias 'url-file-truename #[769 "\301!\262\302!>\204\303\304\305D\"\210\306H\2054\307\302!>\204+\303\304\305D\"\210\306H\310\"#\207" [cl-struct-url-tags url-generic-parse-url type-of signal wrong-type-argument url 1 url-scheme-get-property file-truename] 8 (#$ . 19501)])
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305\306\"\207" [file-truename url-file-handlers put url-file-truename add-hook find-file-hook url-handlers-set-buffer-mode] 4)
#@69 Set correct modes for the current buffer if visiting a remote file.
(defalias 'url-handlers-set-buffer-mode #[0 "\205	\303\304\305#)\266\203\205\306\307!\207" [buffer-file-name url-handler-regexp inhibit-changing-match-data nil t string-match auto-save-mode 0] 7 (#$ . 20346)])
(provide 'url-handlers)

Zerion Mini Shell 1.0