.bashrc
changeset 242 a13e9cd16022
parent 241 e1e0eeee8d51
child 246 1622a1ee71fc
child 250 405b343c1214
equal deleted inserted replaced
241:e1e0eeee8d51 242:a13e9cd16022
   234   COMPREPLY=( ${COMPREPLY[@]%.*} )
   234   COMPREPLY=( ${COMPREPLY[@]%.*} )
   235   COMPREPLY=( $(compgen -W '${COMPREPLY[@]}' -- $cur ) )
   235   COMPREPLY=( $(compgen -W '${COMPREPLY[@]}' -- $cur ) )
   236 }
   236 }
   237 complete -F _man man
   237 complete -F _man man
   238 
   238 
       
   239 _make() {
       
   240   local mk
       
   241   local cur=${COMP_WORDS[COMP_CWORD]}
       
   242   [[ $COMP_CWORD > 0 ]] && prev=${COMP_WORDS[COMP_CWORD-1]}
       
   243   if [[ $prev = -f ]]; then
       
   244     COMPREPLY=( $(compgen -f -- "$cur") )
       
   245     return 0
       
   246   fi
       
   247   for (( i=0; i < ${#COMP_WORDS[@]}-1; i++ )); do
       
   248     if [[ ${COMP_WORDS[i]} == -f ]]; then
       
   249       mk=${COMP_WORDS[i+1]}
       
   250       break
       
   251     fi
       
   252   done
       
   253   [[ ! -f $mk ]] && mk=$(eval echo [Mm]akefile)
       
   254   [[ -f $mk ]] || return 0
       
   255   COMPREPLY=( $(compgen -W "$(sed -n -e '/^[[:alnum:]_-]*:/{s=^\([^:]*\):.*=\1=;p;}' $mk)" -- $cur) )
       
   256   return 0
       
   257 }
       
   258 complete -F _make make gmake pmake
       
   259 
   239 # Use bash-completion, if available.
   260 # Use bash-completion, if available.
   240 if [ -f /etc/bash_completion ]; then
   261 if [ -f /etc/bash_completion ]; then
   241   # Under Cygwin bash completition start a long time.
   262   # Under Cygwin bash completition start a long time.
   242   if [ ! "$OSTYPE" = cygwin ]; then
   263   if [ ! "$OSTYPE" = cygwin ]; then
   243     . /etc/bash_completion
   264     . /etc/bash_completion