From a518b23058426f9936ac08b36f06065408249b34 Mon Sep 17 00:00:00 2001 From: BardofSprites <89086143+BardofSprites@users.noreply.github.com> Date: Thu, 21 Aug 2025 20:20:55 -0400 Subject: tweaks for use in org-roam --- bard-elisp/bard-writing.el | 17 +++++++++++++++++ bard-emacs-modules/bard-emacs-writing.el | 11 ++++------- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/bard-elisp/bard-writing.el b/bard-elisp/bard-writing.el index f5b9079..4861b5a 100644 --- a/bard-elisp/bard-writing.el +++ b/bard-elisp/bard-writing.el @@ -1,3 +1,20 @@ +(defun bard/denote-insert-id-at-top () + "Insert or replace a top-level :ID: property at the very top of the current file." + (interactive) + (org-with-wide-buffer + (goto-char (point-min)) + ;; If file already starts with a :PROPERTIES: drawer, remove it + (when (looking-at ":PROPERTIES:") + (let ((end (save-excursion + (re-search-forward ":END:" nil t)))) + (when end + (delete-region (point-min) (min (point-max) (1+ end))))))) + ;; Insert fresh ID drawer at very top + (goto-char (point-min)) + (let ((id (org-id-new))) + (insert (format ":PROPERTIES:\n:ID: %s\n:END:\n" id))) + (save-buffer)) + (defun denote-sequence-region () "Call `denote-sequence' and insert therein the text of the active region. diff --git a/bard-emacs-modules/bard-emacs-writing.el b/bard-emacs-modules/bard-emacs-writing.el index 9595d97..be215f2 100644 --- a/bard-emacs-modules/bard-emacs-writing.el +++ b/bard-emacs-modules/bard-emacs-writing.el @@ -94,7 +94,7 @@ (writing . "* Prompt\n* Outline\n* Response"))) (setq denote-save-buffers t) - (setq denote-prompts '(title keywords signature)) + (setq denote-prompts '(title keywords)) (setq denote-sort-dired-extra-prompts nil) (setq denote-sort-dired-default-sort-component 'identifier) (setq denote-sort-dired-default-reverse-sort nil) @@ -116,18 +116,15 @@ (interactive) (consult-grep "~/Notes/denote")) + (add-hook 'denote-after-new-note-hook #'bard/denote-insert-id-at-top) + :hook (dired-mode . denote-dired-mode) - - ;; journalling with timer - (denote-journal-extras-hook . (lambda () - (tmr "10" "Journalling") - (bard/scroll-center-cursor-mode t))) + :bind (("C-c n n" . denote) ("C-c n " . denote-region) ("C-c n o" . denote-sort-dired) - ("C-c n j" . denote-journal-extras-new-entry) ("C-c n r" . denote-rename-file-using-front-matter) ("C-c n k" . denote-rename-file-keywords) ("C-c n i" . denote-link) -- cgit v1.2.3