. man.sh man <TAB> man section <TAB> -- Lev V. CHIRIN Enterprise Information Systems
_list_mans() {
local cmd="$1" cur="$2"
local prev
case "$3" in
?) prev="$3";;
*) prev="";;
esac
COMPREPLY=(\
$(/bin/ls {/usr/share/man,/usr/X11R6/man,/usr/local/man}/man$prev* 2>/dev/null
|\
perl -ne 'if (s/^('"$2"'.*?)(?:\.[^.]+(?:\.gz)?)$/$1/) { print }' |\
grep -Ev ':$' ) \
)
}
complete -F _list_mans man
