Merge pull request #2226 from bitigchi/strings

Improve string formatting and context
This commit is contained in:
Adriaan de Groot 2023-11-13 19:17:12 +01:00 committed by GitHub
commit eb77b208f8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
34 changed files with 138 additions and 135 deletions

View File

@ -139,17 +139,17 @@ Config::doNotify( bool hasFailed, bool sendAnyway )
QString message;
if ( hasFailed )
{
title = Calamares::Settings::instance()->isSetupMode() ? tr( "Setup Failed" ) : tr( "Installation Failed" );
title = Calamares::Settings::instance()->isSetupMode() ? tr( "Setup Failed", "@title" ) : tr( "Installation Failed", "@title" );
message = Calamares::Settings::instance()->isSetupMode()
? tr( "The setup of %1 did not complete successfully." )
: tr( "The installation of %1 did not complete successfully." );
? tr( "The setup of %1 did not complete successfully.", "@info" )
: tr( "The installation of %1 did not complete successfully.", "@info" );
}
else
{
title = Calamares::Settings::instance()->isSetupMode() ? tr( "Setup Complete" )
: tr( "Installation Complete" );
message = Calamares::Settings::instance()->isSetupMode() ? tr( "The setup of %1 is complete." )
: tr( "The installation of %1 is complete." );
title = Calamares::Settings::instance()->isSetupMode() ? tr( "Setup Complete", "@title" )
: tr( "Installation Complete", "@title" );
message = Calamares::Settings::instance()->isSetupMode() ? tr( "The setup of %1 is complete.", "@info" )
: tr( "The installation of %1 is complete.", "@info" );
}
const auto* branding = Calamares::Branding::instance();

View File

@ -74,26 +74,26 @@ FinishedPage::retranslate()
{
ui->mainText->setText( tr( "<h1>All done.</h1><br/>"
"%1 has been set up on your computer.<br/>"
"You may now start using your new system." )
"You may now start using your new system.", "@info" )
.arg( branding->versionedName() ) );
ui->restartCheckBox->setToolTip( tr( "<html><head/><body>"
"<p>When this box is checked, your system will "
"restart immediately when you click on "
"<span style=\"font-style:italic;\">Done</span> "
"or close the setup program.</p></body></html>" ) );
"or close the setup program.</p></body></html>", "@tooltip" ) );
}
else
{
ui->mainText->setText( tr( "<h1>All done.</h1><br/>"
"%1 has been installed on your computer.<br/>"
"You may now restart into your new system, or continue "
"using the %2 Live environment." )
"using the %2 Live environment.", "@info" )
.arg( branding->versionedName(), branding->productName() ) );
ui->restartCheckBox->setToolTip( tr( "<html><head/><body>"
"<p>When this box is checked, your system will "
"restart immediately when you click on "
"<span style=\"font-style:italic;\">Done</span> "
"or close the installer.</p></body></html>" ) );
"or close the installer.</p></body></html>", "@tooltip" ) );
}
}
else
@ -104,7 +104,7 @@ FinishedPage::retranslate()
{
ui->mainText->setText( tr( "<h1>Setup Failed</h1><br/>"
"%1 has not been set up on your computer.<br/>"
"The error message was: %2." )
"The error message was: %2.", "@info, %1 is product name with version" )
.arg( branding->versionedName() )
.arg( message ) );
}
@ -112,7 +112,7 @@ FinishedPage::retranslate()
{
ui->mainText->setText( tr( "<h1>Installation Failed</h1><br/>"
"%1 has not been installed on your computer.<br/>"
"The error message was: %2." )
"The error message was: %2.", "@info, %1 is product name with version" )
.arg( branding->versionedName() )
.arg( message ) );
}

View File

@ -43,7 +43,7 @@ FinishedViewStep::~FinishedViewStep()
QString
FinishedViewStep::prettyName() const
{
return tr( "Finish" );
return tr( "Finish", "@label" );
}

View File

@ -32,7 +32,7 @@ FinishedQmlViewStep::FinishedQmlViewStep( QObject* parent )
QString
FinishedQmlViewStep::prettyName() const
{
return tr( "Finish" );
return tr( "Finish", "@label" );
}
bool

View File

@ -32,7 +32,7 @@ Page {
horizontalAlignment: Qt.AlignHCenter
color: Kirigami.Theme.textColor
level: 1
text: qsTr("Installation Completed")
text: qsTr("Installation Completed", "@title")
Text {
anchors.top: header.bottom
@ -40,7 +40,8 @@ Page {
horizontalAlignment: Text.AlignHCenter
font.pointSize: 12
text: qsTr("%1 has been installed on your computer.<br/>
You may now restart into your new system, or continue using the Live environment.").arg(Branding.string(Branding.ProductName))
You may now restart into your new system, or continue using the Live environment.", "@info, %1 is the product name")
.arg(Branding.string(Branding.ProductName))
}
Image {
@ -61,13 +62,13 @@ Page {
Button {
id: button
text: qsTr("Close Installer")
text: qsTr("Close Installer", "@button")
icon.name: "application-exit"
onClicked: { ViewManager.quit(); }
}
Button {
text: qsTr("Restart System")
text: qsTr("Restart System", "@button")
icon.name: "system-reboot"
onClicked: { config.doRestart(true); }
}
@ -86,7 +87,7 @@ Page {
anchors.top: parent.top
horizontalAlignment: Text.AlignHCenter
text: qsTr("<p>A full log of the install is available as installation.log in the home directory of the Live user.<br/>
This log is copied to /var/log/installation.log of the target system.</p>")
This log is copied to /var/log/installation.log of the target system.</p>", "@info")
}
}

View File

@ -33,7 +33,7 @@ Page {
horizontalAlignment: Qt.AlignHCenter
color: Kirigami.Theme.textColor
level: 1
text: qsTr("Installation Completed")
text: qsTr("Installation Completed", "@title")
Text {
anchors.top: header.bottom
@ -41,7 +41,8 @@ Page {
horizontalAlignment: Text.AlignHCenter
font.pointSize: 12
text: qsTr("%1 has been installed on your computer.<br/>
You may now restart your device.").arg(Branding.string(Branding.ProductName))
You may now restart your device.", "@info, %1 is the product name")
.arg(Branding.string(Branding.ProductName))
}
Image {
@ -62,13 +63,13 @@ Page {
Button {
id: button
text: qsTr("Close")
text: qsTr("Close", "@button")
icon.name: "application-exit"
onClicked: { ViewManager.quit(); }
}
Button {
text: qsTr("Restart")
text: qsTr("Restart", "@button")
icon.name: "system-reboot"
onClicked: { config.doRestart(true); }
}

View File

@ -40,7 +40,7 @@ ResizeFSJob::~ResizeFSJob() {}
QString
ResizeFSJob::prettyName() const
{
return tr( "Resize Filesystem Job" );
return tr( "Performing file system resize…", "@status" );
}
ResizeFSJob::PartitionMatch
@ -159,15 +159,15 @@ ResizeFSJob::exec()
if ( !isValid() )
{
return Calamares::JobResult::error(
tr( "Invalid configuration" ),
tr( "The file-system resize job has an invalid configuration and will not run." ) );
tr( "Invalid configuration", "@error" ),
tr( "The file-system resize job has an invalid configuration and will not run.", "@error" ) );
}
if ( !m_kpmcore )
{
cWarning() << "Could not load KPMCore backend (2).";
return Calamares::JobResult::error( tr( "KPMCore not Available" ),
tr( "Calamares cannot start KPMCore for the file-system resize job." ) );
return Calamares::JobResult::error( tr( "KPMCore not available", "@error" ),
tr( "Calamares cannot start KPMCore for the file system resize job.", "@error" ) );
}
m_kpmcore.backend()->initFSSupport(); // Might not be enough, see below
@ -176,20 +176,20 @@ ResizeFSJob::exec()
if ( !m.first || !m.second )
{
return Calamares::JobResult::error(
tr( "Resize Failed" ),
tr( "Resize failed.", "@error" ),
!m_fsname.isEmpty()
? tr( "The filesystem %1 could not be found in this system, and cannot be resized." ).arg( m_fsname )
: tr( "The device %1 could not be found in this system, and cannot be resized." ).arg( m_devicename ) );
? tr( "The filesystem %1 could not be found in this system, and cannot be resized.", "@info" ).arg( m_fsname )
: tr( "The device %1 could not be found in this system, and cannot be resized.", "@info" ).arg( m_devicename ) );
}
m.second->fileSystem().init(); // Initialize support for specific FS
if ( !ResizeOperation::canGrow( m.second ) )
{
cDebug() << "canGrow() returned false.";
return Calamares::JobResult::error( tr( "Resize Failed" ),
return Calamares::JobResult::error( tr( "Resize Failed", "@error" ),
!m_fsname.isEmpty()
? tr( "The filesystem %1 cannot be resized." ).arg( m_fsname )
: tr( "The device %1 cannot be resized." ).arg( m_devicename ) );
? tr( "The filesystem %1 cannot be resized.", "@error" ).arg( m_fsname )
: tr( "The device %1 cannot be resized.", "@error" ).arg( m_devicename ) );
}
qint64 new_end = findGrownEnd( m );
@ -198,10 +198,10 @@ ResizeFSJob::exec()
if ( new_end < 0 )
{
return Calamares::JobResult::error( tr( "Resize Failed" ),
return Calamares::JobResult::error( tr( "Resize Failed", "@error" ),
!m_fsname.isEmpty()
? tr( "The filesystem %1 cannot be resized." ).arg( m_fsname )
: tr( "The device %1 cannot be resized." ).arg( m_devicename ) );
? tr( "The filesystem %1 cannot be resized.", "@error" ).arg( m_fsname )
: tr( "The device %1 cannot be resized.", "@error" ).arg( m_devicename ) );
}
if ( new_end == 0 )
{
@ -209,9 +209,9 @@ ResizeFSJob::exec()
if ( m_required )
{
return Calamares::JobResult::error(
tr( "Resize Failed" ),
!m_fsname.isEmpty() ? tr( "The filesystem %1 must be resized, but cannot." ).arg( m_fsname )
: tr( "The device %1 must be resized, but cannot" ).arg( m_fsname ) );
tr( "Resize Failed", "@error" ),
!m_fsname.isEmpty() ? tr( "The file system %1 must be resized, but cannot.", "@info" ).arg( m_fsname )
: tr( "The device %1 must be resized, but cannot", "@info" ).arg( m_fsname ) );
}
return Calamares::JobResult::ok();
@ -228,7 +228,7 @@ ResizeFSJob::exec()
else
{
cDebug() << "Resize failed." << op_report.output();
return Calamares::JobResult::error( tr( "Resize Failed" ), op_report.toText() );
return Calamares::JobResult::error( tr( "Resize Failed", "@error" ), op_report.toText() );
}
}

View File

@ -36,7 +36,7 @@ HostInfoJob::~HostInfoJob() {}
QString
HostInfoJob::prettyName() const
{
return tr( "Collecting information about your machine." );
return tr( "Collecting information about your machine", "@status" );
}
QString

View File

@ -28,7 +28,7 @@ InitcpioJob::~InitcpioJob() {}
QString
InitcpioJob::prettyName() const
{
return tr( "Creating initramfs with mkinitcpio." );
return tr( "Creating initramfs with mkinitcpio", "@status" );
}
/** @brief Sets secure permissions on each initramfs

View File

@ -24,7 +24,7 @@ InitramfsJob::~InitramfsJob() {}
QString
InitramfsJob::prettyName() const
{
return tr( "Creating initramfs." );
return tr( "Creating initramfs", "@status" );
}
Calamares::JobResult

View File

@ -46,8 +46,8 @@ void
InteractiveTerminalPage::errorKonsoleNotInstalled()
{
QMessageBox mb( QMessageBox::Critical,
tr( "Konsole not installed" ),
tr( "Please install KDE Konsole and try again!" ),
tr( "Konsole not installed.", "@error" ),
tr( "Please install KDE Konsole and try again!", "@info" ),
QMessageBox::Ok );
Calamares::fixButtonLabels( &mb );
mb.exec();
@ -119,5 +119,5 @@ InteractiveTerminalPage::setCommand( const QString& command )
{
m_command = command;
CALAMARES_RETRANSLATE(
m_headerLabel->setText( tr( "Executing script: &nbsp;<code>%1</code>" ).arg( m_command ) ); );
m_headerLabel->setText( tr( "Executing script: &nbsp;<code>%1</code>", "@info" ).arg( m_command ) ); );
}

View File

@ -37,7 +37,7 @@ InteractiveTerminalViewStep::~InteractiveTerminalViewStep()
QString
InteractiveTerminalViewStep::prettyName() const
{
return tr( "Script" );
return tr( "Script", "@label" );
}
QWidget*

View File

@ -502,14 +502,14 @@ QString
Config::prettyStatus() const
{
QString status;
status += tr( "Set keyboard model to %1.<br/>" )
status += tr( "Keyboard model has been set to %1<br/>.", "@label, %1 is keyboard model, as in Apple Magic Keyboard" )
.arg( m_keyboardModelsModel->label( m_keyboardModelsModel->currentIndex() ) );
QString layout = m_keyboardLayoutsModel->item( m_keyboardLayoutsModel->currentIndex() ).second.description;
QString variant = m_keyboardVariantsModel->currentIndex() >= 0
? m_keyboardVariantsModel->label( m_keyboardVariantsModel->currentIndex() )
: QString( "<default>" );
status += tr( "Set keyboard layout to %1/%2." ).arg( layout, variant );
status += tr( "Keyboard layout has been set to %1/%2.", "@label, %1 is layout, %2 is layout variant" ).arg( layout, variant );
return status;
}

View File

@ -71,7 +71,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Keyboard Model:</string>
<string>Keyboard model:</string>
</property>
</widget>
</item>
@ -150,7 +150,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
<item>
<widget class="QLabel" name="label_2">
<property name="text">
<string>Keyboard Switch:</string>
<string>Keyboard switch:</string>
</property>
</widget>
</item>

View File

@ -38,7 +38,7 @@ KeyboardViewStep::~KeyboardViewStep()
QString
KeyboardViewStep::prettyName() const
{
return tr( "Keyboard" );
return tr( "Keyboard", "@label" );
}

View File

@ -63,7 +63,8 @@ SetKeyboardLayoutJob::SetKeyboardLayoutJob( const QString& model,
QString
SetKeyboardLayoutJob::prettyName() const
{
return tr( "Set keyboard model to %1, layout to %2-%3" ).arg( m_model ).arg( m_layout ).arg( m_variant );
return tr( "Setting keyboard model to %1, layout as %2-%3…", "@status, %1 model, %2 layout, %3 variant" )
.arg( m_model ).arg( m_layout ).arg( m_variant );
}
@ -364,8 +365,8 @@ SetKeyboardLayoutJob::exec()
if ( !writeVConsoleData( vconsoleConfPath, convertedKeymapPath ) )
{
return Calamares::JobResult::error( tr( "Failed to write keyboard configuration for the virtual console." ),
tr( "Failed to write to %1" ).arg( vconsoleConfPath ) );
return Calamares::JobResult::error( tr( "Failed to write keyboard configuration for the virtual console.", "@error" ),
tr( "Failed to write to %1", "@error, %1 is virtual console configuration path" ).arg( vconsoleConfPath ) );
}
// Get the path to the destination's /etc/X11/xorg.conf.d/00-keyboard.conf
@ -390,8 +391,8 @@ SetKeyboardLayoutJob::exec()
if ( !writeX11Data( keyboardConfPath ) )
{
return Calamares::JobResult::error( tr( "Failed to write keyboard configuration for X11." ),
tr( "Failed to write to %1" ).arg( keyboardConfPath ) );
return Calamares::JobResult::error( tr( "Failed to write keyboard configuration for X11.", "@error" ),
tr( "Failed to write to %1", "@error, %1 is keyboard configuration path" ).arg( keyboardConfPath ) );
}
}
@ -407,8 +408,8 @@ SetKeyboardLayoutJob::exec()
if ( !writeDefaultKeyboardData( defaultKeyboardPath ) )
{
return Calamares::JobResult::error(
tr( "Failed to write keyboard configuration to existing /etc/default directory." ),
tr( "Failed to write to %1" ).arg( defaultKeyboardPath ) );
tr( "Failed to write keyboard configuration to existing /etc/default directory.", "@error" ),
tr( "Failed to write to %1", "@error, %1 is default keyboard path" ).arg( defaultKeyboardPath ) );
}
}
}

View File

@ -29,7 +29,7 @@ KeyboardQmlViewStep::KeyboardQmlViewStep( QObject* parent )
QString
KeyboardQmlViewStep::prettyName() const
{
return tr( "Keyboard" );
return tr( "Keyboard", "@label" );
}
QString

View File

@ -58,7 +58,7 @@ Item {
Label {
id: header
anchors.horizontalCenter: parent.horizontalCenter
text: qsTr("To activate keyboard preview, select a layout.")
text: qsTr("Select a layout to activate keyboard preview", "@label")
color: textColor
font.bold: true
}
@ -141,7 +141,7 @@ Item {
}
Text {
anchors.centerIn: parent
text: qsTr("<b>Keyboard Model:&nbsp;&nbsp;</b>") + models.currentItem.currentModel.label
text: qsTr("<b>Keyboard model:&nbsp;&nbsp;</b>", "@label") + models.currentItem.currentModel.label
color: textColor
}
Image {
@ -182,7 +182,7 @@ Item {
z: 2
color:backgroundColor
Text {
text: qsTr("Layout")
text: qsTr("Layout", "@label")
anchors.centerIn: parent
color: textColor
font.bold: true
@ -255,7 +255,7 @@ Item {
z: 2
color:backgroundColor
Text {
text: qsTr("Variant")
text: qsTr("Variant", "@label")
anchors.centerIn: parent
color: textColor
font.bold: true
@ -308,7 +308,7 @@ Item {
TextField {
id: textInput
placeholderText: qsTr("Type here to test your keyboard")
placeholderText: qsTr("Type here to test your keyboard…", "@label")
height: 36
width: parent.width / 1.6
horizontalAlignment: TextInput.AlignHCenter

View File

@ -58,7 +58,7 @@ Item {
Label {
id: header
anchors.horizontalCenter: parent.horizontalCenter
text: qsTr("To activate keyboard preview, select a layout.")
text: qsTr("Select a layout to activate keyboard preview", "@label")
color: textColor
font.bold: true
}
@ -141,7 +141,7 @@ Item {
}
Text {
anchors.centerIn: parent
text: qsTr("<b>Keyboard Model:&nbsp;&nbsp;</b>") + models.currentItem.currentModel.label
text: qsTr("<b>Keyboard model:&nbsp;&nbsp;</b>", "@label") + models.currentItem.currentModel.label
color: textColor
}
Image {
@ -182,7 +182,7 @@ Item {
z: 2
color:backgroundColor
Text {
text: qsTr("Layout")
text: qsTr("Layout", "@label")
anchors.centerIn: parent
color: textColor
font.bold: true
@ -255,7 +255,7 @@ Item {
z: 2
color:backgroundColor
Text {
text: qsTr("Variant")
text: qsTr("Variant", "@label")
anchors.centerIn: parent
color: textColor
font.bold: true
@ -308,7 +308,7 @@ Item {
TextField {
id: textInput
placeholderText: qsTr("Type here to test your keyboard")
placeholderText: qsTr("Type here to test your keyboard…", "@label")
height: 36
width: parent.width / 1.6
horizontalAlignment: TextInput.AlignHCenter

View File

@ -139,17 +139,17 @@ LicensePage::setEntries( const QList< LicenseEntry >& entriesList )
void
LicensePage::retranslate()
{
ui->acceptCheckBox->setText( tr( "I accept the terms and conditions above." ) );
ui->acceptCheckBox->setText( tr( "I accept the terms and conditions above.", "@info" ) );
QString review = tr( "Please review the End User License Agreements (EULAs)." );
QString review = tr( "Please review the End User License Agreements (EULAs).", "@info" );
const auto br = QStringLiteral( "<br/>" );
if ( !m_allLicensesOptional )
{
ui->mainText->setText( tr( "This setup procedure will install proprietary "
"software that is subject to licensing terms." )
"software that is subject to licensing terms.", "@info" )
+ br + review );
QString mustAcceptText( tr( "If you do not agree with the terms, the setup procedure cannot continue." ) );
QString mustAcceptText( tr( "If you do not agree with the terms, the setup procedure cannot continue.", "@info" ) );
ui->acceptCheckBox->setToolTip( mustAcceptText );
}
else
@ -157,10 +157,10 @@ LicensePage::retranslate()
ui->mainText->setText( tr( "This setup procedure can install proprietary "
"software that is subject to licensing terms "
"in order to provide additional features and enhance the user "
"experience." )
"experience.", "@info" )
+ br + review );
QString okAcceptText( tr( "If you do not agree with the terms, proprietary software will not "
"be installed, and open source alternatives will be used instead." ) );
"be installed, and open source alternatives will be used instead.", "@info" ) );
ui->acceptCheckBox->setToolTip( okAcceptText );
}
ui->retranslateUi( this );

View File

@ -42,7 +42,7 @@ LicenseViewStep::~LicenseViewStep()
QString
LicenseViewStep::prettyName() const
{
return tr( "License" );
return tr( "License", "@label" );
}

View File

@ -85,7 +85,7 @@ LicenseWidget::LicenseWidget( LicenseEntry entry, QWidget* parent )
}
else
{
m_licenceTextLabel->setText( tr( "URL: %1" ).arg( m_entry.m_url.toDisplayString() ) );
m_licenceTextLabel->setText( tr( "URL: %1", "@label" ).arg( m_entry.m_url.toDisplayString() ) );
connect( m_viewLicenseButton, &QAbstractButton::clicked, this, &LicenseWidget::viewClicked );
}
m_licenceTextLabel->setSizePolicy( QSizePolicy::Minimum, QSizePolicy::Minimum );
@ -107,38 +107,38 @@ LicenseWidget::retranslateUi()
case LicenseEntry::Type::Driver:
//: %1 is an untranslatable product name, example: Creative Audigy driver
productDescription = tr( "<strong>%1 driver</strong><br/>"
"by %2" )
"by %2", "@label, %1 is product name, %2 is product vendor" )
.arg( m_entry.m_prettyName )
.arg( m_entry.m_prettyVendor );
break;
case LicenseEntry::Type::GpuDriver:
//: %1 is usually a vendor name, example: Nvidia graphics driver
productDescription = tr( "<strong>%1 graphics driver</strong><br/>"
"<font color=\"Grey\">by %2</font>" )
"<font color=\"Grey\">by %2</font>", "@label, %1 is product name, %2 is product vendor" )
.arg( m_entry.m_prettyName )
.arg( m_entry.m_prettyVendor );
break;
case LicenseEntry::Type::BrowserPlugin:
productDescription = tr( "<strong>%1 browser plugin</strong><br/>"
"<font color=\"Grey\">by %2</font>" )
"<font color=\"Grey\">by %2</font>", "@label, %1 is product name, %2 is product vendor" )
.arg( m_entry.m_prettyName )
.arg( m_entry.m_prettyVendor );
break;
case LicenseEntry::Type::Codec:
productDescription = tr( "<strong>%1 codec</strong><br/>"
"<font color=\"Grey\">by %2</font>" )
"<font color=\"Grey\">by %2</font>", "@label, %1 is product name, %2 is product vendor" )
.arg( m_entry.m_prettyName )
.arg( m_entry.m_prettyVendor );
break;
case LicenseEntry::Type::Package:
productDescription = tr( "<strong>%1 package</strong><br/>"
"<font color=\"Grey\">by %2</font>" )
"<font color=\"Grey\">by %2</font>", "@label, %1 is product name, %2 is product vendor" )
.arg( m_entry.m_prettyName )
.arg( m_entry.m_prettyVendor );
break;
case LicenseEntry::Type::Software:
productDescription = tr( "<strong>%1</strong><br/>"
"<font color=\"Grey\">by %2</font>" )
"<font color=\"Grey\">by %2</font>", "@label, %1 is product name, %2 is product vendor" )
.arg( m_entry.m_prettyName )
.arg( m_entry.m_prettyVendor );
}
@ -160,7 +160,7 @@ LicenseWidget::showLocalLicenseText()
{
fileName = fileName.remove( 0, 5 );
}
m_licenceTextLabel->setText( tr( "File: %1" ).arg( fileName ) );
m_licenceTextLabel->setText( tr( "File: %1", "@label" ).arg( fileName ) );
}
}
@ -183,11 +183,11 @@ LicenseWidget::updateExpandToolTip()
{
if ( m_entry.isLocal() )
{
m_viewLicenseButton->setText( m_isExpanded ? tr( "Hide license text" ) : tr( "Show the license text" ) );
m_viewLicenseButton->setText( m_isExpanded ? tr( "Hide the license text", "@tooltip" ) : tr( "Show the license text", "@tooltip" ) );
}
else
{
m_viewLicenseButton->setText( tr( "Open license agreement in browser." ) );
m_viewLicenseButton->setText( tr( "Open the license agreement in browser", "@tooltip" ) );
}
}

View File

@ -370,7 +370,7 @@ Config::setLCLocaleExplicitly( const QString& locale )
QString
Config::currentLocationStatus() const
{
return tr( "Set timezone to %1/%2." )
return tr( "Set timezone to %1/%2", "@action" )
.arg( m_currentLocation ? m_currentLocation->region() : QString(),
m_currentLocation ? m_currentLocation->zone() : QString() );
}
@ -407,14 +407,14 @@ localeLabel( const QString& s )
QString
Config::currentLanguageStatus() const
{
return tr( "The system language will be set to %1." )
return tr( "The system language will be set to %1", "@info" )
.arg( localeLabel( m_selectedLocaleConfiguration.language() ) );
}
QString
Config::currentLCStatus() const
{
return tr( "The numbers and dates locale will be set to %1." )
return tr( "The numbers and dates locale will be set to %1", "@info" )
.arg( localeLabel( m_selectedLocaleConfiguration.lc_numeric ) );
}

View File

@ -20,7 +20,7 @@ LCLocaleDialog::LCLocaleDialog( const QString& guessedLCLocale, const QStringLis
: QDialog( parent )
{
setModal( true );
setWindowTitle( tr( "System locale setting" ) );
setWindowTitle( tr( "System Locale Setting", "@title" ) );
QBoxLayout* mainLayout = new QVBoxLayout;
setLayout( mainLayout );
@ -29,7 +29,7 @@ LCLocaleDialog::LCLocaleDialog( const QString& guessedLCLocale, const QStringLis
upperText->setWordWrap( true );
upperText->setText( tr( "The system locale setting affects the language and character "
"set for some command line user interface elements.<br/>"
"The current setting is <strong>%1</strong>." )
"The current setting is <strong>%1</strong>.", "@info" )
.arg( guessedLCLocale ) );
mainLayout->addWidget( upperText );
setMinimumWidth( upperText->fontMetrics().height() * 24 );
@ -51,8 +51,8 @@ LCLocaleDialog::LCLocaleDialog( const QString& guessedLCLocale, const QStringLis
QDialogButtonBox* dbb
= new QDialogButtonBox( QDialogButtonBox::Ok | QDialogButtonBox::Cancel, Qt::Horizontal, this );
dbb->button( QDialogButtonBox::Cancel )->setText( tr( "&Cancel" ) );
dbb->button( QDialogButtonBox::Ok )->setText( tr( "&OK" ) );
dbb->button( QDialogButtonBox::Cancel )->setText( tr( "&Cancel", "@button" ) );
dbb->button( QDialogButtonBox::Ok )->setText( tr( "&OK", "@button" ) );
mainLayout->addWidget( dbb );

View File

@ -127,10 +127,10 @@ LocalePage::~LocalePage() {}
void
LocalePage::updateLocaleLabels()
{
m_regionLabel->setText( tr( "Region:" ) );
m_zoneLabel->setText( tr( "Zone:" ) );
m_localeChangeButton->setText( tr( "&Change..." ) );
m_formatsChangeButton->setText( tr( "&Change..." ) );
m_regionLabel->setText( tr( "Region:", "@label" ) );
m_zoneLabel->setText( tr( "Zone:", "@label" ) );
m_localeChangeButton->setText( tr( "&Change", "@button" ) );
m_formatsChangeButton->setText( tr( "&Change", "@button" ) );
m_localeLabel->setText( m_config->currentLanguageStatus() );
m_formatsLabel->setText( m_config->currentLCStatus() );
}

View File

@ -68,7 +68,7 @@ LocaleViewStep::setUpPage()
QString
LocaleViewStep::prettyName() const
{
return tr( "Location" );
return tr( "Location", "@label" );
}
QString

View File

@ -29,7 +29,7 @@ SetTimezoneJob::SetTimezoneJob( const QString& region, const QString& zone )
QString
SetTimezoneJob::prettyName() const
{
return tr( "Set timezone to %1/%2" ).arg( m_region ).arg( m_zone );
return tr( "Setting timezone to %1/%2", "@status" ).arg( m_region ).arg( m_zone );
}
Calamares::JobResult
@ -57,8 +57,8 @@ SetTimezoneJob::exec()
QFileInfo zoneFile( gs->value( "rootMountPoint" ).toString() + zoneinfoPath );
if ( !zoneFile.exists() || !zoneFile.isReadable() )
{
return Calamares::JobResult::error( tr( "Cannot access selected timezone path." ),
tr( "Bad path: %1" ).arg( zoneFile.absolutePath() ) );
return Calamares::JobResult::error( tr( "Cannot access selected timezone path.", "@error" ),
tr( "Bad path: %1", "@error" ).arg( zoneFile.absolutePath() ) );
}
// Make sure /etc/localtime doesn't exist, otherwise symlinking will fail
@ -68,16 +68,16 @@ SetTimezoneJob::exec()
if ( ec )
{
return Calamares::JobResult::error(
tr( "Cannot set timezone." ),
tr( "Link creation failed, target: %1; link name: %2" ).arg( zoneinfoPath ).arg( "/etc/localtime" ) );
tr( "Cannot set timezone.", "@error" ),
tr( "Link creation failed, target: %1; link name: %2", "@info" ).arg( zoneinfoPath ).arg( "/etc/localtime" ) );
}
QFile timezoneFile( gs->value( "rootMountPoint" ).toString() + "/etc/timezone" );
if ( !timezoneFile.open( QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate ) )
{
return Calamares::JobResult::error( tr( "Cannot set timezone," ),
tr( "Cannot open /etc/timezone for writing" ) );
return Calamares::JobResult::error( tr( "Cannot set timezone.", "@error" ),
tr( "Cannot open /etc/timezone for writing", "@info" ) );
}
QTextStream out( &timezoneFile );

View File

@ -29,7 +29,7 @@ LocaleQmlViewStep::getConfig()
QString
LocaleQmlViewStep::prettyName() const
{
return tr( "Location" );
return tr( "Location", "@label" );
}
QString

View File

@ -234,7 +234,7 @@ Column {
Text {
id: tzText
text: qsTr("Timezone: %1").arg(config.currentTimezoneName)
text: qsTr("Timezone: %1", "@label").arg(config.currentTimezoneName)
color: Kirigami.Theme.textColor
anchors.centerIn: parent
}
@ -257,7 +257,7 @@ Column {
Kirigami.Theme.backgroundColor: Kirigami.Theme.backgroundColor
text: qsTr("Please select your preferred location on the map so the installer can suggest the locale
and timezone settings for you. You can fine-tune the suggested settings below. Search the map by dragging
to move and using the +/- buttons to zoom in/out or use mouse scrolling for zooming.")
to move and using the +/- buttons to zoom in/out or use mouse scrolling for zooming.", "@label")
}
}
}

View File

@ -234,7 +234,7 @@ Column {
Text {
id: tzText
text: qsTr("Timezone: %1").arg(config.currentTimezoneName)
text: qsTr("Timezone: %1", "@label").arg(config.currentTimezoneName)
color: Kirigami.Theme.textColor
anchors.centerIn: parent
}
@ -257,7 +257,7 @@ Column {
Kirigami.Theme.backgroundColor: Kirigami.Theme.backgroundColor
text: qsTr("Please select your preferred location on the map so the installer can suggest the locale
and timezone settings for you. You can fine-tune the suggested settings below. Search the map by dragging
to move and using the +/- buttons to zoom in/out or use mouse scrolling for zooming.")
to move and using the +/- buttons to zoom in/out or use mouse scrolling for zooming.", "@info")
}
}
}

View File

@ -44,7 +44,7 @@ Page {
anchors.horizontalCenter: parent.horizontalCenter
color: textColor
horizontalAlignment: Text.AlignCenter
text: qsTr("Select your preferred Region, or use the default settings.")
text: qsTr("Select your preferred region, or use the default settings", "@label")
}
ListView {
@ -100,7 +100,7 @@ Page {
list.currentIndex = index
control.currentRegion = model.name
config.regionalZonesModel.region = control.currentRegion
tztext.text = qsTr("Timezone: %1").arg(config.currentTimezoneName)
tztext.text = qsTr("Timezone: %1", "@label").arg(config.currentTimezoneName)
stack.push(zoneView)
}
}
@ -117,7 +117,7 @@ Page {
id: zone
anchors.horizontalCenter: parent.horizontalCenter
color: textColor
text: qsTr("Select your preferred Zone within your Region.")
text: qsTr("Select your preferred zone within your region", "@label")
}
ListView {
@ -177,7 +177,7 @@ Page {
list2.positionViewAtIndex(index, ListView.Center)
control.currentZone = model.name
config.setCurrentLocation(control.currentRegion, control.currentZone)
tztext.text = qsTr("Timezone: %1").arg(config.currentTimezoneName)
tztext.text = qsTr("Timezone: %1", "@label").arg(config.currentTimezoneName)
}
}
}
@ -190,7 +190,7 @@ Page {
anchors.left: parent.left
anchors.leftMargin: parent.width / 15
icon.name: "go-previous"
text: qsTr("Zones")
text: qsTr("Zones", "@button")
onClicked: stack.pop()
}
}
@ -221,7 +221,7 @@ Page {
Text {
id: tztext
text: qsTr("Timezone: %1").arg(config.currentTimezoneName)
text: qsTr("Timezone: %1", "@label").arg(config.currentTimezoneName)
color: Kirigami.Theme.textColor
anchors.centerIn: parent
}
@ -237,7 +237,7 @@ Page {
wrapMode: Text.WordWrap
horizontalAlignment: Text.AlignHCenter
Kirigami.Theme.backgroundColor: Kirigami.Theme.backgroundColor
text: qsTr("You can fine-tune Language and Locale settings below.")
text: qsTr("You can fine-tune language and locale settings below", "@label")
}
}
}

View File

@ -44,7 +44,7 @@ Page {
anchors.horizontalCenter: parent.horizontalCenter
color: textColor
horizontalAlignment: Text.AlignCenter
text: qsTr("Select your preferred Region, or use the default settings.")
text: qsTr("Select your preferred region, or use the default settings", "@label")
}
ListView {
@ -100,7 +100,7 @@ Page {
list.currentIndex = index
control.currentRegion = model.name
config.regionalZonesModel.region = control.currentRegion
tztext.text = qsTr("Timezone: %1").arg(config.currentTimezoneName)
tztext.text = qsTr("Timezone: %1", "@label").arg(config.currentTimezoneName)
stack.push(zoneView)
}
}
@ -117,7 +117,7 @@ Page {
id: zone
anchors.horizontalCenter: parent.horizontalCenter
color: textColor
text: qsTr("Select your preferred Zone within your Region.")
text: qsTr("Select your preferred zone within your region", "@label")
}
ListView {
@ -177,7 +177,7 @@ Page {
list2.positionViewAtIndex(index, ListView.Center)
control.currentZone = model.name
config.setCurrentLocation(control.currentRegion, control.currentZone)
tztext.text = qsTr("Timezone: %1").arg(config.currentTimezoneName)
tztext.text = qsTr("Timezone: %1", "@label").arg(config.currentTimezoneName)
}
}
}
@ -190,7 +190,7 @@ Page {
anchors.left: parent.left
anchors.leftMargin: parent.width / 15
icon.name: "go-previous"
text: qsTr("Zones")
text: qsTr("Zones", "@button")
onClicked: stack.pop()
}
}
@ -221,7 +221,7 @@ Page {
Text {
id: tztext
text: qsTr("Timezone: %1").arg(config.currentTimezoneName)
text: qsTr("Timezone: %1", "@label").arg(config.currentTimezoneName)
color: Kirigami.Theme.textColor
anchors.centerIn: parent
}
@ -237,7 +237,7 @@ Page {
wrapMode: Text.WordWrap
horizontalAlignment: Text.AlignHCenter
Kirigami.Theme.backgroundColor: Kirigami.Theme.backgroundColor
text: qsTr("You can fine-tune Language and Locale settings below.")
text: qsTr("You can fine-tune language and locale settings below", "@label")
}
}
}

View File

@ -73,7 +73,7 @@ Page {
Button {
Layout.alignment: Qt.AlignRight|Qt.AlignVCenter
Layout.columnSpan: 2
text: qsTr("Change")
text: qsTr("Change", "@button")
onClicked: {
drawerLanguage.open()
}
@ -103,7 +103,7 @@ Page {
Button {
Layout.alignment: Qt.AlignRight|Qt.AlignVCenter
Layout.columnSpan: 2
text: qsTr("Change")
text: qsTr("Change", "@button")
onClicked: {
drawerLocale.open()
}
@ -140,7 +140,7 @@ Page {
anchors.fill: parent
wrapMode: Text.WordWrap
text: qsTr("<h3>Languages</h3> </br>
The system locale setting affects the language and character set for some command line user interface elements. The current setting is <strong>%1</strong>.").arg(config.currentLanguageCode)
The system locale setting affects the language and character set for some command line user interface elements. The current setting is <strong>%1</strong>.", "@info").arg(config.currentLanguageCode)
font.pointSize: 10
}
}
@ -211,7 +211,7 @@ Page {
anchors.fill: parent
wrapMode: Text.WordWrap
text: qsTr("<h3>Locales</h3> </br>
The system locale setting affects the numbers and dates format. The current setting is <strong>%1</strong>.").arg(config.currentLCCode)
The system locale setting affects the numbers and dates format. The current setting is <strong>%1</strong>.", "@info").arg(config.currentLCCode)
font.pointSize: 10
}
}

View File

@ -73,7 +73,7 @@ Page {
Button {
Layout.alignment: Qt.AlignRight|Qt.AlignVCenter
Layout.columnSpan: 2
text: qsTr("Change")
text: qsTr("Change", "@button")
onClicked: {
drawerLanguage.open()
}
@ -103,7 +103,7 @@ Page {
Button {
Layout.alignment: Qt.AlignRight|Qt.AlignVCenter
Layout.columnSpan: 2
text: qsTr("Change")
text: qsTr("Change", "@button")
onClicked: {
drawerLocale.open()
}
@ -140,7 +140,7 @@ Page {
anchors.fill: parent
wrapMode: Text.WordWrap
text: qsTr("<h3>Languages</h3> </br>
The system locale setting affects the language and character set for some command line user interface elements. The current setting is <strong>%1</strong>.").arg(config.currentLanguageCode)
The system locale setting affects the language and character set for some command line user interface elements. The current setting is <strong>%1</strong>.". "@info").arg(config.currentLanguageCode)
font.pointSize: 10
}
}
@ -211,7 +211,7 @@ Page {
anchors.fill: parent
wrapMode: Text.WordWrap
text: qsTr("<h3>Locales</h3> </br>
The system locale setting affects the numbers and dates format. The current setting is <strong>%1</strong>.").arg(config.currentLCCode)
The system locale setting affects the numbers and dates format. The current setting is <strong>%1</strong>.", "@info").arg(config.currentLCCode)
font.pointSize: 10
}
}