Ok, então há três coisas diferentes acontecendo na pergunta:
1) Para procurar a função de conclusão do bash de um comando complete -p <command> faz o truque. Nesse caso complete -p screen rende complete -o default -F _screen screen
2) A conclusão do bash terá argumentos. No caso de screen -r , a função de conclusão screen bash é chamada com -r como argumento. Você pode então preencher automaticamente condicionalmente a partir daí.
3) No Ubuntu, /etc/bash_completion.d/screen tem a função de conclusão da tela definida.
Assim, a maneira como eu aliasse screen -r e mantivesse a função de conclusão era a seguinte.
.bashrc:
alias scr="screen -r"
function _complete_scr() {
local does_screen_exist=$(type -t _screen_sessions)
local cur=$2 # Needed by _screen_sessions
if [[ "function" = "${does_screen_exist}" ]]; then
_screen_sessions "Detached"
fi
}
export -f _complete_scr
complete -F _complete_scr -o default scr