summary refs log tree commit diff
path: root/config/init-notes.el
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2024-08-30 17:55:32 -0700
committerFranck Cuny <franck@fcuny.net>2024-08-30 17:55:32 -0700
commitb73353dba56c220ee68feceb92cf15d3b17d6dfb (patch)
treec47a67fd964bd85f32293ae371cd759d6326e8f1 /config/init-notes.el
parentmove a few more things to init-window.el (diff)
downloademacs.d-b73353dba56c220ee68feceb92cf15d3b17d6dfb.tar.gz
a mix of stuff for denote / org / dired
Diffstat (limited to 'config/init-notes.el')
-rw-r--r--config/init-notes.el113
1 files changed, 113 insertions, 0 deletions
diff --git a/config/init-notes.el b/config/init-notes.el
new file mode 100644
index 0000000..861051d
--- /dev/null
+++ b/config/init-notes.el
@@ -0,0 +1,113 @@
+;;; init-notes.el --- for notes and tasks -*- lexical-binding: t -*-
+;; Author: Franck Cuny <franck@fcuny.net>
+
+;;; Commentary:
+
+;; commentary
+
+;;; Code:
+
+(use-package denote
+  :ensure t
+  :init
+  (use-package denote-org-extras
+    :ensure nil)
+  (use-package denote-journal-extras
+    :ensure nil)
+  :bind (("C-c n r" . denote-rename-file)
+	 ("C-c n t" . denote-journal-extras-new-or-existing-entry)
+	 ("C-c n n" . denote-subdirectory))
+  :custom
+  (denote-rename-buffer-mode 1)
+  (denote-journal-extras-directory (concat denote-directory "journal/" (format-time-string "%Y")))
+  (denote-file-type "org")
+  (denote-dired-directories (list denote-directory))
+  (denote-dired-directories-include-subdirectories t)
+  (denote-journal-extras-title-format 'day-date-month-year))
+
+(use-package org
+  :hook
+  (org-mode . turn-on-flyspell)
+  (org-mode . visual-line-mode)
+  (org-mode . org-indent-mode)
+  :custom
+  (org-directory "~/Documents/notes")
+  (org-default-notes-file (expand-file-name "inbox.org" org-directory))
+
+  (org-startup-folded t)
+  (org-startup-indented t)
+  (org-startup-with-inline-images t)
+
+  ;; enable todo and checkbox dependencies
+  (org-enforce-todo-dependencies t)
+  (org-enforce-todo-checkbox-dependencies t)
+
+  ;; quick access for todo states
+  (org-todo-keywords
+   '((sequence "TODO(t)" "NEXT(n)" "WAITING(w!)" "|" "DONE(d)")
+     (sequence "|" "CANCELLED(c)")))
+
+  (org-log-done 'time)
+  (org-log-into-drawer t)
+
+  ;; org-refile options
+  (org-refile-allow-creating-parent-nodes (quote confirm))
+  (org-refile-use-outline-path 'file
+        org-outline-path-complete-in-steps nil)
+
+  (org-hide-emphasis-markers t)
+  (org-hide-leading-stars t)
+  (org-pretty-entities t)
+
+  (org-return-follows-link t)
+
+  (org-export-backends '(html md))
+
+  (org-imenu-depth 4)
+
+  (org-insert-heading-respect-content t)
+
+  (org-outline-path-complete-in-steps nil)
+
+  (org-src-fontify-natively t)
+  (org-src-preserve-indentation t)
+  (org-src-tab-acts-natively t)
+  (org-src-window-setup 'current-window)
+
+  (org-yank-adjusted-subtrees t)
+
+  (org-structure-template-alist
+   '(("s" . "src")
+     ("E" . "src emacs-lisp")
+     ("p" . "src python")
+     ("e" . "example")
+     ("q" . "quote")
+     ("V" . "verbatim"))))
+
+(use-package org-bullets
+  :ensure t
+  :hook (org-mode . org-bullets-mode))
+
+(use-package org-auto-tangle
+  :ensure t
+  :hook (org-mode . org-auto-tangle-mode))
+
+(use-package org-babel
+  :no-require t
+  :after (org)
+  :config
+  (org-babel-do-load-languages
+   'org-babel-load-languages
+   '((python     . t)
+     (emacs-lisp . t)
+     (calc       . t)
+     (shell      . t)
+     (sql        . t)
+     (dot        . t)))
+  (remove-hook 'kill-emacs-hook 'org-babel-remove-temporary-directory)
+  (advice-add 'org-babel-edit-prep:emacs-lisp :after
+              #'(lambda (_info) (run-hooks 'emacs-lisp-mode-hook))))
+
+(provide 'init-notes)
+
+;;; init-notes.el ends here