Re: [PATCH 1/8] worktree: factor out repeated string literal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jun 8, 2020 at 3:38 PM Shourya Shukla
<shouryashukla.oo@xxxxxxxxx> wrote:
> On 08/06 02:23, Eric Sunshine wrote:
> > Although this change seems to increase the "sentence lego quotient", it
> > should be reasonably safe, as the reason for removal is a distinct
> > clause, not strictly related to the prefix. Moreover, the "worktrees" in
> > "Removing worktrees/%s:" is a path literal which ought not be localized,
> > so by factoring it out, we can more easily avoid exposing that path
> > fragment to translators.
>
> Could you explain the above paragraph just a bit more? The English is
> confusing me a bit.

Which part is confusing you? The "sentence lego" bit or the bit about
not wanting translators touching a path literal? Or something else?

The path element bit is easy: A literal path, such as
".git/worktrees/foo" should not be translated to a user's local
language.

Sentence lego refers to the process of composing text from several
pieces. Doing so can make it difficult for a translator to localize it
to a particular language because the standalone pieces don't
necessarily provide sufficient context for a proper translation. For
instance, this example is from [1]:

    Translatable strings should be entire sentences. It is often not
    possible to translate single verbs or adjectives in a
    substitutable way.

    printf ("File %s is %s protected", filename, rw ? "write" : "read");

    Most translators will not look at the source and will thus only see
    the string "File %s is %s protected", which is
    unintelligible. Change this to

    printf (rw ? "File %s is write protected" :
             "File %s is read protected", filename);

    This way the translator will not only understand the message, she
    will also be able to find the appropriate grammatical
    construction. A French translator for example translates "write
    protected" like "protected against writing".

[1]: https://www.gnu.org/software/gettext/manual/html_node/Preparing-Strings.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux