if ![info exists prompt] then { set prompt "calc: " } # # calc_version -- extract and print the version number of calc # proc calc_version {} { global CALC global prompt set tmp [exec echo "version" | $CALC] regexp "$prompt *(\[^\n\]*)\n.*" $tmp tmp version clone_output "[which $CALC] version $version\n" } # # calc_load -- loads the program # proc calc_load { arg } { # } # # calc_exit -- quit and cleanup # proc calc_exit {} { send "quit\n" } # # calc_start -- start calc running # proc calc_start {} { global CALC global prompt global spawn_id global verbose if { $verbose > 1 } { send_user "starting $CALC\n" } spawn $CALC expect { -re "No such file.*" { perror "Can't start $CALC"; exit 1 } -re "$prompt$" { } timeout { perror "Failed to spawn $CALC (timeout)"; exit 1 } } } calc_start