#! /bin/bash function sh_quote () { echo "$1" | perl -pe 'chomp; if (m=[^-.,_/:+@a-zA-Z0-9]=) '"{s/'/'\\\''/g; s/([-\/]?)(.*)/\$1'\$2'/}" } TMPFILE=`mktemp -p ~/tmp/ -t` TO="" KEY="" OPT="" LV=0 until [ "x$LV" != "x0" ] do case "$1" in -*) OPT="$OPT $(sh_quote "$1")" case "$1" in -f|-g) OPT="$OPT $(sh_quote "$2")" shift ;; esac ;; /*) KEY="$KEY $(sh_quote "$1")" ;; *) TO="$TO $(sh_quote "$1")" ;; esac shift LV=$? done if [ "x" != "x$TO" ] then echo "To:$TO" >> $TMPFILE fi if [ "x" != "x$KEY" ] then echo "Keywords:$KEY" >> $TMPFILE fi if [ "x" != "x$OPT" ] then echo "Options:$OPT" >> $TMPFILE fi echo -------- >> $TMPFILE zed $TMPFILE echo; read -p "What now? " ANSWER case "$ANSWER" in se*|Se*|sE*|SE*) ;; *) exit ;; esac COMMAND="gsend" cat $TMPFILE | ( while true do read FIRST SECOND case "$FIRST" in ---*) break ;; *) COMMAND="$COMMAND $SECOND" ;; esac done echo "$COMMAND" $COMMAND ) rm -f $TMPFILE