todo.txt icon indicating copy to clipboard operation
todo.txt copied to clipboard

List of "Special tag / Additional Definitions"

Open heX16 opened this issue 6 years ago • 17 comments

https://github.com/todotxt/todotxt#additional-file-format-definitions

due:2017-01-01 hide:1

Where can I find the full list? (And add to it)

heX16 avatar Sep 07 '17 13:09 heX16

@heX16 there is no full list since each person can use their own set of special tags.

The ones I've seen used across tools have been

  • due:YYYY-MM-DD to represent the due date
  • t:YYYY-MM-DD to represent the threshold date

Maybe it's time we set a few that are part of the standards, such as due and t.

Thoughts @todotxt/core

karbassi avatar Sep 07 '17 20:09 karbassi

What's threshold date?

Anecdotally, and historically, due date has by far been the most-requested addition to the standard. I've pushed back on it for lots of reasons (I'm sure there are ancient discussion threads about this on the mailing list), but I'm fine with revisiting.

ginatrapani avatar Sep 07 '17 21:09 ginatrapani

What's threshold date?

The t tag gives a start date to an item (also called a threshold, hence the t). It's another way of filtering.

Example

(B) Call mom about dad's birthday gift due:2017-05-06 t:2017-04-20

While the task is due on May 5, 2017, I don't want to see it on my list (via a tool) until April 20, 2017. Moreover, some tools allow customizing how far ahead you want to see a task. Such as, show me tasks that have thresholds X days in the future.

karbassi avatar Sep 07 '17 21:09 karbassi

Ah okay, thanks for explaining.

My general view has been: as soon as more dates get involved things get pretty complex pretty fast. To me, todo.txt is a task list, not a reminder tool, or a calendar, so these two dates feel outside of the scope of the spirit of the app. Not to mention what a significant burden it would put on client developers to accommodate a not-small amount of date math and other complexity (like hiding tasks that aren't complete but haven't hit their threshold date yet -- that would confuse me if I opened the file in a text editor, and the point of the format is to offer a human-readable text file that can easily be manipulated in any editor).

Anyway, as always, open to dissenting opinions, but if we go back to guiding principles, I think something like threshold date is too much. There's probably a case to be made for due date, though.

ginatrapani avatar Sep 07 '17 21:09 ginatrapani

I don't think we should enforce certain tags in the standard, but rather as a recommendation / common practice. Some tools share the same semantics, but that's about it.

Perhaps we could maintain a table of known todo.txt tools (perhaps a public Google sheet) with the tags that they use (syntax, semantics, and whether the tag name for that semantic is configurable).

bram85 avatar Sep 08 '17 11:09 bram85

I don't think we should enforce certain tags in the standard, but rather as a recommendation / common practice.

Oh, I think this is a good idea. Documenting the additional tags various clients have landed on as guidance for the community would be great.

ginatrapani avatar Sep 08 '17 13:09 ginatrapani

I second this. If you look at the original task, @heX16 just wants a list of what's possible.

Moreover, it would really help get the tool developers in sync.

karbassi avatar Sep 08 '17 20:09 karbassi

I made a brief start at https://docs.google.com/spreadsheets/d/11nqV2j8qc_O5SVsvkZ2JGZP98CABLQ6EwBxAQQi7Huc/edit?usp=drivesdk

Feel free to extend it with other clients. Also, I'm not sure how to deal with the add-ons for the original CLI. Perhaps a comment referring to the add-on would do.

bram85 avatar Sep 08 '17 21:09 bram85

This is a great idea. I added the issue prefix to @bram85 's spreadsheet. Maybe get this moved to Github, though?

evanp avatar Sep 18 '17 19:09 evanp

One that seems to be the most obvious missing to me is a dependency tag. I would think dependency and due date tags should even be considered officially supported per the format definition as those are pretty much universally supported in just about every task management tool ever built...

thebluesnevrdie avatar Nov 24 '17 18:11 thebluesnevrdie

So seems the most used tages are threshold, recurring, & hide.

most obvious missing to me is a dependency tag

I was thinking of using 'less than' & 'greater than' symbols: > depending on / waiting for

tomByrer avatar Apr 04 '18 00:04 tomByrer

I'm quite surprise there is no "complete" (or completeness) status of a task in percent or in number of items to complete. It could be comp:17% and comp:5/7

It would be useful to quickly see if a task is near completion or not (like writing a book, painting a wall...)

If it was an official recommendation, some tools could implement it with a status bar for example.

Here is a basic exemple with a html rendering which parses a todo file: image

farvardin avatar Mar 15 '21 19:03 farvardin

@farvardin Just to throw an alternative approach out there: All chapters for a book is a rather big task, so maybe it could be a subproject instead, consisting of tasks like "Write chapter 1" etc. (and further broken down, if you so desire). Then it should be relatively straightforward to ask the software what percentage of chapters are done, instead of you having to calculate it manually. In fact, I think that's exactly what the birdseye extension does for you...

codingthat avatar Apr 30 '21 13:04 codingthat

Android SimpleTask, from https://github.com/mpcjanssen/simpletask-android/blob/master/app/src/main/assets/index.en.md#extensions (as of 2022-09-11):

Simpletask supports the following todo.txt extensions:

  • Due date as due:YYYY-MM-DD
  • Start/threshold date as t:YYYY-MM-DD
  • Recurrence with rec:\+?[0-9]+[dwmyb] as described here but with a twist.
    • By default Simpletask will use the date of completion for recurring as described in the link. However if the rec includes a plus (e.g. rec:+2w), the date is determined from the original due or threshold date..
    • rec:1b will recur after 1 weekday (mnemonic business-day).
    • The format is described by a regular expression, so in words the syntax is rec: followed by an optional + then 1 or more numbers and then followed by one of day, week, month or year. For example rec:12d sets up a 12 day recurring task.
  • Hidden tasks with the specified tag h:1, this allows dummy tasks with predefined lists and tags so that lists and tags will be available even if the last task with the tag/list is removed from todo.txt. These tasks will not be shown by default. You can temporarily display them from the Settings.

Simple task also has option uuid

clach04 avatar Sep 11 '22 21:09 clach04

Seen ttps://gitter.im/todotxt/Lobby?at=6284470aeaf3267f8566d9e3:

id: blocks:1

I've also seen p:1 to show the parent (for sub-tasks).

clach04 avatar Sep 11 '22 22:09 clach04

Just realized spec has another one listed https://github.com/todotxt/todo.txt#rule-2-the-date-of-completion-appears-directly-after-the-x-separated-by-a-space as part of priority for completed tasks:

pri:A

clach04 avatar Sep 16 '22 19:09 clach04

wait:

https://lwn.net/Articles/824608/

Hide until wait date, essentially an expected start date

clach04 avatar Sep 25 '22 16:09 clach04