]> git.notmuchmail.org Git - notmuch/blobdiff - notmuch-completion.bash
bash-completion: Localize variables, use more consistent variable names
[notmuch] / notmuch-completion.bash
index ad55f6d3c9d4d84f1157bb5208ad755dde665460..fc2d13c1e1cd3f780ad9c3cc1891385c54275d28 100644 (file)
@@ -1,4 +1,4 @@
-# Bash completion for notmutch
+# Bash completion for notmuch
 #
 # Copyright © 2009 Carl Worth
 #
 #
 #      new
 #
-#      search <search-term> [...]
+#      search [options] <search-term> [...]
 #
-#      show <thread-id>
+#      show <search-terms>
+#
+#      reply <search-terms>
+#
+#      tag +<tag>|-<tag> [...] [--] <search-terms> [...]
 #
 #      dump [<filename>]
 #
 #      restore <filename>
+#
+#      help [<command>]
 
 _notmuch()
 {
-    current="$2"
+    local current previous commands help_options
 
-    commands="help setup new search show dump restore"
+    previous=${COMP_WORDS[COMP_CWORD-1]}
+    current="${COMP_WORDS[COMP_CWORD]}"
+
+    commands="setup new search show reply tag dump restore help"
+    help_options="setup new search show reply tag dump restore search-terms"
 
     COMPREPLY=()
 
-    if [ "$COMP_CWORD" = "1" ]; then
-       COMPREPLY=( $(compgen -W "${commands}" -- ${current}) )
+    if [[ "$COMP_CWORD" == "1" ]]; then
+        COMPREPLY=( $(compgen -W "${commands}" -- ${current}) )
+    fi
+
+    if [[ $previous = "help" && "$COMP_CWORD" == "2" ]]; then
+        COMPREPLY=( $(compgen -W "${help_options}" -- ${current}) )
     fi
 }
 complete -o default -o bashdefault -F _notmuch notmuch