Add action argument for help to todo_completion.
Note that this is not perfect, as it only handles completing a single action after "help", but that should over the most important use case.
This commit is contained in:
0
tests/actions-test-lib.sh
Executable file → Normal file
0
tests/actions-test-lib.sh
Executable file → Normal file
20
tests/t6100-completion-help.sh
Executable file
20
tests/t6100-completion-help.sh
Executable file
@@ -0,0 +1,20 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
|
||||||
|
test_description='Bash help completion functionality
|
||||||
|
|
||||||
|
This test checks todo_completion of actions for usage help.
|
||||||
|
'
|
||||||
|
. ./actions-test-lib.sh
|
||||||
|
. ./test-lib.sh
|
||||||
|
make_action "zany"
|
||||||
|
make_action "aardvark"
|
||||||
|
|
||||||
|
readonly ACTIONS='add a addto addm append app archive command del rm depri dp do help list ls listaddons listall lsa listcon lsc listfile lf listpri lsp listproj lsprj move mv prepend prep pri p replace report shorthelp'
|
||||||
|
readonly ADDONS='aardvark zany'
|
||||||
|
|
||||||
|
test_todo_completion 'all actions after help' 'todo.sh help ' "$ACTIONS $ADDONS"
|
||||||
|
test_todo_completion 'all actions after command help' 'todo.sh command help ' "$ACTIONS $ADDONS"
|
||||||
|
test_todo_completion 'actions beginning with a' 'todo.sh help a' 'add a addto addm append app archive aardvark'
|
||||||
|
|
||||||
|
test_done
|
||||||
@@ -28,6 +28,8 @@ _todo()
|
|||||||
case "$prev" in
|
case "$prev" in
|
||||||
command)
|
command)
|
||||||
completions=$COMMANDS;;
|
completions=$COMMANDS;;
|
||||||
|
help)
|
||||||
|
completions="$COMMANDS $(eval TODOTXT_VERBOSE=0 $_todo_sh command listaddons)";;
|
||||||
addto|listfile|lf)
|
addto|listfile|lf)
|
||||||
completions=$(eval TODOTXT_VERBOSE=0 $_todo_sh command listfile);;
|
completions=$(eval TODOTXT_VERBOSE=0 $_todo_sh command listfile);;
|
||||||
-*) completions="$COMMANDS $(eval TODOTXT_VERBOSE=0 $_todo_sh command listaddons) $OPTS";;
|
-*) completions="$COMMANDS $(eval TODOTXT_VERBOSE=0 $_todo_sh command listaddons) $OPTS";;
|
||||||
|
|||||||
Reference in New Issue
Block a user