diff --git a/js/gdm/loginDialog.js b/js/gdm/loginDialog.js
index 4f51a6f41..593f8f582 100644
--- a/js/gdm/loginDialog.js
+++ b/js/gdm/loginDialog.js
@@ -451,7 +451,7 @@ export const ConflictingSessionDialog = GObject.registerClass({
banner.clutter_text.line_wrap = true;
let warningBanner = new St.Label({
- text: _('Force stopping will quit any running apps and processes, and could result in data loss.'),
+ text: _('Force stopping will quit any running apps and processes, and could result in data loss'),
style_class: 'conflicting-session-dialog-desc-warning',
});
warningBanner.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
diff --git a/js/ui/components/networkAgent.js b/js/ui/components/networkAgent.js
index f7d57466d..cb4a7c9bd 100644
--- a/js/ui/components/networkAgent.js
+++ b/js/ui/components/networkAgent.js
@@ -93,7 +93,7 @@ class NetworkSecretDialog extends ModalDialog.ModalDialog {
if (flags & NM.SecretAgentGetSecretsFlags.WPS_PBC_ACTIVE) {
let descriptionLabel = new St.Label({
- text: _('Alternatively you can connect by pushing the “WPS” button on your router.'),
+ text: _('Alternatively you can connect by pushing the “WPS” button on your router'),
style_class: 'message-dialog-description',
});
descriptionLabel.clutter_text.line_wrap = true;
@@ -369,7 +369,7 @@ class NetworkSecretDialog extends ModalDialog.ModalDialog {
wirelessSetting = this._connection.get_setting_wireless();
ssid = NM.utils_ssid_to_utf8(wirelessSetting.get_ssid().get_data());
content.title = _('Authentication required');
- content.message = _('Passwords or encryption keys are required to access the wireless network “%s”.').format(ssid);
+ content.message = _('Passwords or encryption keys are required to access the wireless network “%s”').format(ssid);
this._getWirelessSecrets(content.secrets, wirelessSetting);
break;
case '802-3-ethernet':
@@ -405,7 +405,7 @@ class NetworkSecretDialog extends ModalDialog.ModalDialog {
case 'cdma':
case 'bluetooth':
content.title = _('Authentication required');
- content.message = _('A password is required to connect to “%s”.').format(connectionSetting.get_id());
+ content.message = _('A password is required to connect to “%s”').format(connectionSetting.get_id());
this._getMobileSecrets(content.secrets, connectionType);
break;
default:
@@ -748,16 +748,16 @@ class NetworkAgent {
let wirelessSetting = connection.get_setting_wireless();
let ssid = NM.utils_ssid_to_utf8(wirelessSetting.get_ssid().get_data());
title = _('Authentication required');
- body = _('Passwords or encryption keys are required to access the wireless network “%s”.').format(ssid);
+ body = _('Passwords or encryption keys are required to access the wireless network “%s”').format(ssid);
break;
}
case '802-3-ethernet':
title = _('Wired 802.1X authentication');
- body = _('A password is required to connect to “%s”.').format(connection.get_id());
+ body = _('A password is required to connect to “%s”').format(connection.get_id());
break;
case 'pppoe':
title = _('DSL authentication');
- body = _('A password is required to connect to “%s”.').format(connection.get_id());
+ body = _('A password is required to connect to “%s”').format(connection.get_id());
break;
case 'gsm':
if (hints.includes('pin')) {
@@ -769,11 +769,11 @@ class NetworkAgent {
case 'cdma':
case 'bluetooth':
title = _('Authentication required');
- body = _('A password is required to connect to “%s”.').format(connectionSetting.get_id());
+ body = _('A password is required to connect to “%s”').format(connectionSetting.get_id());
break;
case 'vpn':
title = _('VPN password');
- body = _('A password is required to connect to “%s”.').format(connectionSetting.get_id());
+ body = _('A password is required to connect to “%s”').format(connectionSetting.get_id());
break;
default:
log(`Invalid connection type: ${connectionType}`);
diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js
index 302ed1d61..8d4198cfb 100644
--- a/js/ui/endSessionDialog.js
+++ b/js/ui/endSessionDialog.js
@@ -49,14 +49,14 @@ const logoutDialogContent = {
subject: C_('title', 'Log Out'),
descriptionWithUser(user, seconds) {
return ngettext(
- '%s will be logged out automatically in %d second.',
- '%s will be logged out automatically in %d seconds.',
+ '%s will be logged out automatically in %d second',
+ '%s will be logged out automatically in %d seconds',
seconds).format(user, seconds);
},
description(seconds) {
return ngettext(
- 'You will be logged out automatically in %d second.',
- 'You will be logged out automatically in %d seconds.',
+ 'You will be logged out automatically in %d second',
+ 'You will be logged out automatically in %d seconds',
seconds).format(seconds);
},
showBatteryWarning: false,
@@ -72,8 +72,8 @@ const shutdownDialogContent = {
subjectWithUpdates: C_('title', 'Install Updates & Power Off'),
description(seconds) {
return ngettext(
- 'The system will power off automatically in %d second.',
- 'The system will power off automatically in %d seconds.',
+ 'The system will power off automatically in %d second',
+ 'The system will power off automatically in %d seconds',
seconds).format(seconds);
},
checkBoxText: C_('checkbox', 'Install pending software updates'),
@@ -91,8 +91,8 @@ const restartDialogContent = {
subjectWithUpdates: C_('title', 'Install Updates & Restart'),
description(seconds) {
return ngettext(
- 'The system will restart automatically in %d second.',
- 'The system will restart automatically in %d seconds.',
+ 'The system will restart automatically in %d second',
+ 'The system will restart automatically in %d seconds',
seconds).format(seconds);
},
checkBoxText: C_('checkbox', 'Install pending software updates'),
@@ -110,8 +110,8 @@ const restartUpdateDialogContent = {
subject: C_('title', 'Restart & Install Updates'),
description(seconds) {
return ngettext(
- 'The system will automatically restart and install updates in %d second.',
- 'The system will automatically restart and install updates in %d seconds.',
+ 'The system will automatically restart and install updates in %d second',
+ 'The system will automatically restart and install updates in %d seconds',
seconds).format(seconds);
},
showBatteryWarning: true,
@@ -281,7 +281,7 @@ class EndSessionDialog extends ModalDialog.ModalDialog {
this._batteryWarning = new St.Label({
style_class: 'end-session-dialog-battery-warning',
- text: _('Low battery power: please plug in before installing updates.'),
+ text: _('Low battery power: please plug in before installing updates'),
});
this._batteryWarning.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
this._batteryWarning.clutter_text.line_wrap = true;
diff --git a/js/ui/extensionSystem.js b/js/ui/extensionSystem.js
index 8e4af6f15..11fc3a51a 100644
--- a/js/ui/extensionSystem.js
+++ b/js/ui/extensionSystem.js
@@ -352,7 +352,7 @@ export class ExtensionManager extends Signals.EventEmitter {
const notification = new MessageTray.Notification({
source,
title: _('Extension Updates Available'),
- body: _('Extension updates are ready to be installed.'),
+ body: _('Extension updates are ready to be installed'),
});
notification.connect('activated',
() => source.open());
diff --git a/js/ui/inhibitShortcutsDialog.js b/js/ui/inhibitShortcutsDialog.js
index 39b4b283f..8c30ab12c 100644
--- a/js/ui/inhibitShortcutsDialog.js
+++ b/js/ui/inhibitShortcutsDialog.js
@@ -78,7 +78,7 @@ export const InhibitShortcutsDialog = GObject.registerClass({
if (restoreAccel) {
let restoreLabel = new St.Label({
/* Translators: %s is a keyboard shortcut like "Super+x" */
- text: _('You can restore shortcuts by pressing %s.').format(restoreAccel),
+ text: _('You can restore shortcuts by pressing %s').format(restoreAccel),
style_class: 'message-dialog-description',
});
restoreLabel.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
diff --git a/js/ui/lookingGlass.js b/js/ui/lookingGlass.js
index c85f3ecbd..e3b0de7a2 100644
--- a/js/ui/lookingGlass.js
+++ b/js/ui/lookingGlass.js
@@ -782,7 +782,7 @@ const Extensions = GObject.registerClass({
errorDisplay.add_child(new St.Label({text: errors[i]}));
} else {
/* Translators: argument is an extension UUID. */
- let message = _('%s has not emitted any errors.').format(extension.uuid);
+ let message = _('%s has not emitted any errors').format(extension.uuid);
errorDisplay.add_child(new St.Label({text: message}));
}
diff --git a/js/ui/main.js b/js/ui/main.js
index 9f1697df2..ad0ea962f 100644
--- a/js/ui/main.js
+++ b/js/ui/main.js
@@ -387,7 +387,7 @@ async function _handleLockScreenWarning() {
notify(
_('Screen Lock disabled'),
- _('Screen Locking requires the GNOME display manager.'));
+ _('Screen Locking requires the GNOME display manager'));
}
}
diff --git a/js/ui/search.js b/js/ui/search.js
index 665dae490..197d75329 100644
--- a/js/ui/search.js
+++ b/js/ui/search.js
@@ -830,7 +830,7 @@ export const SearchResultsView = GObject.registerClass({
if (this.searchInProgress)
this._statusText.set_text(_('Searching…'));
else
- this._statusText.set_text(_('No results.'));
+ this._statusText.set_text(_('No results'));
}
}
diff --git a/js/ui/shellEntry.js b/js/ui/shellEntry.js
index 3c924f42f..508bf4eda 100644
--- a/js/ui/shellEntry.js
+++ b/js/ui/shellEntry.js
@@ -173,7 +173,7 @@ class CapsLockWarning extends St.Label {
...params,
});
- this.text = _('Caps lock is on.');
+ this.text = _('Caps lock is on');
this.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
this.clutter_text.line_wrap = true;
diff --git a/js/ui/shellMountOperation.js b/js/ui/shellMountOperation.js
index 915c39a7c..27f12fbf9 100644
--- a/js/ui/shellMountOperation.js
+++ b/js/ui/shellMountOperation.js
@@ -299,11 +299,11 @@ const ShellMountPasswordDialog = GObject.registerClass({
if (disksApp) {
this._keyfilesLabel.clutter_text.set_markup(
/* Translators: %s is the Disks application */
- _('To unlock a volume that uses keyfiles, use the %s utility instead.')
+ _('To unlock a volume that uses keyfiles, use the %s utility instead')
.format(disksApp.get_name()));
} else {
this._keyfilesLabel.clutter_text.set_markup(
- _('You need an external utility like Disks to unlock a volume that uses keyfiles.'));
+ _('You need an external utility like Disks to unlock a volume that uses keyfiles'));
}
this._keyfilesLabel.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
this._keyfilesLabel.clutter_text.line_wrap = true;
@@ -435,7 +435,7 @@ const ShellMountPasswordDialog = GObject.registerClass({
if (isNaN(pim)) {
this._pimEntry.set_text('');
- this._errorMessageLabel.text = _('The PIM must be a number or empty.');
+ this._errorMessageLabel.text = _('The PIM must be a number or empty');
this._errorMessageLabel.opacity = 255;
return;
}
diff --git a/js/ui/status/location.js b/js/ui/status/location.js
index e0df79e4f..1e0c26f6a 100644
--- a/js/ui/status/location.js
+++ b/js/ui/status/location.js
@@ -348,7 +348,7 @@ export const GeolocationDialog = GObject.registerClass({
content.add_child(reasonLabel);
let infoLabel = new St.Label({
- text: _('Location access can be changed at any time from the privacy settings.'),
+ text: _('Location access can be changed at any time from the privacy settings'),
style_class: 'message-dialog-description',
});
content.add_child(infoLabel);
diff --git a/js/ui/status/thunderbolt.js b/js/ui/status/thunderbolt.js
index 383104138..0a7dffb65 100644
--- a/js/ui/status/thunderbolt.js
+++ b/js/ui/status/thunderbolt.js
@@ -312,7 +312,7 @@ class Indicator extends SystemIndicator {
this._notify(title, body);
} else {
const title = _('Unauthorized Thunderbolt device');
- const body = _('New device has been detected and needs to be authorized by an administrator.');
+ const body = _('New device has been detected and needs to be authorized by an administrator');
this._notify(title, body);
}
}
diff --git a/js/ui/welcomeDialog.js b/js/ui/welcomeDialog.js
index d6f682483..7d0308bfd 100644
--- a/js/ui/welcomeDialog.js
+++ b/js/ui/welcomeDialog.js
@@ -51,7 +51,7 @@ class WelcomeDialog extends ModalDialog.ModalDialog {
_buildLayout() {
const title = _('Welcome to %s').format(this._getOSName());
- const description = _('If you want to learn your way around, check out the tour.');
+ const description = _('If you want to learn your way around, check out the tour');
const content = new Dialog.MessageDialogContent({title, description});
const icon = new St.Widget({style_class: 'welcome-dialog-image'});
diff --git a/src/shell-keyring-prompt.c b/src/shell-keyring-prompt.c
index bb0327966..d90db3b1c 100644
--- a/src/shell-keyring-prompt.c
+++ b/src/shell-keyring-prompt.c
@@ -761,7 +761,7 @@ shell_keyring_prompt_complete (ShellKeyringPrompt *self)
/* Do the passwords match? */
if (!g_str_equal (password, confirm))
{
- gcr_prompt_set_warning (GCR_PROMPT (self), _("Passwords do not match."));
+ gcr_prompt_set_warning (GCR_PROMPT (self), _("Passwords do not match"));
return FALSE;
}