Posted to tcl by Setok at Mon Jan 04 22:18:22 GMT 2010view raw

  1. set MyDir [file dirname [info script]]
  2.  
  3. proc ' {msg args} {
  4. puts "Msg: $msg"
  5. }
  6.  
  7. proc subunknown {args} {
  8. }
  9.  
  10. set file [open [file join $MyDir script.tcl] r]
  11. set script [read $file]
  12. close $file
  13.  
  14. interp create sub
  15.  
  16. set cmds [sub eval {info commands}]
  17. puts "Cmds: $cmds"
  18. foreach cmd $cmds {
  19. sub hide $cmd
  20. }
  21.  
  22. interp alias sub ' {} '
  23. interp alias sub unknown {} subunknown
  24.  
  25. # We don't care about variables. Take them away
  26. set script [string map {\$ ""} $script]
  27. sub invokehidden -global subst -novariables $script
  28.