#!/bin/bash # load system bash-completion source_if_exists /etc/profile.d/bash_completion.sh # workaround for ssh alias ('s') completion if [ -f /usr/share/bash-completion/completions/ssh ] && ! shopt -oq posix; then . /usr/share/bash-completion/completions/ssh fi # auto-complete 's' alias like ssh shopt -u hostcomplete && complete -F _ssh s # auto-complete commands after sudo, man, mans #complete -cf sudo complete -cf manv complete -cf mangv # auto-complete like scp after custom gvimscp complete -F _scp -o nospace gvimscp # py-ethz if [ -f ~/git/gitlab/py-ethz/bin/ethz-completion.bash ] && ! shopt -oq posix; then source_if_exists ~/git/gitlab/py-ethz/bin/ethz-completion.bash fi # bash completions for local commands in ~/.local/bin LOCAL_COMMANDS="fzf tldr zellij uv xh sd delta dust pdu dog hyperfine btm broot lsd eza" for LOCAL_COMMAND in ${LOCAL_COMMANDS}; do #if [ -x "$(command -v ${LOCAL_COMMAND})" ]; then # POSIX compatible if hash ${LOCAL_COMMAND} 2>/dev/null; then # bash builtin if [ -x ~/.local/bin/${LOCAL_COMMAND} ]; then source_if_exists "${ENVRCD_PATH}/profile/_assets/completions/${LOCAL_COMMAND}_bash" fi fi done