gizmomogwai / org-kanban

Kanban table for org-mode
MIT License
238 stars 18 forks source link

Feature request: add a way to easily limit the kanban board to a specific tree #9

Closed TheStrangeKat closed 6 years ago

TheStrangeKat commented 6 years ago

I'm not sure if this is already a feature and I've somehow missed it (in which case, my request would be a more detailed tutorial/example in the readme), but I would like to request a way to limit the entries appearing in the kanban. Whether this be via tags, specifying a heading, or some other mechanism.

Example:

#+BEGIN: kanban :heading (heading1 heading2)
#+END:
gizmomogwai commented 6 years ago

Hi @TheStrangeKat this is not implemented yet, but might for sure make sense ... depending on the size of your org files, the table might get out hand otherwise. At the moment (next few weeks) I do not have time to look into this, but I will remember, and when I a have some time at hand to do elisp hacking I will give it a try.

Actually the last few versions just added support to pull in todos from several files, so its only fair to limit this somehow.

I am using org-map-entries at the moment to collect the todos to show. It looks like this function supports already the files, thing (that i implemented manually) via the SCOPE parameter and also something you describe and org-agenda uses via the MATCH parameter.

Could you send me some examples, of matches you are interested in? So that I can unit-test them?

I also wanted since a long time to update the readme/screencast demo ... I think its long overdue.

TheStrangeKat commented 6 years ago

Just pulled a quick example from something I was playing with. Something along these lines:

#+TODO: TODO(t) WIP(w) | DONE(d)
* kanban board
#+BEGIN: kanban :headings 'Weekly Agenda'  :tag 'trackedtask'
| TODO                         | WIP                      | DONE |
|------------------------------+--------------------------+------|
|                              | 2D animation via python  |      |
| GAMS toy problem             |                          |      |
| dynamically grow toy problem |                          |      |
| other thing to include       |                          |      |
#+END:

* Weekly Agenda
** WIP 2D animation via python                                 :trackedtask:
Build method to pull results and animate.

** TODO GAMS toy problem                                       :trackedtask:
Quickly try method on toy problem

** TODO dynamically grow toy problem                           :trackedtask:
DEADLINE: <2018-07-13 Fri>
Find way to dynamically scale optimisation to account for variable
step size.

* Long Term and Misc. Work
** TODO other Thing to include                                 :trackedtask:
** TODO Move to full, 3D problem
** TODO 3D animation via python

Included both headings and tags Is this more or less what you were looking for?

Thanks :)

gizmomogwai commented 6 years ago

I pushed a quick fix that uses match like things in org-kanban tables e.g.

* Todo Task One                                                      :urgent:
* Todo Two                                                           :deadly:
* Plan Three
* Test Four
* Done Fivee
* Kanban
#+BEGIN: kanban :mirrored t :files (test1.org test2.org) :match "urgent|deadly"

but i will also have a look at your proposal and how to implement it.

TheStrangeKat commented 6 years ago

Thanks! That certainly helps keep things neat :)

gizmomogwai commented 6 years ago

i will have another look into what org-agenda supports ... one goal would be to support more or less the same (should also be quite simple to implement).

wagk commented 5 years ago

I tried fiddling with it and as of dd25913 it's possible to write something like:

#+BEGIN: kanban :scope tree
#+END:

And get the desired results.