From 6b2661f1235534e800a9d3070a73e7c0e6262bfc Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Sat, 12 May 2012 02:57:40 +0200 Subject: completion for bash --- completion/bash-completion.sh | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 completion/bash-completion.sh diff --git a/completion/bash-completion.sh b/completion/bash-completion.sh new file mode 100644 index 0000000..31daef2 --- /dev/null +++ b/completion/bash-completion.sh @@ -0,0 +1,33 @@ +# bash completion for ponysay -*- shell-script -*- + +_ponysay() +{ + local cur prev words cword + _init_completion -n = || return + + COMPREPLY=( $( compgen -W '-v -h -l -f -W' -- "$cur" ) ) + + if [[ $prev = "-f" ]]; then + COMPREPLY=() + + sysponies=/usr/share/ponies/ + usrponies=~/.ponies/ + if [[ $TERM = "linux" ]]; then + sysponies=/usr/share/ttyponies/ + usrponies=~/.ttyponies/ + fi + + if [[ -d $sysponies ]]; then + COMPREPLY+=( $( compgen -W "$(ls $sysponies | sed -e 's/.pony//g')" -- "$cur" ) ) + fi + if [[ -d $usrponies ]]; then + COMPREPLY+=( $( compgen -W "$(ls $usrponies | sed -e 's/.pony//g')" -- "$cur" ) ) + fi + elif [[ $prev = "-W" ]]; then + cols=$( echo `tput cols` - 10 | bc ) + COMPREPLY=( $cols $( echo $cols / 2 | bc ) 100 60 ) + fi +} + +complete -o default -F _ponysay ponysay + -- cgit