%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/ |
Current File : //usr/local/share/emacs/27.2/lisp/pcomplete.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file contains utf-8 non-ASCII characters, ;;; and so cannot be loaded into Emacs 22 or earlier. (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (string-lessp emacs-version "23") (error "`%s' was compiled for Emacs 23 or later" #$)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\210\312\313\314\315\316DD\317\320\321%\210\312\322\314\315\323DD\324\320\325%\210\312\326\314\315\327DD\330\320\331%\210\312\332\314\315\333DD\334\320\331%\210\312\335\314\315\336DD\337\320\340%\210\341\335\304\342#\210\312\343\314\315\344DD\345\320\331%\210\346\347\350\304#\210\351\211\203\205 \211@\347N\203~ \350N\204~ \352\350\347N#\210A\266\202\202d \210\341\347\350\353#\210\312\354\314\315\355DD\356\320\315%\210\312\357\314\315\360DD\361\320\362%\210\312\363\314\315\364DD\365\320\366%\210\312\367\314\315\370DD\371\320\331%\210\312\372\314\315\373DD\374\320\315%\210\312\375\314\315\376DD\377\320\331%\210\312\201@ \314\315\201A DD\201B \320\201C %\210\312\201D \314\315\201E DD\201F \320\201G %\210\312\201H \314\315\201I DD\201J \320\201K %\207" [require comint custom-declare-group pcomplete nil "Programmable completion." :version "21.1" :group processes custom-declare-variable pcomplete-file-ignore funcall function #[0 "\300\207" [nil] 1] "A regexp of filenames to be disregarded during file completion." :type (choice regexp (const :tag "None" nil)) pcomplete-dir-ignore #[0 "\300\207" [nil] 1] "A regexp of names to be disregarded during directory completion." (choice regexp (const :tag "None" nil)) pcomplete-ignore-case #[0 "\301>\207" [system-type (ms-dos windows-nt cygwin)] 2] "If non-nil, ignore case when doing filename completion." boolean pcomplete-autolist #[0 "\300\207" [nil] 1] "If non-nil, automatically list possibilities on partial completion.\nThis mirrors the optional behavior of tcsh." pcomplete-suffix-list #[0 "\300\301D\207" [47 58] 2] "A list of characters which constitute a proper suffix." (repeat character) make-obsolete-variable "24.1" pcomplete-recexact #[0 "\300\207" [nil] 1] "If non-nil, use shortest completion if characters cannot be added.\nThis mirrors the optional behavior of tcsh.\n\nA non-nil value is useful if `pcomplete-autolist' is non-nil too." defvaralias pcomplete-arg-quote-list comint-file-name-quote-list (saved-value saved-variable-comment) put "24.3" pcomplete-man-function #[0 "\300\207" [man] 1] "A function to that will be called to display a manual page.\nIt will be passed the name of the command to document." pcomplete-compare-entry-function #[0 "\300\207" [string-lessp] 1] "This function is used to order file entries for completion.\nThe behavior of most all shells is to sort alphabetically." (radio (function-item string-lessp) (function-item file-newer-than-file-p) (function :tag "Other")) pcomplete-help #[0 "\300\207" [nil] 1] "A string or function (or nil) used for context-sensitive help.\nIf a string, it should name an Info node that will be jumped to.\nIf non-nil, it must a sexp that will be evaluated, and whose\nresult will be shown in the minibuffer.\nIf nil, the function `pcomplete-man-function' will be called with the\ncurrent command argument." (choice string sexp (const :tag "Use man page" nil)) pcomplete-expand-before-complete #[0 "\300\207" [nil] 1] "If non-nil, expand the current argument before completing it.\nThis means that typing something such as `$HOME/bi' followed by\n\\[pcomplete-argument] will cause the variable reference to be\nresolved first, and the resultant value that will be completed against\nto be inserted in the buffer. Note that exactly what gets expanded\nand how is entirely up to the behavior of the\n`pcomplete-parse-arguments-function'." pcomplete-parse-arguments-function #[0 "\300\207" [pcomplete-parse-buffer-arguments] 1] "A function to call to parse the current line's arguments.\nIt should be called with no parameters, and with point at the position\nof the argument that is to be completed.\n\nIt must either return nil, or a cons cell of the form:\n\n ((ARG...) (BEG-POS...))\n\nThe two lists must be identical in length. The first gives the final\nvalue of each command line argument (which need not match the textual\nrepresentation of that argument), and BEG-POS gives the beginning\nposition of each argument, as it is seen by the user. The establishes\na relationship between the fully resolved value of the argument, and\nthe textual representation of the argument." pcomplete-cycle-completions #[0 "\300\207" [t] 1] "If non-nil, hitting the TAB key cycles through the completion list.\nTypical Emacs behavior is to complete as much as possible, then pause\nwaiting for further input. Then if TAB is hit again, show a list of\npossible completions. When `pcomplete-cycle-completions' is non-nil,\nit acts more like zsh or 4nt, showing the first maximal match first,\nfollowed by any further matches on each subsequent pressing of the TAB\nkey. \\[pcomplete-list] is the key to press if the user wants to see\nthe list of possible completions." pcomplete-cycle-cutoff-length #[0 "\300\207" [5] 1] "If the number of completions is greater than this, don't cycle.\nThis variable is a compromise between the traditional Emacs style of\ncompletion, and the \"cycling\" style. Basically, if there are more\nthan this number of completions possible, don't automatically pick the\nfirst one and then expect the user to press TAB to cycle through them.\nTypically, when there are a large number of completion possibilities,\nthe user wants to see them in a list buffer so that they can know what\noptions are available. But if the list is small, it means the user\nhas already entered enough input to disambiguate most of the\npossibilities, and therefore they are probably most interested in\ncycling through the candidates. Set this value to nil if you want\ncycling to always be enabled." (choice integer (const :tag "Always cycle" nil)) pcomplete-restore-window-delay #[0 "\300\207" [1] 1] "The number of seconds to wait before restoring completion windows.\nOnce the completion window has been displayed, if the user then goes\non to type something else, that completion window will be removed from\nthe display (actually, the original window configuration before it was\ndisplayed will be restored), after this many seconds of idle time. If\nset to nil, completion windows will be left on second until the user\nremoves them manually. If set to 0, they will disappear immediately\nafter the user enters a key other than TAB." (choice integer (const :tag "Never restore" nil)) pcomplete-try-first-hook #[0 "\300\207" [nil] 1] "A list of functions which are called before completing an argument.\nThis can be used, for example, for completing things which might apply\nto all arguments, such as variable names after a $." hook] 8) #@80 Complete amongst a list of directories and executables. (fn &optional REGEXP) (defalias 'pcomplete-executables #[256 "\300\301\"\207" [pcomplete-entries file-executable-p] 4 (#$ . 6966)]) (put 'pcomplete-executables 'byte-optimizer 'byte-compile-inline-expand) #@1507 Complete against the current argument, if at the end. If completion is to be done here, evaluate FORM to generate the completion table which will be used for completion purposes. If STUB is a string, use it as the completion stub instead of the default (which is the entire text of the current argument). For an example of when you might want to use STUB: if the current argument text is `long-path-name/', you don't want the completions list display to be cluttered by `long-path-name/' appearing at the beginning of every alternative. Not only does this make things less intelligible, but it is also inefficient. Yet, if the completion list does not begin with this string for every entry, the current argument won't complete correctly. The solution is to specify a relative stub. It allows you to substitute a different argument from the current argument, almost always for the sake of efficiency. If PARING is nil, this argument will be pared against previous arguments using the function `file-truename' to normalize them. PARING may be a function, in which case that function is used for normalization. If PARING is t, the argument dealt with by this call will not participate in argument paring. If it is the integer 0, all previous arguments that have been seen will be cleared. If FORM-ONLY is non-nil, only the result of FORM will be used to generate the completions list. This means that the hook `pcomplete-try-first-hook' will not be run. (fn &optional FORM STUB PARING FORM-ONLY) (defalias 'pcomplete-here '(macro . #[1024 "\300\301\302E\257\207" [pcomplete--here lambda nil] 9 (#$ . 7237)])) (byte-code "\300\301\302\303#\210\304\305\306\307\310DD\311\312\307%\210\304\313\306\307\314DD\315\312\307%\210\304\316\306\307\317DD\320\312\307%\210\304\321\306\307\322DD\323\312\324%\210\304\325\306\307\326DD\327\312\330%\207" [put pcomplete-here edebug-form-spec t custom-declare-variable pcomplete-command-completion-function funcall function #[0 "\300\207" [#[0 "\300\301\302\211\211$\207" [pcomplete--here #[0 "\300\301\302\"\207" [nil pcomplete-entries file-executable-p] 4] nil] 5]] 1] "Function called for completing the initial command argument." :type pcomplete-command-name-function #[0 "\300\207" [pcomplete-command-name] 1] "Function called for determining the current command name." pcomplete-default-completion-function #[0 "\300\207" [#[0 "\300\301\302\211\211$\205\f \202 \207" [pcomplete--here #[0 "\300 \207" [pcomplete-entries] 1] nil] 5]] 1] "Function called when no completion rule can be found.\nThis function is used to generate completions for every argument." pcomplete-use-paring #[0 "\300\207" [t] 1] "If t, pare alternatives that have already been used.\nIf nil, you will always see the completion set of possible options, no\nmatter which of those options have already been used in previous\ncommand arguments." boolean pcomplete-termination-string #[0 "\300\207" [#1=" "] 1 #1#] "A string that is inserted after any completion or expansion.\nThis is usually a space character, useful when completing lists of\nwords separated by spaces. However, if your list uses a different\nseparator character, or if the completion occurs in a word that is\nalready terminated by a character, this variable should be locally\nmodified to be an empty string, or the desired separation string." string] 6) (defvar pcomplete-current-completions nil) (defvar pcomplete-last-window-config nil) (defvar pcomplete-window-restore-timer nil) (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\207" [make-variable-buffer-local pcomplete-current-completions pcomplete-last-completion-length pcomplete-last-completion-stub pcomplete-last-completion-raw pcomplete-last-window-config pcomplete-window-restore-timer] 2) (defvar pcomplete-show-help nil) (defvar pcomplete-show-list nil) (defvar pcomplete-expand-only-p nil) (defvar pcomplete-args nil) (defvar pcomplete-begins nil) (defvar pcomplete-last nil) (defvar pcomplete-index nil) (defvar pcomplete-stub nil) (defvar pcomplete-seen nil) (defvar pcomplete-norm-func nil) (defvar pcomplete-unquote-argument-function 'comint--unquote-argument) #@10 (fn S) (defalias 'pcomplete-unquote-argument #[257 "!\207" [pcomplete-unquote-argument-function] 3 (#$ . 11410)]) (put 'pcomplete-unquote-argument 'byte-optimizer 'byte-compile-inline-expand) (defvar pcomplete-requote-argument-function 'comint--requote-argument) #@14 (fn S1 S2) (defalias 'pcomplete--common-suffix #[514 "\301\302\303\304Q\"\210\305\225\305\224Z)\207" [case-fold-search nil string-match "\\(?:.\\|\n\\)*?\\(\\(?:.\\|\n\\)*\\)\\(?:.\\|\n\\)*\\1\\'" "" 1] 7 (#$ . 11683)]) #@124 Provide standard completion using pcomplete's completion tables. Same as `pcomplete' but using the standard completion UI. (defalias 'pcomplete-completions-at-point #[0 "\3062\275 \307\211\307\211\307\211\310 \311 `GZ]\307`{!\262\262V\203J GGV\203J GGZZ]\262\202# \205\270 \312\232\203Y \202v \313\"\314\315\316GZ#\315\316GZ##\262 #!\205\232 \205\232 \n\317\320 \"\321\322\323\324\325\"\326\"\327\330%\266\202\"\203\244 \331!\262`\332\333#G\316U?\205\264 \334\257\266\202.\266\2040\207" [pcomplete-stub pcomplete-seen pcomplete-norm-func pcomplete-args pcomplete-last pcomplete-index pcompleted nil pcomplete-completions pcomplete-begin completion-table-with-quoting pcomplete--common-suffix completion-table-subvert substring 0 mapcar #[257 "\301!!\207" [pcomplete-norm-func directory-file-name] 4 "\n\n(fn F)"] make-byte-code 257 "\300\302!!\301\235?\207" vconcat vector [directory-file-name] 4 "\n\n(fn F)" completion-table-case-fold :predicate :exit-function #[514 "\211\301=\205 \302\303!!\203 \304\225b\207c\207" [pcomplete-termination-string finished looking-at regexp-quote 0] 5 "\n\n(fn S STATUS)"] pcomplete-autolist pcomplete-suffix-list pcomplete-unquote-argument-function pcomplete-requote-argument-function pcomplete-use-paring pcomplete-ignore-case pcomplete-termination-string] 15 (#$ . 11925)]) (defalias 'pcomplete-std-complete #[0 "\300 \301@A@\3028\303\304\305\233\"$\207" [pcomplete-completions-at-point completion-in-region 2 plist-get :predicate 3] 9]) #@214 Support extensible programmable completion. To use this function, just bind the TAB key to it, or add it to your completion functions list (it should occur fairly early in the list). (fn &optional INTERACTIVELY) (defalias 'pcomplete #[256 "\211\203@ \203@ \203@ \n\306>\203@ \307[!\210\f\310=\203. \311 !@ B\311 \312\"\313\241\210\2027 \211@C\244\210 A\314 @\313$\207\313\211\3152\214 \313\211\313\211\313\211\316 \317\"\211\205\207 \211@\320=?\205\207 \211A\205\207 \314A@\321>$.\266\2020\207" [pcomplete-cycle-completions pcomplete-current-completions last-command pcomplete-last-completion-length this-command pcomplete-last-completion-stub (pcomplete pcomplete-expand-and-complete pcomplete-reverse) delete-char pcomplete-reverse last 2 nil pcomplete-insert-entry pcompleted pcomplete-completions pcomplete-do-complete listed (sole shortest) pcomplete-last-completion-raw pcomplete-stub pcomplete-seen pcomplete-norm-func pcomplete-args pcomplete-last pcomplete-index pcomplete-autolist pcomplete-suffix-list] 9 (#$ . 13487) "p"]) (make-obsolete 'pcomplete "use completion-at-point and pcomplete-completions-at-point" "27.1") #@51 If cycling completion is in use, cycle backwards. (defalias 'pcomplete-reverse #[0 "\300\301!\207" [call-interactively pcomplete] 2 (#$ . 14666) nil]) #@88 Expand the textual value of the current argument. This will modify the current buffer. (defalias 'pcomplete-expand-and-complete #[0 "\301\302 )\207" [pcomplete-expand-before-complete t pcomplete] 1 (#$ . 14823) nil]) #@56 Complete without reference to any cycling completions. (defalias 'pcomplete-continue #[0 "\302\211\303\304!\207" [pcomplete-current-completions pcomplete-last-completion-raw nil call-interactively pcomplete] 3 (#$ . 15047) nil]) #@88 Expand the textual value of the current argument. This will modify the current buffer. (defalias 'pcomplete-expand #[0 "\306\211\307 \210\n\2051 \nG\310V\2051 \311[!\210\n\2051 \312\313\n@\306\f$\204) \314 !\210\nA\211\204 \315*\207" [pcomplete-expand-only-p pcomplete-expand-before-complete pcomplete-current-completions pcomplete-last-completion-length pcomplete-last-completion-raw pcomplete-termination-string t pcomplete 0 delete-char pcomplete-insert-entry "" insert-and-inherit nil] 6 (#$ . 15284) nil]) #@64 Display any help information relative to the current argument. (defalias 'pcomplete-help #[0 "\301\302 )\207" [pcomplete-show-help t pcomplete] 1 (#$ . 15806) nil]) (make-obsolete 'pcomplete-help "use completion-help-at-point and pcomplete-completions-at-point" "27.1") #@65 Show the list of possible completions for the current argument. (defalias 'pcomplete-list #[0 "\203 \203 \n\306=\203 \307[!\210\310\211\311\312 )\207" [pcomplete-cycle-completions pcomplete-current-completions last-command pcomplete-last-completion-length pcomplete-last-completion-raw pcomplete-show-list pcomplete-argument delete-char nil t pcomplete] 3 (#$ . 16083) nil]) #@666 Return the textual content of the INDEXth argument. INDEX is based from the current processing position. If INDEX is positive, values returned are closer to the command argument; if negative, they are closer to the last argument. If the INDEX is outside of the argument list, nil is returned. The default value for INDEX is 0, meaning the current argument being examined. The special indices `first' and `last' may be used to access those parts of the list. The OFFSET argument is added to/taken away from the index that will be used. This is really only useful with `first' and `last', for accessing absolute argument positions. (fn &optional INDEX OFFSET) (defalias 'pcomplete-arg #[512 "\303=\203\n \304\202 \305=\203 \202 \206 \304Z\262\211\203&