# bash completion for su(1) -*- shell-script -*- # Use of this file is deprecated on Linux. Upstream completion is # available in util-linux >= 2.23, use that instead. if [[ $OSTYPE != *linux* ]] { complete -u su # default completion return } proc _su # linux-specific completion { var cur = '', prev = '', words = '', cword = '', split = '' _init_completion -s || return match $prev { with -s|--shell _shells return with -c|--command|--session-command var IFS = '$'\n'' compopt -o filenames setglobal COMPREPLY = '( '$( compgen -d -c -- "$cur" ) ) return } $split && return if [[ "$cur" == -* ]] { setglobal COMPREPLY = '( '$( compgen -W '$( _parse_help "$1" --help )' -- "$cur" ) ) [[ $COMPREPLY == *= ]] && compopt -o nospace return } setglobal COMPREPLY = '( '$( compgen -u -- "$cur" ) ) } && complete -F _su su # ex: ts=4 sw=4 et filetype=sh