Required tools to update translations are:
This procedure extracts translatable strings from Mixxx's code into template files (Qt/POT) so that Launchpad's interface can present the most current strings to translators.
lupdate src -recursive -extensions cpp,h,ui -ts res/translations/mixxx.tsts2po -P -i res/translations/mixxx.ts -o res/translations/mixxx/mixxx.potLaunchpad will pick up the changes to the template automatically.
TODO: make the sconscript do this as part of a normal build so code changes that change or add strings automatically update the templates.
This procedure updates Mixxx with translations (PO files) that have been contributed by Launchpad users.
po2ts res/translations/mixxx/xx.po res/translations/mixxx_xx.tsfor XX in res/translations/mixxx/*.po; do po2ts -i $XX -o res/translations/mixxx_${$(basename $XX)%.*}.ts; donelrelease res/translations/mixxx_xx.ts -qm res/translations/mixxx_xx.qmfor XX in res/translations/mixxx_*.ts; do lrelease -nountranslated $XX -qm res/translations/${$(basename $XX)%.*}.qm; donebzr add res/translations/mixxx_*.(ts|qm)TODO: make the sconscript do this as part of a normal build so Mixxx contains the latest translations.