#!/usr/bin/env rc usage=`{printf 'usage: %s [-t] [-d] [-e KEY=VALUE] prog [args...]\n' `{basename $0}} gdb=0 gdb_opts=() env_opts=() while(~ $1 -*) { switch($1) { case -h '-?' --help echo $usage exit 0 case -t gdb=1 touch /tmp/gdb-debug-pty gdb_opts=($gdb_opts -tty /tmp/gdb-debug-pty ) case -d gdb=1 case -e shift env_opts=($env_opts $1) case * echo $usage exit 1 } shift } if(~ $#* 0) { echo $usage exit 1 } prog=`{readlink -f $1} shift if(~ $gdb 1) { env - $env_opts 'TERM=screen' 'PWD='$PWD gdb $gdb_opts --args $prog $* } if not { env - $env_opts 'TERM=screen' 'PWD='$PWD $prog $* }