[Vimoutliner] VimOutliner as a task manager?
Scott Scriven
someone at toykeeper.net
Thu Oct 18 15:46:14 EDT 2007
* Kyle Sexton <ks at mocker.org> wrote:
> Is anyone using VimOutliner for a task manager? It seems that
> the check boxes are ideally suited to this type of use. I
> can't seem to figure out how to "archive" or "hide" tasks that
> I've completed though. After using this for awhile I'd think
> the completed tasks would start to build up. I'd rather not
> just delete them, because having a reference to doing something
> is useful as well.
>
> Thoughts, or are you handling this a different way?
I use vimoutliner as a task manager, and I find the easiest thing
to do with completed items is to move them to the end of the
file, underneath a "Done" heading. For example:
[_] do this
[_] do that
Done
[X] done this
[X] done that
I generally only move top-level items or branches. So, a large
branch would stay at the top until it's completely finished, and
then move to the bottom all at once.
Once the list gets big (the one I'm using now is 1003 lines),
moving items to the end becomes a bit less convenient. However,
it's still pretty easy if I define a macro for it:
# move the current line/fold to the end of the file, and indent it
# This basically moves completed items under the heading for "Done".
# (assumes that the "Done" item is the last item in the file)
qeddmeGpVG>zc'ezzq
Then, I hit @e and the current line or current fold magically
moves into the "Done" branch. If I want to, it's easy to move
the "Done" branch to another file every once in a while, to keep
the file size down.
As for otherwise summarizing the list, I use "conky" and a a
short, custom shell/perl script to put the todo list on my
desktop wallpaper.
#!/bin/sh
TODO=$HOME/todo.otl
OUT=$HOME/.todo.summary
while true ; do
if [ $TODO -nt $OUT ]; then
grep '\[_\]' $TODO \
| perl -ne '
s/\t/ /g;
s/\[_\]/-/;
s/- (\d\d+)%/+ \1%/;
tr/a-z/A-Z/ if /<--/;
s/<--/<----------------------------------------------------------------/;
print if (/<--/) or (not /^ /);
' \
> $OUT
fi
sleep 3
done
This filters the outline to include only unfinished items,
filters out items deeper than one level, highlights items marked
with "<--", and formats everything for somewhat easier reading.
-- Scott
More information about the VimOutliner
mailing list