[Qt-creator] Just discovered the new TODO plugin in trunk....

qt.dantec at free.fr qt.dantec at free.fr
Thu Mar 8 17:01:04 CET 2012


Dmitry Savchenko :

>I, however, didn’t completely understand the idea of priorities. Could
>you provide some detailed (with comments examples, maybe) explanation,
>please?

Some projects include thousands of todo comments, if not more. It
would be pretty convenient to be able to sort them out according to
some criteria, and list only those we are interested in at any given
time.

Being able to have several different todo keywords in the same
project, would allow to consider at a given time all todo messages
associated with only one todo tag, or just a selected few, among the
set of all registered todo tags.

In addition to that, being able to [optionally] associate a numeric
priority to each todo tag would allow project users to sort out todos
messages according to their todo tag associated priority, given that
each project would freely define their preferred semantics to said
priorities.

Examples of some potentially useful project's semantics.

One could elect to define the priority as :
- A time deadline ; in this case, priority could be a day or a month,
in any convenient format like "//TODO end 2014: Finish this" or
"//TODO April 2013: Finish that", with "TODO end 2014:" tag's having
priority say 201412, and "TODO April 2013:" tag's having priority
201304 ; one could then sort out todos in order of the most upcoming
deadlines.
- An order over release nicknames where these, even thought they are
defined in a human readable format that carries no relevance to the
release order, would still allow to sort out todos in release order.
Like //TODO Gingerbread: Finish this", "//TODO Honeycomb: Finish that"
and "//TODO ICS: Method to be deprecated", with "//TODO Gingerbread:"
tag's having priority 230, "//TODO Honeycomb:" tag's priority 300, and
"//TODO ICS:" tag's priority 400.
- A weight, with the most important things to do having their todo
tags associated with the highest priority.
- Any other semantics, according to the project's requirements.

Note that the priorities would not necessarily have to be numeric,
provided they can be meaningfully sorted out in ascending or
descending order, but it might be easier to communicate the concept,
and less error prone, if they where restricted to being just numeric.

To get all of this, all you have to do is :
- allow several todo tags, which I understand is already implemented,
- write the code to restrict retrieval of only these todo messages
associated to a given set of user selected todo tags,
- associate an optional project defined priority to each tag,
- then sort out retrieved todo messages according their tag's
associated priority, blissfully ignorant of it's semantics.

Hope it clarifies things...

Quentin Le Dantec



More information about the Qt-creator mailing list