diff options
| author | 2026-03-22 20:14:43 -0700 | |
|---|---|---|
| committer | 2026-03-24 01:18:06 -0700 | |
| commit | 8b8fba0450017375eb948335126fe94edae028c3 (patch) | |
| tree | 4ecc0c5355fcbd7906d0613e8f29d860c252ebd2 | |
| parent | e97b07406af8a4ea228e93b997f42bfbb533c462 (diff) | |
| download | emacs-config-8b8fba0450017375eb948335126fe94edae028c3.tar.gz emacs-config-8b8fba0450017375eb948335126fe94edae028c3.zip | |
oni-org: Add capture template for a reference note
| -rw-r--r-- | oni-org/oni-org.el | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/oni-org/oni-org.el b/oni-org/oni-org.el index d2df96b..47bccb1 100644 --- a/oni-org/oni-org.el +++ b/oni-org/oni-org.el @@ -4,7 +4,7 @@ ;; Author: Tom Willemse <tom@ryuslash.org> ;; Keywords: local -;; Version: 2026.0105.140349 +;; Version: 2026.0322.164302 ;; Package-Requires: (oni-yasnippet oni-hydra org org-edna diminish olivetti org-pretty-table) ;; This program is free software; you can redistribute it and/or modify @@ -1040,6 +1040,23 @@ CLOSED: %(setq oni-org--capture-D-date (format-time-string (org-time-stamp-forma %:link" :immediate-finish t)) +(defun oni-org-find-new-note-file () + (let ((title (read-string "Title: "))) + (find-file (expand-file-name (format "reference/%s-%s.org" + (format-time-string "%Y%m%d%H%M%S") + (replace-regexp-in-string (rx whitespace) "-" (downcase title))) + oni-org-todo-dir)) + (setq-local oni-org--capture-page-title title))) + +(oni-org--map-put org-capture-templates "p" + '("A note page." plain (function oni-org-find-new-note-file) "#+TITLE: %(with-current-buffer (org-capture-get :buffer) oni-org--capture-page-title) +#+DATE: %U + +%?" + :after-finalize (lambda () (when org-note-abort + (delete-file (buffer-file-name (org-capture-get :buffer)) t) + (kill-buffer (org-capture-get :buffer)))))) + ;;; Mastodon post dynamic block (defun oni-org-dblock-write-mastodon-post (params) |
