From e1a84ab1733c78fce8afeef8f022122988fc8a10 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Tue, 6 Apr 2010 10:48:21 -0700 Subject: Rename the "contrib" directory to "completion". The original "contrib" name is lousy. Everything in notmuch has been contributed, and we are integrating as much of it as possible, (rather than making users grub through contrib looking for useful pieces to install). Meanwhile, the only things we have in contrib are command-line completion scripts, so "completion" makes more sense as a name, (and helps make "./configure" slightly less ambiguous). --- completion/notmuch-completion.bash | 71 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 completion/notmuch-completion.bash (limited to 'completion/notmuch-completion.bash') diff --git a/completion/notmuch-completion.bash b/completion/notmuch-completion.bash new file mode 100644 index 0000000..8665268 --- /dev/null +++ b/completion/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 +# +# Based on "notmuch help" as follows: +# +# Usage: notmuch [args...] +# +# Where and [args...] are as follows: +# +# setup +# +# new +# +# search [options] [...] +# +# show +# +# reply +# +# tag +|- [...] [--] [...] +# +# dump [] +# +# restore +# +# help [] + +_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 -- cgit v1.2.3