Accept filters for listcon, too.

This has been implemented for listproj already, for consistency in use and implementation, the same should be available for listcon, too.
This commit is contained in:
Ingo Karkat
2012-04-13 10:47:56 +02:00
parent ebe6a403c8
commit 92322e7064
2 changed files with 16 additions and 4 deletions

View File

@@ -55,6 +55,16 @@ test_todo_session 'listcon e-mail address test' <<EOF
@con02 @con02
EOF EOF
cat > todo.txt <<EOF
(B) smell the uppercase Roses +roses @outside +shared
(C) notice the sunflowers +sunflowers @garden +shared +landscape
stop
EOF
test_todo_session 'listcon with project' <<EOF
>>> todo.sh listcon +landscape
@garden
EOF
cat > todo.txt <<EOF cat > todo.txt <<EOF
@con01 -- Some context 1 task @con01 -- Some context 1 task
EOF EOF

10
todo.sh
View File

@@ -58,7 +58,7 @@ shorthelp()
list|ls [TERM...] list|ls [TERM...]
listall|lsa [TERM...] listall|lsa [TERM...]
listaddons listaddons
listcon|lsc listcon|lsc [TERM...]
listfile|lf [SRC [TERM...]] listfile|lf [SRC [TERM...]]
listpri|lsp [PRIORITIES] [TERM...] listpri|lsp [PRIORITIES] [TERM...]
listproj|lsprj [TERM...] listproj|lsprj [TERM...]
@@ -223,9 +223,10 @@ help()
listaddons listaddons
Lists all added and overridden actions in the actions directory. Lists all added and overridden actions in the actions directory.
listcon listcon [TERM...]
lsc lsc [TERM...]
Lists all the task contexts that start with the @ sign in todo.txt. Lists all the task contexts that start with the @ sign in todo.txt.
If TERM specified, considers only tasks that contain TERM(s).
listfile [SRC [TERM...]] listfile [SRC [TERM...]]
lf [SRC [TERM...]] lf [SRC [TERM...]]
@@ -1135,7 +1136,8 @@ case $action in
"listcon" | "lsc" ) "listcon" | "lsc" )
FILE=$TODO_FILE FILE=$TODO_FILE
[ "$TODOTXT_SOURCEVAR" ] && eval "FILE=$TODOTXT_SOURCEVAR" [ "$TODOTXT_SOURCEVAR" ] && eval "FILE=$TODOTXT_SOURCEVAR"
grep -ho '[^ ]*@[^ ]\+' "${FILE[@]}" | grep '^@' | sort -u shift
eval "$(filtercommand 'cat "${FILE[@]}"' '' "$@")" | grep -o '[^ ]*@[^ ]\+' | grep '^@' | sort -u
;; ;;
"listproj" | "lsprj" ) "listproj" | "lsprj" )