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

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

[elpa] externals/denote 48b8abc43d 29/32: Merge pull request #226 from j


From: ELPA Syncer
Subject: [elpa] externals/denote 48b8abc43d 29/32: Merge pull request #226 from jeanphilippegg/empty-region-and-links
Date: Sat, 20 Jan 2024 00:57:43 -0500 (EST)

branch: externals/denote
commit 48b8abc43d71f87ede34c8573a8abde84cc86739
Merge: e11a468873 eaa00f2fd4
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: GitHub <noreply@github.com>

    Merge pull request #226 from jeanphilippegg/empty-region-and-links
    
    Fix denote-link-description-with-signature-and-title
---
 README.org | 11 ++++++-----
 denote.el  | 13 ++++++++-----
 2 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/README.org b/README.org
index bb153d1efa..2e9b6fce97 100644
--- a/README.org
+++ b/README.org
@@ -1746,11 +1746,12 @@ When ~denote-link~ is called with a prefix argument 
(=C-u= by
 default), it formats links like =[[denote:IDENTIFIER]]=.  The user
 might prefer its simplicity.
 
-The description of the link is taken from the target file's front
-matter or, if that is not available, from the file name.  If the
-region is active, its text is used as the link's description instead.
-If the active region has no text, the inserted link uses just the
-identifier, as with the =C-u= prefix mentioned above.
+By default, the description of the link is taken from the signature of
+the file, if present, and the target file's front matter's title or, if
+that is not available, from the file name.  If the region is active, its
+text is used as the link's description instead.  If the active region
+has no text, the inserted link uses just the identifier, as with the
+=C-u= prefix mentioned above.
 
 Inserted links are automatically buttonized and remain active for as
 long as the buffer is available.  In Org this is handled by the major
diff --git a/denote.el b/denote.el
index 71a8fbf306..433c786214 100644
--- a/denote.el
+++ b/denote.el
@@ -3256,16 +3256,16 @@ file is returned as the description.")
 (defun denote-link-description-with-signature-and-title (file region-text)
   "Return description from FILE as \"signature   title\".
 
-If REGION-TEXT is not empty (or nil), the description is the text
-of the active region instead.
+If REGION-TEXT is non-nil, the description is the text of the
+active region instead.
 
 The format is specified in variable
-`denote--link-signature-format'. If a signature is not present,
+`denote--link-signature-format'.  If a signature is not present,
 only the title is returned."
   (let* ((file-type (denote-filetype-heuristics file))
          (signature (denote-retrieve-filename-signature file))
          (title (denote--retrieve-title-or-filename file file-type)))
-    (cond ((and region-text (not (string-empty-p region-text)))
+    (cond (region-text
            region-text)
           (signature
            (format denote--link-signature-format signature title))
@@ -3309,7 +3309,10 @@ With optional ID-ONLY as a non-nil argument, such as 
with a
 universal prefix (\\[universal-argument]), insert links with just
 the identifier and no further description.  In this case, the
 link format is always [[denote:IDENTIFIER]].  If the DESCRIPTION
-is empty, the link is also as if ID-ONLY were non-nil.
+is empty, the link is also as if ID-ONLY were non-nil.  The
+default value of `denote-link-description-function' returns an
+empty string when the region is empty.  Thus, the link will have
+no description in this case.
 
 When called from Lisp, FILE is a string representing a full file
 system path.  FILE-TYPE is a symbol as described in



reply via email to

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