Plaintext GTD using Taskpaper Syntax


Run down of current GTD system 2020-02

GTD Basics

Need for Organization – Background

When workload becomes large enough, it becomes entirely possible to work really hard on the wrong thing for that time/situation. Managing what to do – writing them down, looking at them to decide what to do next, or now, or tomorrow – at some point becomes almost as important as doing the work, as efficiency has to be brought in somehow (in addition to working harder) to get everything done on time to the degree that they need to be done.

For me, thinking about and deciding what the best thing is to work on right now was the first step towards gaining some perspective, or having some ideas about what\'s important (although that in and of itself doesn’t impart perspective).  There is some control imparted by actively deciding for oneself what to do among the sea of things to do, instead of letting emergencies dictate what’s going to happen now.

I’ve heard it likened to a driving a car.  If your car and driving skills are in good order, speeding up isn’t a problem.  If either isn’t the case, then little bumps on the road that were fine when driving at 5mph suddenly become car-flipping bumps at 100mph.

Among the many productivity and schools of thought on how to keep our mental house in good order, I found David Allen\'s Gettting Things Done methodology to be most applicable to me.  This is not an original thought, as many people have found this to be so, and GTD methodology is extremely popular.

GTD Workflow

“I would not give a fig for the simplicity this side of complexity, but I would give my life for the simplicity on the other side of complexity.”  Oliver Wendel Holmes Jr.

I would encourage everyone to learn more about GTD through the book.

Since the post assumes some familiarity with GTD processes, I will attempt to briefly review the parts of GTD that are relevant to Plaintext process being discussed.GTD Workflow is pretty simple, but I feel it’s simple in a way that’s on the far side of complex.

Essentially, David Allen states that all “stuff” that comes at us need to collect into an INBOX, then need to process into one of 7 piles. These are:

  1. Trash
  2. Someday/Maybe List (incubate)
  3. Reference File (nothing to do, but need to keep)
  4. Waiting For List (delegated to someone else)
  5. Next Actions List
  6. Calendar (Sacrosanct)
  7. Projects List/Project Plans

\"Stuff\" is everything that life throws at us that requires or demands our attention, like mail, email, text messages, memos, notes, thoughts, ideas, bills, etc.

\"Projects\" are goals that require more than 1 step to accomplish. This could range from little things like \"Plan picnic on yyyy-mm-dd\" to big things like \"Successfully complete merger with Company X\"

\"NextActions\" are discrete actions that can\'t be completed at the moment. These are usually organized on list of things you need to do when you get a chance, called the Next Actions list or task list. The tasks are organized into contexts like @work, @home, @agenda(bob), @calls, @email, @computer, etc. The contexts are defined by you, but the list shouldn’t get out of hand, because you’ll need to remember them.

Calendar records appointments and things with due dates. If a next action has a specific time it needs to happen on, or happen by, it goes on the calendar.

There are also some rules for how things flow through the GTD workflow, which are kind of dogmatic:

  1. Once something leaves the INBOX, it never goes back in.

  2. In GTD, time isn’t managed, and tasks don’t have priority (it’s assumed you committed to do something because it’s important enough), they have contexts.

  3. The destinations are and must remain comprehensive. The seven places are the only places everything can end up. There is no 8th or 9th place something could go. It’s all either trash, something you might do someday, something you need to keep and refer to, or delegated to someone, or need to do yourself when you get a chance, or need to do on/by a certain time and date, or a project. If you collect all your “stuff” (an accomplishment in and of itself), and process it all into these destinations, you know that that’s all there is to do (until more comes).

I think that there in lies the discipline of GTD – that you recognize that your commitments, todos, papers and other \"stuff\" can only be in those 7 places, and that they were put there via some very straightforward rules, and that you could redo the process and everything would end up in the same places. If that happens, and you know that it would, you no longer have to remember where you put anything, and only that you looked at it and did your workflow on it. That makes the system trustworthy.

People\'s GTD processes evolve over time and mine, described here, is also a work in progress. While this process is working for me, I should recognize that there is certainly room for improvement, and disclose that I fall off the horse pretty frequently. In search of systems that I could get back into with the least amount of friction (ie dump a lot of inputs quickly), I stumbled on plaintext, and in the process of adapting it to make it more intuitive and easier for me, the process described below resulted.

Apps That Handle Different Parts of The GTD Workflow

Here’s a quickly marked up GTD workflow with tools I use to manage each of these aspects.

Inbox is a set of containers I have agreed with myself to put all my “stuff” in – wallet (for receipts), gmail INBOX, web clippings (instapaper, evernote), messenger apps (iMessage, What’s App, etc), a physical inbox for mail, etc.

There are a ton of Todo or Task Management Apps that handle list-making. GTD predates smartphones and was fairly influential when the first wave of task management apps came out for iOS, so everybody developer does their “wink” at GTDers and all apps are capable of doing GTD, with a bunch of other features thrown in, for general applicability’s sake.

These handle List parts of GTD workflow – Projects, NextActions, WaitingFor lists, Someday/Maybe lists.

Calendar is handled on the back end by iCal/gCal, and the client of your choice on the various platforms.

Reference Filing is handled by cloud storage service of your choice, mine being Dropbox.

Why Plaintext?

A few years into doing GTD, I realized that I was often confusing making a list with doing stuff on the list. The act of making lists of things to do had become a foreground task, not something just running in the background.

The more detailed a NextActions list is, easier it is to do the stuff recorded in it. If you need to call someone, and the phone number is recorded in the todo itself, it becomes a matter of pressing the link on the phone when the reminder comes up. Or if you need to go somewhere off-site to do a presentation, it\'s really helpful when the address is recorded in the calendar entry, so you can just press it and the map will pop up on the phone offering directions.

At some point, recording a Next Action came to involve looking up all this metadata, and each entry had become a multi-step process that I couldn\'t do everywhere, and the friction that added made GTD a chore.

Apps facilitated this as well. With each subsequent update, apps I was using became more feature rich and able to do more cool stuff. Wanting to use the apps fully, I would try to use all those things, learn new metaphors, play with the delightful UI elements (like scroll wheels on iOS) and the process of entering tasks came to involve typing, then going through a slew of drop down menus and icon-presses to satisfy these OCD-like tendencies.

Occasionally, I find my friends who do GTD suddenly sporting Moleskin notebooks, or a stack of 3x5 cards or otherwise going back to paper systems. I think, some of this impulse comes from these app frictions adding up over time to frustrating levels, and finding the simplicity of paper systems attractive. I would try new apps when I felt this, because I wasn\'t good at using them, so I would use it simply.

Just off the top of my head, task manager apps I’ve used in the past include – 2Do, Omnifocus, Things, RememberTheMilk, TheHitList, Toodledo, Outlook, and Wunderlist.

While all of these apps were well designed and powerful apps, my difficulties with most task management apps included the following:

  1. Input is slowed by all the meta information that require mouse clicks or touch interactions. This is ok up to a point, but I sometimes found myself forgetting about the next NextAction I wanted to enter by the time I got done \"completely\" entering the present one.
  2. Most store data in closed databases, and require subscriptions to their proprietary single-purpose cloud for synchronization
  3. Some are bought by bigger companies, and disappear (like Wunderlist)
  4. Some are mac and iOS only. Weirdly, there are very few robust Windows &/or Android task manager apps. Most people are on Windows at work, even if they use Macs at home, and these platform limitations can be a a real deal breaker.

What is Plaintext?

Plaintext is a method of storing NextActions/Task lists, Someday/Maybe lists, Projects lists and other list-able data on a text file.
TXT documents are small, and the format is almost as old as computing itself. As such, txt files can be edited by a host of great programs, but are also editable with included OS programs out of the box.
In many ways, TXT file is kind of an ultimate minimalist file. There’s just text. You can't even change the font. Within these constraints, using just characters on the keyboard and spacing, it is possible to indicate relationships between tasks, denote Projects as such, and imbue proper @contexts. In a way, plaintext lists are kind of like markdown text, a human readable text with some formatting thrown in, in this case to indicate tasks, projects, notes and contexts.

The advantages of Plaintext are the opposite of the disadvantages of the dedicated task manager apps:

1. Input is as fast as I can type – it’s extremely conducive to mind dumping
2. TXT file is the most open database, and can be opened anywhere with almost an infinite variety of apps
3. TXT file is the back end, and your editor of choice can go away like any other software, but there are a dozen others to take its place
4. TXT file is universally editable in any OS (but I happen to use Windows PCs and iPhone and iPad, so I can only talk about apps to edit these files on these devices.)

Taskpaper Syntax

So how do we record NextActions in a plain text file?

One popular way to record tasks on plaintext is called [Todo.txt], but this wasn’t terribly visually intuitive for me, while Taskpaper was a popular alternative.

Taskpaper is a Mac App used for making lists, (of things to do) that I used for many years on a macbook. It is also the syntax the app uses to differentiate and indicate relationships between tasks, notes, projects and tags.

I may use the meanings interchangeably, but for most of this post, Taskpaper will mean the latter - the syntax, or the grammar that the plaintext NextActions list follows to make GTD sense.

TaskPaper app would overlay some visual cues like cross-outs to indicate projects and tags, in text file lists that are formatted in Taskpaper syntax.
This syntax is required knowledge if you want to set up iOS shortcuts on Omnifocus also.

So let’s go over the grammar of tasklists according to Taskpaper a bit.
Like the screenshot says, Taskpaper can recognize:

  1. Projects
  2. Tasks
  3. Notes
  4. Tags

You can tell the Taskpaper app, as well as any other app that supports Taskpaper syntax that something is a project, or a task, or a note, or a @context by doing the following.

Projects are denoted with a colon at the end like this:

– tasks are marked with a dash and a space in the front like it is on this line. Tasks that belong to a project are written below the project, and in most Taskpaper friendly apps, these fold, drag and drop together. @computer

tags are marked with an @ in the beginning (a GTD nod) to denote context. These are typically appended to the end of a task, on the same line (no enter/line break), to indicate that the tag belongs to the task.

Notes have no colons at the end or dashes or @ in the beginning. These can contain links to emails, dropbox folders, just plain text to clarify task/project goals, addresses etc. A taskpaper friendly app will parse all that, and generate links you can click if applicable.

Indentations mark ownership – if you indent a task that sits below a project, it belongs to that project. If you indent a task that sits below another task, then it becomes a subtask. When the top level task/project is dragged and dropped or folded, the subtasks will follow or fold.

So here’s a sample Taskpaper formatted project –

Project – Write a rundown of taskpaper centric plaintext GTD system:
Project reference files –;wkejtjg;lkj;ljkwret=0 (the link is dead)
– brainstorm regarding what should be on the article @home @computer
– gather screenshots for Omnifocus, Things, plaintext next actions lists, taskpaper @home @computer

As you may have noticed, none of these require that your hands leave the keyboard to input, meaning you can input at the speed of type.

Run down of txt file set up choices

While plaintext is a pretty flexible system, there are some initial choices to make regarding how the text file(s) will be set up.

1 file vs many lists

I think the big first choice with Plaintext is whether to use 1 file for all my tasks and project next actions, or to use separate text files for each project?

Since Taskpaper syntax has a means of denoting projects, and because I like being able to open 1 file and see everything (although it’s a huge list), I use 1 text file to handle all NextActions, Project NextActions and WaitingFor items.

Other Plaintext methods that use note-taking tools like Notational Velocity or NVAlt tend to use separate text files for each project and task, I think because note taking apps tend to break up individual entries into separate apps. This also has the advantage of maintaining focus and making the list of things to do not so overwhelmingly long, but at the expense of overall perspective, at least for me.

My single NextActions+Projects+WaitingFor file, along with a few other project templates and a separate someday/maybe list file, resides in a dropbox folder called Taskpaper.  They are text files, but have the extension *.Taskpaper – a hold over from years ago when I used the actual Taskpaper app on a macbook.

It’s helpful to change the extension of the txt files to .taskpaper, because apps that you use to manage the list will recognize that and automatically bring up any special taskpaper modes they have. Some people use the extension .Todo, or just keep .Txt – it’s up to you.

1 File = NextActions + Project Next Actions list + Waitingfor List

The screenshot is of a NextActions/WaitingFor/ProjectNextActions list (that I made up) that illustrates how such a list would work and look like formatted in Taskpaper syntax.
The app being used is SublimeText in Task mode in Windows 10, which I’ll go over app choices for windows and iOS later on.
As you can see, Projects are separated by colons, and the Task plugin in Sublime creates visual separations between the different projects.
I usually just leave the top few lines blank, and the area serves as inbox for NextActions without projects, but I happened to put a label called Inbox.
“Waiting for” items are often related to projects, so I find it most intuitive to add those as single tasks under the project they relate to, and tagging them @Waitingfor(person’s name)
Tags I use personally are:

@agenda(person’s name)
@calls(person’s name)
@due(yyyy-mm-dd hh:mm)
@waitingfor(delegated person’s name)

completed tasks and projects are tagged with @done(yyyy-mm-dd) – date stamps are usually added automatically by the app I use.

[editor’s note] it’s very easy to have too many tags, but the urge must be resisted and the number of tags needs to stay a manageable number so that it can be recalled from memory, when it comes time to enter them. Tags should be based on settings/contexts one naturally finds oneself in throughout the day, but not ones that one has to get oneself to. For example, I’m home every night, but there shouldn’t be an @tag for a friend’s house I’m not at, because I’m not there all the time, so I will not have occasion to search for tasks that have @BobsPlace or something. The more appropriate place to add that information is in the body of the task then, then I have to make a point of getting there, either based on an @errands or @agenda search, or a calendar entry.

In the notes related to a project, directly below the project, I usually add Dropbox links to folder or folders containing reference materials related to project, contact information for people doing the project with me, or addresses or brief notes about project goals and objectives for quick reference.

At the end of a project, all of the tasks are cut and pasted to a separate archive text file for that project, stored in the dropbox folder for that project.

I add the “Project – “ in the front myself. It’s redundant for the purposes of this list, because the colon denotes that the preceding line is a project already. For Project related folders in Dropbox, I always add the “Project –“ in the beginning of the folder name, for ease of search, so that all the projects will sort together, and naming projects this way in the NextActions list is sort of an OCD, and a product of some iOS automations I use to enter new projects into my system, which I’ll go over later in the article.

1 File = Someday/Maybe

For things I might want to do at some point (like take a Europe Trip, or build a DIY desk or something), I find most intuitive to organize as projects that aren’t proceeding on a separate list/file.

Every time I run across something on the web that might pertain to something I might want to do later, or always wanted to do, I clip them into separate dropbox folders. If I think of something, or work something out about the steps required to do the someday/maybe project, but I don’t plant to execute in the near future, I just add them under Project Tasks in the someday/maybe list.

Admittedly, this list is most fragmented, because these items aren’t demanding my attention right away, and there are specialized Someday/Maybe bins that aren’t plaintext – like Instapaper for articles I want to read later, or Evernote, which has a sizeable chunk of my web-clippings fromthe past, and there are a bunch of books on the Kindle that I’ve been meaning to read, etc.

Archive Files and Templates

I generally offload completed projects and tasks into a separate archive text file for each project. I also have a long general archive file for non-project related NextActions i complete.

Most apps that work with Taskpaper formatted files will automatically date stamp the completion date when I add the @done tag or check off a box. These are useful for back-tracking later, or when I’m needing to plan a similar project, or for CYA.

There are also projects that don’t happen frequently for me but are repetitive – like packing for a trip abroad, or for a domestic trip, or gathering documents for the accountant at the end of the year, etc.

As I did these things, I just saved the Project next actions on a separate text files, which can be easily opened and the contents copied and pasted onto my main NextActions list file as the need arises. I try to name things descriptively, like “Trip Pack List – Europe.todo”

The screenshot is of a template for Europe Trip packing that I keep. There are things to remember to pack for trips to Europe that aren\'t necessary for domestic trips, like 220V plugs, passports and an unlocked travel phone to use with a local SIM.

Whenever a trip to Europe comes up, I just copy and paste this template to my main NextActions/ProjectNextActions list.

GTD I do on iOS/iPadOS – Editorial in TaskPaper mode

Each device and the OS it runs is an environment, occupied by a different ecosystem of apps and built-in capabilities. Some are better suited for certain GTD tasks than others, for one reason or another, although all OS’s and devices are capable of editing a text file tasklist.

In iOS/iPadOS, the apps I use to manage my Taskpaper lists is Editorial by OMZ software. Other popular iOS/iPadOS apps capable of parsing Taskpaper syntax include Drafts, Taskmator. There are also other apps that can import Taskpaper files or export to them, including Mindnode and Omnifocus. Most of my NextActions management, whether individual tasks or for projects, happens on my iPad, as does the weekly review. Although the description below is long, the process of entry is pretty quick. Here\'s a video showing how it is done:

Unlike many apps on the Apple AppStore that are transitioning to a subscription model, Editorial is still a one time purchase and the single app works on both iPhone and iPad.

Editorial in TaskPaper Mode + Workflows

If asked to open a file with the extension .taskpaper, Editorial will automatically open in Taskpaper mode, which looks like the screenshot.
As you can see, it looks different from the plain text file – Project titles are in larger bolder font, there are check boxes instead of dashes, things with due dates have color high lights.

These aren’t formatting changes made to the txt file, but a sort of a visual overlay – they are displayed differently in-app, but they are not changes to the txt file.

So let’s take a look at some of the functionality imbued by Editorial on to the txt file list to make it more powerful. Apologies in advance for my handwriting.

The bar on the upper portion of the list with a bookmarks icon on the upper left, that says someday, archive, etc is a customizable menu bar.
On it, I have links to my main NextActions list, Someday List and General Archive file, as well as buttons to activate some automations, called workflows.  These are like macros for word, where a few repetitive actions are done at once.   Because scripting within Editorial is pretty powerful, workflows can be used to impart additional functionality, or facilitate interactions with other iOS apps and cloud services.

I put some oft-used Editorial Workflows on the menu bar for quick access (these are labeled in green):

[Share] - brings up share sheet
[+] - copies the current line with the cursor to the clipboard
[message] – brings up a editing window with current line pasted, then sends to iMessage
[send to email]
[search contacts]  – brings up a search window to search contact addresses and phone numbers, and copies the selected info to clipboard
[Cal-line] – sends current line to Fantastical
[tags] – brings up a list of all tags in use in the document

These workflows mostly connect my txt file list to other iOS apps, and I didn’t write most of them, although I may have slightly modified a few. They were mostly downloaded from the Editorial workflows forum, run by the developer.

Let’s go over more about some of the most-oft used workflows do, and how I use them for GTD.

[Share] – Selects the line the cursor is on, copies it and brings up the iOS Share sheet, making possible interaction with all other apps that iOS Sharesheet can access.

This is useful for delegating @waitingfor(person) tasks, and is the “go-to” general utility workflow for getting stuff out of my todo list to another app. The workflow will select and copy the line

For example, if your team works on Slack or MS Teams, or your country has a national messenger app that everybody uses (ex. WeChat in China, Line in Japan, etc), then those are the messengers you have to use to reach those people.

These are all accessible through the iOS share sheet.

I think I may have made this one myself. It’s just 2 steps using built in actions, here’s a screenshot of the workflow.
It can be made by bringing up the workflow menu on the upper right of the app (the icon that looks like a hex wrench), pressing the "plus" icon to make a new workflow, and adding the actions shown in the screenshot.
These are:
1. Extend selection (choose "both" for direction, and "Start/End of line" for Unit)
2. Share Text or URL

[Messages] – sends the selected line to iMessage.

Once cursor is on the task in question, if messages workflow is selected, the window below will pop up.

You can select a contact to send the message to, and the contents of the selected line (with the cursor on it) will be pasted on to the body of the message, but the message will be editable.

The app has a bug in iPad Pro 11inch (2018) currently, and the message is obscured. It’ll probably be fixed in a future update, but this isn’t usually a problem because Editorial is almost always used with a physical keyboard, and because there is another opportunity to edit the contents in the next screen that comes up.

Searching for a contact is the usual contact search process for iOS. I searched for “bob” and 2 contacts popped up.

selecting the contact will bring up the message app (with the current message thread with this contact if present), with the message content still pasted on, it can be edited here.

Here’s a screenshot of workflow details for this one. Another super simple 2 step one.

[Send to Email]

I won’t put up more screenshots of this workflow in the interest of scroll control, but it’s essentially the same workflow as the message workflow, except it’s for email.

It brings up a New Email window with the contents of the line pasted on the message body.


Here’s a screenshot of workflow details for this one. Another super simple 2 step one.

[Search Contacts]

This workflow brings up an in-app search window for contacts without leaving Editorial. I use this one pretty frequently, because a lot of tasks I tend to remember out of the blue involve calling someone or messaging them. It can be downloaded from the Editorial workflows site by clicking this link using a browser on the iPad.

Studies show that after an interruption breaks the flow of one’s work, it takes about 5~20 minutes to recover the previous focus. For me, leaving the app and stopping what I was typing qualifies as such an interruption. Because it’s very useful for a task to contain the phone number I need to call, thus triggering the call with a press inside my phone, a relatively frictionless way to grab a phone number from inside of my NextActions list is pretty valuable to me.

The workflow runs like this:

Executing the workflow brings up an in-app search window. Partial searches are allowed, as is with general iOS search

Search results will bring up another window containing all contacts containing the search term, and you can select the contact of your choice

Selecting a contact will bring up all the contact info fields available for said contact, and the phone number or email or address (I don’t have one for this Bob) can be selected, and then “continue” needs to be pressed.

After the workflow runs, the pop up window will disappear, cursor will be returned to the original position, and the phone number or other contact info you selected will be stored in the clipboard, to be pasted on the appropriate task.

[Cal-line – sends current line to Fantastical]


This workflow sends the current line (the single task) to Fantastical.  It can be downloaded by clicking this [link] from a browser on your ipad or iphone.

This is one of the most important workflows for making any GTD system work in my opinion – things get due dates all the time, and then need to move easily from the nextactions list to the Calendar.  The distraction of switching apps still applies here.

I try to just enter everything as I think of them, and something has a due date or is happening on a certain date or time, I add an @due(yyyy-mm-dd hh:mm) tag, and move on to the next line to enter more tasks.  If I switch out to a calendar app in the middle of this process, inputting stuff in there and setting alerts, by the time I get back to the NextActions list, the thing I meant to type-in next will be long gone from my mind.

Afterwards, I need to use a workflow to move what I entered in Editorial into iCal or gCal.  Fantastical is a popular iOS calendar that has a very important feature that we will leverage – Natural Language Input processing.

Natural language processing means that the contents of a line of task pasted into the input field in Fantastical will be processed, so if it contains a phone number, it’ll populate the appropriate field, and if it contains an address, there’ll be a map of that address you can click on for directions later, and if there is a date, it’ll be entered as a reminder with said due date (if the date is preceded by the word “due”), or as an appointment (if the date is preceded by the word “on”).  This minimizes the required interactions to enter something into a calendar.  Fantastical being a front end actually for iCalendar and Apple Reminder, and also for gCal, this brings in all the iOS built-in capabilities for these tasks into play.

The screenshot shows a line of task being imported into Fantastical after the workflow has run. Since the task has a due date, it’ll be entered in iCloud as a reminder with a due date on Feb 18, 2020. Because I don’t know anybody named Prop Joe (he’s a fictional character from a show called The Wire), I didn’t enter a phone number, but if there had been one, it’ll show up as a press-able link in the iOS reminder, which would dial the phone number when the reminder pops up on the appropriate date.

Automations – shortcuts


iOS13 and the new iPadOS13 also have built-in automation capabilities called Shortcuts. Previous iOS versions could also add scripting capabilities with the Workflow app.

While Shortcuts is capable of a broad range of automations, (ie it can open your smart garage door when you get home or control your thermostat based on where you are), I will discuss a couple of shortcuts that I use for GTD here.

Shortcuts can be run from the Homescreen or from an app using the Sharesheet.

Screenshot shows how I have my iPad homescreen set up – mostly with GTD-related Shortcuts I run frequently, and some useful apps.

A lot of task management apps on desktop OS’s (like MacOS or Windows) have quick entry features that allow the user to enter a task from the desktop without having to launch the app.
These are usually facilitated through keyboard shortcuts. A similar effect can be achieved with iOS and iPadOS as well, using shortcuts.

[New Task Shortcut]

This shortcut brings up an input window asking for a task, then prepends that line to the top of the NextActions text file.

This shortcut brings up an input window asking for a task, then prepends that line to the top of the NextActions text file.

This being a really simple shortcut, and due to security reasons, I won’t directly upload the Shortcut file here, but it can be easily recreated for yourself (just 2 steps) in Shortcuts.

Just follow this screenshot, and enter the dropbox file path to your taskpaper file in the second box.

[New Task Contact Shortcut]

This is another simple shortcut that asks for a @call Task.  In addition to the task, it’ll bring up a search window for a contact, and once selected, will prepend the task + contact info with @call(contact) tags to the Next Actions list file.

After entering a call task in the text window, the shortcut then asks for a contact.
Once the contact is selected, it\'ll prepend the task with the contact information for the selected person/company included.
We can see in the last screenshot of Editorial that an @call task about calling Bob with Bob\'s phone number and the appropriate tags added has been prepended.

This is another easy one to make. I’ll just add screenshots of the Shortcut contents again.

[New Project Shortcut]

Project creation is a little more involved, because it is a multistep process. Projects typically have project-related reference materials, in addition to the NextActions required to complete the project.

This is part of the reference filing system, but I wanted a way to automate (at least a little), when I enter a project name, to (1) create an identically named folder in Dropbox and (2) create a identically named textfile, with the word archive added at the end, to archive completed tasks then (3) prepend the Project and the dropbox link to the archive file to the NextActions list file.

Once run, the shortcut will ask for a Project Name, which should be entered without a colon at the end

Shortcut then creates a folder in Dropbox with the name (special character limitations for file names apply, so avoid use of symbols), and a plain text file with the project name + the word archive.
We can confirm in the Dropbox app that a folder with the project name was created, and a archive text file for that project was also created.
Going back into Editorial, we can see that the shortcut added the colon to denote a project, and prepended the project, along with a dropbox link to the project archive file into the NextActions list

This shortcut is a little longer but still very simple. In the interest of not making scroll too much longer, I'll link the screenshot of it here, should you wish to recreate it for yourself.

Calendar – Fantastical

As mentioned before, Fantastical is just an iOS front end for my iCal or gCal data. It can be said that my actual calendar is a SQL table sitting in some cloud somewhere, and Fantastical just skins that data and adds some critically important input functionality to them – like natural language processing, which I went over previously.

The home of your digital system, in my experience, ends up being where you do your weekly reviews and where you do all your entry. That is Editorial for me, but my task list containing 100+ NextActions and Project Next Actions at any give time, it is not amenable to displaying well on the iPhone, where most of the reminder to do stuff happens. Fantastical offers an attractive visual display of my tasks, organized by due dates, with all the iOS linkages with contacts, maps and links to make doing them easier, which is why the workflow to export the Editorial task to Fantastical is so important.

Prior to the recent update (version 3), Fantastical 2 for the iPad had shown some signs of not aging well, and was not taking advantage of screen real estate available. Fantastical 3 looks much better, but requires a subscription for some of the more “premium” features like support for multiple calendars and accounts, time zone support, tasks, weather, etc, although some of these features are available for free for previous Fantastical 2 users.

Since the important part of Fantastical in iOS GTD is the natural language support, which is available on the free version now, if there is another Calendar app on the iPad that you’ve been using, I would say it’s ok to stick with that. Going that route, Fantastical will simply serve as a bridge between iCloud and the text file NextAction list.

Armamentarium – any iPad + keyboard + stand

Editing a text file is by no means hardware intensive, and this is the case for iOS and iPadOS devices as well. Almost any iPhone and iPad will run Editorial, Dropbox and Fantastical, making Plaintext GTD fairly hardware agnostic. Due to document editing requiring some screen real estate, the process does work best on an iPad.

I think these peripherals are kind of important for doing Plaintext GTD on an iPad:

  1. external keyboard. It can be bluetooth, or a usb keyboard attached to a USB-C hub (only on iPadPro3 or newer)
  2. Some kind of stand, if not built into the keyboard
  3. USB-c hub with passthrough charging – if USB-c connection is available for your device, a hub is very nice because it can allow use of a wide variety of USB keyboards and mice, external storage, as well as ethernet and external monitors in most cases.

GTD I do on Windows – SublimeText in Taskmode

Windows is mostly an environment where I do my tasks – generate documents, run work-related software, handle and answer emails, etc.

A lot of times in my desk, the iPad serves as an auxilary device, popping up reminders of things to do and quickly entering tasks as they come up.

While Windows is certainly scriptable via command line, and in combination with system scheduler allows pretty deep system automations, there really aren’t built-in OS automations for ferrying bits of script from 1 app to another, in the way AppleScript on MacOS or Shortcuts on iOS are able to (as far as I know).

That’s mostly done through manual copying and pasting on Windows, at least for me, at this time. This may have more to do with the fact that I have zero coding knowledge than any inherent limitations of Windows as an operating system however.

Windows is not without merit as a task management environment however. iOS and iPadOS need their Shortcuts to overcome the limitations on multi-window multitasking imposed by the form factors of the devices they operate, and much of these limitations don’t apply to Windows desktop PCs. In Windows, the task list, email app/browser tab, whatever software you’re using to do your tasks can all be open and visible at once, with reliable drag & drop/copy & paste working between these apps via keyboard and mouse. What magnifies this advantage is the fact that desktops typically support multiple monitors easily, and the best available keyboards and mice are available on Windows.

There is still a need to edit and access the NextActions list on Windows however, and there certainly are plenty of text editing apps available for Windows.

I use SublimeText for this purpose.  SublimeText is a pay-app with a generous free trial with full functionality and no enforcement on the evaluation period.  While SublimeText is sufficient to open and edit raw Taskpaper lists, there is a plugin available to provide some visual cues to differentiate projects, tasks, notes and tags called PlainTasks.

Installed, the SublimeText + PlainTasks looks like the screenshot.

I mostly use SublimeText for entry – things I remember or think to do while I’m working on the computer – get typed in or copied and pasted in.

Plaintext also has some neat text-expansion built-in for managing dates, which I use sometimes. These are triggered by typing “d” then pressing tab. That creates a tag “@due( )” with the cursor between the parentheses.
You can choose to type in things like “1” in between the parentheses, and when you press tab, the first day of next month will be entered in yy-mm-dd format.

I actually use a separate text-expansion app, so I hardly use these, but these are very useful snippets as well.

Armamentarium – Multiple Monitors + Mechanical Keyboard + decent mouse

One of the best things about Windows environment is that most keyboards are made for Windows, and the OS has the most options in this regard. Mechanical keyboards are cheap now, as well as gaming mice with high DPIs, but these really aren’t required for GTD. I think the most important thing is that the keyboard has full-sized, not mobile keyboard sized keys. Additional monitors are also very helpful, but keyboard shortcuts for minimizing and maximizing windows are also very helpful.

What I tend to do on Windows

Because windows is the best typing environment IMO, I use windows mostly to run work-related software (every industry has a few, and they are predominantly Windows-only softwares, at least for my field) answer long emails, make documents, or write this blog post.

This post isn’t really work, but it is also being written on Windows with OpenLiveWriter, and a browser opened to half screen on another monitor, and file explorer on the other, to drag and drop images into LiveWriter.

This would be really difficult to replicate on the iPad, although it’s certainly possible using split screen and apps like Yoink.  The question is why one would do that, when 1 desktop monitor is twice is large as the iPad screen, and there are multiple such monitors, and my $40 no-name mechanical keyboard is a better keyboard than any portable iPad keyboard, and mouse works like I’m used to on Windows.  Common tasks like making Powerpoint presentations, editing or generating documents with many reference sources, or editing a photo, or managing files in folders, all benefit from larger screen sizes of desktop OS’s.

Due to these differences, desktop OSes really being far superior environments for multiple windows and file management, reference file management is done on Windows for me, while NextActions list is just occasionally referenced and made available, so I can do things like copying and pasting a URL for a gmail thread, or a dropbox link to a folder that pertains to a project or task into the NextActions list.

Reference Filing

Managing reference files is a critical part of a trustworthy GTD system.

All implementations of GTD, whether digital or paper based, must include 3 components IMO:

  1. NextActions, Projects, WaitingFor lists
  2. Calendar
  3. Reference Filing, Someday/Maybe materials, Project related document management

In order for a system to be trusted (and thus, able to offload the burdens of remembering onto), it must be comprehensive. This necessarily includes the various digital files that are required now for so many of us to complete our work being organized and easily accessible, frictionlessly.

In the original GTD book from 1996, David Allen described an ideal reference filing system – a series of paper filing cabinets, with bar code labels for each folder that code key words describing contents, and a dedicated database cataloging these key words, barcodes and locations within the file cabinets, preferably all maintained and kept current by a personal assistant. He also describes a good enough general reference filing system in s separate article, which you can read by following this link.

This wasn’t realistic in 1996, and isn’t preferable now, given space and financial constraints for most people, and due to the fact that work is increasingly digital, and we are using less paper now, although paper management is still important.

There are several types of reference materials, which bears some differentiation before setting up a system:

  1. General Reference – things like manuals, already paid bills, bank statements, contracts that are signed already, etc – that don’t require any action at the moment, but need to be saved in case of future need.

  2. Project Related Reference Materials – things like hotel and flight reservations for upcoming trips or powerpoint files and assets for an upcoming presentation are related to a single project and need to be stored in folders storing files for that project

  3. Someday/Maybe Reference – brochures for destinations on that bucket-list trip you’re not going to take, information on something you’re saving up to buy someday, etc also need to be stored somewhere. There are varying degrees of “maybe”, and “someday” is as nebulous as next year or probably never, and materials need to be organized accordingly, either into more concrete someday/maybe projects, or as part of “if I win the lotto” folders, etc.
    There are much shorter-term someday/maybe items also, like articles I want to read that I’ve clipped and such. Because of the ease of clipping and some formatting functions they offer, I use specialized web clipping apps/services like Instapaper for “ReadLater” lists, which are technically Someday/Maybe reference files. I’ve heard Dropbox web clipper is coming, for viewing on Dropbox Paper, and I’ll probably be transitioning to that.

There can obviously be more types of reference materials. Maybe you want to be able to keep certain most important documents – like birth certificates, tax documents, etc – in a separate pile just for them. A birth certificate seems more important than the September bank statement, and tax documents seem more important than the manual that came with the dongle to add bluetooth to your old stereo.

These differentiations are fine, as long as they are inherently common sense to you and you don’t have to remember where that special place for the important documents is. This is the same thing as having a separate filing container for “Read Later” articles in someday/maybe.

However, just like the GTD workflow is a comprehensive workflow – meaning everything ends up in 1 of those 7 destinations, a comprehensive filing workflow also exists.

Each thing in the “stuff” that needs to be filed away in a retrievable way, ie stuff that’s not trash, is either actionable or not. If it’s not, it goes into general reference filing, if it is, it’s either project reference file or someday/maybe.

These 3 filing destinations, General Reference, Project Reference and Someday/Maybe, are comprehensive in their scope because everything is either actionable or not, and the actionable stuff is going to be used soon, or not.
This should mean that if stuff to be filed is processed using this workflow, nothing should be left without a place to go that you will have to invent a place for and remember. Although not specific enough to everyone’s every filing need, this seems like a good foundational basis for a trust-worthy filing system.

Choice of where to house reference materials will depend on what the most important factors are, which is different for each person.
For me, the choice between local storage vs cloud storage was settled a long time ago. The good ol’ Documents folder that Windows and MacOS create by default has long been supplanted by Dropbox.
The convenience of having all of my important files available wherever I need to access them, and not having to remember to take USB drives around or remember what’s in the drives, is too important to give up.

That said, cloud storage, even in the paid tiers, has limits. My Dropbox plan (I think it was premium, now professional) costs $12.50/mo for 5TB of storage, GoogleDrive is $9.99/mo for 2TB, MS’s Office 365 Personal comes in at $70/yr with 1TB, as of February, 2020.
These premium storage tiers are not required, especially in the beginning, and the storage offered with free accounts can also be sufficient long term, if the reference files are limited to documents (and not music and movie libraries), and unnecessary folders and files are regularly removed from cloud storage into local.

The reason I use Dropbox isn’t because it’s so much better than the other services. I just happened to already have it, and everybody I need to share files with also has Dropbox. Being one of the oldest and most popular file syncing service, most apps and services support Dropbox storage, including Editorial in iOS.
For most people, if they already have Office subscriptions, I would recommend using the 1 or 6TB of OneDrive that comes with those subscriptions, or the same for people who use paid Google services.

Local storage is the best in terms of expandability. If you have the inclination and know-how to roll your own storage server and serve it into the cloud yourself, that is probably the most cost-effective way to achieve maximum expandability. These options seems more appropriate for other types of storage, like people who have large digital movie or movie collections, or have a need to store all the games in their Steam library locally, or photographers and videographers.

Most cloud storage services will let you set up 2 factor authentication and encrypts files both in storage and in transit during synchronization. These measures are cumbersome, but I enable them and deal with the hassles.

In addition, document scanners can encrypt files also, so when I scan bills and statements with my name, address, account numbers, these are password protected, although that’s only as good as the strength of the password.

How I organize reference files and folders in Dropbox

There are 3 primary ways to imbue some organization to a file, so that you can figure out what it is or find it later. First is the file name. Second is what folder it’s stored in. Third is tags.

I don’t use tags. While tags are relatively new, they are powerful because a single file can belong to multiple projects, and multiple tags can be assigned to a single file, connecting that file to all the projects it belongs to.

Because they are new, most old files aren’t tagged, but were previously organized in folders and directory structures.

If you use a service like Evernote for reference filing, tags vs folders is a big decision (and I actually use tags in Evernote). Because evernote contents are accessible only through the evernote app or web client, (and the same thing is true for Notion or Bear), it is to me, not a good general file management solution. To me, being able to move files around in Finder or File Explorer, and being able to leverage powerful search capabilities and move files into and out of Dropbox folders, seems more transparent.

Because folders are folders, whether manila or digital, as far as GTD is concerned, use of folders over tags doesn’t seem inconsistent with GTD principles, because the book describes a folder-based system.

My Drobox root folder is a mix of folders made by various apps granted access over the years, as well as every reference and project file folder, as well as files needing to be organized away into folders.

One way to impart some visual organization to the 100+ folders, would be to create Folders called “Projects” and “Reference” and make all the individual Project and Reference File folders sub-folders of those.
To me, that doesn’t really help because there are still a ton of other folders in the root directory.

I follow some naming rules for organization, but these are just what make sense to me, and a different convention may make more intuitive sense to you. I think the point is that sufficiently descriptive names are required for easy identification later, and especially for search.
You generally don’t want a bunch of folders and files named NewFolder1 – NewFolder6, Untitled.doc, Untitled (2).doc, etc.

Folder naming conventions I use is like this:

– Every project folder name starts with “Project – “ to identify it as such.
– Every reference material has its own folder, and the name starts with “Ref – “ maybe followed by the type of reference material it is, like “Ref – Manual – device X” or “Ref – Project – …”
– Once a project is completed, it gets a “Ref – “ added to it. These folders are occasionally archived to local storage, usually when I run out of Dropbox space.
– Every someday/maybe material has its own folder,and the name starts with “someday.maybe – “ maybe followed by the type of reference it is, like “someday.maybe – project – Himalaya Trip”

File naming is more flexible, but generally, file names should be the shortest possible while containing all the relevant key words for easy search later – this typically should contain what the file is, version, who’s involved, and on/due dates.
For example, if I’m planning an 80s themed party on Friday February 21st, 2020, the invitation file to that party would be named:

“DropboxProject – 80s Party on 2020.02.21 Fri80s Party Invite on 2020.02.21 v2 with requested changes sent to wife 2020.02.18.psd”

If I suddenly can’t remember if I put the wrong date on this invitation and need to check it, or want to have another 80s party years later and want to reuse the invitation, then I’ll be able to search “80s party” on Dropbox and find the file easily.


Most people are less “digital” than they would like to think, and most of us still deal with a lot of paper.
A quick, easy way to digitize paper documents, at least for me, is an essential part of keeping my GTD system trustworthy.

I use a document scanner for this purpose. Going back to David Allen’s ideal filing system – filing system should be searchable by keywords, comprehensive and maintainable with minimum effort.
Paper documents can be digitized to fill all these requirements, provided you have the right features in the scanner.

I personally use the Fujitsu ScanSnap ix500, and a ScanSnap s1300i, but the specific model of scanner isn’t important, as long as certain key features are present. These key features in a document scanner are:

  1. Good, reliable sheetfeeder that doesn’t gunk up.
  2. OCR
  3. Options to Encrypt PDF files

Most ~$200+ document scanners from most manufacturers can do all of the above, and encrypted PDF files that are searchable internally once opened in a PDF viewer.
OCR stands for Optical Character Recognition. Instead of scanning documents as pictures, OCR capabilities allow saving documents as text, meaning it generates PDF files that can be searched for content, either for specific words inside the PDF file, or from a general Windows search.
Document scanners have become cheap and accessible enough for most people now, and digitization of all documents (if you still have a ton of paper in your life like me), and their tagging and organization in a cloud storage service, seems like the way to go in 2020.


GTD is a fairly flexible organizational system that can be realized with any set of software and physical tools, and I have described in pretty long detail a system that works for me. At its core, GTD as a set of agreements with oneself about how and where things demanding our attention will be handled, filed and deferred, is essentially software for the mind. Once it’s agreed that things have to be filed away in a way that can be reliably found when the need arises, and once this consistently happens, there is no need to expend mind-calories on remembering where you put things, or what those things were about, because it’ll be sitting in a trusted system, awaiting recall.

This guide mostly discussed how to set up a system to input things and where to direct them, but GTD in my experience is more about the maintenance of these bins than the set up.

As long as the GTD in our mind is clear and our agreements with ourselves remain in good standing, any combination of software tools can gain the “trustworthy” status so critical to getting stuff off our mind. It’s not so important to have the perfect app on hand, only that it keeps getting used. In this regard, little frictions or distractions introduced by the software matter a lot, because they all add up and hinder the sustainability of GTD long term. At least for me, switching to a plaintext system has made doing GTD require significantly less discipline, which means I’m probably going to keep doing it.

I know it took a lot of scrolling to get to this point, and if you made it here, I thank you for your attention and sincerely hope that you found something useful.


  1. Steve

    This was extremely helpful. Thanks!

  2. Ellane

    I thank you for the insane amount of effort it took to put this together! You have just changed my life for the better.

  3. Alessandro Melchiorre

    no other solutions for Windows? and on the web?

    1. shdds

      Hi Alessandro. Unfortunately, the answer is yes and no.

      Yes, since plaintext is app-agnostic, any text editor can be used to edit/create a taskpaper file. Some common text editors (Emacs, Vim, Atom) have plugins to display taskpaper files better, and they’re listed here:

      No, if you’re looking for extensibility and input from/output to other apps discussed for Editorial for iOS, then unfortunately, no comparable app/plugin exists that use Taskpaper syntax on Windows or as a web app. If you’re ok with not using plaintext or taskpaper syntax and just looking for a task manager on windows or as a web app, all sorts of options exist – Todoist comes to mind.

      Alternatively, note apps that save notes as plantext files or markdown files can be converted to a plaintext task managing app – Joplin, Obsidian, etc. Editorial works fine still, but it hasn’t received an update in many years, so I’ve been looking at these and will probably settle on Logseq. Logseq uses markdown, not taskpaper syntax, and the iOS app doesn’t support plugins at this time.

      I’m afraid these aren’t good answers, but I hope it gives you some starting points. Thanks for reading my long article.


Leave a Reply

Scroll to top
%d bloggers like this: