I’m looking at using xgettext to aid translation of large codebase, and I have two questions:
- if I have one .po file per-language, is there an easy way to update them all using a single xgettext scan of the codebase, or must I run xgettext once for each language?
- if I add the target langauge to the .po file header with poedit, xgettext seems to overwrite this with default headers. How can I stop this?
Maybe I’m using the wrong tool, in which case suggestions are welcome. What I want is to be able to scan the code and update the .po files with any new strings, but leaving any header information intact.
EDIT: I know that poedit can scan code, but I was hoping to find a command line application to perform the scanning to automate the process more easily.
Yes, basically you’re using the tools wrong.
xgettextextracts the tags and creates the template file. (e.g. *.pot file)The
msgmergecommand updates a .po file with changes from the .pot file.We have make rules to update the .po files, like the one below: