> a simple make in the git-gui-i18n repository fails with the following msg:
> paolo@paolo-desktop:~/git-gui-i18n$ make
> GITGUI_VERSION = 0.9.GITGUI-dirty
> * new locations or Tcl/Tk interpreter
> GEN git-gui
> INDEX lib/
> MSGFMT po/bg.msg 391 translated.
> MSGFMT po/de.msg 383 translated, 5 fuzzy, 3 untranslated.
> MSGFMT po/es.msg 122 translated, 269 untranslated.
> MSGFMT po/fr.msg 391 translated.
> MSGFMT po/hu.msg 391 translated.
> MSGFMT po/it.msg make: *** [po/it.msg] Error 1
> Before and after the following patch :-)
I think that's this commit: c6fb29db5a50df150280b641d3c2a6703589b529
(Fixed usage of positional parameters in it.po and ja.po).
It didn't fix anything and was harmful instead.
diff --git a/po/README b/po/README
index 5e77a7d..595bbf5 100644
@@ -101,7 +101,7 @@ matching msgid lines. A few tips:
"printf()"-like functions. Make sure "%s", "%d", and "%%" in your
translated messages match the original.
- When you have to change the order of words, you can add "<number>\$"
+ When you have to change the order of words, you can add "<number>$"
between '%' and the conversion ('s', 'd', etc.) to say "<number>-th
parameter to the format string is used at this point". For example,
if the original message is like this:
@@ -111,12 +111,17 @@ matching msgid lines. A few tips:
and if for whatever reason your translation needs to say weight first
and then length, you can say something like:
- "WEIGHT IS %2\$d, LENGTH IS %1\$d"
+ "WEIGHT IS %2$d, LENGTH IS %1$d"
- The reason you need a backslash before dollar sign is because
- this is a double quoted string in Tcl language, and without
- it the letter introduces a variable interpolation, which you
- do not want here.
+ A format specification with a '*' (asterisk) refers to *two* arguments
+ instead of one, hence the succeeding argument number is two higher
+ instead of one. So, a message like this
+ "%s ... %*i of %*i %s (%3i%%)"
+ is equivalent to
+ "%1$s ... %2$*i of %4$*i %6$s (%7$3i%%)"
- A long message can be split across multiple lines by ending the
string with a double quote, and starting another string on the next
On Sun, Aug 3, 2008 at 1:49 PM, Michele Ballabio
<[hidden email]> wrote:
> On Sunday 03 August 2008, Paolo Ciarrocchi wrote:
>> Some fairly simply changes to it.po
>> Signed-off-by: Paolo Ciarrocchi <[hidden email]>
>> po/it.po | 13 ++++++-------
>> 1 files changed, 6 insertions(+), 7 deletions(-)
> BTW, I think you posted a patch against git-gui-i18n.git, but that repo is
> way behind git-gui.git and not updated for a while.
Ops... I thought that was still the right process...
> Here is a patch against current master (attached to prevent encoding issues).
> The strings missing translation now is "Buckets". I know what
> it means but I can't came up with a translation that I like.
Confused. Even in the repo i used buckets was the only missing translation.
If you look at my patch:
you'll notice that we agree on not translating that word :)
That said, I'd like too see the following hunk be part of your patch as well:
msgid "Unrecognized spell checker"
-msgstr "Correttore ortografico sconosciuto"
+msgstr "Correttore ortografico non riconosciuto"
Can you please clarify how you are working on the po file?
I was used to use gtransalator and I'm a bit confused by hunks like
> > Here is a patch against current master (attached to prevent encoding issues).
> > The strings missing translation now is "Buckets". I know what
> > it means but I can't came up with a translation that I like.
> Confused. Even in the repo i used buckets was the only missing translation.
> If you look at my patch:
> #: lib/choose_repository.tcl:628
> msgid "buckets"
> -msgstr ""
> +msgstr "buckets"
> you'll notice that we agree on not translating that word :)
Ok, but translating it with "buckets" has no real sense since it is not
commonly used in Italian, IMO. I'd leave it empty (the default English
word - "buckets" - will show up anyway) and hope that someone will come up
with an idea :)
> That said, I'd like too see the following hunk be part of your patch as well:
> #: lib/spellcheck.tcl:80
> -#, fuzzy
> msgid "Unrecognized spell checker"
> -msgstr "Correttore ortografico sconosciuto"
> +msgstr "Correttore ortografico non riconosciuto"
Ok, done in this version (attached).
> Can you please clarify how you are working on the po file?
> I was used to use gtransalator and I'm a bit confused by hunks like
> the following:
> -#: lib/option.tcl:192
> +#: lib/option.tcl:194
Some explanation is in po/README. The workflow is/should be:
* normal development in git-gui.git happens
* nearing a release, Shawn updates po/git-gui.pot
* all translators update their po/*.po files with
$ msgmerge -U po/it.po po/git-gui.pot
where "it" is an example. This command updates strings and line numbers
in the .po file (as in the two lines you quoted), and adds "fuzzy"
to old/machine-guessed translations.
* now the translator can use his tool of choice (but nearly any editor
should do) to search for fuzzy or new strings and update it all.