#!/bin/zsh
#-y
# mmc: SH_WORD_SPLIT -> $LS_OPTIONS is decomposed!

# My generic view program ()

# alias?
set -A ls /bin/ls ${=LS_OPTIONS}

usage()
{
    cat <<EOF
usage: ${0##*/} [+-d] [-h] [--] ARGS...

-d debug
-h help


EOF
}


debug=n

while getopts :dh OPT; do
    case $OPT in
        d|+d)
            debug=y
        ;;
        h)
            usage
            exit 0
            ;;
        *)
            usage >&2
            exit 2
    esac
done
shift OPTIND-1
OPTIND=1



if [ $# -gt 0 ]
then # We are given the filename

    filename=$1;
    if [[ -d "$filename" ]]
    then
        #cecho red directory
        $ls "$filename"
    else
        ext=`filextension $filename`
        if [ "$TERM" = "xterm" ]; then
            x_title $filename;
        fi
        case $ext in
            'htm'| 'html') ${HTML_BROWSER-elinks} "$filename";;
            'pod') my-perldoc "$filename";;
            'dvi') xd "$filename";;
            *)
                if [[ $debug = y ]]; then
                    ~/.lessfilter -d "$filename"
                else
                    less $*
                fi
                ;;
        esac
    fi
else
    less
fi
