nixos/home/emacs/modules/custom-org-config.el

67 lines
2.4 KiB
EmacsLisp

(setq org-directory "~/Org"
org-pretty-entities t
org-pretty-entities-include-sub-superscripts t
org-tags-column 0
org-modern-tag nil
org-agenda-files '("~/Org/" "~/Org/journal/" "~/Org/projects/")
org-agenda-sticky t
org-agenda-window-setup 'current-window
org-agenda-prefix-format '((agenda . " %-12:c%?-12t% s")
(todo . " %-12:c")
(tags . " %-12:c")
(search . " %-12:c"))
org-journal-dir (expand-file-name "journal" org-directory)
org-journal-file-type 'monthly
org-journal-file-format "%Y-%m.org"
org-refile-use-outline-path t
org-refile-allow-creating-parent-nodes t
org-refile-use-outline-path 'file
org-refile-targets '((nil :maxlevel . 3)
(org-agenda-files :maxlevel . 3))
org-outline-path-complete-in-steps nil
org-default-notes-file (expand-file-name "notes.org" org-directory))
(keymap-global-set "C-c o a" #'org-agenda)
(keymap-global-set "C-c o n" #'org-capture)
(keymap-global-set "C-c o l" #'org-capture-goto-last-stored)
(keymap-global-set "C-c o j j" #'org-journal-new-entry)
(keymap-global-set "C-c o j n" #'org-journal-new-date-entry)
(keymap-global-set "C-c o j s" #'org-journal-new-scheduled-entry)
(add-hook 'org-mode-hook #'org-modern-mode)
(add-hook 'org-agenda-finalize-hook #'org-modern-agenda)
(setq org-capture-templates
'(("n" "Note" entry
(file+headline "inbox.org" "Note")
"* %?"
:prepend t
:empty-lines 1)
("t" "Task" entry
(file+headline "inbox.org" "Task")
"* TODO %?"
:prepend t
:empty-lines 1)
))
(setq citar-bibliography '("~/.references/main.bib")
citar-library-paths '("~/.references/library")
citar-notes-paths '("~/.references/notes")
citar-symbols '((file "F" . "󰂺")
(note "N" . "󰎞")
(link "L" . "󰌹")))
(when (require 'citar nil :noerror)
(keymap-global-set "C-c o c o" #'citar-open)
(keymap-global-set "C-c o c a" #'citar-add-file-to-library))
(setq khalel-import-org-file (expand-file-name "calendar.org" org-directory)
khalel-import-org-file-read-only nil
khalel-import-org-file-confirm-overwrite nil
khalel-import-start-date "-30d"
khalel-import-end-date "+30d")
(when (require 'khalel nil :noerror)
(add-hook 'org-agenda-mode-hook #'khalel-import-events)
(khalel-add-capture-template "e"))
(provide 'custom-org-config)