Manage Your Tasks Like a Techie with Emacs org-mode

by: Scott Nesbitt | 27 March 2018

There are two things I like in a tool: simplicity and support for plain text. There are a number of reasons for that, but for me simplicity is a feature not a drawback. The ability to comfortably work in plain text is a major bonus.

And then there’s my constant flirtation with Emacs. Emacs, for those of you who don’t know it, is a text editor popular among folks with a techinical bent. I’ve been using Emacs on and off since the late 1990s, and for whatever reason keep coming back to it every few years.

So why does Emacs seem to offend my minimalist sensibilities? Emacs is big. Really big. It can do a lot more than edit text. Some people use it for just about everything — writing, creating presentations, browsing the web, email, organizing themselves, and a whole lot more. Sometimes, too much. In the colophon to his book Just A Geek, actor and writer Wil Wheaton joked that he wanted to use the editor to write the book but couldn’t find the text editor in Emacs.

That said, Emacs is a text editor so it does plain text very well. It also has some useful features, functions, and extensions. One of those extensions is org-mode.

org-mode?

org-mode is an Emacs extension created by Carsten Dominik for keeping notes, maintaining TODO lists, planning projects, and authoring documents with a fast and effective plain-text system. Like Emacs itself, org-mode can do a lot. And there are people who push org-mode to its limits and beyond. I’m just not one of them.

Admittedly, org-mode is overkill for just managing your tasks. But task management is a good gateway into using org-mode to organize yourself in plain text.

A word of warning: what I’m going to discuss in this post might draw the ire of some org-mode purists or power users out there. So be it. This is the way I do things, and if that doesn’t mesh with the way they do things, then the problem doesn’t lie with me.

Before You Begin

I’m going to assume that you Emacs installed on your computer and that you know the basics of using Emacs. If you don’t, and are interested in learning, a good book is Mastering Emacs by Mickey Petersen. No, that’s not an affliate link — I don’t earn any money from recommending Petersen’s book.

Obviously, you’ll also need to install org-mode. You can learn more about installing and setting it up at the org-mode website.

Yes, it is a bit of work. But you’ll only need to do that once, and it can be worth the effort.

Getting Started

Fire up Emacs and create a new file named Tasks-Week1.org (or whatever you want to name it). I’ll be building a weekly task list in this post, but feel free to create monthly task lists. Remember to include the extension .org in the name of the file. The extension, as you might have guessed, tells Emacs it’s an org-mode file. Whenever you open a file with that extension, Emacs automatically makes the Org menu available on the menu bar.

An empty org-mode file

You have blank canvas, and now you’re ready to go.

Setting Up Your Task List

Create a set of headings for the week — Monday to Friday — by typing an asterisk, followed by the day of the week. Press CTRL+Enter to add a new heading. You’ll wind up with something that looks like this:

Headers in a task list

Next, go to the first heading in the list and then press CTRL-Enter to add an item below it. Press the Tab key on your keyboard to indent that item. This will be the first task under that heading. Repeat this for each task, and each day, in your list. You’ll wind up with a list that looks like this:

A weekly task list

To zoom in on the tasks for a specific day, collapse (or fold in org-mode speak) the other headings by clicking on a heading and pressing the Tab key on your keyboard.

Focusing on tasks by folding headings

Working with Your Task List

So, you have a task list. Now what? You might want to assign a priority to your tasks. org-mode has three priorities: A, B, and C — most important to least important. B, in case you’re wondering, is the default priority.

Assign a priority to a task by clicking on it, then pressing SHIFT-up arrow (S-up in Emacs speak) on your keyboard. Remember that B is the default priority, so you’ll need to press that combination of keys to cycle through them to find the priority that you want.

Assigning priorities to tasks

You can also add a visual cue to indicate which tasks you need to work on and which are done. To do that, click on a task in the list and press CTRL-c CTRL-t (C-c C-t in Emacs speak) on your keyboard. This marks the task as TODO. Do that again to mark it as DONE.

Working on tasks

You can also add notes to your tasks — for example, a link to a resource or a detail that will help you complete your task. To do that, position your cursor at the end of the task, then press Enter. Doing that creates an indented paragraph below the task. Type your note in that space.

A task with a note

Taking Your Task List With You

One weakness of org-mode is that your documents are stuck on your hard drive. There are a few mobile apps that claim to work with org-mode, but the only one that’s worked for me is Orgzly. I can drop by org-mode files into a synced folder in Dropbox, and then Orgzly picks them up. Here’s what the task list I created looks like in Orgzly:

A task list as viewed in Orgzly

Is That All?

There’s a lot more you can do with task lists in org-mode, like:

And definitely more than that, too. I’m being vague, if only because I have no real use for a lot of the features in org-mode and can’t be bothered cluttering the hard drive that’s my brain with information I’ll probably never use.

Final Thought

As I mentioned earlier in this post, org-mode is overkill for just managing your tasks. But task management is a good gateway into using org-mode to organize yourself. You might not wind up using it in the same way as so-called power users do, but you might find that organizing yourself like a techie in org-mode is the way to go.