sourcedata.tcl:
# Example data file to be sourced
set scr [info script]
proc testproc {} {
global scr
puts "testproc source file: $scr"
}
set abc 1
return
set aaaa 1
sourcemain.tcl:
set filename "sourcedata.tcl"
puts "Global variables visible before sourcing $filename:"
puts "[lsort [info globals]]\n"
if {[info procs testproc] eq ""} {
puts "testproc does not exist. sourcing $filename"
source $filename
}
puts "\nNow executing testproc"
testproc
puts "Global variables visible after sourcing $filename:"
puts "[lsort [info globals]]\n"