Feature: #81901 - Extend T3editor¶
See forge#81901
Description¶
Since the refactoring of the system extension t3editor
, custom modes (used for syntax highlighting) and addons can be registered now.
Prerequisites¶
To do this, extensions may have now these two files to feed T3editor:
Configuration/Backend/T3editor/Addons.php
Configuration/Backend/T3editor/Modes.php
Both files return an array, as known as in TCA and Backend Routes, for example.
Register an addon¶
To register an addon, the following code may be used:
'my/addon' => [
'module' => 'cm/addon/my/addon',
'cssFiles' => [
'EXT:my_extension/Resources/Public/Css/MyAddon.css',
],
'options' [
'foobar' => 'baz',
],
'modes' => ['htmlmixed', 'xml'],
],
Key |
Type |
Description |
---|---|---|
<identifier> | string |
Represents the unique identifier of the module ( |
|
module | string |
Mandatory: Holds the RequireJS namespace of the CodeMirror module. For custom modules placed in an extension, the known |
|
cssFiles | array |
Holds all CSS files that must be loaded for the module |
|
options | array |
Options that are used by the addon |
|
modes | array |
"Jails" the addon to specific modes. This means, the module is only loaded if any of the given modes is used |
Register a mode¶
To register a mode, the following code may be used:
'css' => [
'module' => 'cm/mode/css/css',
'extensions' => ['css'],
],
Key |
Type |
Description |
---|---|---|
<identifier> |
string |
Represents the unique identifier and format code of the mode ( |
module |
string |
Mandatory: Holds the RequireJS namespace of the CodeMirror mode. For custom modules placed in an extension, the known |
extensions |
array |
Binds the mode to specific file extension. This is important for using T3editor in the Filelist module. |
default | bool |
If set, the mode is used as fallback if no sufficient mode is available. By factory default, the default mode is |
CodeMirror delivers a lot more modes and addons than registered in T3editor by default. More supported addons and modes are available at:
Impact¶
After clearing the system caches of TYPO3, T3editor checks every extension for the files Configuration/Backend/T3editor/Addons.php
and Configuration/Backend/T3editor/Modes.php
. The complete configuration of both is built and stored in the cache
afterwards.
Affected Installations¶
All installations are affected.