On Fri, 4 Aug 2017, Fabrice Popineau wrote: > > > 2017-08-04 16:49 GMT+02:00 Tino Calancha : > > > On Fri, 4 Aug 2017, Fabrice Popineau wrote: > > > > 2017-08-04 16:23 GMT+02:00 Fabrice Popineau : > > > Actually, the problem seems to be in the `insert-directory-wildcard-in-dir-p' function > which wrongly splits "c:/tmp/dir*/*.txt" in ("c:/tmp/" . "dir*/*.txt") instead of > ("c:/tmp/dir*/" . "*.txt") > > Forget this (wrong) diagnostic. > > The culprit is actually  > > (let ((default-directory "c:/tmp/")) >   (eshell-extended-glob "dir*/*.txt")) > "dir*/*.txt"  > > which fails to expand the wildcards (when `file-expand-wildcards' succeeds). > > Thank you Fabrice, > that's interesing.  I am just wondering if `eshell-extended-glob' gets confused with the Windows path, i mean, the > disk name 'c:' in front. > > Could you check if the following works? > M-x eshell RET > cd "c:/tmp" > ls -l dir*/*.txt > > It says :  > > c:/tmp $ ls -l dir*/*.txt > dir*/*.txt: No such file or directory  I see. I think hat uses `eshell-extended-glob' as well, so it seems you find a bug in that function. Maybe is better to open a bug report with this eshell recipe above. > > > I am also curious if: > M-: (equal temporary-file-directory "c:/tmp/") RET > => t > > Nope, my temp dir in this case is the Windows temp dir. > ("c:/Users/Fabrice/AppData/Roaming/Local/Temp/")  > > And out of curiosity: what does em-glob that file-expand-wildcards doesn't?  > Because replacing the former by the latter would withdraw a depency on eshell parts in ls-lisp : I think you are right. We must use `file-expand-wildcards'. I think the reason i didn't use this func. is because i didn't know it existance :-)