Productivity in Emacs minus Org-mode
Table of Contents
1. Always start from the bare minimum
The work environment nowadays value people who are ``productive''. If you are more ``productive'', i.e. have more output than other people at your pay grade, you feel better about yourself and your job. That could be good for your self-esteem, although not necessarily so for your career and health. But we are just people, with the same tendency to feel tired after prolonged and repetitive work. So a myth was invented, which states that with right techniques and mindsets, one can be more productive.
Thus, we have a cult of productivity tools, even suites. We try sophisticated tools with their respective philosophies and approaches to task management and productivity. Then we blame ourselves for not sticking to the theoretically perfect systems. Then we stop cleaning up our inboxes and capturing world-changing ideas.
Arguably, Org-mode, despite being free and free software, also cater to this sentiment when dealing with tasks. A large part of its features are for managing our busy lives effectively. However, that also means each task managed by it comes with considerable management overhead – sorting, scheduling, propertizing, re-scheduling, etc., etc. One feels in control of everything, but in fact we are only in control in the representation of those tasks.
Sometimes it helps to start from the simplest form. Reducing each task to exactly one line of text – no subtasks, no tags, no priority labels, no assignees – forces one to think what it is really about, what purpose does it serve, and whether it is important enough.
And most people don't need to make it more complicated than that. Doing so is only making busywork that invites more busywork. A text file called todo.txt
(just a file, not that system) would serve us perfectly well.
If that sounds too spartan for you, the approach below is fancier and more emacs-y. In exchange, you get multiple task lists, a day planner, and a decent calendar/agenda. If you are interested, read on.
2. Task management
The new todo-mode
is ``preinstalled'' with Emacs newer than 24. It can be used as a minimalism, single-file to-do list, but also supports some sophisticated features so that it works for 80% of people.
2.1. The file-category-item structure
I find it helpful to have multiple to-do files, some with multiple categories. But this is a result of my working style.
In the post-subprime, post-trade-war, post-Special-Military-Operation, post-Trump-and-MAGA economy, like many others, I have to take more than one job to make ends meet. For me, it's three jobs at any time, sometimes 4. The past I would allocate 2 hours or so to each of them every day, then found that exhausting and unsustainable.
Recently, I give each of my commitments one or two days a week. On a given weekday, I only do tasks that belong to one job, usually only one task on that day. Therefore, to set up one file for each of my jobs makes sense. In the morning, I just switch to the to-do file corresponding to that day's work, pick a task and start working. Other tasks are captured as they turn up.
2.2. Configuration
At this moment there really isn't much to configure, just tell Emacs where I would store the to-do files:
(setopt todo-directory "~/pim/")
By default, when you don't have any to-do file in that directory, todo-mode
creates a Todo.todo
for you. The Todo
part can be changed by setting the variable todo-initial-file
. But I'm going to name a few to-do files anyway.
Throw in some key bindings to make accessing to-do buffers faster:
(meow-leader-define-key
[..sic..]
'("tt" . todo-show)
'("ti" . todo-insert-item)
'("tj" . my/jump-to-todo))
(defun my/jump-to-todo ()
"Wrapper for jumping to a todo category from anywhere."
(interactive)
(require 'todo-mode)
(todo-jump-to-category 4))
Why a wrapper around todo-jump-to-category
? Because by default it prompts categories in the current to-do file. More often, I need to jump to a different file. As I explained above, the categories are often different stages a task goes through, and I don't have to jump between categories within the same file that often.