mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-07 10:33:24 -08:00
[Translations] Give translators context for separator-bearing tr() strings (#6487)
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
17f583013b
commit
2d625575f6
4 changed files with 11 additions and 8 deletions
|
|
@ -463,16 +463,16 @@ void CardMenu::addRelatedCardActions()
|
||||||
relatedCardName = relatedCard.getName(); // "name"
|
relatedCardName = relatedCard.getName(); // "name"
|
||||||
}
|
}
|
||||||
|
|
||||||
QString text = tr("Token: ");
|
QString text;
|
||||||
if (cardRelation->getDoesAttach()) {
|
if (cardRelation->getDoesAttach()) {
|
||||||
text +=
|
text = cardRelation->getDoesTransform() ? tr("Token: Transform into \"%1\"").arg(relatedCardName)
|
||||||
tr(cardRelation->getDoesTransform() ? "Transform into " : "Attach to ") + "\"" + relatedCardName + "\"";
|
: tr("Token: Attach to \"%1\"").arg(relatedCardName);
|
||||||
} else if (cardRelation->getIsVariable()) {
|
} else if (cardRelation->getIsVariable()) {
|
||||||
text += "X " + relatedCardName;
|
text = tr("Token: X %1").arg(relatedCardName);
|
||||||
} else if (cardRelation->getDefaultCount() != 1) {
|
} else if (cardRelation->getDefaultCount() != 1) {
|
||||||
text += QString::number(cardRelation->getDefaultCount()) + "x " + relatedCardName;
|
text = tr("Token: %1x %2").arg(cardRelation->getDefaultCount()).arg(relatedCardName);
|
||||||
} else {
|
} else {
|
||||||
text += relatedCardName;
|
text = tr("Token: %1").arg(relatedCardName);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (createRelatedCards == nullptr) {
|
if (createRelatedCards == nullptr) {
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,7 @@ DlgForgotPasswordReset::DlgForgotPasswordReset(QWidget *parent) : QDialog(parent
|
||||||
playernameEdit->setMaxLength(MAX_NAME_LENGTH);
|
playernameEdit->setMaxLength(MAX_NAME_LENGTH);
|
||||||
playernameLabel->setBuddy(playernameEdit);
|
playernameLabel->setBuddy(playernameEdit);
|
||||||
|
|
||||||
|
//: Code mailed to the player so they can reset their password. Not a game token.
|
||||||
tokenLabel = new QLabel(tr("Token:"));
|
tokenLabel = new QLabel(tr("Token:"));
|
||||||
tokenEdit = new QLineEdit();
|
tokenEdit = new QLineEdit();
|
||||||
tokenEdit->setMaxLength(MAX_NAME_LENGTH);
|
tokenEdit->setMaxLength(MAX_NAME_LENGTH);
|
||||||
|
|
|
||||||
|
|
@ -146,6 +146,7 @@ AppearanceSettingsPage::AppearanceSettingsPage()
|
||||||
});
|
});
|
||||||
|
|
||||||
homeTabBackgroundShuffleFrequencySpinBox.setRange(0, 3600);
|
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.setSuffix(tr(" seconds"));
|
||||||
homeTabBackgroundShuffleFrequencySpinBox.setValue(settings.appearance().getHomeTabBackgroundShuffleFrequency());
|
homeTabBackgroundShuffleFrequencySpinBox.setValue(settings.appearance().getHomeTabBackgroundShuffleFrequency());
|
||||||
connect(&homeTabBackgroundShuffleFrequencySpinBox, qOverload<int>(&QSpinBox::valueChanged), &settings.appearance(),
|
connect(&homeTabBackgroundShuffleFrequencySpinBox, qOverload<int>(&QSpinBox::valueChanged), &settings.appearance(),
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,8 @@ public:
|
||||||
[[nodiscard]] QString getTabText() const override
|
[[nodiscard]] QString getTabText() const override
|
||||||
{
|
{
|
||||||
auto cardName = cardToQuery.isNull() ? QString() : cardToQuery->getName();
|
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
|
CardSizeWidget *getCardSizeSlider() const
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue