Are there any library or function that performs a bash-like glob expansion for emacs lisp?
For example:
(directory-files-glob "~/Desktop/*")
> ("/home/user/Desktop/file1" "/home/user/Desktop/file2")
If there isn’t such a function are there any hint/suggestion on how to implement it?
EDIT:
I’ve found in the docs also an useful function that does quite exactly this:
file-expand-wildcards:
This function expands the wildcard pattern pattern, returning a list of file names that match it.
Check out the documentation for
directory-files:Note: The third argument is a regular expression – not globbing.
It is straight forward to turn globbing patterns into regular expressions. eshell comes with a translation package which you can use:
And, if you want full exposure to eshell’s globbing (with directories), there’s probably a way to get that. The above assumes that the globbing part is in the non-directory portion of the path.