Function: denote-generate-identifier-as-date

denote-generate-identifier-as-date is a byte-compiled function defined in denote.el.

Signature

(denote-generate-identifier-as-date INITIAL-IDENTIFIER DATE)

Documentation

Generate an identifier based on DATE.

If INITIAL-IDENTIFIER is not already used, return it. Else, if it is possible to derive an identifier from it, return this identifier.

Else, use the DATE. If it is nil, use current-time.

This is a reference function for denote-get-identifier-function.

Source Code

;; Defined in ~/.emacs.d/elpa/denote-4.2.3/denote.el
(defun denote-generate-identifier-as-date (initial-identifier date)
  "Generate an identifier based on DATE.

If INITIAL-IDENTIFIER is not already used, return it.  Else, if it is
possible to derive an identifier from it, return this identifier.

Else, use the DATE.  If it is nil, use `current-time'.

This is a reference function for `denote-get-identifier-function'."
  (let ((denote-used-identifiers (or denote-used-identifiers (denote--get-all-used-ids))))
    (cond ((and initial-identifier
                (not (gethash initial-identifier denote-used-identifiers)))
           initial-identifier)
          ((and initial-identifier
                (string-match-p denote-date-identifier-regexp initial-identifier)
                (date-to-time initial-identifier))
           (denote--find-first-unused-id-as-date initial-identifier))
          (t
           (denote--find-first-unused-id-as-date
            (format-time-string denote-date-identifier-format (or date (current-time))))))))