function __git_rm -a var # is numeric if [ "$var" -eq "$var" ] 2>/dev/null # number set myarg $arr[$var] git rm $myarg else # not a number git rm $var end end function __grm # number set res (string split "-" -- (string trim $argv)) set first $res[1] set length (count $res) set last "" # > if [ $length -gt 1 ] set last $res[2] else # just one #set myarg $arr[$res] #git rm $myarg __git_rm $res return end # first < last if [ $last != '' ] if [ $first -lt $last ] #for i in (seq $first 1 $last) for i in $res #set myarg $arr[$i] #git rm $myarg __git_rm $i end else echo 'argument is not valid.' end else #set myarg $arr[$first] #git rm $myarg __git_rm $first end #echo $res[1]end end function grm # TODO: space like, `grm 1 2 3` set res (string split " " -- (string trim $argv)) for i in $res #echo $i __gco $i end end