;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 "\300\301!\210\302\303\304\305\306\307\310\311&\210\302\312\313\314\306\315\310\311&\210\302\316\317\320\306\321\310\311\322\323& \210\302\324\325\326\306\327\310\311\322\330& \207" [require pcomplete custom-declare-variable pcmpl-unix-group-file "/etc/group" "If non-nil, a string naming the group file on your system." :type (choice file (const nil)) :group pcmpl-unix pcmpl-unix-passwd-file "/etc/passwd" "If non-nil, a string naming the passwd file on your system." (choice file (const nil)) pcmpl-ssh-known-hosts-file "~/.ssh/known_hosts" "If non-nil, a string naming your SSH \"known_hosts\" file.\nThis allows one method of completion of SSH host names, the other\nbeing via `pcmpl-ssh-config-file'. Note that newer versions of\nssh hash the hosts by default, to prevent Island-hopping SSH\nattacks. This can be disabled, at some risk, with the SSH option\n\"HashKnownHosts no\"." (choice file (const nil)) :version "23.1" pcmpl-ssh-config-file "~/.ssh/config" "If non-nil, a string naming your SSH \"config\" file.\nThis allows one method of completion of SSH host names, the other\nbeing via `pcmpl-ssh-known-hosts-file'." (choice file (const nil)) "24.1"] 10) #@22 Completion for `cd'. (defalias 'pcomplete/cd #[nil "\300\301\302\211\211$\205\f\202\207" [pcomplete--here #[nil "\300\301\302\"\207" [nil pcomplete-entries file-directory-p] 4] nil] 5 (#$ . 1593)]) (defalias 'pcomplete/pushd 'pcomplete/cd) #@25 Completion for `rmdir'. (defalias 'pcomplete/rmdir #[nil "\300\301\302\211\211$\205\f\202\207" [pcomplete--here #[nil "\300\301\302\"\207" [nil pcomplete-entries file-directory-p] 4] nil] 5 (#$ . 1843)]) #@22 Completion for `rm'. (defalias 'pcomplete/rm #[nil "\301\302\303!\210\304\305\306\307\306$\205\202)\207" [pcomplete-help "(fileutils)rm invocation" pcomplete-opt "dfirRv" pcomplete--here #[nil "\302\211\211\211\303\"*\207" [pcomplete-dir-ignore pcomplete-file-ignore nil pcomplete-entries] 5] nil expand-file-name] 5 (#$ . 2057)]) #@25 Completion for `xargs'. (defalias 'pcomplete/xargs #[nil "\301\302\303\211\211$\210\304\305\306!!\206 \207" [pcomplete-default-completion-function pcomplete--here #[nil " \207" [pcomplete-command-completion-function] 1] nil pcomplete-find-completion-function pcomplete-arg 1] 5 (#$ . 2403)]) (defalias 'pcomplete/time 'pcomplete/xargs) #@25 Completion for `which'. (defalias 'pcomplete/which #[nil "\300\301\302\211\211$\205\f\202\207" [pcomplete--here #[nil " \207" [pcomplete-command-completion-function] 1] nil] 5 (#$ . 2749)]) #@159 Return an alist correlating gids to group names in FILE. If FILE is in hashed format (as described in the OpenSSH documentation), this function returns nil. (defalias 'pcmpl-unix-read-passwd-file #[(file) "\304\305 !\2034\306\307!r\nq\210\310\216\311 !\210eb\210m\2043\312`\304\210`{\313\"\211@B)\304y\210\202+\314!)\207" [names file #1=#:temp-buffer fields nil file-readable-p generate-new-buffer " *temp*" #[nil "\301!\205 \302!\207" [#1# buffer-name kill-buffer] 2] insert-file-contents split-string ":" pcomplete-uniquify-list] 4 (#$ . 2950)]) #@50 Read the contents of /etc/group for group names. (defalias 'pcmpl-unix-group-names #[nil "\205\301!\207" [pcmpl-unix-group-file pcmpl-unix-read-passwd-file] 2 (#$ . 3519)]) (put 'pcmpl-unix-group-names 'byte-optimizer 'byte-compile-inline-expand) #@50 Read the contents of /etc/passwd for user names. (defalias 'pcmpl-unix-user-names #[nil "\205\301!\207" [pcmpl-unix-passwd-file pcmpl-unix-read-passwd-file] 2 (#$ . 3776)]) (put 'pcmpl-unix-user-names 'byte-optimizer 'byte-compile-inline-expand) #@37 Completion for the `chown' command. (defalias 'pcomplete/chown #[nil "\300\301!\2042\300\302\303\"\203\304\305\306\307\306$\210\2022\300\310\303\"\203+\304\311\312\313\303\"\307\306$\210\2022\304\314\306\307\306$\210\304\315\306\211\211$\205>\2022\207" [pcomplete-match "\\`-" "\\`[^.]*\\'" 0 pcomplete--here #[nil "\205\301!\207" [pcmpl-unix-passwd-file pcmpl-unix-read-passwd-file] 2] nil t "\\.\\([^.]*\\)\\'" #[nil "\205\301!\207" [pcmpl-unix-group-file pcmpl-unix-read-passwd-file] 2] pcomplete-match-string 1 #[nil "\300\207" [nil] 1] #[nil "\300 \207" [pcomplete-entries] 1]] 5 (#$ . 4032)]) #@37 Completion for the `chgrp' command. (defalias 'pcomplete/chgrp #[nil "\300\301!\204 \302\303\304\305\304$\210\302\306\304\211\211$\205\202 \207" [pcomplete-match "\\`-" pcomplete--here #[nil "\205\301!\207" [pcmpl-unix-group-file pcmpl-unix-read-passwd-file] 2] nil t #[nil "\300 \207" [pcomplete-entries] 1]] 5 (#$ . 4653)]) #@63 Return a list of hosts found in `pcmpl-ssh-known-hosts-file'. (defalias 'pcmpl-ssh-known-hosts #[nil "\205l\306!\205l\307\310!r q\210\311\216\312!\210\313\314\315\316 P\314\317#\203j\320\321!\320\322!P\211\n\235\2039\n\210\202=\f\nB)`Sf\323=\203\315 \324 \317#\203\320\321!\320\322!P\211\n\235\203b\n\210\202f \nB)\202>\n-\207" [pcmpl-ssh-known-hosts-file #1=#:temp-buffer ssh-hosts-list host-re #2=#:x #3=#:x file-readable-p generate-new-buffer " *temp*" #[nil "\301!\205 \302!\207" [#1# buffer-name kill-buffer] 2] insert-file-contents-literally "\\(?:\\([-.[:alnum:]]+\\)\\|\\[\\([-.[:alnum:]]+\\)\\]:[0-9]+\\)[, ]" nil re-search-forward "^ *" t match-string 1 2 44 line-end-position] 5 (#$ . 4993)]) #@58 Return a list of hosts found in `pcmpl-ssh-config-file'. (defalias 'pcmpl-ssh-config-hosts #[nil "\205=\305!\205=\306\307!r q\210\310\216\311!\210\312\313\314\315\312\313#\203;\316\317!\211 \235\2033 \210\2027\f B)\202 -\207" [pcmpl-ssh-config-file #1=#:temp-buffer case-fold-search ssh-hosts-list #2=#:x file-readable-p generate-new-buffer " *temp*" #[nil "\301!\205 \302!\207" [#1# buffer-name kill-buffer] 2] insert-file-contents-literally nil t re-search-forward "^ *host\\(name\\)? +\\([-.[:alnum:]]+\\)" match-string 2] 5 (#$ . 5728)]) #@103 Return a list of known SSH hosts. Uses both `pcmpl-ssh-config-file' and `pcmpl-ssh-known-hosts-file'. (defalias 'pcmpl-ssh-hosts #[nil "\303 \304 \305\211\203%\n@\211\235\203\210\202 B\nA\211\204\f*)\207" [hosts h --dolist-tail-- pcmpl-ssh-known-hosts pcmpl-ssh-config-hosts nil] 3 (#$ . 6295)]) #@41 Completion rules for the `ssh' command. (defalias 'pcomplete/ssh #[nil "\300\301!\210\302\303\304\211\211$\207" [pcomplete-opt "1246AaCfgKkMNnqsTtVvXxYbcDeFiLlmOopRSw" pcomplete--here #[nil "\300 \207" [pcmpl-ssh-hosts] 1] nil] 5 (#$ . 6613)]) #@99 Completion rules for the `scp' command. Includes files as well as host names followed by a colon. (defalias 'pcomplete/scp #[nil "\300\301!\210\302\303\304\211\211$\210\202" [pcomplete-opt "1246BCpqrvcFiloPS" pcomplete--here #[nil "\300\207" [#[(string pred action) "\306\307\"\203. \310=\203\311\225G=\203C\202\\\312\313\211\211\211\314\"*\266\202\315\316#\202\\\306\317\"\203E\313\211\211\211\314\"*\266\202\202\\\320\321\313\211\211\211\314\"*\266\202\"\322\323\324 \"\"\325 \f $)\207" [string action pcomplete-dir-ignore pcomplete-file-ignore table pred string-match "\\`[^:/]+:" lambda 0 completion-table-subvert nil pcomplete-entries "" "/ssh:" "/" append all-completions mapcar #[(host) "\301P\207" [host ":"] 2] pcmpl-ssh-hosts complete-with-action] 8]] 1] nil] 5 (#$ . 6863)]) (provide 'pcmpl-unix)