[PATCH v2 1/7] i18n: index-pack: use plural string instead of normal one

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

[PATCH v2 1/7] i18n: index-pack: use plural string instead of normal one

Vasco Almeida
Git could output "completed with 1 local objects", but in this case
using "object" instead of "objects" is the correct form.
Use Q_() instead of _().

Signed-off-by: Vasco Almeida <[hidden email]>
---
 builtin/index-pack.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/builtin/index-pack.c b/builtin/index-pack.c
index 2d1eb8b..e8c71fc 100644
--- a/builtin/index-pack.c
+++ b/builtin/index-pack.c
@@ -1250,7 +1250,9 @@ static void conclude_pack(int fix_thin_pack, const char *curr_pack, unsigned cha
        nr_unresolved * sizeof(*objects));
  f = sha1fd(output_fd, curr_pack);
  fix_unresolved_deltas(f);
- strbuf_addf(&msg, _("completed with %d local objects"),
+ strbuf_addf(&msg, Q_("completed with %d local object",
+     "completed with %d local objects",
+     nr_objects - nr_objects_initial),
     nr_objects - nr_objects_initial);
  stop_progress_msg(&progress, msg.buf);
  strbuf_release(&msg);
--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

[PATCH v2 2/7] i18n: unpack-trees: mark strings for translation

Vasco Almeida
Mark strings seen by the user inside setup_unpack_trees_porcelain() and
display_error_msgs() functions for translation.

Signed-off-by: Vasco Almeida <[hidden email]>
---
 unpack-trees.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/unpack-trees.c b/unpack-trees.c
index 9f55cc2..4bc6b4f 100644
--- a/unpack-trees.c
+++ b/unpack-trees.c
@@ -61,21 +61,21 @@ void setup_unpack_trees_porcelain(struct unpack_trees_options *opts,
  const char *cmd2 = strcmp(cmd, "checkout") ? cmd : "switch branches";
 
  if (advice_commit_before_merge)
- msg = "Your local changes to the following files would be overwritten by %s:\n%%s"
- "Please, commit your changes or stash them before you can %s.";
+ msg = _("Your local changes to the following files would be overwritten by %s:\n%%s"
+ "Please, commit your changes or stash them before you can %s.");
  else
- msg = "Your local changes to the following files would be overwritten by %s:\n%%s";
+ msg = _("Your local changes to the following files would be overwritten by %s:\n%%s");
  msgs[ERROR_WOULD_OVERWRITE] = msgs[ERROR_NOT_UPTODATE_FILE] =
  xstrfmt(msg, cmd, cmd2);
 
  msgs[ERROR_NOT_UPTODATE_DIR] =
- "Updating the following directories would lose untracked files in it:\n%s";
+ _("Updating the following directories would lose untracked files in it:\n%s");
 
  if (advice_commit_before_merge)
- msg = "The following untracked working tree files would be %s by %s:\n%%s"
- "Please move or remove them before you can %s.";
+ msg = _("The following untracked working tree files would be %s by %s:\n%%s"
+ "Please move or remove them before you can %s.");
  else
- msg = "The following untracked working tree files would be %s by %s:\n%%s";
+ msg = _("The following untracked working tree files would be %s by %s:\n%%s");
 
  msgs[ERROR_WOULD_LOSE_UNTRACKED_REMOVED] = xstrfmt(msg, "removed", cmd, cmd2);
  msgs[ERROR_WOULD_LOSE_UNTRACKED_OVERWRITTEN] = xstrfmt(msg, "overwritten", cmd, cmd2);
@@ -84,14 +84,14 @@ void setup_unpack_trees_porcelain(struct unpack_trees_options *opts,
  * Special case: ERROR_BIND_OVERLAP refers to a pair of paths, we
  * cannot easily display it as a list.
  */
- msgs[ERROR_BIND_OVERLAP] = "Entry '%s' overlaps with '%s'.  Cannot bind.";
+ msgs[ERROR_BIND_OVERLAP] = _("Entry '%s' overlaps with '%s'.  Cannot bind.");
 
  msgs[ERROR_SPARSE_NOT_UPTODATE_FILE] =
- "Cannot update sparse checkout: the following entries are not up-to-date:\n%s";
+ _("Cannot update sparse checkout: the following entries are not up-to-date:\n%s");
  msgs[ERROR_WOULD_LOSE_ORPHANED_OVERWRITTEN] =
- "The following Working tree files would be overwritten by sparse checkout update:\n%s";
+ _("The following Working tree files would be overwritten by sparse checkout update:\n%s");
  msgs[ERROR_WOULD_LOSE_ORPHANED_REMOVED] =
- "The following Working tree files would be removed by sparse checkout update:\n%s";
+ _("The following Working tree files would be removed by sparse checkout update:\n%s");
 
  opts->show_all_errors = 1;
  /* rejected paths may not have a static buffer */
@@ -168,7 +168,7 @@ static void display_error_msgs(struct unpack_trees_options *o)
  string_list_clear(rejects, 0);
  }
  if (something_displayed)
- fprintf(stderr, "Aborting\n");
+ fprintf(stderr, _("Aborting\n"));
 }
 
 /*
--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

[PATCH v2 3/7] i18n: git-parse-remote.sh: mark strings for translation

Vasco Almeida
In reply to this post by Vasco Almeida
Change Makefile to include git-parse-remote.sh in LOCALIZED_SH.

TODO: remove 3rd argument of error_on_missing_default_upstream function
that is no longer required.

Signed-off-by: Vasco Almeida <[hidden email]>
---
 Makefile            |  2 +-
 git-parse-remote.sh | 50 +++++++++++++++++++++++++++++++++-----------------
 2 files changed, 34 insertions(+), 18 deletions(-)

diff --git a/Makefile b/Makefile
index 2742a69..2249bab 100644
--- a/Makefile
+++ b/Makefile
@@ -2069,7 +2069,7 @@ XGETTEXT_FLAGS_SH = $(XGETTEXT_FLAGS) --language=Shell \
  --keyword=gettextln --keyword=eval_gettextln
 XGETTEXT_FLAGS_PERL = $(XGETTEXT_FLAGS) --keyword=__ --language=Perl
 LOCALIZED_C = $(C_OBJ:o=c) $(LIB_H) $(GENERATED_H)
-LOCALIZED_SH = $(SCRIPT_SH)
+LOCALIZED_SH = $(SCRIPT_SH) git-parse-remote.sh
 LOCALIZED_PERL = $(SCRIPT_PERL)
 
 ifdef XGETTEXT_INCLUDE_TESTS
diff --git a/git-parse-remote.sh b/git-parse-remote.sh
index 55fe8d5..c5e5840 100644
--- a/git-parse-remote.sh
+++ b/git-parse-remote.sh
@@ -6,6 +6,9 @@
 # this would fail in that case and would issue an error message.
 GIT_DIR=$(git rev-parse -q --git-dir) || :;
 
+. git-sh-setup
+. git-sh-i18n
+
 get_default_remote () {
  curr_branch=$(git symbolic-ref -q HEAD)
  curr_branch="${curr_branch#refs/heads/}"
@@ -56,11 +59,13 @@ get_remote_merge_branch () {
 error_on_missing_default_upstream () {
  cmd="$1"
  op_type="$2"
- op_prep="$3"
+ op_prep="$3" # FIXME: op_prep is no longer used
  example="$4"
  branch_name=$(git symbolic-ref -q HEAD)
+ display_branch_name="${branch_name#refs/heads/}"
  # If there's only one remote, use that in the suggestion
- remote="<remote>"
+ remote="$(gettext "<remote>")"
+ branch="$(gettext "branch")"
  if test $(git remote | wc -l) = 1
  then
  remote=$(git remote)
@@ -68,22 +73,33 @@ error_on_missing_default_upstream () {
 
  if test -z "$branch_name"
  then
- echo "You are not currently on a branch. Please specify which
-branch you want to $op_type $op_prep. See git-${cmd}(1) for details.
-
-    $example
-"
+ gettextln "You are not currently on a branch."
+ if test "$op_type" = rebase
+ then
+ gettextln "Please specify which branch you want to rebase against."
+ else
+ gettextln "Please specify which branch you want to merge with."
+ fi
+ eval_gettextln "See git-\${cmd}(1) for details."
+ echo
+ echo "    $example"
+ echo
  else
- echo "There is no tracking information for the current branch.
-Please specify which branch you want to $op_type $op_prep.
-See git-${cmd}(1) for details
-
-    $example
-
-If you wish to set tracking information for this branch you can do so with:
-
-    git branch --set-upstream-to=$remote/<branch> ${branch_name#refs/heads/}
-"
+ gettextln "There is no tracking information for the current branch."
+ if test "$op_type" = rebase
+ then
+ gettextln "Please specify which branch you want to rebase against."
+ else
+ gettextln "Please specify which branch you want to merge with."
+ fi
+ eval_gettextln "See git-\${cmd}(1) for details."
+ echo
+ echo "    $example"
+ echo
+ gettextln "If you wish to set tracking information for this branch you can do so with:"
+ echo
+ echo "    git branch --set-upstream-to=$remote/<$branch> $display_branch_name"
+ echo
  fi
  exit 1
 }
--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

[PATCH v2 4/7] i18n: builtin/pull.c: mark strings for translation

Vasco Almeida
In reply to this post by Vasco Almeida
Some translations might also translate "<remote>" and "<branch>".

Signed-off-by: Vasco Almeida <[hidden email]>
---
 builtin/pull.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/builtin/pull.c b/builtin/pull.c
index 10eff03..9e8883c 100644
--- a/builtin/pull.c
+++ b/builtin/pull.c
@@ -458,13 +458,13 @@ static void NORETURN die_no_merge_candidates(const char *repo, const char **refs
  fprintf_ln(stderr, _("Please specify which branch you want to merge with."));
  fprintf_ln(stderr, _("See git-pull(1) for details."));
  fprintf(stderr, "\n");
- fprintf_ln(stderr, "    git pull <remote> <branch>");
+ fprintf_ln(stderr, "    git pull <%s> <%s>", _("remote"), _("branch"));
  fprintf(stderr, "\n");
  } else if (!curr_branch->merge_nr) {
  const char *remote_name = NULL;
 
  if (for_each_remote(get_only_remote, &remote_name) || !remote_name)
- remote_name = "<remote>";
+ remote_name = _("<remote>");
 
  fprintf_ln(stderr, _("There is no tracking information for the current branch."));
  if (opt_rebase)
@@ -473,7 +473,7 @@ static void NORETURN die_no_merge_candidates(const char *repo, const char **refs
  fprintf_ln(stderr, _("Please specify which branch you want to merge with."));
  fprintf_ln(stderr, _("See git-pull(1) for details."));
  fprintf(stderr, "\n");
- fprintf_ln(stderr, "    git pull <remote> <branch>");
+ fprintf_ln(stderr, "    git pull <%s> <%s>", _("remote"), _("branch"));
  fprintf(stderr, "\n");
  fprintf_ln(stderr, _("If you wish to set tracking information for this branch you can do so with:\n"
  "\n"
--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

[PATCH v2 5/7] i18n: builtin/pull.c: split strings marked for translation

Vasco Almeida
In reply to this post by Vasco Almeida
Split string "If you wish to set tracking information
for this branch you can do so with:\n" to match occurring string in
git-parse-remote.sh. In this case, the translator handles it only once.

On the other hand, the translations of the string that were already made
are mark as fuzzy and the translator needs to correct it herself.

Signed-off-by: Vasco Almeida <[hidden email]>
---
 builtin/pull.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/builtin/pull.c b/builtin/pull.c
index 9e8883c..617893c 100644
--- a/builtin/pull.c
+++ b/builtin/pull.c
@@ -475,10 +475,10 @@ static void NORETURN die_no_merge_candidates(const char *repo, const char **refs
  fprintf(stderr, "\n");
  fprintf_ln(stderr, "    git pull <%s> <%s>", _("remote"), _("branch"));
  fprintf(stderr, "\n");
- fprintf_ln(stderr, _("If you wish to set tracking information for this branch you can do so with:\n"
- "\n"
- "    git branch --set-upstream-to=%s/<branch> %s\n"),
- remote_name, curr_branch->name);
+ fprintf_ln(stderr, _("If you wish to set tracking information for this branch you can do so with:"));
+ fprintf(stderr, "\n");
+ fprintf_ln(stderr, "    git branch --set-upstream-to=%s/<%s> %s\n",
+ remote_name, _("branch"), curr_branch->name);
  } else
  fprintf_ln(stderr, _("Your configuration specifies to merge with the ref '%s'\n"
  "from the remote, but no such ref was fetched."),
--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

[PATCH v2 6/7] i18n: builtin/rm.c: remove a comma ',' from string

Vasco Almeida
In reply to this post by Vasco Almeida
Remove a comma from string marked for translation. Make the string match the
one in builtin/mv.c. Now translators have do handle this string only once.

Signed-off-by: Vasco Almeida <[hidden email]>
---
 builtin/rm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/builtin/rm.c b/builtin/rm.c
index 8829b09..be83c43 100644
--- a/builtin/rm.c
+++ b/builtin/rm.c
@@ -314,7 +314,7 @@ int cmd_rm(int argc, const char **argv, const char *prefix)
  list.entry[list.nr].is_submodule = S_ISGITLINK(ce->ce_mode);
  if (list.entry[list.nr++].is_submodule &&
     !is_staging_gitmodules_ok())
- die (_("Please, stage your changes to .gitmodules or stash them to proceed"));
+ die (_("Please stage your changes to .gitmodules or stash them to proceed"));
  }
 
  if (pathspec.nr) {
--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

[PATCH v2 7/7] i18n: builtin/branch.c: mark option for translation

Vasco Almeida
In reply to this post by Vasco Almeida
Mark description and parameter for option "set-upstream-to" for translation.

Signed-off-by: Vasco Almeida <[hidden email]>
---
 builtin/branch.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/builtin/branch.c b/builtin/branch.c
index 7b45b6b..5ab106b 100644
--- a/builtin/branch.c
+++ b/builtin/branch.c
@@ -620,7 +620,7 @@ int cmd_branch(int argc, const char **argv, const char *prefix)
  BRANCH_TRACK_EXPLICIT),
  OPT_SET_INT( 0, "set-upstream",  &track, N_("change upstream info"),
  BRANCH_TRACK_OVERRIDE),
- OPT_STRING('u', "set-upstream-to", &new_upstream, "upstream", "change the upstream info"),
+ OPT_STRING('u', "set-upstream-to", &new_upstream, N_("upstream"), N_("change the upstream info")),
  OPT_BOOL(0, "unset-upstream", &unset_upstream, "Unset the upstream info"),
  OPT__COLOR(&branch_use_color, N_("use colored output")),
  OPT_SET_INT('r', "remotes",     &filter.kind, N_("act on remote-tracking branches"),
--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH v2 4/7] i18n: builtin/pull.c: mark strings for translation

Junio C Hamano
In reply to this post by Vasco Almeida
Vasco Almeida <[hidden email]> writes:

> Some translations might also translate "<remote>" and "<branch>".

This offers an interesting observation that I didn't think of while
reviewing the first round of this series.

Do translations want to translate "remote" and "branch" without the
"<bra" and "ket>"?  Or is it better to allow translations to adjust
the "quote around a placeholder" in a locale dependent way?

> @@ -458,13 +458,13 @@ static void NORETURN die_no_merge_candidates(const char *repo, const char **refs
>   fprintf_ln(stderr, _("Please specify which branch you want to merge with."));
>   fprintf_ln(stderr, _("See git-pull(1) for details."));
>   fprintf(stderr, "\n");
> - fprintf_ln(stderr, "    git pull <remote> <branch>");
> + fprintf_ln(stderr, "    git pull <%s> <%s>", _("remote"), _("branch"));

I know this hunk follows I suggested, i.e. "quotes around a
placeholder is universal and locale independent".  However, ...

>   fprintf(stderr, "\n");
>   } else if (!curr_branch->merge_nr) {
>   const char *remote_name = NULL;
>  
>   if (for_each_remote(get_only_remote, &remote_name) || !remote_name)
> - remote_name = "<remote>";
> + remote_name = _("<remote>");
>  
... this does not.  It allows to translate the "quote around a
placeholder".  And where this phony "remote_name" string is used,
there is also this reference to <branch>:

    fprintf_ln(stderr, _("If you wish to set tracking information for ..."
                    "\n"
                    "    git branch --set-upstream-to=%s/<branch> %s\n"),
                    remote_name, curr_branch->name);

which also does.

Perhaps the first hunk at around ll.458 would want to do

> + fprintf_ln(stderr, "    git pull %s %s", _("<remote>"), _("<branch>"));

to be consistent and more flexible for the translator's needs?  The
quoting convention may be locale dependent after all.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH v2 4/7] i18n: builtin/pull.c: mark strings for translation

Vasco Almeida
Às 18:01 de 10-04-2016, Junio C Hamano escreveu:

> Vasco Almeida <[hidden email]> writes:
>
>> Some translations might also translate "<remote>" and "<branch>".
>
> This offers an interesting observation that I didn't think of while
> reviewing the first round of this series.
>
> Do translations want to translate "remote" and "branch" without the
> "<bra" and "ket>"?  Or is it better to allow translations to adjust
> the "quote around a placeholder" in a locale dependent way?
>
I think they want to translate without brackets.
From what I can see, translator are using the same quoting.
The use of this kind of placeholders should be a new thing to languages,
and might be limited to some backgrounds or situations. So, translator
might adopt the English way, since there are no better or equivalent way
in their languages. Or I may be be assuming to much?

>> @@ -458,13 +458,13 @@ static void NORETURN die_no_merge_candidates(const char *repo, const char **refs
>>   fprintf_ln(stderr, _("Please specify which branch you want to merge with."));
>>   fprintf_ln(stderr, _("See git-pull(1) for details."));
>>   fprintf(stderr, "\n");
>> - fprintf_ln(stderr, "    git pull <remote> <branch>");
>> + fprintf_ln(stderr, "    git pull <%s> <%s>", _("remote"), _("branch"));
>
> I know this hunk follows I suggested, i.e. "quotes around a
> placeholder is universal and locale independent".  However, ...
>
>>   fprintf(stderr, "\n");
>>   } else if (!curr_branch->merge_nr) {
>>   const char *remote_name = NULL;
>>  
>>   if (for_each_remote(get_only_remote, &remote_name) || !remote_name)
>> - remote_name = "<remote>";
>> + remote_name = _("<remote>");
>>  
> ... this does not.  It allows to translate the "quote around a
> placeholder".  And where this phony "remote_name" string is used,
> there is also this reference to <branch>:
>
>     fprintf_ln(stderr, _("If you wish to set tracking information for ..."
>                     "\n"
>                     "    git branch --set-upstream-to=%s/<branch> %s\n"),
>                     remote_name, curr_branch->name);
>
> which also does.
>
> Perhaps the first hunk at around ll.458 would want to do
>
>> + fprintf_ln(stderr, "    git pull %s %s", _("<remote>"), _("<branch>"));
>
> to be consistent and more flexible for the translator's needs?  The
> quoting convention may be locale dependent after all.
>
If we think placeholders quoting is important for localization, we could
mark them for translation in usage_argh() function in parse-options.c:

s = literal ? " %s" : _(" <%s>");

and do the same for other cases of <%s> in that function. Plus, add a
comment for translator, perhaps.

Otherwise, something like the following just to be consistent:

diff --git a/builtin/pull.c b/builtin/pull.c
index 617893c..317c3ce 100644
--- a/builtin/pull.c
+++ b/builtin/pull.c
@@ -463,8 +463,7 @@ static void NORETURN die_no_merge_candidates(const char *repo, const char **refs
        } else if (!curr_branch->merge_nr) {
                const char *remote_name = NULL;
 
-               if (for_each_remote(get_only_remote, &remote_name) || !remote_name)
-                       remote_name = _("<remote>");
+               for_each_remote(get_only_remote, &remote_name);
 
                fprintf_ln(stderr, _("There is no tracking information for the current branch."));
                if (opt_rebase)
@@ -477,8 +476,11 @@ static void NORETURN die_no_merge_candidates(const char *repo, const char **refs
                fprintf(stderr, "\n");
                fprintf_ln(stderr, _("If you wish to set tracking information for this branch you can do so with:"));
                fprintf(stderr, "\n");
-               fprintf_ln(stderr, "    git branch --set-upstream-to=%s/<%s> %s\n",
-                               remote_name, _("branch"), curr_branch->name);
+               fprintf_ln(stderr, remote_name
+                                  ? "    git branch --set-upstream-to=%s/<%s> %s\n"
+                                  : "    git branch --set-upstream-to=<%s>/<%s> %s\n",
+                               remote_name ? remote_name : _("remote"),
+                               _("branch"), curr_branch->name);
        } else
                fprintf_ln(stderr, _("Your configuration specifies to merge with the ref '%s'\n"
                        "from the remote, but no such ref was fetched."),

I think there is no need to internationalize the bracket. If we did so,
they would end up just in the way without adding much value for
translators.
What do you think?
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH v2 4/7] i18n: builtin/pull.c: mark strings for translation

Duy Nguyen
On Mon, Apr 11, 2016 at 5:43 PM, Vasco Almeida <[hidden email]> wrote:

>>> @@ -458,13 +458,13 @@ static void NORETURN die_no_merge_candidates(const char *repo, const char **refs
>>>                      fprintf_ln(stderr, _("Please specify which branch you want to merge with."));
>>>              fprintf_ln(stderr, _("See git-pull(1) for details."));
>>>              fprintf(stderr, "\n");
>>> -            fprintf_ln(stderr, "    git pull <remote> <branch>");
>>> +            fprintf_ln(stderr, "    git pull <%s> <%s>", _("remote"), _("branch"));
>>
>> I know this hunk follows I suggested, i.e. "quotes around a
>> placeholder is universal and locale independent".  However, ...
>>
>>>              fprintf(stderr, "\n");
>>>      } else if (!curr_branch->merge_nr) {
>>>              const char *remote_name = NULL;
>>>
>>>              if (for_each_remote(get_only_remote, &remote_name) || !remote_name)
>>> -                    remote_name = "<remote>";
>>> +                    remote_name = _("<remote>");
>>>
>> ... this does not.  It allows to translate the "quote around a
>> placeholder".  And where this phony "remote_name" string is used,
>> there is also this reference to <branch>:
>>
>>     fprintf_ln(stderr, _("If you wish to set tracking information for ..."
>>                     "\n"
>>                     "    git branch --set-upstream-to=%s/<branch> %s\n"),
>>                     remote_name, curr_branch->name);
>>
>> which also does.
>>
>> Perhaps the first hunk at around ll.458 would want to do
>>
>>> +    fprintf_ln(stderr, "    git pull %s %s", _("<remote>"), _("<branch>"));
>>
>> to be consistent and more flexible for the translator's needs?  The
>> quoting convention may be locale dependent after all.
>>
> If we think placeholders quoting is important for localization,

Ex-translator speaking. Context is important. If it's me, I would even
go as far as marking the whole line translatable just to give more
context (it's mostly just copy and translate a few words then). But
then again, I was half developer half translator and may see things a
bit differently. Maybe _("<remote>") is a good balance.
--
Duy
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH v2 3/7] i18n: git-parse-remote.sh: mark strings for translation

Junio C Hamano
In reply to this post by Vasco Almeida
Vasco Almeida <[hidden email]> writes:

> diff --git a/git-parse-remote.sh b/git-parse-remote.sh
> index 55fe8d5..c5e5840 100644
> --- a/git-parse-remote.sh
> +++ b/git-parse-remote.sh
> @@ -6,6 +6,9 @@
>  # this would fail in that case and would issue an error message.
>  GIT_DIR=$(git rev-parse -q --git-dir) || :;
>  
> +. git-sh-setup
> +. git-sh-i18n

This hunk should be dropped, I think.

The scriptlet is not meant to be used as a standalone command and is
designed to be always used with ". git-parse-remote".  The scripted
command that uses it would already have done the above two.

> @@ -68,22 +73,33 @@ error_on_missing_default_upstream () {
>  
>   if test -z "$branch_name"
>   then
> - echo "You are not currently on a branch. Please specify which
> -branch you want to $op_type $op_prep. See git-${cmd}(1) for details.
> -
> -    $example
> -"
> + gettextln "You are not currently on a branch."
> + if test "$op_type" = rebase
> + then
> + gettextln "Please specify which branch you want to rebase against."
> + else
> + gettextln "Please specify which branch you want to merge with."
> + fi

The original did not have to know $op_type can only be rebase or
merge, but this one hardcodes the assumption.  To make sure that
anybody who adds yet another way to rebase need to come up with a
phrasing that is suited for the new way, something like this would
be a good way to future-proof it.

        case "$op_type" in
        rebase)
        ... ;;
        merge)
        ... ;;
        *)
        echo >&2 "BUG: ..."
                exit 1 ;;
        esac

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH v2 4/7] i18n: builtin/pull.c: mark strings for translation

Jean-Noël AVILA
In reply to this post by Duy Nguyen
Le 12/04/2016 11:52, Duy Nguyen a écrit :
>
> Ex-translator speaking. Context is important. If it's me, I would even
> go as far as marking the whole line translatable just to give more
> context (it's mostly just copy and translate a few words then). But
> then again, I was half developer half translator and may see things a
> bit differently. Maybe _("<remote>") is a good balance.

I second this opinion. Translating a single word without context is
generally not advised. The english word might come up in different
situations with different grammatical forms for the translated version.

Adding the brackets provides enough context, as long as the string is
always used in the same semantic field, describing the command line. I
just don't know how much that helps reducing the amount of translated
strings.


JN
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html