Xic supports a scripting language and user-definable commands (scripts). These commands can be associated with buttons in the User Menu. Scripts may also be used in ``script labels'', which are labels placed in a drawing which execute the script when clicked on. Scripts are also used in user-defined design rules, and are the basis for the protocol used in the Xic server mode. Scripts are also integral to the native parameterized cell capability. A library of several hundred built-in functions callable from scripts provide control over virtually all of the program capabilities.
In addition to the native scripting capability, Xic provides a plug-in interface to the popular open-source Python and Tcl/Tk scripting languages.
The scripting capability can be used to provide commands that quickly generate complex geometry for microwave integrated circuits, for example. Another application is to produce simple, often-needed geometry such as vias or device structures. This powerful capability provides the user with the tools to automate many tasks.
Script files are created using a text editor, perhaps most conveniently from within the debugger built into Xic, which is accessible from the Debugger button in the User Menu. Scripts can be executed within the debugging environment, which offers single stepping, breakpoints, and other features. The language is rather generic and somewhat reminiscent of the C programming language.