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

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

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Jun 8, 2020, 21:41 UTC
Message-ID
<CAPig+cTRsyPWGb1J+28dWESKqK84RQr-yhZEmTf1=mtkmO4Y0w@mail.gmail.com>
In-Reply-To
<20200608193834.GA4196@konoha>

On Mon, Jun 8, 2020 at 3:38 PM Shourya Shukla <shouryashukla.oo@gmail.com> wrote:

Show 10 quoted lines
> 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
Previous: Shourya ShuklaNext: Eric Sunshine
Message 4 of 20 in “worktree: tighten duplicate path detection”
  1. 0/8 worktree: tighten duplicate path detectionEric Sunshine, Jun 8, 2020
  2. 1/8 worktree: factor out repeated string literalEric Sunshine, Jun 8, 2020
  3. Shourya ShuklaJun 8, 2020
  4. Eric SunshineJun 8, 2020
  5. 3/8 worktree: give "should be pruned?" function more meaningful nameEric Sunshine, Jun 8, 2020
  6. Junio C HamanoJun 8, 2020
  7. 2/8 worktree: prune corrupted worktree even if lockedEric Sunshine, Jun 8, 2020
  8. Junio C HamanoJun 8, 2020
  9. Eric SunshineJun 9, 2020
  10. 4/8 worktree: make high-level pruning re-usableEric Sunshine, Jun 8, 2020
  11. Junio C HamanoJun 8, 2020
  12. 6/8 worktree: prune linked worktree referencing main worktree pathEric Sunshine, Jun 8, 2020
  13. Junio C HamanoJun 8, 2020
  14. Eric SunshineJun 9, 2020
  15. 7/8 worktree: generalize candidate worktree path validationEric Sunshine, Jun 8, 2020
  16. Junio C HamanoJun 8, 2020
  17. 8/8 worktree: make "move" refuse to move atop missing registered worktreeEric Sunshine, Jun 8, 2020
  18. Eric SunshineJun 8, 2020
  19. Junio C HamanoJun 8, 2020
  20. 5/8 worktree: prune duplicate entries referencing same worktree pathEric Sunshine, Jun 8, 2020

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.