task: Add new repository for idea collection

Following this blogpost:
https://eshapard.github.io/code/a-separate-taskwarrior-configuration-for-ideas.html

I think it is a really good idea to try this out.
At first I was collecting ideas in my regular taskwarrior repository --
this was no good as every task list was flooded by somedays and maybes
which would never leave. But I still wanted to have a nice repository to
collect all my ideas in.

So, the second strategy was to have one big (markdown) file which would
simply collect all my ideas. But now I was doubling and tripling them up
because the list was so long, and it was more of a chore to find where
to put everything than just a quick 'idea add'.

This may be the best of both worlds: making use of the nice interface to
a task database using the full strength of taskwarrior querying, without
cluttering up my main task repository.

The workflow is exactly as with regular taskwarrior, only the executable
is not called `task` (or `t` in my case) but `idea`. So you e.g. add an
idea with `idea add`, or query all diy ideas with `idea +diy`.
Just like regular taskwarrior.
This commit is contained in:
Marty Oehme 2025-06-22 18:41:56 +02:00
parent d42593edfe
commit a4bbb0ed3a
Signed by: Marty
GPG key ID: 4E535BC19C61886E
3 changed files with 13 additions and 2 deletions

View file

@ -39,3 +39,9 @@ alias tad="task +ACTIVE done"
alias tas="task +ACTIVE stop"
alias to="task note"
#---
idea() {
task rc.data.location="$TASK_DATA_IDEA" "$@"
}

View file

@ -1,3 +1,8 @@
#!/usr/bin/env sh
[ -d "$XDG_DATA_HOME/task/notes" ] || mkdir -p "$XDG_DATA_HOME/task/notes"
export TASK_DATA_HOME="$XDG_DATA_HOME/task"
export TASK_DATA_IDEA="$XDG_DATA_HOME/ideas"
[ -d "$TASK_DATA_HOME/notes" ] || mkdir -p "$TASK_DATA_HOME/notes"
[ -d "$TASK_DATA_IDEA/notes" ] || mkdir -p "$TASK_DATA_IDEA/notes"

View file

@ -10,7 +10,7 @@
# Use the command 'task show' to see all defaults and overrides
# Files
data.location=$XDG_DATA_HOME/task
data.location=$TASK_DATA_HOME
# disable case sensitivity
search.case.sensitive=no