diff options
Diffstat (limited to 'bash')
-rw-r--r-- | bash/bash_completion.d/_abook_addresses.bash | 10 | ||||
-rw-r--r-- | bash/bash_completion.d/mail.bash | 10 | ||||
-rw-r--r-- | bash/bash_completion.d/mutt.bash | 10 |
3 files changed, 30 insertions, 0 deletions
diff --git a/bash/bash_completion.d/_abook_addresses.bash b/bash/bash_completion.d/_abook_addresses.bash new file mode 100644 index 00000000..8e341172 --- /dev/null +++ b/bash/bash_completion.d/_abook_addresses.bash @@ -0,0 +1,10 @@ +# Email addresses from abook(1) +_abook_addresses() { + while IFS=$'\t' read -r address _ ; do + case $address in + "${COMP_WORDS[COMP_CWORD]}"*) + COMPREPLY[${#COMPREPLY[@]}]=$address + ;; + esac + done < <(abook --mutt-query \@) +} diff --git a/bash/bash_completion.d/mail.bash b/bash/bash_completion.d/mail.bash new file mode 100644 index 00000000..4476df12 --- /dev/null +++ b/bash/bash_completion.d/mail.bash @@ -0,0 +1,10 @@ +# Completion for mail(1) with abook(1) email addresses +declare -F _abook_addresses >/dev/null || + source "$HOME"/.bash_completion.d/_abook_addresses.bash + +# bashdefault requires Bash >=3.0 +if ((BASH_VERSINFO[0] >= 3)) ; then + complete -F _abook_addresses -o bashdefault -o default mail +else + complete -F _abook_addresses -o default mail +fi diff --git a/bash/bash_completion.d/mutt.bash b/bash/bash_completion.d/mutt.bash new file mode 100644 index 00000000..d8bcc15d --- /dev/null +++ b/bash/bash_completion.d/mutt.bash @@ -0,0 +1,10 @@ +# Completion for mutt(1) with abook(1) email addresses +declare -F _abook_addresses >/dev/null || + source "$HOME"/.bash_completion.d/_abook_addresses.bash + +# bashdefault requires Bash >=3.0 +if ((BASH_VERSINFO[0] >= 3)) ; then + complete -F _abook_addresses -o bashdefault -o default mutt +else + complete -F _abook_addresses -o default mutt +fi |