git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 05/21] i18n: sequencer: mark entire sentences for translation

From
Eric Sunshine <sunshine@sunshineco.com>
Date
May 23, 2016, 01:00 UTC
Message-ID
<CAPig+cSoq=+jsKPrqOG5khgK64VvyuJ1_EeumFBFYiaLnL27UA@mail.gmail.com>
In-Reply-To
<xmqqk2ilbo2o.fsf@gitster.mtv.corp.google.com>
On Sun, May 22, 2016 at 8:44 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 33 quoted lines
> Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:
>> For what it's worth I agree with you and disagree with Eric here and
>> Junio in the "[PATCH 03/21] i18n: advice: internationalize message for
>> conflicts" thread.
>>
>> Of course there's a trade-off in source code verbosity when you have
>> to change every occurance of (pseudocode):
>>
>>     "our %s failed" # %s can be revert or merge
>>
>> to:
>>
>>     if (action == "merge")
>>         gettext("our merge failed")
>>     elsif (action == "revert")
>>         gettext("our revert failed")
>>
>> But forcing the translator to turn every such occurrence that flows
>> naturally in English into "the '%s' command failed" leads to a worse
>> translation.
>>
>> For example, if I ever get around to doing the Icelandic translation
>> which I've had on my backlog I might translate something like this:
>> ...
>> I.e. even though you might be running "git merge" or "git revert" the
>> UI is talking about those terms in the translated using native terms
>> for the action of merging or reverting, but referring to the literal
>> command names in English.
>> ...
>> It just doesn't flow as well, and leads to a more verbose translation.
>
> OK.  I couldn't judge your example in Icelandic, but I have enough
> trust in you to believe your conclusion ;-).

I have no problem viewing the issue from either side (the sentence referencing a *literal* command or the *action* of the command), and understood that it could go either way when I wrote the review. What threw me was that 3/21 seemed to be using the literal command in the strings rather than the action, despite the commit message. For instance:

    error(_("commit is not possible because ..."));
    error(_("merge is not possible because ..."));
    error(_("pull is not possible because ..."));
    error(_("revert is not possible because ..."));

In each case, the first word looks like a git command; it's not particularly grammatically correct. Had Vasco instead changed them to:

    committing is not possible...
    merging is not possible...
    pulling is not possible...
    reverting is not posible...
then the issue likely would never have come up.
Previous: Junio C HamanoNext: Vasco Almeida
Message 14 of 42 in “i18n and tests updates”
  1. 00/21 i18n and tests updatesVasco Almeida, May 18, 2016
  2. 01/21 i18n: builtin/remote.c: fix mark for translationVasco Almeida, May 18, 2016
  3. 02/21 i18n: advice: mark string about detached head for translationVasco Almeida, May 18, 2016
  4. 03/21 i18n: advice: internationalize message for conflictsVasco Almeida, May 18, 2016
  5. Eric SunshineMay 18, 2016
  6. Vasco AlmeidaMay 18, 2016
  7. Junio C HamanoMay 18, 2016
  8. 04/21 i18n: transport: mark strings for translationVasco Almeida, May 18, 2016
  9. 05/21 i18n: sequencer: mark entire sentences for translationVasco Almeida, May 18, 2016
  10. Eric SunshineMay 18, 2016
  11. Vasco AlmeidaMay 18, 2016
  12. Ævar Arnfjörð BjarmasonMay 21, 2016
  13. Junio C HamanoMay 23, 2016
  14. Eric SunshineMay 23, 2016
  15. 06/21 i18n: sequencer: mark string for translationVasco Almeida, May 18, 2016
  16. 07/21 i18n: merge-octopus: mark messages for translationVasco Almeida, May 18, 2016
  17. 08/21 merge-octupus: use die shell function from git-sh-setup.shVasco Almeida, May 18, 2016
  18. 09/21 i18n: rebase: fix marked string to use eval_gettext variantVasco Almeida, May 18, 2016
  19. 10/21 i18n: rebase: mark placeholder for translationVasco Almeida, May 18, 2016
  20. 11/21 i18n: bisect: simplify error message for i18nVasco Almeida, May 18, 2016
  21. 12/21 t6030: update to use test_i18ncmpVasco Almeida, May 18, 2016
  22. 13/21 i18n: git-sh-setup.sh: mark strings for translationVasco Almeida, May 18, 2016
  23. 14/21 i18n: rebase-interactive: mark strings for translationVasco Almeida, May 18, 2016
  24. Eric SunshineMay 19, 2016
  25. Ævar Arnfjörð BjarmasonMay 21, 2016
  26. Vasco AlmeidaMay 21, 2016
  27. 15/21 i18n: rebase-interactive: mark here-doc strings for translationVasco Almeida, May 18, 2016
  28. 16/21 i18n: rebase-interactive: mark comments of squash for translationVasco Almeida, May 18, 2016
  29. 17/21 tests: use test_i18n* functions to suppress false positivesVasco Almeida, May 18, 2016
  30. 18/21 tests: unpack-trees: update to use test_i18n* functionsVasco Almeida, May 18, 2016
  31. 19/21 t9003: become resilient to GETTEXT_POISONVasco Almeida, May 18, 2016
  32. Eric SunshineMay 19, 2016
  33. Vasco AlmeidaMay 19, 2016
  34. Eric SunshineMay 20, 2016
  35. Junio C HamanoMay 20, 2016
  36. Eric SunshineMay 20, 2016
  37. Vasco AlmeidaMay 20, 2016
  38. Junio C HamanoMay 20, 2016
  39. Junio C HamanoMay 20, 2016
  40. Vasco AlmeidaMay 20, 2016
  41. 20/21 t4153: fix negated test_i18ngrep callVasco Almeida, May 18, 2016
  42. 21/21 t5523: use test_i18ngrep for negationVasco Almeida, May 18, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.