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

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

[elpa] externals/denote 2aa877b247 1/3: Refactor denote-rename-file-usin


From: ELPA Syncer
Subject: [elpa] externals/denote 2aa877b247 1/3: Refactor denote-rename-file-using-front-matter
Date: Sun, 5 Nov 2023 03:57:43 -0500 (EST)

branch: externals/denote
commit 2aa877b24718ce4df0e39f0d618609726216d284
Author: Jean-Philippe Gagné Guay <jeanphilippe150@gmail.com>
Commit: Jean-Philippe Gagné Guay <jeanphilippe150@gmail.com>

    Refactor denote-rename-file-using-front-matter
---
 denote.el | 30 ++++++++++++------------------
 1 file changed, 12 insertions(+), 18 deletions(-)

diff --git a/denote.el b/denote.el
index 1cd6b1965e..fc460439dd 100644
--- a/denote.el
+++ b/denote.el
@@ -2581,24 +2581,18 @@ does internally."
     (user-error "The file is not writable or does not have a supported file 
extension"))
   (if-let ((file-type (denote-filetype-heuristics file))
            (title (denote-retrieve-title-value file file-type))
-           (extension (denote-get-file-extension file))
-           (id (or (denote-retrieve-filename-identifier file :no-error)
-                   (denote-create-unique-file-identifier file)))
-           (dir (file-name-directory file))
-           (new-name (denote-format-file-name
-                      ;; The `denote-retrieve-keywords-value' and
-                      ;; `denote-retrieve-filename-signature' are not
-                      ;; inside the `if-let' because we do not want
-                      ;; to throw an exception if any is nil.
-                      dir id
-                      (or (denote-retrieve-keywords-value file file-type) nil)
-                      (denote-sluggify title 'title) extension
-                      (or (denote-retrieve-filename-signature file) nil))))
-      (when (or auto-confirm
-                (denote-rename-file-prompt file new-name))
-        (denote-rename-file-and-buffer file new-name)
-        (denote-update-dired-buffers))
-    (user-error "No front matter for title and/or keywords")))
+           (id (denote-retrieve-filename-identifier file :no-error)))
+      (let* ((sluggified-title (denote-sluggify title 'title))
+             (keywords (denote-retrieve-keywords-value file file-type))
+             (signature (denote-retrieve-filename-signature file))
+             (extension (denote-get-file-extension file))
+             (dir (file-name-directory file))
+             (new-name (denote-format-file-name dir id keywords 
sluggified-title extension signature)))
+        (when (or auto-confirm
+                  (denote-rename-file-prompt file new-name))
+          (denote-rename-file-and-buffer file new-name)
+          (denote-update-dired-buffers)))
+    (user-error "No identifier or front matter for title")))
 
 ;;;###autoload
 (defun denote-dired-rename-marked-files-using-front-matter ()



reply via email to

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