From 2364ff2137c4ccfacf6b93fdd518ff4c5223972a Mon Sep 17 00:00:00 2001 From: Lucas Sta Maria Date: Thu, 22 Feb 2024 17:11:34 -0500 Subject: [PATCH] feat(emacs): start using `org-roam` Signed-off-by: Lucas Sta Maria --- .emacs.d/include/orgconfig.el | 22 ++++++++++++++++++++-- .emacs.d/init.el | 1 + 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/.emacs.d/include/orgconfig.el b/.emacs.d/include/orgconfig.el index 832c541..cc017e6 100644 --- a/.emacs.d/include/orgconfig.el +++ b/.emacs.d/include/orgconfig.el @@ -4,6 +4,7 @@ ;;; Code: (require 'org) +(require 'org-roam) (require 'org-capture) (require 'org-modern) ;; Templates for org-mode @@ -16,6 +17,9 @@ (setq org-agenda-include-diary t) (setq org-src-preserve-indentation t) (setq org-modern-star '("#" "##" "###" "####" "#####" "######")) +(setq org-roam-directory "~/org/docs/") +(setq org-roam-extract-new-file-path "${slug}.org") +(org-roam-db-autosync-mode) ;; Enable Racket in Org-mode Babel (org-babel-do-load-languages @@ -39,11 +43,16 @@ ("T" "Tickler" entry (file+headline "~/org/tickler.org" "Tickler") "* %i%? \n %U"))) +(setq org-roam-capture-templates + '(("n" "default" plain "%?" + :target (file+head "${slug}.org" "#+title: ${title}\n") + :unnarrowed t) + ("N" "encrypted" plain "%?" + :target (file+head "${slug}.org.gpg" "#+title: ${title}\n") + :unnarrowed t))) (setq org-refile-targets '(("~/org/gtd.org" :maxlevel . 3) ("~/org/someday.org" :level . 1) ("~/org/tickler.org" :maxlevel . 2))) -(keymap-global-set "C-c a" #'org-agenda) -(keymap-global-set "C-c c" #'org-capture) (setq org-todo-keywords '((sequence "TODO(t)" "WAITING(w)" "|" "DONE(d)" "CANCELLED(c)"))) (defmacro η (fnc) @@ -51,6 +60,15 @@ `(lambda (&rest _rest) (funcall ,fnc))) +;; Keybinds +(defvar-keymap org-roam-keymap + "n" #'org-roam-capture + "f" #'org-roam-node-find) + +(keymap-global-set "C-c a" #'org-agenda) +(keymap-global-set "C-c c" #'org-capture) +(keymap-global-set "C-c o" org-roam-keymap) + ;; Org hooks (add-hook 'org-mode-hook (lambda () diff --git a/.emacs.d/init.el b/.emacs.d/init.el index 5c6b44e..44f2efe 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -46,6 +46,7 @@ ;; Org (straight-use-package 'org) +(straight-use-package 'org-roam) (straight-use-package 'org-modern) (straight-use-package 'org-recur) (straight-use-package '(org-modern-indent