[Pulp-list] Translatable strings
Jay Dobies
jason.dobies at redhat.com
Thu Aug 2 20:40:07 UTC 2012
On 08/02/2012 04:34 PM, Bryan Kearney wrote:
> On 08/02/2012 04:32 PM, James Slagle wrote:
>> Just a reminder, when you mark a string for translation, you have to
>> pass the
>> string itself to _(), not a variable whose value is the string.
>>
>> This does not work:
>>
>> msg = "some string"
>> _(msg)
>>
>> You have to do:
>>
>> msg = _("some string")
Wait, really? Crap, I do that all over the place.
>> and then use msg wherever you need to.
>>
>> If the string is long and you want to wrap it across lines, use python's
>> built-in string concatenation (don't use + to concatenate strings):
>>
>> msg = _("a really really "
>> "long string")
Had no idea this existed, good to know.
> And, do parameter substitution outside:
>
> msg = ("Some Cool %s") % "stuff"
>
> not
> = ("Some Cool %s" % "stuff")
That one I remember is still not completely correct. I forget the
reasoning, but substitutions have to be dict based:
m = _("Some string %(foo)s")
m % {'foo' : 'bar'}
--
Jay Dobies
Freenode: jdob @ #pulp
http://pulpproject.org | http://blog.pulpproject.org
More information about the Pulp-list
mailing list