#!/bin/bash
########################################################################
#- PROGRAM NAME: namevalue
#- AUTHOR & DT : David McMahon
#- RCS Ident   : 
#+ USAGE       : . namevalue
#+ DESCRIPTION : Set local shell environment from arguments name=value
#+               or -name=value or --name=value
########################################################################

# XXX: At some point, this should find all --whatever args without an =
# and set then to true, but this will mess with all existing independent
# handling of --whatever args passed through current with LOOSEARGS.
# but a nice exercise to simplify and centralize cmd-line processing.

ORIG_CMDLINE="$*"
for arg in "$@"
do
   case $arg in
   *=*) # Strip off any leading -*
        arg=$(echo $arg |sed 's,^-*,,g')
        # "set" any arguments that have = in them
        NAMEX=${arg%%=*}
        # change -'s to _ for legal vars in bash
        NAMEX=${NAMEX/-/_}
        VALUEX=${arg#*=}
        eval export $NAMEX=\""$VALUEX"\"
        ;;
     *) LOOSEARGS="$LOOSEARGS $arg"
        ;;
   esac
done
