Update org-mode settings as I read through them

This commit is contained in:
Vedang Manerikar 2024-11-15 17:12:07 +05:30
parent f4d39e8bd4
commit b42c2304b6
2 changed files with 46 additions and 53 deletions

View file

@ -685,7 +685,7 @@ Another section defines some complementary functionality
((after-init . fontaine-mode) ((after-init . fontaine-mode)
(after-init . (lambda () (after-init . (lambda ()
;; Set last preset or fall back to desired style from `fontaine-presets'. ;; Set last preset or fall back to desired style from `fontaine-presets'.
(fontaine-set-preset (or (fontaine-restore-latest-preset) 'regular))))) (fontaine-set-preset (or (fontaine-restore-latest-preset) 'large)))))
:config :config
;; This is defined in Emacs C code: it belongs to font settings. ;; This is defined in Emacs C code: it belongs to font settings.
(setq x-underline-at-descent-line nil) (setq x-underline-at-descent-line nil)
@ -2277,7 +2277,8 @@ on how I use Org.
(use-package org (use-package org
:ensure nil :ensure nil
:init :init
(setq org-directory (expand-file-name "~/Documents/org/")) (setq org-directory (expand-file-name "~/Tresors/Documents/diary"))
(setq org-default-notes-file (expand-file-name "brain/daily.org" org-directory))
(setq org-imenu-depth 7) (setq org-imenu-depth 7)
(add-to-list 'safe-local-variable-values '(org-hide-leading-stars . t)) (add-to-list 'safe-local-variable-values '(org-hide-leading-stars . t))
@ -2410,38 +2411,37 @@ the capture phase ([[#h:f8f06938-0dfe-45c3-b4cf-996d36cba82d][The =unravel-org.e
#+end_quote #+end_quote
#+begin_src emacs-lisp :tangle "unravel-modules/unravel-org.el" #+begin_src emacs-lisp :tangle "unravel-modules/unravel-org.el"
;;;; refile, todo ;;;; refile, todo
(use-package org (use-package org
:ensure nil :ensure nil
:config :config
(setq org-refile-targets (setq org-refile-targets
'((org-agenda-files . (:maxlevel . 2)) '((org-agenda-files . (:maxlevel . 2))
(nil . (:maxlevel . 2)))) (nil . (:maxlevel . 2))))
(setq org-refile-use-outline-path t) (setq org-refile-use-outline-path t)
(setq org-refile-allow-creating-parent-nodes 'confirm) (setq org-refile-allow-creating-parent-nodes 'confirm)
(setq org-refile-use-cache t) (setq org-refile-use-cache t)
(setq org-reverse-note-order nil) (setq org-reverse-note-order nil)
;; ;; NOTE 2023-04-07: Leaving this here for demo purposes. ;; ;; NOTE 2023-04-07: Leaving this here for demo purposes.
;; (setq org-todo-keywords ;; (setq org-todo-keywords
;; '((sequence "TODO(t)" "MAYBE(m)" "WAIT(w@/!)" "|" "CANCEL(c@)" "DONE(d!)") ;; '((sequence "TODO(t)" "MAYBE(m)" "WAIT(w@/!)" "|" "CANCEL(c@)" "DONE(d!)")
;; (sequence "COACH(k)" "|" "COACHED(K!)"))) ;; (sequence "COACH(k)" "|" "COACHED(K!)")))
(setq org-todo-keywords (setq org-todo-keywords
'((sequence "TODO(t)" "|" "CANCEL(c@)" "DONE(d!)") '((sequence "TODO(t)" "|" "CANCEL(c@)" "DONE(d!)")))
(sequence "COACH(k)" "|" "COACHED(K!)")))
(defface prot/org-bold-done (defface prot/org-bold-done
'((t :inherit (bold org-done))) '((t :inherit (bold org-done)))
"Face for bold DONE-type Org keywords.") "Face for bold DONE-type Org keywords.")
(setq org-todo-keyword-faces (setq org-todo-keyword-faces
'(("CANCEL" . prot/org-bold-done))) '(("CANCEL" . prot/org-bold-done)))
(setq org-use-fast-todo-selection 'expert) (setq org-use-fast-todo-selection 'expert)
(setq org-fontify-done-headline nil) (setq org-fontify-done-headline nil)
(setq org-fontify-todo-headline nil) (setq org-fontify-todo-headline nil)
(setq org-fontify-whole-heading-line nil) (setq org-fontify-whole-heading-line nil)
(setq org-enforce-todo-dependencies t) (setq org-enforce-todo-dependencies t)
(setq org-enforce-todo-checkbox-dependencies t)) (setq org-enforce-todo-checkbox-dependencies t))
#+end_src #+end_src
** The =unravel-org.el= Org heading tags ** The =unravel-org.el= Org heading tags
@ -2449,6 +2449,7 @@ the capture phase ([[#h:f8f06938-0dfe-45c3-b4cf-996d36cba82d][The =unravel-org.e
:CUSTOM_ID: h:81de4e32-a1af-4e1f-9e10-90eb0c90afa2 :CUSTOM_ID: h:81de4e32-a1af-4e1f-9e10-90eb0c90afa2
:END: :END:
#+begin_quote
Each Org heading can have one or more tags associated with it, while Each Org heading can have one or more tags associated with it, while
all headings inherit any potential =#+FILETAGS=. We can add tags to a all headings inherit any potential =#+FILETAGS=. We can add tags to a
heading when the cursor is over it by typing the ever flexible =C-c C-c=. heading when the cursor is over it by typing the ever flexible =C-c C-c=.
@ -2461,17 +2462,7 @@ Org agenda, in particular, provides commands to filter tasks by tag:
- [[#h:024dd541-0061-4a10-b10b-b17dcd4794b9][The =unravel-org.el= Org to-do and refile settings]] - [[#h:024dd541-0061-4a10-b10b-b17dcd4794b9][The =unravel-org.el= Org to-do and refile settings]]
- [[#h:7fe87b83-2815-4617-a5f9-d3417dd9d248][The =unravel-org.el= Org agenda settings]] - [[#h:7fe87b83-2815-4617-a5f9-d3417dd9d248][The =unravel-org.el= Org agenda settings]]
#+end_quote
The user option ~org-tag-alist~ lets us specify tags we always want to
use, though we can write tags per file as well by using the =#+TAGS=
keyword. I do the latter as a global list of tags is not useful in my
case. For example, when I wan checking my =coach.org= file for the
coaching sessions I provide, I do not need to see any of the tags that
make sense in my general =tasks.org=.
Note that in the settings below I disable the auto-alignment that Org
does where it shifts tags to the right of the heading. I do not like
it.
#+begin_src emacs-lisp :tangle "unravel-modules/unravel-org.el" #+begin_src emacs-lisp :tangle "unravel-modules/unravel-org.el"
;;;; tags ;;;; tags
@ -2488,6 +2479,7 @@ it.
:CUSTOM_ID: h:0884658e-9eb5-47e3-9338-66e09004a1a0 :CUSTOM_ID: h:0884658e-9eb5-47e3-9338-66e09004a1a0
:END: :END:
#+begin_quote
Org can keep a record of state changes, such as when we set an entry Org can keep a record of state changes, such as when we set an entry
marked with the =TODO= keyword as =DONE= or when we reschedule an marked with the =TODO= keyword as =DONE= or when we reschedule an
appointment ([[#h:7fe87b83-2815-4617-a5f9-d3417dd9d248][The =unravel-org.el= Org agenda settings]]). This data appointment ([[#h:7fe87b83-2815-4617-a5f9-d3417dd9d248][The =unravel-org.el= Org agenda settings]]). This data
@ -2495,17 +2487,18 @@ is stored in a =LOGBOOK= drawer right below the heading. I choose to
keep track of this information, as it is sometimes useful to capture keep track of this information, as it is sometimes useful to capture
mistakes or figure out intent in the absence of further clarification mistakes or figure out intent in the absence of further clarification
(though I do tend to write why something happened). (though I do tend to write why something happened).
#+end_quote
#+begin_src emacs-lisp :tangle "unravel-modules/unravel-org.el" #+begin_src emacs-lisp :tangle "unravel-modules/unravel-org.el"
;;;; log ;;;; log
(use-package org (use-package org
:ensure nil :ensure nil
:config :config
(setq org-log-done 'time) (setq org-log-done 'time)
(setq org-log-into-drawer t) (setq org-log-into-drawer t)
(setq org-log-note-clock-out nil) (setq org-log-note-clock-out nil)
(setq org-log-redeadline 'time) (setq org-log-redeadline 'time)
(setq org-log-reschedule 'time)) (setq org-log-reschedule 'time))
#+end_src #+end_src
** The =unravel-org.el= Org link settings ** The =unravel-org.el= Org link settings
@ -2839,7 +2832,7 @@ As for my workflow, here is an overview:
:CUSTOM_ID: h:7fe87b83-2815-4617-a5f9-d3417dd9d248 :CUSTOM_ID: h:7fe87b83-2815-4617-a5f9-d3417dd9d248
:END: :END:
[ Watch: [[https://protesilaos.com/codelog/2021-12-09-emacs-org-block-agenda/][Demo of my custom Org block agenda]] (2021-12-09). It has [ Watch Prot's talk: [[https://protesilaos.com/codelog/2021-12-09-emacs-org-block-agenda/][Demo of my custom Org block agenda]] (2021-12-09). It has
changed a bit since then, but the idea is the same. ] changed a bit since then, but the idea is the same. ]
With the Org agenda, we can visualise the tasks we have collected in With the Org agenda, we can visualise the tasks we have collected in

View file

@ -158,7 +158,7 @@
((after-init . fontaine-mode) ((after-init . fontaine-mode)
(after-init . (lambda () (after-init . (lambda ()
;; Set last preset or fall back to desired style from `fontaine-presets'. ;; Set last preset or fall back to desired style from `fontaine-presets'.
(fontaine-set-preset (or (fontaine-restore-latest-preset) 'regular))))) (fontaine-set-preset (or (fontaine-restore-latest-preset) 'large)))))
:config :config
;; This is defined in Emacs C code: it belongs to font settings. ;; This is defined in Emacs C code: it belongs to font settings.
(setq x-underline-at-descent-line nil) (setq x-underline-at-descent-line nil)