#compdef pgmtoppm local ret=1 expl if [[ CURRENT -eq 2 ]]; then if compset -P '?*-'; then _x_color return fi _x_color && ret=0 _description expl option compadd "$expl[@]" - -map && ret=0 return ret elif [[ CURRENT -eq 3 && "$words[2]" = -map ]]; then _description expl 'map file' _files "$expl[@]" -g '*.(#i)ppm' else _pbm_file fi