mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-05 09:33:25 -08:00
[Translations] Give translators context for separator-bearing tr() strings
Build the card menu's related card actions from complete strings with %1 placeholders instead of appending translated fragments. This also fixes tr(cond ? "Transform into " : "Attach to "), which lupdate cannot extract: neither string appears in cockatrice_en@source.ts, so neither was ever translated. Give the EDHRec tab title a %1 placeholder so French can render "EDHRec : %1" instead of concatenating into "EDHRec :CardName". Keep the colon in tr("Token:") and the leading space in tr(" seconds"), since that separator is language-specific, and attach //: translator comments so they are no longer shown out of context on Transifex.
This commit is contained in:
parent
08a608992d
commit
5659d23507
4 changed files with 11 additions and 8 deletions
|
|
@ -440,16 +440,16 @@ void CardMenu::addRelatedCardActions()
|
|||
relatedCardName = relatedCard.getName(); // "name"
|
||||
}
|
||||
|
||||
QString text = tr("Token: ");
|
||||
QString text;
|
||||
if (cardRelation->getDoesAttach()) {
|
||||
text +=
|
||||
tr(cardRelation->getDoesTransform() ? "Transform into " : "Attach to ") + "\"" + relatedCardName + "\"";
|
||||
text = cardRelation->getDoesTransform() ? tr("Token: Transform into \"%1\"").arg(relatedCardName)
|
||||
: tr("Token: Attach to \"%1\"").arg(relatedCardName);
|
||||
} else if (cardRelation->getIsVariable()) {
|
||||
text += "X " + relatedCardName;
|
||||
text = tr("Token: X %1").arg(relatedCardName);
|
||||
} else if (cardRelation->getDefaultCount() != 1) {
|
||||
text += QString::number(cardRelation->getDefaultCount()) + "x " + relatedCardName;
|
||||
text = tr("Token: %1x %2").arg(cardRelation->getDefaultCount()).arg(relatedCardName);
|
||||
} else {
|
||||
text += relatedCardName;
|
||||
text = tr("Token: %1").arg(relatedCardName);
|
||||
}
|
||||
|
||||
if (createRelatedCards == nullptr) {
|
||||
|
|
@ -549,4 +549,4 @@ void CardMenu::setShortcutsActive()
|
|||
aRemoveCounter[i]->setShortcuts(shortcuts.getShortcut("Player/aRC" + colorWords[i]));
|
||||
aSetCounter[i]->setShortcuts(shortcuts.getShortcut("Player/aSC" + colorWords[i]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,6 +50,7 @@ DlgForgotPasswordReset::DlgForgotPasswordReset(QWidget *parent) : QDialog(parent
|
|||
playernameEdit->setMaxLength(MAX_NAME_LENGTH);
|
||||
playernameLabel->setBuddy(playernameEdit);
|
||||
|
||||
//: Code mailed to the player so they can reset their password. Not a game token.
|
||||
tokenLabel = new QLabel(tr("Token:"));
|
||||
tokenEdit = new QLineEdit();
|
||||
tokenEdit->setMaxLength(MAX_NAME_LENGTH);
|
||||
|
|
|
|||
|
|
@ -129,6 +129,7 @@ AppearanceSettingsPage::AppearanceSettingsPage()
|
|||
});
|
||||
|
||||
homeTabBackgroundShuffleFrequencySpinBox.setRange(0, 3600);
|
||||
//: Unit following a number of seconds. Keep the leading space unless your language writes number and unit flush.
|
||||
homeTabBackgroundShuffleFrequencySpinBox.setSuffix(tr(" seconds"));
|
||||
homeTabBackgroundShuffleFrequencySpinBox.setValue(settings.appearance().getHomeTabBackgroundShuffleFrequency());
|
||||
connect(&homeTabBackgroundShuffleFrequencySpinBox, qOverload<int>(&QSpinBox::valueChanged), &settings.appearance(),
|
||||
|
|
|
|||
|
|
@ -29,7 +29,8 @@ public:
|
|||
[[nodiscard]] QString getTabText() const override
|
||||
{
|
||||
auto cardName = cardToQuery.isNull() ? QString() : cardToQuery->getName();
|
||||
return tr("EDHRec: ") + cardName;
|
||||
//: EDHRec is a website name, keep it as written. %1 is the card being looked up.
|
||||
return tr("EDHRec: %1").arg(cardName);
|
||||
}
|
||||
|
||||
CardSizeWidget *getCardSizeSlider() const
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue