This post documents my Org-mode flow and how I use it to keep track of things.
Org file structure
I have a dedicated org directory in my home folder which contains all my Org files. Currently I have it setup so that there is a dedicated Inbox file, inbox.org. Everything I capture or simply log will be put in this Inbox for refiling and processing later on.
Next I have a Personal Org file, personal.org that contains generic personal todos and notes.
For all major clients and projects, I have a dedicated Org file into which I organize things.
Each org file, be it my personal file or project specific files have the same structure:
- Action These are tasks and todo's I need to perform.
- Notes Various notes related to the project, usually sub divided in meetings and people related.
- Archive Here I refile finished tasks so I can refer back to them later.
Capturing new tasks
I capture new tasks straight from Emacs using
org-capture which is bound to C-c c. This places a task straight in my main Inbox file $HOME/org/inbox.org.
From here I usually refile the item straight away or I come back at a later set time and process my inbox.
Refiling is pretty important in my Org flow since I use it to move tasks from my general Inbox to project or client specific inboxes, or to the archive.
To refile, I use the
org-refile command, which is bound to C-c C-w
I have custom Todo keywords setup for my Org todos:
- In progress
When changing the progress of my task, I usually use the general C-c C-t to move the task progress forward. Ocassionally I will use C-u C-c C-t to add a note with the current date/time for extra context.
Add notes to tasks
To add timestamped notes to my Org tasks, I use the
org-add-note command which is bound to C-c C-z.
This is the relevant org-mode section in my Emacs
(use-package org :ensure t :bind (("C-c c" . #'org-capture) ("C-c a" . #'org-agenda) ("C-c l" . #'org-store-link)) :config (setq org-directory (concat (getenv "HOME") "/org")) (setq org-default-notes-file (concat org-directory "/inbox.org")) (setq org-refile-targets '((org-agenda-files :maxlevel . 1))) (setq org-todo-keywords '((sequence "TODO" "INPROGRESS" "|" "DONE" "DELEGATED"))) (setq org-agenda-files '("~/org")) (setq org-capture-templates '(("t" "Todo" entry (file+headline "~/org/inbox.org" "Inbox") "* TODO %?\n %i\n %a") ("n" "Note" entry (file+datetree "~/org/inbox.org" "Notes") "* %?\nEntered on %U\n %i\n %a"))))