# Script Editor

The Script Editor provides an integrated editing environment for [script add-ins](https://github.com/Chaoses-Ib/DirectoryOpus/blob/main/Manual/scripting/script_editor/script_add-ins/README.md). Using the script editor you can:

* Create new scripts, [script modules](https://github.com/Chaoses-Ib/DirectoryOpus/blob/main/Manual/scripting/script_editor/script_add-ins/modules.md) and [include files](https://github.com/Chaoses-Ib/DirectoryOpus/blob/main/Manual/scripting/script_editor/script_add-ins/include_files.md).
* Edit scripts in multiple tabs using a syntax highlighting text editor (an external editor can also be configured if desired).
* Design [dialogs](https://github.com/Chaoses-Ib/DirectoryOpus/blob/main/Manual/scripting/script_editor/script_dialogs/README.md) and edit [string resources](https://github.com/Chaoses-Ib/DirectoryOpus/blob/main/Manual/scripting/script_editor/resources/string_resources.md).
* Add icons, images and other supporting asset files.
* Easily add template functions (.js and .vbs) for the various [script events](https://chaoses-ib.gitbook.io/directory-opus/manual/reference/scripting_reference/scripting_events).
* Save and use your own text snippets (e.g. for boilerplate code you frequently have to type).

The script editor can read and write [script packages](https://github.com/Chaoses-Ib/DirectoryOpus/blob/main/Manual/scripting/script_editor/script_add-ins/script_package.md) directly. It also supports single, non-packaged, script files.

To open a script in the script editor, use the **Edit** function from the [Script Management](https://github.com/Chaoses-Ib/DirectoryOpus/blob/main/Manual/scripting/script_editor/script_management/README.md) dialog.

See also:\
[Script Assets](https://chaoses-ib.gitbook.io/directory-opus/manual/scripting/script_editor/assets)\
[Editors](https://chaoses-ib.gitbook.io/directory-opus/manual/scripting/script_editor/editors)\
[Snippets](https://chaoses-ib.gitbook.io/directory-opus/manual/scripting/script_editor/snippets)
