diff options
author | Ingmar Vanhassel <ingmar@exherbo.org> | 2009-11-20 14:36:14 +0100 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2009-11-20 18:05:51 +0100 |
commit | 14807ed2de1290740b56952561f745c0a5ab6168 (patch) | |
tree | 7748e87d4302e4fc1280fb939a740f8ae753aeea /contrib | |
parent | 8923ea0755177af65d04c7c45c1264048b8de0cd (diff) |
bash-completion: Move to contrib
Signed-off-by: Ingmar Vanhassel <ingmar@exherbo.org>
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/notmuch-completion.bash | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/contrib/notmuch-completion.bash b/contrib/notmuch-completion.bash new file mode 100644 index 0000000..8665268 --- /dev/null +++ b/contrib/notmuch-completion.bash @@ -0,0 +1,71 @@ +# Bash completion for notmuch +# +# Copyright © 2009 Carl Worth +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see http://www.gnu.org/licenses/ . +# +# Author: Carl Worth <cworth@cworth.org> +# +# Based on "notmuch help" as follows: +# +# Usage: notmuch <command> [args...] +# +# Where <command> and [args...] are as follows: +# +# setup +# +# new +# +# search [options] <search-term> [...] +# +# show <search-terms> +# +# reply <search-terms> +# +# tag +<tag>|-<tag> [...] [--] <search-terms> [...] +# +# dump [<filename>] +# +# restore <filename> +# +# help [<command>] + +_notmuch() +{ + local current previous commands help_options + + 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" + search_options="--max-threads= --first= --sort=" + + COMPREPLY=() + + case $COMP_CWORD in + 1) + COMPREPLY=( $(compgen -W "${commands}" -- ${current}) ) ;; + 2) + case $previous in + help) + COMPREPLY=( $(compgen -W "${help_options}" -- ${current}) ) ;; + search) + COMPREPLY=( $(compgen -W "${search_options}" -- ${current}) ) ;; + esac + ;; + esac +} + +complete -o default -o bashdefault -F _notmuch notmuch |