[libvirt] [PATCH v2] virsh-edit: Make force editing usable
Martin Kletzander
mkletzan at redhat.com
Fri Feb 20 06:37:38 UTC 2015
On Thu, Feb 19, 2015 at 01:16:07PM -0700, Eric Blake wrote:
>On 02/19/2015 12:26 PM, John Ferlan wrote:
>>
>>
>> On 02/19/2015 11:24 AM, Martin Kletzander wrote:
>>> When editing a domain with 'virsh edit' and failing validation, the
>>> usual message pops up:
>>>
>>> Failed. Try again? [y,n,f,?]:
>>>
>>> Turning of validation can be ussable, mainly for testing (but other
>>
>> s/of/off
>> s/ussable/useful
>>
>>> purposes too), so this patch adds support for relaxing definition in
>>> virsh-edit and makes 'virsh edit <domain>' more usable.
>>>
>>> Signed-off-by: Martin Kletzander <mkletzan at redhat.com>
>>> ---
>>> v2:
>>> - make a special case 'v' for turning off validation
>>
>> Another choice 'i' "ignore validation" - only because when I see -v I
>> think "verbose" or "version" (just like -h is help)
>
>I like the idea of 'i' instead of 'v' as well.
>
>
>>> while (true) {
>>> /* TRANSLATORS: For now, we aren't using LC_MESSAGES, and the user
>>> - * choices really are limited to just 'y', 'n', 'f' and '?' */
>>> - vshPrint(ctl, "\r%s %s", msg, _("Try again? [y,n,f,?]:"));
>>> + * choices really are limited to just 'y', 'n', 'v', 'f' and '?' */
>>> + vshPrint(ctl, _("\r%s Try again? %s: "), msg,
>>> + relax_avail ? "[y,n,v,f,?]" : "[y,n,f,?]");
>
>That doesn't translate very well. You must NOT put \r in the string
>marked for translation ('make dist' will spit out LOTS of these warnings):
>
>libvirt.pot:30827: warning: internationalized messages should not
>contain the '\r' escape sequence
>
>Also, ?: can confuse xgettext, which in turn makes the .pot file harder
>for translators to see. Pre-patch, the .pot file has:
>
>#. TRANSLATORS: For now, we aren't using LC_MESSAGES, and the user
>#. * choices really are limited to just 'y', 'n', 'f' and '?'
>#: tools/virsh.c:536
>msgid "Try again? [y,n,f,?]:"
>msgstr ""
>
>post-patch, the .pot file would have:
>
>#. TRANSLATORS: For now, we aren't using LC_MESSAGES, and the user
>#. * choices really are limited to just 'y', 'n', 'v', 'f' and '?'
>#: tools/virsh.c:536
>#, c-format
>msgid "\r%s Try again? %s: "
>msgstr ""
>
>but NO mention of a [y,n,...] string, which makes the comment weird.
>But since the whole point of the comment was that we AREN'T allowing
>translated option letters (for example, a Spanish user must still type
>'y', rather than 's' for "si"), there's no need to translate the
>options, and therefore no need for the comment. So you should drop the
>comment, and just use:
>
> vshPrint(ctl, "\r%s %s %s: ", msg, _("Try again?"),
> relax_avail ? "[y,n,v,f,?]" : "[y,n,f,?]");
>
>(with 'i' instead of 'v' if we go that route)
>
I had no idea that comments before marked translations go to the .pot
file, that's great. What I wanted to achieve is pretty much what you
wrote and for the same reason -- not allowing translators to change
the characters. "\r%s %s %s: " is definitely way better, I should've
thought about making translator lives easier ;)
And according to others, 'i' is more likeable, or at least it looks
like it. v3 coming up.
>--
>Eric Blake eblake redhat com +1-919-301-3266
>Libvirt virtualization library http://libvirt.org
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20150220/93bf4294/attachment-0001.sig>
More information about the libvir-list
mailing list