Mercurial > emacs
changeset 57065:4bf76a50a989
(ido-enable-dot-prefix): Doc fix.
(ido-enable-dot-prefix): New defcustom.
(ido-set-matches1): Use it.
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Sat, 11 Sep 2004 21:43:42 +0000 |
parents | b20cb8dd9053 |
children | bb03bc287e9c |
files | lisp/ido.el |
diffstat | 1 files changed, 20 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ido.el Sat Sep 11 21:42:50 2004 +0000 +++ b/lisp/ido.el Sat Sep 11 21:43:42 2004 +0000 @@ -482,14 +482,20 @@ :group 'ido) (defcustom ido-enable-prefix nil - "*Nil means that `ido' will match if the inserted text is an -arbitrary substring (default). If non-nil `ido' will only match if the inserted -text is a prefix \(this behavior is like the standard unix- or -emacs-completion works). + "*Non-nil means only match if the entered text is a prefix of file name. +This behavior is like the standard emacs-completion. +Nil means to match if the entered text is an arbitrary substring. Value can be toggled within `ido' using `ido-toggle-prefix'." :type 'boolean :group 'ido) +(defcustom ido-enable-dot-prefix nil + "*Non-nil means to match leading dot as prefix. +I.e. hidden files and buffers will match only if you type a dot +as first char even if `ido-enable-prefix' is nil." + :type 'boolean + :group 'ido) + (defcustom ido-confirm-unique-completion nil "*Non-nil means that even a unique completion must be confirmed. This means that \\[ido-complete] must always be followed by \\[ido-exit-minibuffer] @@ -2928,13 +2934,22 @@ (concat "\\`" re "\\'"))) (prefix-re (and full-re (not ido-enable-prefix) (concat "\\`" rexq))) + (non-prefix-dot (or (not ido-enable-dot-prefix) + (not ido-process-ignore-lists) + ido-enable-prefix + (= (length ido-text) 0))) + full-matches prefix-matches matches) (mapcar (lambda (item) (let ((name (ido-name item))) - (if (string-match re name) + (if (and (or non-prefix-dot + (if (= (aref ido-text 0) ?.) + (= (aref name 0) ?.) + (/= (aref name 0) ?.))) + (string-match re name)) (cond ((and full-re (string-match full-re name)) (setq full-matches (cons item full-matches)))