diff --git a/completions/bash/desk b/completions/bash/desk new file mode 100644 index 0000000..2732792 --- /dev/null +++ b/completions/bash/desk @@ -0,0 +1,33 @@ +#Bash completion for ◲ desk + +_desk() { + PREFIX="${DESK_DIR:-$HOME/.desk}" + DESKS="${DESK_DESKS_DIR:-$PREFIX/desks}" + + cur=${COMP_WORDS[COMP_CWORD]} + prev=${COMP_WORDS[COMP_CWORD-1]} + + case ${COMP_CWORD} in + 1) + COMPREPLY=($(compgen -W "edit . go help init list ls version" ${cur})) + ;; + 2) + case ${prev} in + edit|go|.) + if [[ -d $DESKS ]]; then + local desks=$(ls $DESKS/ | cut -d'.' -f1) + else + local desks="" + fi + COMPREPLY=( $(compgen -W "${desks}" -- ${cur}) ) + ;; + esac + ;; + *) + COMPREPLY=() + ;; + esac +} + + +complete -F _desk desk diff --git a/completions/_desk b/completions/zsh/_desk similarity index 100% rename from completions/_desk rename to completions/zsh/_desk