482 |
:group 'ido) |
:group 'ido) |
483 |
|
|
484 |
(defcustom ido-enable-prefix nil |
(defcustom ido-enable-prefix nil |
485 |
"*Nil means that `ido' will match if the inserted text is an |
"*Non-nil means only match if the entered text is a prefix of file name. |
486 |
arbitrary substring (default). If non-nil `ido' will only match if the inserted |
This behavior is like the standard emacs-completion. |
487 |
text is a prefix \(this behavior is like the standard unix- or |
Nil means to match if the entered text is an arbitrary substring. |
|
emacs-completion works). |
|
488 |
Value can be toggled within `ido' using `ido-toggle-prefix'." |
Value can be toggled within `ido' using `ido-toggle-prefix'." |
489 |
:type 'boolean |
:type 'boolean |
490 |
:group 'ido) |
:group 'ido) |
491 |
|
|
492 |
|
(defcustom ido-enable-dot-prefix nil |
493 |
|
"*Non-nil means to match leading dot as prefix. |
494 |
|
I.e. hidden files and buffers will match only if you type a dot |
495 |
|
as first char even if `ido-enable-prefix' is nil." |
496 |
|
:type 'boolean |
497 |
|
:group 'ido) |
498 |
|
|
499 |
(defcustom ido-confirm-unique-completion nil |
(defcustom ido-confirm-unique-completion nil |
500 |
"*Non-nil means that even a unique completion must be confirmed. |
"*Non-nil means that even a unique completion must be confirmed. |
501 |
This means that \\[ido-complete] must always be followed by \\[ido-exit-minibuffer] |
This means that \\[ido-complete] must always be followed by \\[ido-exit-minibuffer] |
2934 |
(concat "\\`" re "\\'"))) |
(concat "\\`" re "\\'"))) |
2935 |
(prefix-re (and full-re (not ido-enable-prefix) |
(prefix-re (and full-re (not ido-enable-prefix) |
2936 |
(concat "\\`" rexq))) |
(concat "\\`" rexq))) |
2937 |
|
(non-prefix-dot (or (not ido-enable-dot-prefix) |
2938 |
|
(not ido-process-ignore-lists) |
2939 |
|
ido-enable-prefix |
2940 |
|
(= (length ido-text) 0))) |
2941 |
|
|
2942 |
full-matches |
full-matches |
2943 |
prefix-matches |
prefix-matches |
2944 |
matches) |
matches) |
2945 |
(mapcar |
(mapcar |
2946 |
(lambda (item) |
(lambda (item) |
2947 |
(let ((name (ido-name item))) |
(let ((name (ido-name item))) |
2948 |
(if (string-match re name) |
(if (and (or non-prefix-dot |
2949 |
|
(if (= (aref ido-text 0) ?.) |
2950 |
|
(= (aref name 0) ?.) |
2951 |
|
(/= (aref name 0) ?.))) |
2952 |
|
(string-match re name)) |
2953 |
(cond |
(cond |
2954 |
((and full-re (string-match full-re name)) |
((and full-re (string-match full-re name)) |
2955 |
(setq full-matches (cons item full-matches))) |
(setq full-matches (cons item full-matches))) |