       cmdtrace level|on ?noeval? ?notruncate? ?procs? ?fileid?
              Print  a  trace statement for all commands executed
              at depth of level or below (1 is  the  top  level).
              If  on  is specified, all commands at any level are
              traced.  The following options are available:

            noeval Causes arguments to  be  printed  unevaluated.
                   If  noeval  is  specified,  the  arguments are
                   printed before  evaluation.   Otherwise,  they
                   are printed afterwards.

                   If  the command line is longer than 60 charac-
                   ters, it is truncated to 60  and  a  "..."  is
                   postpended  to  indicate  that  there was more
                   output than was displayed.   If  an  evaluated
                   argument contains a space, the entire argument
                   will be enclosed inside of  braces  (`{}')  to
                   allow  the  reader  to  visually  separate the
                   arguments from each other.

            notruncate
                   Disables the truncation of commands and evalu-
                   ated arguments.

            procs  Enables  the  tracing of procedure calls only.
                   Commands that  aren't  procedure  calls  (i.e.
                   calls  to  commands that are written in C, C++
                   or some object-compatible  language)  are  not
                   traced if the procs option is specified.  This
                   option  is  particularly  useful  for  greatly
                   reducing  the  output of cmdtrace while debug-
                   ging.

            fileid This is a file id as returned by the open com-
                   mand.   If  specified,  then  the trace output
                   will be written to the file rather  than  std-
                   out.  A stdio buffer flush is done after every
                   line is written so that the trace may be moni-
                   tored externally or provide useful information
                   for debugging problems that cause core  dumps.
       The  most  common use of this command is to enable tracing
       to a file during the development.  If a failure occurs,  a
       trace is then available when needed.  Command tracing will
       slow down the execution of code, so it should  be  removed
       when  code is debugged.  The following command will enable
       tracing to a file for the remainder of the program:

                cmdtrace on [open cmd.log w]

       cmdtrace off
              Turn off all tracing.

       cmdtrace depth
              Returns the current maximum trace level, or zero if
              trace is disabled.

              This command is provided by Extended Tcl.
