mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-23 18:47:57 +00:00
Make sure 'dired-filename' property is always put by ls-lisp
* lisp/ls-lisp.el (ls-lisp-classify): Do not put the 'dired-filename' text property on the file name here... (ls-lisp-classify-file): ...put it here instead. (Bug#29423)
This commit is contained in:
parent
f7fdaea4c0
commit
23bfc2d2db
@ -713,23 +713,26 @@ SWITCHES is a list of characters. Default sorting is alphabetic."
|
||||
(defun ls-lisp-classify-file (filename fattr)
|
||||
"Append a character to FILENAME indicating the file type.
|
||||
|
||||
This function puts the `dired-filename' property on FILENAME, but
|
||||
not on the character indicator it appends.
|
||||
FATTR is the file attributes returned by `file-attributes' for the file.
|
||||
The file type indicators are `/' for directories, `@' for symbolic
|
||||
links, `|' for FIFOs, `=' for sockets, `*' for regular files that
|
||||
are executable, and nothing for other types of files."
|
||||
(let* ((type (car fattr))
|
||||
(modestr (nth 8 fattr))
|
||||
(typestr (substring modestr 0 1)))
|
||||
(typestr (substring modestr 0 1))
|
||||
(file-name (propertize filename 'dired-filename t)))
|
||||
(cond
|
||||
(type
|
||||
(concat filename (if (eq type t) "/" "@")))
|
||||
(concat file-name (if (eq type t) "/" "@")))
|
||||
((string-match "x" modestr)
|
||||
(concat filename "*"))
|
||||
(concat file-name "*"))
|
||||
((string= "p" typestr)
|
||||
(concat filename "|"))
|
||||
(concat file-name "|"))
|
||||
((string= "s" typestr)
|
||||
(concat filename "="))
|
||||
(t filename))))
|
||||
(concat file-name "="))
|
||||
(t file-name))))
|
||||
|
||||
(defun ls-lisp-classify (filedata)
|
||||
"Append a character to file name in FILEDATA indicating the file type.
|
||||
@ -742,7 +745,6 @@ links, `|' for FIFOs, `=' for sockets, `*' for regular files that
|
||||
are executable, and nothing for other types of files."
|
||||
(let ((file-name (car filedata))
|
||||
(fattr (cdr filedata)))
|
||||
(setq file-name (propertize file-name 'dired-filename t))
|
||||
(cons (ls-lisp-classify-file file-name fattr) fattr)))
|
||||
|
||||
(defun ls-lisp-extension (filename)
|
||||
|
Loading…
Reference in New Issue
Block a user