_bwa()
{
  local cur prev opts
  COMPREPLY=()
  cur="${COMP_WORDS[COMP_CWORD]}"
  prev="${COMP_WORDS[COMP_CWORD-1]}"
  opts="index aln samse sampe
        bwasw fastmap mem fa2pac pac2bwt
        pac2bwtgen bwtupdate
        bwt2sa"

  case $prev in
      bwa)
          COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
          ;;
  esac
  return 0
}
complete -F _bwa -o default bwa
