]> git.eshelyaron.com Git - emacs.git/commitdiff
Font-lock suid/guid files in Dired
authorLars Ingebrigtsen <larsi@gnus.org>
Mon, 14 Oct 2019 01:31:33 +0000 (03:31 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Mon, 14 Oct 2019 01:31:33 +0000 (03:31 +0200)
* lisp/dired.el (dired-font-lock-keywords): Font-lock suid/guid
permissions (bug#8186).
(dired-sguid): New face.

etc/NEWS
lisp/dired.el

index d9d895ac8160c5b5195820d8ee8a19748f1e094a..4e62627f9070a969859aebf7a611854298c8bd89 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -752,6 +752,10 @@ remapped to these, respectively.
 
 ** Dired
 
+---
+*** On systems that support it, Dired now font-locks the permissions
+of suid/guid files specially with the 'dired-set-id' face.
+
 +++
 *** New command 'dired-create-empty-file'.
 
index 6e48d28b4cfb98065416601e085b4176f67f11e7..57c5040263fe5d2a387439596f25c640d2c95604 100644 (file)
@@ -431,6 +431,13 @@ Subexpression 2 must end right before the \\n.")
 (defvar dired-perm-write-face 'dired-perm-write
   "Face name used for permissions of group- and world-writable files.")
 
+(defface dired-set-idguid'
+  '((((type w32 pc)) :inherit default)  ;; These default to rw-rw-rw.
+    (t (:inherit font-lock-warning-face)))
+  "Face used to highlight permissions of suid and guid files."
+  :group 'dired-faces
+  :version "27.1")
+
 (defface dired-directory
   '((t (:inherit font-lock-function-name-face)))
   "Face used for subdirectories."
@@ -499,6 +506,12 @@ Subexpression 2 must end right before the \\n.")
    (list (concat dired-re-maybe-mark dired-re-inode-size
                 "[-d].......\\(w\\).") ; world writable
         '(1 dired-perm-write-face))
+   (list (concat dired-re-maybe-mark dired-re-inode-size
+                "[-d]..\\(s\\)......") ; suid
+        '(1 'dired-set-id))
+   (list (concat dired-re-maybe-mark dired-re-inode-size
+                "[-d].....\\(S\\)...") ; guid
+        '(1 'dired-set-id))
    ;;
    ;; Subdirectories.
    (list dired-re-dir