Re: [Translation-i18n] The reason for make dist updating po files
Kenneth Rohde Christiansen <[email protected]> 28 May 2003 19:40:42 +0200
| Newsgroups | gmane.comp.gnome.internationalization.general,gmane.comp.gnome.lib.xml.internationalization |
|---|---|
| Message-ID | <[email protected]> |
Thanks for bringing me up to date. > The proposed tool 'intltool-commit' would automate this step, dealing > with the CVS conflicts. There are two kinds of CVS conflicts: (a) Those > caused by pure msgmerge application, and (b) those caused by other translators > that worked on the PO file simultaneously. 'intltool-commit' must distinguish > these two cases. > > intltool-commit should be part of the intltools because it's the logically > converse step of intltool-update. > > intltool-commit could work like this: > 0) Create the POT file using the current sources. > 1) Check using "cvs status" whether the PO file has been updated in the > repository at all. If no, just invoke msgmerge and commit the result. > 2) Otherwise, we go through the CVS changes one by one. Let's call > the file before and after the change xy.prev.po and xy.curr.po. Apply > msgmerge (with the current PO file!) to these two files. Also apply > "msgattrib --no-obsolete --no-fuzzy" to these two files as well. > If the result is that the two files are identical, it was a commit of type > (a). Ignore it. Otherwise prepare the "diff" between the two files > and save it for later. > 3) Last step: Invoke msgmerge on the new PO file and then patch in the > prepared diffs one by one. Make the translator aware what is happening, > and let him also control the patching. Maybe tell him the list of > "patch" commands to use. (In my experience, "patch" does more often the > right thing than "cvs update"'s resolution mechanism.) Sounds like a good idea. I will look into making this after Monday. > Oh, I looked at intltool already a long time ago. Let's talk about it on > xml-i18n-tools at gnome org. Sounds like a good idea. Cheers, Kenneth