AMB: Here's a simple script that can be sourced to provide a log file for puts statements.
# logfile.tcl # Writes to a log file every time puts is called with one arg. # Written by Alex Baker, 2025 # [email protected] # Source this file, and call openLogFile to start the log. # Only one log file can be open at once. proc ::openLogFile {filename {type w}} { global logFileID closeLogFile set logFileID [open $filename $type] trace add execution ::puts leave ::logPuts return } proc ::closeLogFile {} { global logFileID if {[info exists logFileID]} { close $logFileID unset logFileID trace remove execution ::puts leave ::logPuts } return } proc ::logPuts {cmdString code args} { global logFileID if {$code == 0 && [llength $cmdString] == 2} { set msg [lindex $cmdString 1] puts $logFileID $msg } return }