Fix expansion of wildcards in ls-lisp.el
* lisp/ls-lisp.el (ls-lisp--dired): Fix error message text. Handle the case of a wildcard specifying directories. (Bug#60819)
This commit is contained in:
parent
b5e0260f42
commit
b365a7cc32
1 changed files with 16 additions and 2 deletions
|
@ -482,8 +482,22 @@ not contain `d', so that a full listing is expected."
|
||||||
(if (not dir-wildcard)
|
(if (not dir-wildcard)
|
||||||
(funcall orig-fun dir-or-list switches)
|
(funcall orig-fun dir-or-list switches)
|
||||||
(let* ((default-directory (car dir-wildcard))
|
(let* ((default-directory (car dir-wildcard))
|
||||||
(files (file-expand-wildcards (cdr dir-wildcard)))
|
(wildcard (cdr dir-wildcard))
|
||||||
|
(files (file-expand-wildcards wildcard))
|
||||||
(dir (car dir-wildcard)))
|
(dir (car dir-wildcard)))
|
||||||
|
;; When the wildcard ends in a slash, file-expand-wildcards
|
||||||
|
;; returns nil; fix that by treating the wildcards as
|
||||||
|
;; specifying only directories whose names match the
|
||||||
|
;; widlcard.
|
||||||
|
(if (and (null files)
|
||||||
|
(directory-name-p wildcard))
|
||||||
|
(setq files
|
||||||
|
(delq nil
|
||||||
|
(mapcar (lambda (fname)
|
||||||
|
(if (file-accessible-directory-p fname)
|
||||||
|
fname))
|
||||||
|
(file-expand-wildcards
|
||||||
|
(directory-file-name wildcard))))))
|
||||||
(if files
|
(if files
|
||||||
(let ((inhibit-read-only t)
|
(let ((inhibit-read-only t)
|
||||||
(buf
|
(buf
|
||||||
|
@ -494,7 +508,7 @@ not contain `d', so that a full listing is expected."
|
||||||
(dired-goto-next-file)
|
(dired-goto-next-file)
|
||||||
(forward-line 0)
|
(forward-line 0)
|
||||||
(insert " wildcard " (cdr dir-wildcard) "\n"))))
|
(insert " wildcard " (cdr dir-wildcard) "\n"))))
|
||||||
(user-error "No files matching regexp")))))))
|
(user-error "No files matching wildcard")))))))
|
||||||
|
|
||||||
(advice-add 'dired :around #'ls-lisp--dired)
|
(advice-add 'dired :around #'ls-lisp--dired)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue