Maintenance

Target group: Contributors, Developers

Translations

The translation to other languages is done within the Crowdin service. It is appreciated to add missing or incomplete languages. Please navigate to the project home. If the language is not available please drop me a note and I will create it.

PrismJS library

For syntax highlighting PrismJS is used. The JavaScript library and its dependencies are managed with yarn and build with gulp:

cd Build
yarn install
yarn build
Copied!

The yarn build command runs the according gulp task and copies the Prism components (aka languages), plugins and themes to the Resources/Public/Vendor/PrismJs/ folder. Also a PHP file Resources/Private/PHP/AvailableProgrammingLanguages.php is generated with the available languages. It will be used for the select box of programming languages in the backend form. The option values are "translated" via the Resources/Private/Language/ProgrammingLanguages.xlf file.

Update

To update the library to the recent version just call on the console:

cd Build
yarn upgrade prismjs
yarn build
Copied!

The copied artifacts can now be committed (along with the package.json file to the repository. Don't forget to add new files to the commit and add these to the translation file Resources/Private/Language/ProgrammingLanguages.xlf.

Packaging of extension for TER

Set the new version in the files

  • ext_emconf.php
  • Documentation/guides.xml,

adjust the CHANGELOG.md and tag the release. The packaging of the extension for the TYPO3 Extension Repository (TER) can be done with:

make zip
Copied!

This creates/replaces a file ../zip/codehighlight_x.y.z.zip which is ready for upload to TER. x.y.z holds the recent version number.