diff --git a/config.org b/config.org index ccfed9c..8c73b68 100644 --- a/config.org +++ b/config.org @@ -505,115 +505,6 @@ (auto-mode . emacs))) #+end_src -** Workflow States - I like to have =IN-PROGRESS= and =CANCELLED= workflow states as - well as the standard =TODO= and =DONE=. Cancelled items also want a - note attached explaining why. All this can be added by setting - [[help:org-todo-keywords][org-todo-keywords]]: - - #+begin_src emacs-lisp - (setq org-todo-keywords - '((sequence "TODO" "IN-PROGRESS" "|" "DONE" "CANCELLED(@)"))) - #+end_src - - The ="|"= separates /needs further action/ states (before it) from - /no further action needed/ states (after it). - - I also want to log the date and time when a note is marked as done: - - #+begin_src emacs-lisp - (setq org-log-done 'time) - #+end_src - -** Agenda - Time to try org-mode's agenda feature again I think. Last time I - didn't end up using it much, but I am /much/ more of an Emacs - addict now so I do forsee it actually surviving (this will be funny - to read in the future if not). - - I want to show all TODOs in =.org= files under my top-level - =~/Documents/org= directory and any in this config itself. This is - done by enumerating all files under =~/Documents/org= with - [[help:directory-files-recursively][directory-files-recursively]], then setting [[help:org-agenda-files][org-agenda-files]] to this, - along with this config's path. - - #+begin_src emacs-lisp - (let ((org-docs - (directory-files-recursively "~/Documents/org" ".+\.org$"))) - (setq org-agenda-files `("~/.emacs.d/config.org" ,@org-docs))) - #+end_src - - Also I find it really very annoying that the the current window - layout is destroyed when you run =org-agenda=. That behaviour is - changed by setting [[help:org-agenda-window-setup][org-agenda-window-setup]]: - - #+begin_src emacs-lisp - (setq org-agenda-window-setup 'current-window) - #+end_src - - Include events from my diary: - - #+begin_src emacs-lisp - (setq org-agenda-include-diary t) - #+end_src - - Though I don't like the time grid being on by default. - - #+begin_src emacs-lisp - (setq org-agenda-use-time-grid nil) - #+end_src - - I primarily use the TODO list to keep track of un-scheduled tasks, - so I don't want those displayed in there: - - #+begin_src emacs-lisp - (setq org-agenda-todo-ignore-scheduled t) - #+end_src - - Finally, I want a keybinding for the weekly agenda and global TODO - list agenda view: - - #+begin_src emacs-lisp - (defun org-weekly-agenda-and-todo-list () - (interactive) - (org-agenda nil "n")) - - (global-set-key (kbd "C-c a") 'org-weekly-agenda-and-todo-list) - #+end_src - -** Habits - Habit tracking requires the habits org module to be loaded. This is - done by adding the symbol ~'habits~ to [[help:org-modules][org-modules]], if it's not in - there already. I originally didn't have the surrounding ~unless~, - but it causes problems when re-loading the config using - [[help:org-babel-load-file][org-babel-load-file]]. - - #+begin_src emacs-lisp - (unless (member 'habits org-modules) - (add-to-list 'org-modules 'org-habit) - (org-load-modules-maybe t)) - #+end_src - - The [[help:org-load-modules-maybe][org-load-modules-maybe]] call forces org to load the modules in - [[help:org-modules][org-modules]]. Not sure it's needed, but I ran into some weird issues - and I think it fixed them. - - The consistency graph is very nice but overlaps a lot of the habit - names, so I want to move it to the right a little: - - #+begin_src emacs-lisp - (setq org-habit-graph-column 42) - #+end_src - - Also it displays days that you did a habit in red if the habit was - overdue on that day, which makes a sort of sense, but always - showing days you did things in green makes more sense to me. The - variable [[help:org-habit-show-done-always-green][org-habit-show-done-always-green]] controls this. - - #+begin_src emacs-lisp - (setq org-habit-show-done-always-green t) - #+end_src - ** Identation Setting [[help:org-adapt-indentation][org-adapt-indentation]] to ~t~ ensures that Org will indent text under a headline: