[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/denote 6e0ba78d2a 5/7: Merge pull request #97 from jean
From: |
ELPA Syncer |
Subject: |
[elpa] externals/denote 6e0ba78d2a 5/7: Merge pull request #97 from jeanphilippegg/use-org-read-date |
Date: |
Sat, 20 Aug 2022 21:57:31 -0400 (EDT) |
branch: externals/denote
commit 6e0ba78d2a461ee76befa251b8e72f630fa46bd8
Merge: b1f115990e c2f96b072a
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: GitHub <noreply@github.com>
Merge pull request #97 from jeanphilippegg/use-org-read-date
Add option denote-date-prompt-use-org-read-date
---
denote.el | 28 +++++++++++++++++++++++++---
1 file changed, 25 insertions(+), 3 deletions(-)
diff --git a/denote.el b/denote.el
index 77470c9cd4..b3ea78e84d 100644
--- a/denote.el
+++ b/denote.el
@@ -316,6 +316,16 @@ are described in the doc string of `format-time-string'."
:package-version '(denote . "0.2.0")
:group 'denote)
+(defcustom denote-date-prompt-use-org-read-date nil
+ "Whether to use `org-read-date' in date prompts.
+
+If non-nil, use `org-read-date'.
+
+If nil, input the date as a string, as described in `denote'."
+ :group 'denote
+ :package-version '(denote . "0.6.0")
+ :type 'boolean)
+
(defcustom denote-templates nil
"Alist of content templates for new notes.
A template is arbitrary text that Denote will add to a newly
@@ -1118,11 +1128,23 @@ here for clarity."
(defvar denote--date-history nil
"Minibuffer history of `denote--date-prompt'.")
+(declare-function org-read-date "org" &optional with-time to-time from-string
prompt default-time default-input inactive)
+
(defun denote--date-prompt ()
"Prompt for date."
- (read-string
- "DATE and TIME for note (e.g. 2022-06-16 14:30): "
- nil 'denote--date-history))
+ (if (and denote-date-prompt-use-org-read-date
+ (require 'org nil :no-error))
+ (let* ((time (org-read-date nil t))
+ (org-time-seconds (format-time-string "%S" time))
+ (cur-time-seconds (format-time-string "%S" (current-time))))
+ ;; When the user does not input a time, org-read-date defaults to 00
for seconds.
+ ;; When the seconds are 00, we add the current seconds to avoid
identifier collisions.
+ (when (string-equal "00" org-time-seconds)
+ (setq time (time-add time (string-to-number cur-time-seconds))))
+ (format-time-string "%Y-%m-%d %H:%M:%S" time))
+ (read-string
+ "DATE and TIME for note (e.g. 2022-06-16 14:30): "
+ nil 'denote--date-history)))
(defvar denote--subdir-history nil
"Minibuffer history of `denote--subdirs-prompt'.")
- [elpa] externals/denote updated (b1f115990e -> bef859aea1), ELPA Syncer, 2022/08/20
- [elpa] externals/denote 1d68f35021 3/7: Rework denote--date-prompt, ELPA Syncer, 2022/08/20
- [elpa] externals/denote 6e0ba78d2a 5/7: Merge pull request #97 from jeanphilippegg/use-org-read-date,
ELPA Syncer <=
- [elpa] externals/denote bef859aea1 7/7: Use parens in declared function's args, ELPA Syncer, 2022/08/20
- [elpa] externals/denote 8a168582e8 2/7: Add seconds to org time object, ELPA Syncer, 2022/08/20
- [elpa] externals/denote d0e76beb01 1/7: Add option denote-date-prompt-use-org-read-date, ELPA Syncer, 2022/08/20
- [elpa] externals/denote 1a94b58e81 6/7: Make minor tweaks to placate the compiler, ELPA Syncer, 2022/08/20
- [elpa] externals/denote c2f96b072a 4/7: Load org in denote--date-prompt, ELPA Syncer, 2022/08/20