[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/denote fedd04ebf4 5/5: Merge pull request #91 from jean
From: |
ELPA Syncer |
Subject: |
[elpa] externals/denote fedd04ebf4 5/5: Merge pull request #91 from jeanphilippegg/cleanup |
Date: |
Mon, 15 Aug 2022 02:57:33 -0400 (EDT) |
branch: externals/denote
commit fedd04ebf49841dd23c4fb41e77a0a26a94dba12
Merge: b84d945d58 a7b51fe041
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: GitHub <noreply@github.com>
Merge pull request #91 from jeanphilippegg/cleanup
Some cleanups for denote--only-note-p
---
denote.el | 28 +++++++++++++++++-----------
1 file changed, 17 insertions(+), 11 deletions(-)
diff --git a/denote.el b/denote.el
index c9e1607ada..af1fe54450 100644
--- a/denote.el
+++ b/denote.el
@@ -355,9 +355,6 @@ command."
(defconst denote--keywords-regexp "__\\([[:alnum:][:nonascii:]_-]*\\)"
"Regular expression to match keywords.")
-(defconst denote--extension-regexp "\\.\\(org\\|md\\|txt\\)"
- "Regular expression to match supported Denote extensions.")
-
(defconst denote--punctuation-regexp "[][{}!@#$%^&*()=+'\"?,.\|;:~`‘’“”/]*"
"Punctionation that is removed from file names.
We consider those characters illegal for our purposes.")
@@ -438,13 +435,9 @@ trailing hyphen."
(let ((file-name (file-name-nondirectory file)))
(and (not (file-directory-p file))
(file-regular-p file)
- (string-match-p (concat "\\`" denote--id-regexp
- ".*" denote--extension-regexp
- "\\(.gpg\\)?"
- "\\'")
- file-name)
- ;; Can this ever be t given the above?
- (not (string-match-p "[#~]\\'" file)))))
+ (string-prefix-p (denote-directory) (expand-file-name file))
+ (string-match-p (concat "\\`" denote--id-regexp) file-name)
+ (denote--file-supported-extension-p file))))
(defun denote--file-has-identifier-p (file)
"Return non-nil if FILE has a Denote identifier."
@@ -453,7 +446,13 @@ trailing hyphen."
(defun denote--file-supported-extension-p (file)
"Return non-nil if FILE has supported extension."
- (string-match-p (format "%s\\(.gpg\\)?\\'" denote--extension-regexp) file))
+ (let* ((extensions (denote--extensions))
+ (valid-extensions (append extensions
+ (mapcar (lambda (e) (concat e ".gpg"))
+ extensions))))
+ (seq-some
+ (lambda (e) (string-suffix-p e file))
+ valid-extensions)))
(defun denote--file-regular-writable-p (file)
"Return non-nil if FILE is regular and writable."
@@ -743,6 +742,13 @@ Based on FILE-TYPE."
Based on FILE-TYPE."
(plist-get (alist-get file-type denote-file-types)
:keywords-value-reverse-function))
+(defun denote--extensions ()
+ "Return all extensions in `denote-file-type'."
+ (delete-dups
+ (mapcar (lambda (type)
+ (plist-get (cdr type) :extension))
+ denote-file-types)))
+
(defun denote--get-title-line-from-front-matter (title file-type)
"Retrieve title line from front matter based on FILE-TYPE.
Format TITLE in the title line. The returned line does not