GTD Improvements

June 26th, 2006 No Comments »

Well, I was busy tonight. I revised the “view list” command to read “contexts.gtd” to get the contexts, instead of them being hard-coded. I also added a new tab command – “r” which removes the selected task. It isn’t completely how I want it, but it’s close. I need to figure out how to make it remove the line as well as the task. As it is, it leaves a blank line.

Anyway, in order to get the contexts to sort properly I had to change my regexp’s. So, you’ll need this version of “contexts.gtd” to use the new functions. Make sure it is still named “contexts.gtd” and you should be in business!

Intro to TextMate GTD

June 26th, 2006 10 Comments »

Introduction

The TextMate GTD bundle is yet another attempt at creating the perfect To Do List. The main concept in the development of the bundle is “plan in projects, execute in context.” What this means is that I like to think about what I have to do by focusing on one project at a time, but I may do a bunch of things from different projects, depending on the context. The bottom line is that it is a work in progress.

Overview

A quick overview of the terms may help (remember, these are MY terms – not David Allen’s). First, a Project is a collection of related tasks. It may be somewhat focused, e.g., “build a bookcase,” or it may be a more general grouping, like “things to do in the yard.” Next, a Task is a discrete action. For example, a task for building a bookshelf would be “measure the area where I want the shelf,” or “buy the materials for the shelf.” Strict adherents to David Allen’s Getting Things Done may want more detail, like “go to the hardware store” and “buy nails” as separate tasks, but I don’t always feel that I need to document minute steps of a project. The final concept for the GTD bundle is Context. Context is where or how a task is accomplished. Again, some people like specific “office computer” and “home computer” tasks, but I tend to aggregate them, where possible.

Now a screenshot:

Gtd1

This is my current setup. All of the files are part of a TextMate project (not to be confused with a GTD project). You’ll notice that each GTD project is a separate file, with a .gtd extension. Still looking at the list of files, notice that the top file is called “contexts.gtd;” this is a special file for use within the bundle. I’ll explain it in more detail later. Within the main window, you can see the various tasks associated with building a bookshelf. The first word in each line, in ALL CAPS, is the context. A lot (most?) GTD folks like to see an ampersand (@) at the front of a context. However, I don’t feel the need – I know it’s a context, so why bother with the extra character?

The part that makes this bundle useful is how it groups tasks by context. Here is a screenshot of the list:

Gtd2

See how it groups tasks from different projects into context groups? If you think that’s a cool idea, keep reading!

Setting up the GTD Bundle

Well, assuming you have TextMate and are comfortable with Subversion, it isn’t hard to get started. Follow these directions to install the bundle as part of the TextMate bundle package. Next, create a TextMate project (in ~/Documents/GTD, for example). Then, you need to add a contexts.gtd file to this project. Get it here. Copy this file to the TextMate project. Now you’re ready to start.

Using the GTD Bundle

The contexts.gtd file lists the contexts that are recognized in the GTD bundle (more on modifying those later on). Next you need to create a project file by clicking the little button on the bottom left of the project drawer. GTD projects are simple text files with a ‘.gtd’ extension.

To use a context, type the key letter (the single letter after the first ‘|’). Then press the ‘Enter’ key. The ‘Return’ will not work. This will change the letter into the context and supply a template for the task. For example, a TASK will have a prompt for the task description. EMAIL will prompt you for the addressee and the subject.

Useful contexts that aren’t in your contexts.gtd are WAIT, UNWAIT and DONE. To put a task into WAIT, type ‘w’ and hit tab. To take it off of WAIT status type ‘u’ and tab. Typing ‘d’ and tab marks a task as DONE.

Once you have a bunch of projects and want to see a consolidated task list, press cmd-shift-T. Cmd-opt-shift-T will give you the task list minus the completed tasks. Note – this function needs work.

Modifying the GTD Bundle

What a lot of folks seemed to want is to create their own contexts. So, the contexts.gtd provides the capability for this. To add you own contexts, follow the pattern in the contexts.gtd file. Here is the layout of the file:

The format is CONTEXT|keyCommand|keyString|regex|color where: CONTEXT is the name of the context keyCommand is the key letter(s) keyString is the code that the keyCommand executes regex is the regex string to match (may possibly be different from CONTEXT) color is the color for the list view (not yet ready)

Important! Add whatever you want to the list, but the last two contexts must be OTHER and DONE! Also, the search for the key command will stop at the first match, so put longer commands before shorter, e.g., ‘tw’ before ‘t’.

TASK|t|TASK ${1:new task}|^TASK|00000f EMAIL|e|EMAIL ${1:person} re: ${0:subject}|^EMAIL|0000ff CALL|c|CALL ${1:person} re: ${2:subject} ${0:#}|^CALL|000fff OTHER|o|other|^OTHER|00ffff DONE|d|done|^DONE|0fffff

So, if I wanted to have a new context for SCHOOL, I would add a line like:

SCHOOL|s|SCHOOL ${1:subject} ${0:task}|^SCHOOL|123456

And I would type ’s’ then ‘Enter’ to execute it.

Conclusion (for now)

Well, that’s about it for the intro. Please feel free to contact me with feedback. I hope you find it useful!

Why it’s been quiet here

June 25th, 2006 No Comments »

I’ve been pretty busy lately, and when I get home I still have a lot to do. I bought TextMate about a month ago as a better editor for learning Cocoa. Then I found that it’s plugin features make it great for customization, and it had a bundle called TODO, which is a tool for commenting code. Since then I’ve been building a GTD bundle for TextMate. It started as something for me, but I added it to the TextMate repository, and it has garnered some interest. Look for a more detailed write-up as my next post.

HoudahSpot Thoughts

June 16th, 2006 No Comments »

My review of HoudahSpot as seen on MacZOT.com

I haven’t had a chance to do too much with it, but it seems like a better Spotlight.

NOTE: If you’re seeing this on June 16, 2006 head over to MacZOT, you might be able to get a Free copy of HoudahSpot

Search easily in Tiger, Mac OS X, with HoudahSpot

Magazines

June 3rd, 2006 No Comments »

Just a small thing, but why is it that the billing departments of magazine publishers are faster than the actual distribution departments? It never fails that, when I sign up for a magazine online, usually on one of those “get one issue free” deals, the bill arrives before my trial issue.