# Scripting & Complex Functions

To achieve the more complex effects, fvwm has a number of commands that improve its scripting abilities. Scripts can be read from a file with , from the output of a command with or written as a complex function with the command. For the curious, section 7 of the fvwm FAQ shows some real life applications of scripting. Please refer to the sections and for details. A word of warning: during execution of complex functions, fvwm needs to take all input from the mouse pointer (the pointer is "grabbed" in the slang of X). No other programs can receive any input from the pointer while a function is run. This can confuse some programs. For example, the xwd program refuses to make screen shots when run from a complex function. To achieve the same functionality you can use the or command instead.