0

Is there a way I can customize the "header" of a remembered note?

I couldn't find it in the docs. With the following set up

(use-package remember
  :bind (("C-c r r" . remember)
         ("C-c r n" . remember-notes))
  :config
  (setq remember-data-file (substitute-env-in-file-name "$HOME/docs/notes.adoc"))
  (setq remember-notes-initial-major-mode 'asciidoctor-mode)
  (setq remember-leader-text "== "))

I get

== Thu Dec  7 10:26:37 2017 (remember this!!!)

remember this!!!

What I want is to replace the date to one of the ISO formats (YYYY-MM-DD)

Drew
  • 75,699
  • 9
  • 109
  • 225
Maxim Kim
  • 1,516
  • 9
  • 17

1 Answers1

1

Looks like I have to provide my own handler function:

(use-package remember
  :bind (("C-c r r" . remember)
         ("C-c r n" . remember-notes))
  :config
  (setq remember-data-file (substitute-env-in-file-name "$HOME/docs/notes.adoc"))
  (setq remember-notes-initial-major-mode 'asciidoctor-mode)
  (setq remember-leader-text "== ")
  (setq remember-handler-functions 'haba/remember-add-to-file)

  (defun haba/remember-add-to-file ()
  "Remember, with description DESC, the given TEXT. Add text to the beginning."
  (let* ((text (buffer-string))
         (desc (remember-buffer-desc))
         (remember-text (concat "\n" remember-leader-text (format-time-string "%F %H:%M:%S")
                                " " desc "\n\n" text
                                (save-excursion (goto-char (point-max))
                                                (if (bolp) nil "\n"))))
         (buf (find-buffer-visiting remember-data-file)))
    (if buf
        (with-current-buffer buf
          (save-excursion
            (goto-char (point-min))
            (forward-line) ;; dumb skip asciidoctor title
            (insert remember-text))
          (if remember-save-after-remembering (save-buffer)))
      (append-to-file remember-text nil remember-data-file))))
  )

So I took default function from remember.el where (current-time-string) generates the date in human readable format and change it to (format-time-string "%F %H:%M:%S")

This is also the chance to change default behavior to append and make it to add to beginning of the notes file.

Maxim Kim
  • 1,516
  • 9
  • 17