Lennart Borgman wrote:
The doc string for `read-file-name' says
If optional sixth arg predicate is non-nil, possible completions and
the resulting file name must satisfy (funcall predicate NAME).
However testing with
(read-file-name "File: " nil nil nil nil (lambda(name)
(string-match "wantname")))
and entering some characters for the file name and then pressing
<RET> just seem to return whatever the mini-buffer shows. Maybe this
is correct. The doc string could be read as "resulting file name from
completion". But it is in my opinion still unclear and a bit unexpected.
This is on w32. GNU Emacs 22.0.50.1 (i386-mingw-nt5.0.2195) of
2006-03-28.
Does it work if you pass the required second arg to string-match:
(read-file-name "File: " nil nil nil nil
(lambda (name) (string-match "wantname" name)))