Re: [PATCH 10/22] sequencer: avoid completely different messages for different actions
From: Jakub Narębski <hidden>
Date: 2016-08-31 17:58:56
CC-ed to Jiang Xin, L10N coordinator. W dniu 29.08.2016 o 10:05, Johannes Schindelin pisze:
quoted hunk ↗ jump to hunk
Signed-off-by: Johannes Schindelin <redacted> --- sequencer.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-)diff --git a/sequencer.c b/sequencer.c index cbdce6d..1b65202 100644 --- a/sequencer.c +++ b/sequencer.c@@ -232,11 +232,8 @@ static int error_dirty_index(struct replay_opts *opts) if (read_cache_unmerged()) return error_resolve_conflict(action_name(opts)); - /* Different translation strings for cherry-pick and revert */ - if (opts->action == REPLAY_PICK) - error(_("Your local changes would be overwritten by cherry-pick.")); - else - error(_("Your local changes would be overwritten by revert.")); + error(_("Your local changes would be overwritten by %s."), + action_name(opts));
If I understand it correctly, it would make "revert" or "cherry-pick" untranslated part of error message. You would need to use translation on the result with "_(action_name(opts))", you would have to mark todo_command_strings elements for gettext lexicon with N_(...). I am rather against this change (see also below). From the first glance I though that there would be no problem with translation legos / jigsaw it introduces, namely that the "revert" and "cherry-pick" would require different rest of text: po/bg.po:msgid "Your local changes would be overwritten by cherry-pick." po/bg.po-msgstr "Локалните ви промени ще бъдат презаписани при отбирането на подавания." -- po/bg.po:msgid "Your local changes would be overwritten by revert." po/bg.po-msgstr "Локалните ви промени ще бъдат презаписани при отмяната на подавания." po/de.po:msgid "Your local changes would be overwritten by cherry-pick." po/de.po-msgstr "Ihre lokalen Änderungen würden durch den Cherry-Pick überschrieben werden." -- po/de.po:msgid "Your local changes would be overwritten by revert." po/de.po-msgstr "Ihre lokalen Änderungen würden durch den Revert überschrieben werden." But it turns out that "revert" and "cherry-pick" can be of different gender: po/ca.po:msgid "Your local changes would be overwritten by cherry-pick." po/ca.po-msgstr "Els vostres canvis locals se sobreescriurien pel recull de cireres." -- po/ca.po:msgid "Your local changes would be overwritten by revert." po/ca.po-msgstr "Els vostres canvis locals se sobreescriurien per la reversió." In some cases "revert" and "cherry-pick" are not translated literally (but compare translation for similar language: po/bg.po, without this): po/ru.po:msgid "Your local changes would be overwritten by cherry-pick." po/ru.po-msgstr "Ваши локальные изменение будут перезаписаны отбором лучшего." -- po/ru.po:msgid "Your local changes would be overwritten by revert." po/ru.po-msgstr "Ваши локальные изменение будут перезаписаны возвратом коммита." Similar for (but here one side uses untranslated English term...): po/vi.po:msgid "Your local changes would be overwritten by cherry-pick." po/vi.po-msgstr "Các thay đổi nội bộ của bạn có thể bị ghi đè bởi lệnh cherry-pick." -- po/vi.po:msgid "Your local changes would be overwritten by revert." po/vi.po-msgstr "Các thay đổi nội bộ của bạn có thể bị ghi đè bởi lệnh hoàn nguyên." For some I don't know which is the case: po/zh_CN.po:msgid "Your local changes would be overwritten by cherry-pick." po/zh_CN.po-msgstr "您的本地修改将被拣选操作覆盖。" -- po/zh_CN.po:msgid "Your local changes would be overwritten by revert." po/zh_CN.po-msgstr "您的本地修改将被还原操作覆盖。" Unless we want to require to use English terms: po/sv.po:msgid "Your local changes would be overwritten by cherry-pick." po/sv.po-msgstr "Dina lokala ändringar skulle skrivas över av \"cherry-pick\"." -- po/sv.po:msgid "Your local changes would be overwritten by revert." po/sv.po-msgstr "Dina lokala ändringar skulle skrivas över av \"revert\"."
if (advice_commit_before_merge)
advise(_("Commit your changes or stash them to proceed."));