Note for translators of the pot files: ====================================== Make a copy of the pot file renaming it to reflect the language it is being translated in to. For example, for a German translation of linuxcnc.pot, your working file would be de.po - If the file does not exist within the source repository, then create one from the linuxcnc.pot template: cp linuxcnc.pot de.po To update a language's .po file from its .pot file, use the "msgmerge" command. Because doing this needlessly creates lots of unneeded revisions of the .po files in the history, this is not done automatically by "make". Instead, it is done by explicitly executing "make pofiles". This must be done from time to time in order to make new messages available for translation in the experimental "weblate" interface. If you are working by hand, you can also update just a single pofile: msgmerge -U xx.po linuxcnc.pot When you are done, "git commit" the new .po file. If you have push access, "git push". Otherwise, format your changes as a patch with "git format-patch" and send it to the emc-developers mailing list or create a Pull Request on GitHub. Graphical tools for editing .po files ===================================== On Dapper there seem to be three graphical front-ends for editing .po files: - gtranslator (a part of the Gnome desktop), - lokalize (former kbabel as part of KDE) and - poedit Required versions of xgettext and msgmerge ========================================== Configure tries to detect several problems with xgettext and msgmerge. Version 0.14.5 is known to work properly.