[Libvir] many more translatable strings need to be marked

Richard W.M. Jones rjones at redhat.com
Fri Feb 29 15:16:43 UTC 2008


On Fri, Feb 29, 2008 at 10:02:35AM -0500, Daniel Veillard wrote:
>   While I undertand the point maybe it's pushed a bit too much, or not enough
> 
> >      if (args->maxnames > REMOTE_DOMAIN_NAME_LIST_MAX) {
> >          remoteDispatchError (client, req,
> > -                             "maxnames > REMOTE_DOMAIN_NAME_LIST_MAX");
> > +                             "%s", _("maxnames > REMOTE_DOMAIN_NAME_LIST_MAX"));
> 
>    The net effect of soem of those is that strings which are basically
> untranslatable will be pushed to the small army of benevolent translators
> worldwide, and I'm afraid they are gonna be quite annoyed when facing such
> strings. There is a small limit to automatically forcing eveything into
> the transaltion system, which is we should avoid pushing there unstranslatable
> strings, either by human examination (which basically breaks the attempt of
> automatic checking) or by rewriting all strings to be proper english and
> not untranalsatable pseudocode. The point too is that this untranslatable
> pseudocode is probably the right thing to to use, making it an english sentence
> won't improve user experience much nor make it easier to fix the problem
> if it appears.

So I'm responsible for the above string :-)

Some of these, eg. "ret.names.names_len > maxnames" are basically
internal errors.  You would only get those errors if the remote server
was trying to play funny games with you.  The error is really "server
is broken or is trying to compromise your client", but we need the
extra detail in order to debug the issue.

Others, such as the one you highlight above
("maxnames > REMOTE_DOMAIN_NAME_LIST_MAX") are not really something
that a non-programmer could do much about.  In this case it indicates
that a hard limit inside the remote protocol would need to be
increased in order for the request to succeed -- ie. you'd have to
edit remote_protocol.x and rebuild both the client and server and then
your client wouldn't be interoperable with a standard server.  Can
this be meaningfully translated into something an end user can do
anything about?  And if they're not an end user but a programmer,
they'd need to speak English to understand the libvirt source.

>   Isn't that going a bit too far ?
> 
> > -        remoteDispatchError (client, req, "network not found");
> > +        remoteDispatchError (client, req, "%s", _("network not found"));
> 
>   Though this kind of errors make sense to translate. What doesn't make sense
> is that the same string (and actually the same code) is repeated dozens of
> time, better replace them with a single remoteDispatchNetworkError(client, req)
> and generate a single translatable string.

I thought xgettext (or whatever it is which generates the .pot file)
would combine equal strings?

Rich.

-- 
Richard Jones, Emerging Technologies, Red Hat  http://et.redhat.com/~rjones
virt-top is 'top' for virtual machines.  Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://et.redhat.com/~rjones/virt-top




More information about the libvir-list mailing list