Code::Blocks supports scripting to extend various parts of its functionality during runtime. The scripting language used is Squirrel.
Currently, Code::Blocks uses scripts for:
- Run arbitrary commands on application startup.
- Register new wizards for generating projects, build targets, files or anything else. All wizards shipped with Code::Blocks are scripted.
- Create and register new plugins written entirely in Squirrel.
- Extend the GNU Debugger (and others) to support arbitrary data types. Code::Blocks ships with scripts that add wxString, std::string and std::vector "knowledge" to the GNU Debugger.
- Extend the build system. Scripts can be attached to projects and/or build targets and are executed before and/or after each of these is built.
- As a special case of variable expansion, scripts can be run in place of a variable, expanding to the output generated by the script.
More Code::Blocks parts may be exposed to scripting in the future.
- This page will describe the script bindings of C::B in detail as a developer reference. It will show how certain parts of C::B and wxWidgets are exposed. This is an important reference for all script developers!
- This page will describe how the script binding is actually done from a developers point of view. It is a reference to add own script bindings to C::B at source-code level.