ref: 34ce4118513c1048ed016eed0bde9d14435c1ad5 planfile/README.md -rw-r--r-- 1.4 KiB
34ce4118David Knight first post 2 years ago


Planfile is a small command-line program written in Go to manage my daily plaintext todo files. It's inspired by the now infamous John Carmack .plan file, but I've made some tweaks.


Planfiles are plaintext named with the format YYYY-MM-DD.plan. The first character of the line determines the kind of entry, followed by a space.

  • Open Tasks: lines starting with _
  • Finished Tasks: lines starting with *
  • Abandoned Tasks: lines starting with x
  • Tomorrow Tasks: lines starting with t
  • Notes: lines starting with >


_ Something that needs doing
* Did this already
_ Some other thing that needs doing
x Not going to do this after all

> A note
> Another note

t Something to worry about tomorrow

#Rules and Operation

In every case running planfile will result in there being a planfile for today in the current directory, and there will be an attempt at opening it with a text editor.

  • If there are no prior planfiles a new empty file will be created for today.
  • If there are previous days' planfiles in the current directory the most recent one will have its contents copied and migrated to today's.
  • If today's planfile already exists no changes are made.

Migration rules from a previous day's planfile are as follows:

  • Whitespace between entries is kept.
  • Finished and abandoned tasks are removed.
  • Tomorrow tasks are converted to open tasks.


$ go build