Any scripts located in the `startup` subdirectory of the jEdit home and user settings directories will be run on jEdit startup. Scripts can be written in BeanShell or any scripting language for which the appropriate plugin is installed (for example, Python scripting is provided by the JythonInterpreter plugin).

Methods and variables defined in BeanShell scripts are available to all other uses of BeanShell in jEdit. This is different from macros; methods and variables defined in macros are lost after the macro finishes executing.