emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/denote e1aeb459ea 19/27: Refine how faces are applied (


From: ELPA Syncer
Subject: [elpa] externals/denote e1aeb459ea 19/27: Refine how faces are applied (extends 123fb2b)
Date: Sun, 3 Jul 2022 00:57:35 -0400 (EDT)

branch: externals/denote
commit e1aeb459eaab740f439e69d3811f6306a03adc62
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: Protesilaos Stavrou <info@protesilaos.com>

    Refine how faces are applied (extends 123fb2b)
---
 denote-dired.el | 17 ++---------------
 denote-faces.el | 21 +++++++++++++++++++++
 denote-link.el  |  9 +++------
 3 files changed, 26 insertions(+), 21 deletions(-)

diff --git a/denote-dired.el b/denote-dired.el
index b607e3d02a..23bd006ff9 100644
--- a/denote-dired.el
+++ b/denote-dired.el
@@ -356,27 +356,14 @@ appropriate."
 
 (require 'denote-faces)
 
-(defconst denote-dired-font-lock-keywords
-  `((,denote--file-regexp
-     (1 'denote-faces-date)
-     (2 'denote-faces-time)
-     (3 'denote-faces-delimiter)
-     (4 'denote-faces-title)
-     (5 'denote-faces-delimiter)
-     (6 'denote-faces-keywords)
-     (7 'denote-faces-extension))
-    ("_"
-     (0 'denote-faces-delimiter t)))
-  "Keywords for fontification.")
-
 ;;;###autoload
 (define-minor-mode denote-dired-mode
   "Fontify all Denote-style file names in Dired."
   :global nil
   :group 'denote-dired
   (if denote-dired-mode
-      (font-lock-add-keywords nil denote-dired-font-lock-keywords t)
-    (font-lock-remove-keywords nil denote-dired-font-lock-keywords))
+      (font-lock-add-keywords nil denote-faces-file-name-keywords t)
+    (font-lock-remove-keywords nil denote-faces-file-name-keywords))
   (font-lock-flush (point-min) (point-max)))
 
 (defun denote-dired--modes-dirs-as-dirs ()
diff --git a/denote-faces.el b/denote-faces.el
index 2a5e32f1d4..6b7a9b4583 100644
--- a/denote-faces.el
+++ b/denote-faces.el
@@ -30,6 +30,8 @@
 
 ;;; Code:
 
+(require 'denote)
+
 (defgroup denote-faces ()
   "Faces for Denote."
   :group 'denote)
@@ -88,5 +90,24 @@ and seconds."
   "Face for file name delimiters in Dired buffers."
   :group 'denote-faces)
 
+(defconst denote-faces-file-name-keywords
+  `((,denote--file-regexp
+     (1 'denote-faces-date)
+     (2 'denote-faces-time)
+     (3 'denote-faces-delimiter)
+     (4 'denote-faces-title)
+     (5 'denote-faces-delimiter)
+     (6 'denote-faces-keywords)
+     (7 'denote-faces-extension))
+    ("_"
+     (0 'denote-faces-delimiter t)))
+  "Keywords for fontification of file names.")
+
+(defconst denote-faces-file-name-with-subdir-keywords
+  (append denote-faces-file-name-keywords
+          '(("\\(^.*/\\)?"
+             (0 'denote-faces-subdirectory))))
+  "Keywords for fontification of file names with a directory.")
+
 (provide 'denote-faces)
 ;;; denote-faces.el ends here
diff --git a/denote-link.el b/denote-link.el
index d75823b15b..7cf4ded930 100644
--- a/denote-link.el
+++ b/denote-link.el
@@ -424,8 +424,6 @@ positions, limit the process to the region in-between."
   "Action for BUTTON to `find-file'."
   (funcall denote-link-buton-action (buffer-substring (button-start button) 
(button-end button))))
 
-(declare-function denote-dired-mode "denote-dired")
-
 (defun denote-link--display-buffer (buf)
   "Run `display-buffer' on BUF.
 Expand `denote-link-backlinks-display-buffer-action'."
@@ -433,6 +431,8 @@ Expand `denote-link-backlinks-display-buffer-action'."
    buf
    `(,@denote-link-backlinks-display-buffer-action)))
 
+(require 'denote-faces)
+
 (defun denote-link--prepare-backlinks (id files &optional title)
   "Create backlinks' buffer for ID including FILES.
 Use optional TITLE for a prettier heading."
@@ -452,11 +452,8 @@ Use optional TITLE for a prettier heading."
               (newline))
             files)
       (goto-char (point-min))
-      ;; NOTE 2022-06-15: Technically this is not Dired.  Maybe we
-      ;; should abstract the fontification into a general purpose
-      ;; minor-mode.
       (when denote-link-fontify-backlinks
-        (denote-dired-mode 1)))
+        (font-lock-add-keywords nil 
denote-faces-file-name-with-subdir-keywords t)))
     (denote-link--display-buffer buf)))
 
 ;;;###autoload



reply via email to

[Prev in Thread] Current Thread [Next in Thread]