Regarding Taskpaper

Finding Untagged Items in TaskPaper

Recorded on February 4th, 2017

I just found an answer to a question on the TaskPaper forums with an answer by Jesse Grosjean (of course). If you need to find all the untagged items in a TaskPaper file, save this as a search in the sidebar:

not matches "($|\\s)@\\w+"

Back to One Master TaskPaper File

Recorded on August 16th, 2016

I abandoned the additional This Week.taskpaper file and am back on one single Current.taskpaper file. It was getting to be too much to flip between the two on the phone, so I never did it. The new Current.taskpaper file is expanded to include some day-oriented faux projects at the top of the file, because I can’t seem to reliably adopt regular TaskPaper due dates.

The lesson here is: do not let your task list fester like a fridge full of old food (something Merlin Mann has said many, many times). Get rid of the stuff you’re never gonna eat, even if you had good intentions at one time, and especially if you’ve been carrying it all around for too long. Same with moldy tasks and actions.

I was almost lured into signing up for Todoist, which is a great system run by good people. I know, though, that the attraction of that app for me is to have a perfect relational database of tasks. The flaw in that idea is that a perfect task structure may help get things off your mind, but it can be so perfect that you go numb to it and just gaze at its perfection. Your projects and tasks shouldn’t have to sit around long enough to need a perfect structure. You should have enough structure there to make them not chaotic, but there should be enough mess in there that you want to get rid of (i.e. complete) the tasks as quickly as possible.

No matter what system or app you use, there is just no substitute for the unsexy work of:

  1. Regularly reviewing your commitments and what steps will need to happen to get them done
  2. Being realistic about what you can achieve in a day or week
  3. Actually doing the things on the lists

Misusing TaskPaper for a Today List

Recorded on July 11th, 2016

screenshot of TaskPaper task list

On the latest Nerds on Draft, Gabe and Jeff discussed many areas of life that still have friction in them, and task management reared it’s ugly (i.e. always welcome) head. They talked about their struggle with the idea that the ultimate mythical task management system should be able to handle tasks, projects, time-based reminders, and calendar items all together. Those certainly seem like they should be relatable somehow, but there’s always friction between the edges of those systems.

When the subject of TaskPaper came up, the consensus was that text file-based task management systems are good at defining what tasks need to happen to get something done, but that apps like Apple Reminders are better for getting you to do dumb things like taking out the trash on a certain day, at a certain time. You have to use each system or app for what it’s good for, even if everything isn’t frictionless. It was so good to hear them articulate exactly this eternally unsolved problem in a way that sounded like they had been eavesdropping on my brain.

I know that every time I try to press TaskPaper into doing things that are better handled by Reminders, it breaks down. I need to get better at routinely actually looking at TaskPaper/Taskmator, so that I can go back to trusting it. This afternoon, I went crazy and sliced out the items that were in the “Today” pseudo-project in my Current.taskpaper mondo master file into a separate Today.taskpaper file. If I’m really good, I’ll start it fresh every morning, like a blank sheet of paper, populated with choice tasks from the Current file.1 It’s not quite the way TaskPaper is intended to be used, but I was already breaking the model anyway by having projects like “Today”, “Sunday”, “Monday”, etc. I’m thinking this way because:

  1. I love the idea of a Field Notes notebook and Bullet Journal-type syntax for today’s tasks, but I’m just not going to sustainably sit down every morning and take the time to manually recopy the undone items to the next blank sheet. I’d love to be that guy, but the practice never stuck every time I tried it. Better to use the laptop/phone clipboard to make that slightly more efficient.
  2. If I’m not going to use paper for this, I need a digital Today file that’s small enough to use with iOS Taskmator (which doesn’t like big TaskPaper files). Editorial can also do this, but it’s overkill, and since I use it for so many other text-editing jobs on the phone, my TaskPaper-formatted files are never open by default in Editorial.
  3. If I want to spend most of the day working through a list of stuff that I really want to get done today, I’m more likely to do it if that list is physically short. Not just filtered to be short, but actually a really short file, where I can cross stuff off and feel good about seeing it in an Archive section down at the bottom as the day progresses. And it can’t have all the countless other contexts and projects that tend to fill up the Current master file. Seeing that stuff every time I want to see just the Today list is too demoralizing and overwhelming, even if it’s all off the bottom of the screen.
  4. I use Drafts to prepend inbox items to the top of my TaskPaper files. As robust as Drafts, Dropbox, and text files are, I believe it’s a bad idea to repeatedly prepend stuff wirelessly to your main, long, canonical TaskPaper file all day, as many times a day as I’ve been doing it. If something goes wrong during that transaction and data gets corrupted or there’s a Dropbox conflict, it cannot be allowed to scramble the big file that has all my projects defined in it. I’d rather prepend those inbox items to a super-short Today file, and do them today if they need to be done today, or slot them into a Later project in that file to pull into Current all at once at the end of the night. (Or better, leave them entirely in Drafts if they don’t need to be done today and process the Drafts inbox at night.)

So that’s what I’m trying. Fingers crossed.

Wow. They do say that if you want to figure something out, you should write about it to discover what you really think.


  1. Note to self: Figure out a way to automate that. There’s nothing like an empty refrigerator to motivate you to discard the unhealthy past and fill it with healthy foods.) 

You Can Re-order Projects in the TaskPaper 3 Sidebar

Recorded on June 12th, 2016

screenshot of TaskPaper 3 on the Mac

Maybe everyone already knew about this, but I sure didn’t. In TaskPaper 3 for the Mac, you can click on a project name in the sidebar and drag it around to re-order it. Of course, doing so moves all of that project’s descendants1 with it. If this was always the case, I sure wish I had been paying more attention. This is going to help me a ton! I frequently need to pull a project up into the near-term landscape, out of the deep, dark Well of Neglected Projects. I thought the only way to do that was to select the entire project in the main text window and cut and paste it to a new spot. Now all I have to do is click and drag one item in the project list.


  1. I still want to type that as “Descendents” with an “e”. 

OmniFocus Now Speaks TaskPaper

Recorded on May 4th, 2016

Hearing CGP Grey get so excited on Cortex #28 about OmniFocus’s new ability to import and export in TaskPaper format almost — almost — makes me want to switch back to OmniFocus. But I just can’t shake TaskPaper as the place where I live. As imperfect and simple as it is, it most closely fits how my brain works. And I still have a mental block against whatever the two-colored task-completion circles mean in OF. Especially when they’re flagged.

Still, damn, TP importing and exporting would be handy.

Your Tasks File Must Be a Living Document

Recorded on April 28th, 2016

Jeff of Nerds on Draft said a great thing on Episode 065 as he and Gabe weighed the pros and cons of 2Do and TaskPaper (or TaskPaper-formatted files in whatever arbitrary editor). At some point, Jeff described how he reviews his tasks multiple times a day, no matter what system he uses. I’m paraphrasing here, but he said something to the effect of, “I have to keep it up to date and make sure it’s a living document.”

That’s what I needed to hear, right at that moment. When things get crazy, I tend to prepend new tasks to a TaskPaper file, never putting a limit on them or organizing them into their proper projects. When it’s time to actually do something from that list, I most often just “pop the stack” and grab whatever’s on top, or near it. That’s a terrible way to work, because you never trust anything other than what’s on top, and you’re probably not working on what’s really the most important thing next. I realize that if I would do as little as open that file early in the morning and late at night, and then make sure that the stuff in it was correct and do-able, I’d be better off.

In other words, any system is a good one as long as you make the effort to live in it and keep it current. All the tags in the world won’t automate that for you.

The Next Week in TaskPaper

Recorded on April 23rd, 2016

I don’t feel like writing this post right now. All my lizard brain wants to do is read about Prince and watch more Prince videos, but that’s not going to make me less sad, and it’s not going to get anything productive done.

In the hope of pulling my TaskPaper file back from the cliff and breathing life into it again, I’ve decided to meet myself where I am and just admit that I think of tasks in terms of days and weeks. Other than the handy ability of Siri to set reminder dates for stuff, I’ve never liked setting “start dates” and especially “due dates” for tasks in the future. It didn’t work for me when I used OmniFocus, and it doesn’t work for me when I use TaskPaper. Setting those kinds of date ticklers always makes an obnoxious iOS reminder pop up at a time when I’m invariably not going to want to move on a task, and then you end up with a spiky list of arbitrary due times, but no real picture of what a day looks like.

Here’s what I’m trying starting this week:

screenshot of TaskPaper file

I have a passel of actual TaskPaper projects stashed off the bottom of the screen, but what you can see here is that I’m misusing a handful of TaskPaper “projects” and naming them after the upcoming days of the week. That means I’ll pluck out a few next actions from various projects (or just some standalone, project-less next actions) and dump them in the days of the week when I think I’ll get to them. That way, I can see how a day is shaping up. To me, that’s actually less insane than assigning dates to stuff that I know I need to get to in the next two to seven days. 💜

A Regex Pattern for Editorial to Select a Single TaskPaper Project

Recorded on February 15th, 2016

I had a breakthrough today! I was stepping through some old TaskPaper-formatted projects in Editorial and wanted a quick way to grab a project and shoot it to a someday/maybe/later file so it wouldn’t clutter up my main Current.taskpaper file. I figured the best way would be to tap the folding triangle icon to fold the project, select it, cut it, and paste it to Backlog.taskpaper. But I didn’t want to leave the Bluetooth keyboard to do it, and I didn’t see an existing workflow to fold a single TaskPaper project.

I always separate TaskPaper projects with a blank line, just so they have some breathing space. I realized that if I put the cursor in the current project header line and made a workflow to select that whole line, and then do a regex to find and extend the selection to also grab all the tasks + notes underneath the project, then I could cut and paste that into another file. I haven’t finished that whole workflow, but I did finally figure out the regex pattern. It’s this:

(?s)(.*?)\n{2}

The key to this was an answer on Stack Overflow, where someone was looking for something similar. The \n{2} is the trick that searches for two newlines in a row, which will find the blank line underneath my project. Everything else in the pattern just selects all the lines in the current project until that point.

Playing with this would have been impossible if it weren’t for the eternally useful RegEx101, where you can plug in a regex and test it against your own text until you get the match you need.

screenshot of RegEx101

Here’s what the finished regex looks like in the Find action.

screenshot of Find action

And here’s Editorial’s automatic selection of just the current project.

screenshot of selected project in Editorial

I’ll share the whole workflow once I finish it and get it working totally right.