In order to create or update a translatable file, run the following command in the directory i18n/: lupdate ../src -ts quassel_xx.ts where xx is the two-letter language code according to ISO 639 (which, if needed, may be suffixed by a country code according to ISO 3166). Quassel will automatically load these translation files based on the system locale. Examples for valid file names: quassel_de.ts quassel_en_US.ts You can open these XML files with the Qt Linguist and add/edit translated strings. The *.ts files can and should be kept in sync with the source code by running lupdate regularly (existing translations won't be removed). Qt itself does not use the *.ts files, but a compact binary format (*.qm). In order to create these files from new or updated *.ts files, run lrelease *.ts In addition, new languages need to be added to i18n/i18n.qrc, since we are using Qt's resource system for loading the translations.