There are different typical scenarios for getting into LeechCraft development, depending on your preferred role in the project.

Programmer



Ok, so you want to write new plugins for LeechCraft, or maybe contribute code to existing ones.

Translator



LeechCraft uses Qt Linguist for translations, so you will need it installed. Translations for language with the two-letter ISO code lang for a plugin named, for example, Aggregator, are located in that plugin’s directory and are named leechcraft_aggregator_lang.ts. Translations may also be targeted to different countries by appending the _COUNTRY two-letter ISO code to the base name of the translation file.

If you want to translate LeechCraft to some language, first, check if the translation exists already. If it does, you will need to update it, otherwise you should generate it from scratch. Both tasks are done with the same sequence of commands, and if you don’t want to perform them by yourself, feel free to contact us for us to update/generate the translation for you.

The sequence is:

  1. Check if there is any *settings.xml file. If there is, run the shell script located at /tools/scripts/translationstuff/gencpp.sh (relative to the root of the git repository), passing the name of the XML file to it and redirecting the output of the script to a .cpp-file, like:

    ~/Programming/leechcraft/tools/scripts/translationstuff/gencpp.sh *settings.xml > dummy.cpp
    Run the following command to update (or generate) the translation you want to work on:
    
    lupdate *.cpp *.h *.ui -ts leechcraft_pluginname_lang.ts
    
    Please note that plugin may have additional files with translatable strings in subdirectories, in that case you should pass them in similar manner as well (before the -ts).