From: =?UTF-8?q?Motiejus=20Jak=C5=A1tys?= <desired.mta@gmail.com>
To: git@vger.kernel.org
Subject: [PATCH/RFC] inconsistent error messages for translation
Date: Wed, 27 Apr 2011 13:22:50 +0100 [thread overview]
Message-ID: <20110427122250.GA10919@jakstys.lt> (raw)
There are lots of variants of the same message:
msgid "cannot stat '%s'"
msgid "failed to stat '%s'"
msgid "failed to stat %s\n"
msgid "Could not stat '%s'"
This patch makes them all "Could not stat %s" and "Could not stat '%s'\n".
That makes .po file shorter.
Also same trivial fix:
- return error(_("path '%s' does not have all three versions"),
+ return error(_("path '%s' does not have all 3 versions"),
Signed-off-by: Motiejus Jakštys <desired.mta@gmail.com>
---
DRY:
#: builtin/fetch.c:282
sprintf(display, "%c %-*s %-*s -> %s%s", r ? '!' : '-',
TRANSPORT_SUMMARY_WIDTH, _("[tag update]"), REFCOL_WIDTH, remote,
pretty_ref, r ? _(" (unable to update local ref)") : "");
#: builtin/fetch.c:338
sprintf(display, "%c %-*s %-*s -> %s (%s)", r ? '!' : '+',
TRANSPORT_SUMMARY_WIDTH, quickref, REFCOL_WIDTH, remote,
pretty_ref,
r ? _("unable to update local ref") : _("forced update"));
It produces
#: builtin/fetch.c:282 builtin/fetch.c:307 builtin/fetch.c:323
msgid " (unable to update local ref)"
#: builtin/fetch.c:338
msgid "unable to update local ref"
I would like to have one string to translate instead of two.
How I would solve this:
// or similar, unsure if this will work
char *without_brackets = _("unable to update local ref");
char *with_brackets;
snprintf(with_brackets, 20, " (%s)", trans);
// -- code --
pretty_ref, r ? with_brackets : "");
It introduces 2 more variables. Is there a more elegant way?
Motiejus
builtin/checkout.c | 2 +-
builtin/grep.c | 2 +-
builtin/init-db.c | 24 ++++++++++++------------
3 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/builtin/checkout.c b/builtin/checkout.c
index eece5d6..417f03d 100644
--- a/builtin/checkout.c
+++ b/builtin/checkout.c
@@ -118,7 +118,7 @@ static int check_all_stages(struct cache_entry *ce, int pos)
ce_stage(active_cache[pos+1]) != 2 ||
strcmp(active_cache[pos+2]->name, ce->name) ||
ce_stage(active_cache[pos+2]) != 3)
- return error(_("path '%s' does not have all three versions"),
+ return error(_("path '%s' does not have all 3 versions"),
ce->name);
return 0;
}
diff --git a/builtin/grep.c b/builtin/grep.c
index 10a1f65..24d19b8 100644
--- a/builtin/grep.c
+++ b/builtin/grep.c
@@ -413,7 +413,7 @@ static void *load_file(const char *filename, size_t *sz)
if (lstat(filename, &st) < 0) {
err_ret:
if (errno != ENOENT)
- error(_("'%s': %s"), filename, strerror(errno));
+ error("'%s': %s", filename, strerror(errno));
return NULL;
}
if (!S_ISREG(st.st_mode))
diff --git a/builtin/init-db.c b/builtin/init-db.c
index b7370d9..f1bee61 100644
--- a/builtin/init-db.c
+++ b/builtin/init-db.c
@@ -64,20 +64,20 @@ static void copy_templates_1(char *path, int baselen,
memcpy(template + template_baselen, de->d_name, namelen+1);
if (lstat(path, &st_git)) {
if (errno != ENOENT)
- die_errno(_("cannot stat '%s'"), path);
+ die_errno(_("Could not stat '%s'"), path);
}
else
exists = 1;
if (lstat(template, &st_template))
- die_errno(_("cannot stat template '%s'"), template);
+ die_errno(_("Could not stat template '%s'"), template);
if (S_ISDIR(st_template.st_mode)) {
DIR *subdir = opendir(template);
int baselen_sub = baselen + namelen;
int template_baselen_sub = template_baselen + namelen;
if (!subdir)
- die_errno(_("cannot opendir '%s'"), template);
+ die_errno(_("Could not opendir '%s'"), template);
path[baselen_sub++] =
template[template_baselen_sub++] = '/';
path[baselen_sub] =
@@ -94,16 +94,16 @@ static void copy_templates_1(char *path, int baselen,
int len;
len = readlink(template, lnk, sizeof(lnk));
if (len < 0)
- die_errno(_("cannot readlink '%s'"), template);
+ die_errno(_("Could not readlink '%s'"), template);
if (sizeof(lnk) <= len)
die(_("insanely long symlink %s"), template);
lnk[len] = 0;
if (symlink(lnk, path))
- die_errno(_("cannot symlink '%s' '%s'"), lnk, path);
+ die_errno(_("Could not symlink '%s' '%s'"), lnk, path);
}
else if (S_ISREG(st_template.st_mode)) {
if (copy_file(path, template, st_template.st_mode))
- die_errno(_("cannot copy '%s' to '%s'"), template,
+ die_errno(_("Could not copy '%s' to '%s'"), template,
path);
}
else
@@ -437,7 +437,7 @@ static int guess_repository_type(const char *git_dir)
if (!strcmp(".", git_dir))
return 1;
if (!getcwd(cwd, sizeof(cwd)))
- die_errno(_("cannot tell cwd"));
+ die_errno(_("Could not tell cwd"));
if (!strcmp(git_dir, cwd))
return 1;
/*
@@ -518,18 +518,18 @@ int cmd_init_db(int argc, const char **argv, const char *prefix)
errno = EEXIST;
/* fallthru */
case -1:
- die_errno(_("cannot mkdir %s"), argv[0]);
+ die_errno(_("Could not mkdir %s"), argv[0]);
break;
default:
break;
}
shared_repository = saved;
if (mkdir(argv[0], 0777) < 0)
- die_errno(_("cannot mkdir %s"), argv[0]);
+ die_errno(_("Could not mkdir %s"), argv[0]);
mkdir_tried = 1;
goto retry;
}
- die_errno(_("cannot chdir to %s"), argv[0]);
+ die_errno(_("Could not chdir to %s"), argv[0]);
}
} else if (0 < argc) {
usage(init_db_usage[0]);
@@ -575,14 +575,14 @@ int cmd_init_db(int argc, const char **argv, const char *prefix)
if (!git_work_tree_cfg) {
git_work_tree_cfg = xcalloc(PATH_MAX, 1);
if (!getcwd(git_work_tree_cfg, PATH_MAX))
- die_errno (_("Cannot access current working directory"));
+ die_errno (_("Could not access current working directory"));
}
if (work_tree)
set_git_work_tree(real_path(work_tree));
else
set_git_work_tree(git_work_tree_cfg);
if (access(get_git_work_tree(), X_OK))
- die_errno (_("Cannot access work tree '%s'"),
+ die_errno (_("Could not access work tree '%s'"),
get_git_work_tree());
}
else {
--
1.7.2.5
next reply other threads:[~2011-04-27 12:23 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-27 12:22 =?UTF-8?q?Motiejus=20Jak=C5=A1tys?= [this message]
2011-04-27 17:17 ` [PATCH/RFC] inconsistent error messages for translation Junio C Hamano
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110427122250.GA10919@jakstys.lt \
--to=desired.mta@gmail.com \
--cc=git@vger.kernel.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 NNTP newsgroup(s).