RSS/Atom feed Twitter
Site is read-only, email is disabled

spurious .po updates

This discussion is connected to the gimp-docs-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.

This is a read-only list on gimpusers.com so this discussion thread is read-only, too.

8 of 8 messages available
Toggle history

Please log in to manage your subscriptions.

spurious .po updates Vitaly Lomov 18 Jan 16:16
  spurious .po updates Sven Neumann 18 Jan 17:04
   spurious .po updates Ulf-D. Ehlert 19 Jan 18:04
    spurious .po updates Sven Neumann 21 Jan 22:29
     spurious .po updates Marco Ciampa 22 Jan 08:06
      spurious .po updates Ulf-D. Ehlert 24 Jan 13:40
       spurious .po updates Sven Neumann 25 Jan 13:37
  spurious .po updates Ulf-D. Ehlert 19 Jan 18:03
Vitaly Lomov
2009-01-18 16:16:42 UTC (almost 16 years ago)

spurious .po updates

After I built the manual, I noticed that a lot of .po files got updated (svn status), even though the english text is the same. A typical example is this (after running diff): -msgid ""
-"See also s with the
msgid. If I commit this, people will think I am a prolific writer :) and the ChangeLog will not reflect the work I actually did. Any suggestions? I am aware that I can update individual po files with some Makefile magic, but how can I build the html and avoid the problem described?

Sven Neumann
2009-01-18 17:04:33 UTC (almost 16 years ago)

spurious .po updates

Hi,

On Sun, 2009-01-18 at 15:16 +0000, Vitaly Lomov wrote:

After I built the manual, I noticed that a lot of .po files got updated (svn status), even though the english text is the same. A typical example is this (after running diff): -msgid ""
-"See also

Building the manual should never update any po files. If that is the case, then you guys should fix that. The update of po files should be left to the translators. That's how it works usually and there are good reasons to do it this way. Ulf, can you change this?

Sven

Ulf-D. Ehlert
2009-01-19 18:03:12 UTC (almost 16 years ago)

spurious .po updates

Vitaly Lomov (Sonntag, 18. Januar 2009, 16:16):

After I built the manual, I noticed that a lot of .po files got updated (svn status), even though the english text is the same. A typical example is this (after running diff): -msgid ""
-"See also

The po files will be updated, if and only if the corresponding pot files has been changed (which will be updated if and only if the xml source file has been changed).

The above text is obviously from "src/using/docks.xml", which has been modified on 2009-01-12 (one week ago). That's why it has been updated...

That is, before the text started on it's own line, now it's with the msgid.

... but I can't explain this particular difference. I tried touch src/using/docks.xml &&
make -f Makefile.GNU po/de/using/docks.po and get
grep -B1 'See also' po/de/using/docks.po msgid ""
"See also Dialogs and Docking"

so here's no such difference.

Which gettext version do you use? Maybe different gettext versions produce different output? (I have gettext-0.17 installed.)

If I commit this, people will think I am a prolific writer :) and the ChangeLog will not reflect the work I actually did. Any suggestions? I am aware that I can update individual po files with some Makefile magic, but how can I build the html and avoid the problem described?

Hmm, I do not work directly on the SVN working copy, instead I have another copy on "/tmp" and commit only files I have edited. But we can't expect everybody to work this way, so it seems that we really have a problem here...

Bye,
Ulf

Ulf-D. Ehlert
2009-01-19 18:04:56 UTC (almost 16 years ago)

spurious .po updates

Sven Neumann (Sonntag, 18. Januar 2009, 17:04):

Building the manual should never update any po files. If that is the case, then you guys should fix that. The update of po files should be left to the translators. That's how it works usually and there are good reasons to do it this way. Ulf, can you change this?

It should be no problem to change this, building html (& pdf, odf) without updating anything.

For example, we can use make's conditional feature and change Makefiles so that
make [-f Makefile.GNU] html-xx
builds the manual without updating xml and/or po, make [-f Makefile.GNU] html-xx UPDATE=all (or: RELEASE=yes) build manual with updating everything (current behaviour). (Any better ideas are always welcome...)

But note that we lose a powerful make feature: updating exactly what has to be updated.
Obviously updating po files automatically is a double-edged sword, but without that feature working will be less comfortable.

BTW, other targets are affected as well, e.g. "make validate-xx" will also update po and xml files if necessary.

So we probably would have to do everything manually: make po-xx, make po/xx/path/to/pofile.po, etc.

Our next major task will be to merge po files (e.g. one po file per directory). This won't solve anything, but should reduce the noise.

Bye, Ulf

Sven Neumann
2009-01-21 22:29:58 UTC (almost 16 years ago)

spurious .po updates

Hi,

On Mon, 2009-01-19 at 18:04 +0100, Ulf-D. Ehlert wrote:

Obviously updating po files automatically is a double-edged sword, but without that feature working will be less comfortable.

I can only speak for what I know about how po files are handled in an application like GIMP. There the po files used to be updated (and the updated files committed) on 'make dist'. In other words, when making a release. This was changed some years ago because it used to cause a lot of trouble for translators. Imagine a translator working on the po file. After spending several hours, if not days, she wants to commit the changed file to SVN. If someone else changed the file in the meantime, the result is a terrible conflict which is rather difficult to resolve. This means losing a lot of work. Quite often this also means losing a translator. You should definitely try to avoid that.

Sven

Marco Ciampa
2009-01-22 08:06:22 UTC (almost 16 years ago)

spurious .po updates

On Wed, Jan 21, 2009 at 10:29:58PM +0100, Sven Neumann wrote:

Hi,

On Mon, 2009-01-19 at 18:04 +0100, Ulf-D. Ehlert wrote:

Obviously updating po files automatically is a double-edged sword, but without that feature working will be less comfortable.

I can only speak for what I know about how po files are handled in an application like GIMP. There the po files used to be updated (and the updated files committed) on 'make dist'. In other words, when making a release. This was changed some years ago because it used to cause a lot of trouble for translators. Imagine a translator working on the po file. After spending several hours, if not days, she wants to commit the changed file to SVN. If someone else changed the file in the meantime, the result is a terrible conflict which is rather difficult to resolve. This means losing a lot of work. Quite often this also means losing a translator. You should definitely try to avoid that.

Agree 100%. Only translators shold update po files. This is what

intltool-update xx

is meant to (where xx is the language code). It should be a similar mechanism for the GIMP manual.

Just my 2 eurocents: IMHO when you do a simple make it should be a reminder message that hits the translator to update the proper po files before translating reminding he/she how to do it.

bye

Ulf-D. Ehlert
2009-01-24 13:40:47 UTC (almost 16 years ago)

spurious .po updates

Marco Ciampa (Donnerstag, 22. Januar 2009, 08:06):

Agree 100%. Only translators shold update po files.

We *are* the translators. Unlike the GIMP application, there are no developers editing C source files and thus adding daily changes (like changed line numbers) to the po files. (Oh god, we're on our own... )

This is what

intltool-update xx

is meant to (where xx is the language code). It should be a similar mechanism for the GIMP manual.

'make po-xx' updates po files for language "xx".

Typically nobody else but you updates the Italien po files. The problem are the po files you didn't edit and don't want to be committed.

Just my 2 eurocents: IMHO when you do a simple make it should be a reminder message that hits the translator to update the proper po files before translating reminding he/she how to do it.

So when do you want to get this message? Should 'make po-xx' just print "Warning: po/xx/path/to/pofile.po is not up-to-date"? Should we change it so that only "make po/xx/path/to/pofile.po" will update this file?

More general: Which commands do we really need, and what do you expect them to do? Which command(s) should update po files, which command(s) shouldn't? (Apparently 'make html-xx' should not update by default...)

Maybe I should first illustrate how the build process works:

In our Makefiles, we have a set of rules which let 'make' determine which files to update and how to do that, e.g.

any-po-file: corresponding-pot-file commands to create/update any-po-file or to do whatever we want

If a po file (here: "any-po-file") is older than its prerequisite pot file (here: "corresponding-pot-file"), the commands will be executed and (usually) the target (here: the po file) will be updated.

There are similar rules for pot files (to be updated if older than source files) and localized xml files (if older than po files).

SOURCE --> POT --> PO --> XML --> HTML/PDF/ODF

where updates are triggered "from right to left", e.g. 'make html' will update xml files if necessary, making/updating xml files will update po files if necessary etc.
So editing a source file causes several updates.

It's easy to change this so that po files won't be updated by default, e.g. using different commands depending on a 'make' variable. Then, for example,

make po-xx or
make po/xx/path/to/pofile.po

will print warning(s),

make po-xx UPDATE=yes or
make po/xx/path/to/pofile.po UPDATE=yes

will update (possibly all) po file(s).

That's a simple way to prevent 'make' updating too many po files, but it's not very comfortable. Fine with me, but I don't know if you would like this...
(Should we consider adding wrapper scripts...?)

So are there any answers, comments, ideas, suggestions, or feature requests?

Bye,
Ulf

Sven Neumann
2009-01-25 13:37:46 UTC (almost 16 years ago)

spurious .po updates

Hi,

On Sat, 2009-01-24 at 13:40 +0100, Ulf-D. Ehlert wrote:

Marco Ciampa (Donnerstag, 22. Januar 2009, 08:06):

Agree 100%. Only translators shold update po files.

We *are* the translators. Unlike the GIMP application, there are no developers editing C source files and thus adding daily changes (like changed line numbers) to the po files. (Oh god, we're on our own... )

No, you are not. You are the content writers. You are editing the original content, changing the text that is going to be translated by the hordes of translators teams waiting at l10n.gnome.org. Most translators of the GIMP user manual will not even checkout the gimp-help package. They will download the po files from l10n.gnome.org and ask their translation team leader to commit their translation back to the version control system.

Sven