#

## logcommands

Log all commands and mouse button actions into a file

### Usage:

> logcommands option [file]

> > where option is one of: start, stop, update, suspend, or resume, and file is the name of the log file to write to.

> or (legacy usage):

> > logcommands [file [update]]

> > > where file is the name of the log file to write to.

> ### Summary:

> > The logcommands command creates and manages a file containing all of the command-line commands and button actions as they occur while file writing is active. This creates a recording of the layout session which can be "played back" by sourcing the log file. Behavior is controlled by one of the command options, as follows:
> > start filename
> >   This opens the log file named filename, writes a header and issues a few rudimentary commands to align the file with the current window size and zoom factor, and the cursor box position. Then it starts recording commands, not including the logcommands command itself.
> > stop
> >   This command closes any open log file and stops recording commands.
> > suspend
> >   This command stops recording commands until the logcommands resume command is issued, without ending or closing the file. This is used by the wrapper script code to prevent some commands such as those that track pointer movement from being added to the log file.
> > resume
> >   This command resumes recording after it has been suspended.
> > update
> >   This command sets a flag that issues a display update command after every command recorded in the log file. This usage is largely deprecated, since sourcing the log file for playback will refresh the display as usual.
> > The legacy syntax "logcommands [file [update]]" will open a new command log file if file is given, optionally with the "update" feature (see above) if the update keyword is added. With no arguments, the log file is ended and closed.

> ### Caveats:

> > The initial header and setup in the log file is rudimentary. It will not attempt to load a technology file, load a layout, or edit some part of a layout to match what is in the layout window at the time that the log file was created. The best usage is to start the log file immediately after starting magic, and only play back the log file in the tech file environment in which it was created.

> ### Implementation Notes:

> > logcommands is implemented as a built-in command in magic.

> Return to command index

> Last updated: March 7, 2020 at 1:06pm