#!/bin/sh

# Don't hack this script by hand if it's in one of your PATH directories.
# Instead, modify the pre-script in the YODL source package and do a 
# "make installscripts". This script is installed as yodl2manless AND
# as yodl2msless. Different groff macro commands, that's all.

#################################################### Print error msg and die.
error()
{
    echo 'yodl2manless:' $@ 1>&2
    exit 1
}

################################################### Print usage info and die.
usage()
{
    cat << ENDUSAGE
    
Yodl2less 1.31.7

Usage: yodl2less [OPTION]... FILE
Options:
    for processing, run "yodl" without arguments to see
This converter runs "yodl2man" to convert the input file to groff
format, then runs "troff -t -Tascii -ms" and pipes the output to
the "less" pager. 
Redirect to send the output to a file, as in
    yodl2manless file > output
ENDUSAGE

    exit 1
}

###################################################### Start of main program.

# get all flags
flags=""
inf=""
while [ "$1" != "" ] ; do
    case $1 in
        -*)
            flags="$flags $1"
            shift
            ;;
        *)
            inf=$1
            shift
            ;;
    esac
done

# no input file, nogo
if [ "$inf" = "" ] ; then
    usage
fi

# determine output file
troffile=${inf%%.yo}.man

PATH=$PATH:/home/bartw/Debian/build-env/yodl-1.31.7/scripts/out/
yodl2man $flags $inf || error "YODL to man conversion failed"

# are we redirected?
if [ -t ] ; then
    # nope.. pipe into less
    troff -t -Tascii -ms $troffile | less
else
    # yep, send it wherever it goes
    troff -t -Tascii -ms $troffile
fi
