bug-coreutils@gnu.org mirror (unofficial)
 help / color / mirror / Atom feed
From: "Frédéric Marchal" <fmarchal@perso.be>
To: 69985@debbugs.gnu.org
Subject: bug#69985: Untranslatable message in src/chown-core.h:95
Date: Sun, 24 Mar 2024 17:57:47 +0100	[thread overview]
Message-ID: <1882492.tdWV9SEqCh@marchal> (raw)

Hi,

In src/chown-core.h:95 (coreutils-9.5-pre1), the following message is 
impossible to translate as it is created by concatenating string fragments:

static inline void
emit_from_option_description (bool user)
{
  printf (_("\
      --from=CURRENT_OWNER:CURRENT_GROUP\n\
                         change the %sgroup of each file only if\n\
                         its current owner and/or group match those 
specified\n\
                         here.  Either may be omitted, in which case a 
match\n\
                         is not required for the omitted attribute\n\
"), user ? "owner and/or " : "");
}

A translatable message must *never ever* be produced by concatenating 
substrings. Even if the substrings are themselves translated, there is no 
guaranties that the order of the words is the same in every language.

There is, unfortunately, no easy solution that save keystrokes. It must be 
written like this:

if (user)
  printf (_("\
      --from=CURRENT_OWNER:CURRENT_GROUP\n\
                         change the owner and/or group of each file only if\n\
                         its current owner and/or group match those 
specified\n\
                         here.  Either may be omitted, in which case a 
match\n\
                         is not required for the omitted attribute\n\
"));
else
  printf (_("\
      --from=CURRENT_OWNER:CURRENT_GROUP\n\
                         change the group of each file only if\n\
                         its current owner and/or group match those 
specified\n\
                         here.  Either may be omitted, in which case a 
match\n\
                         is not required for the omitted attribute\n\
"));

That make sense as both are distinct messages with different purposes.

I also suspect that the two messages should be even more different than they 
currently are. The message, when user is false, suspiciously contains one more 
"owner and/or" that is not removed and it says "Either may be omitted" when 
only the group is mentioned at the beginning of the message.

Frederic








             reply	other threads:[~2024-03-24 18:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-24 16:57 Frédéric Marchal [this message]
2024-03-24 20:19 ` bug#69985: Untranslatable message in src/chown-core.h:95 Pádraig Brady

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.gnu.org/mailman/listinfo/bug-coreutils

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1882492.tdWV9SEqCh@marchal \
    --to=fmarchal@perso.be \
    --cc=69985@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).