diff options
author | Michele Ballabio <barra_cuda@katamail.com> | 2008-08-03 13:12:14 +0200 |
---|---|---|
committer | Shawn O. Pearce <spearce@spearce.org> | 2008-08-03 13:53:42 -0700 |
commit | fbbdaa5f425417e7fee83f543b1d03806f034cab (patch) | |
tree | 14ad66350544845c17adbdbf54d6c57b2dd5ffc0 | |
parent | 7cce5b2cbc12a73eca3f62a885e9dbad17b250a5 (diff) | |
download | git-fbbdaa5f425417e7fee83f543b1d03806f034cab.tar.gz git-fbbdaa5f425417e7fee83f543b1d03806f034cab.tar.xz |
git-gui: add a part about format strings in po/README
This should help tranlators that need to reorder words and strings.
Original explanation by Christian Stimming.
Also remove unneeded backslashes.
Signed-off-by: Michele Ballabio <barra_cuda@katamail.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
-rw-r--r-- | po/README | 17 |
1 files changed, 11 insertions, 6 deletions
@@ -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 |