[gnome-disk-utility] String review, part I
- From: Matthias Clasen <matthiasc src gnome org>
- To: svn-commits-list gnome org
- Subject: [gnome-disk-utility] String review, part I
- Date: Mon, 27 Jul 2009 17:11:38 +0000 (UTC)
commit 949e95db68080ae0f88323895d0e76e22ece42ef
Author: Matthias Clasen <mclasen redhat com>
Date: Mon Jul 27 13:09:24 2009 -0400
String review, part I
This commit adds a lot of translator comments. It also fixes a number
of strings to use ngettext() when appropriate, and adds context to
some ambiguous strings.
Translators, please review carefully and complain if this is not
good enough.
src/format-tool/gdu-format-dialog.c | 2 +
src/gdu-gtk/gdu-gtk.c | 20 ++--
src/gdu-gtk/gdu-time-label.c | 12 +--
src/gdu/gdu-ata-smart-attribute.c | 176 +++++++++++++++++++++++++++
src/gdu/gdu-linux-md-drive.c | 8 ++
src/gdu/gdu-util.c | 79 ++++++++++--
src/gdu/gdu-volume-hole.c | 3 +
src/gdu/gdu-volume.c | 40 ++++++-
src/nautilus-extension/nautilus-gdu.c | 1 +
src/palimpsest/gdu-section-health.c | 42 ++++++-
src/palimpsest/gdu-section-linux-md-drive.c | 22 ++--
src/palimpsest/gdu-section-partition.c | 1 +
src/palimpsest/gdu-section-unallocated.c | 2 +
src/palimpsest/gdu-shell.c | 5 +
14 files changed, 368 insertions(+), 45 deletions(-)
---
diff --git a/src/format-tool/gdu-format-dialog.c b/src/format-tool/gdu-format-dialog.c
index d8d86e4..e547944 100644
--- a/src/format-tool/gdu-format-dialog.c
+++ b/src/format-tool/gdu-format-dialog.c
@@ -361,6 +361,7 @@ gdu_format_dialog_constructed (GObject *object)
/* filesystem type */
label = gtk_label_new (NULL);
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+ /* Translators: 'type' means 'filesystem type' here. */
gtk_label_set_markup_with_mnemonic (GTK_LABEL (label), _("_Type:"));
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row + 1,
GTK_FILL, GTK_EXPAND | GTK_FILL, 2, 2);
@@ -385,6 +386,7 @@ gdu_format_dialog_constructed (GObject *object)
/* filesystem label */
label = gtk_label_new (NULL);
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+ /* Translators: 'name' means 'filesystem label' here. */
gtk_label_set_markup_with_mnemonic (GTK_LABEL (label), _("_Name:"));
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row + 1,
GTK_FILL, GTK_EXPAND | GTK_FILL, 2, 2);
diff --git a/src/gdu-gtk/gdu-gtk.c b/src/gdu-gtk/gdu-gtk.c
index e9fcde3..b43228d 100644
--- a/src/gdu-gtk/gdu-gtk.c
+++ b/src/gdu-gtk/gdu-gtk.c
@@ -168,40 +168,40 @@ show_busy_get_list_store (ShowBusyData *data, int *num_rows)
/* special handling for common programs without desktop files */
if (strcmp (basename, "bash") == 0 ||
strcmp (basename, "-bash") == 0) {
- name = g_strdup (_("Bourne Again Shell"));
+ name = g_strdup (C_("application name", "Bourne Again Shell"));
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
"terminal", 24, 0, NULL);
} else if (strcmp (basename, "sh") == 0 ||
strcmp (basename, "-sh") == 0) {
- name = g_strdup (_("Bourne Shell"));
+ name = g_strdup (C_("application name", "Bourne Shell"));
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
"terminal", 24, 0, NULL);
} else if (strcmp (basename, "csh") == 0 ||
strcmp (basename, "-csh") == 0) {
- name = g_strdup (_("C Shell"));
+ name = g_strdup (C_("application name", "C Shell"));
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
"terminal", 24, 0, NULL);
} else if (strcmp (basename, "tcsh") == 0 ||
strcmp (basename, "-tcsh") == 0) {
- name = g_strdup (_("TENEX C Shell"));
+ name = g_strdup (C_("application name", "TENEX C Shell"));
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
"terminal", 24, 0, NULL);
} else if (strcmp (basename, "zsh") == 0 ||
strcmp (basename, "-zsh") == 0) {
- name = g_strdup (_("Z Shell"));
+ name = g_strdup (C_("application name", "Z Shell"));
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
"terminal", 24, 0, NULL);
} else if (strcmp (basename, "ksh") == 0 ||
strcmp (basename, "-ksh") == 0) {
- name = g_strdup (_("Korn Shell"));
+ name = g_strdup (C_("application name", "Korn Shell"));
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
"terminal", 24, 0, NULL);
} else if (strcmp (basename, "top") == 0) {
- name = g_strdup (_("Process Viewer (top)"));
+ name = g_strdup (C_("application name", "Process Viewer (top)"));
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
GTK_STOCK_GOTO_TOP, 24, 0, NULL);
} else if (strcmp (basename, "less") == 0) {
- name = g_strdup (_("Terminal Pager (less)"));
+ name = g_strdup (C_("application name", "Terminal Pager (less)"));
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
GTK_STOCK_FILE, 24, 0, NULL);
}
@@ -213,7 +213,7 @@ show_busy_get_list_store (ShowBusyData *data, int *num_rows)
g_free (basename);
} else {
- name = g_strdup (_("Unknown"));
+ name = g_strdup (C_("application name", "Unknown"));
}
}
@@ -327,6 +327,7 @@ gdu_util_dialog_show_filesystem_busy (GtkWidget *parent_window,
/* todo: icon list */
window_icon = gdu_presentable_get_icon (enclosing_drive);
g_object_unref (enclosing_drive);
+ /* Translators: %d is the partition number, %s the name of the disk */
window_title = g_strdup_printf (_("Partition %d on %s"),
gdu_device_partition_get_number (device),
s);
@@ -1255,6 +1256,7 @@ gdu_util_fstype_combo_box_create_store (GduPool *pool, const char *include_exten
g_list_free (known_filesystems);
gtk_list_store_append (store, &iter);
+ /* Translators: Used as an option in a combobox of filesystem types, meaning 'do not create a filesystem' */
gtk_list_store_set (store, &iter,
0, "empty",
1, _("Empty"),
diff --git a/src/gdu-gtk/gdu-time-label.c b/src/gdu-gtk/gdu-time-label.c
index d9b9e44..a43d3fe 100644
--- a/src/gdu-gtk/gdu-time-label.c
+++ b/src/gdu-gtk/gdu-time-label.c
@@ -70,18 +70,10 @@ do_update (GduTimeLabel *time_label)
s = g_strdup_printf (_("Less than a minute ago"));
next_update = 60 - age;
} else if (age < 60 * 60) {
- if (age / 60 == 1) {
- s = g_strdup_printf (_("1 minute ago"));
- } else {
- s = g_strdup_printf (_("%d minutes ago"), age / 60);
- }
+ s = g_strdup_printf (ngettext ("%d minute ago", "%d minutes ago", age / 60), age / 60);
next_update = 60*(age/60 + 1) - age;
} else {
- if (age / 60 / 60 == 1) {
- s = g_strdup_printf (_("1 hour ago"));
- } else {
- s = g_strdup_printf (_("%d hours ago"), age / 60 / 60);
- }
+ s = g_strdup_printf (ngettext ("%d hour ago", "%d hours ago", age / 60 / 60), age / 60 / 60);
next_update = 60*60*(age/(60*60) + 1) - age;
}
gtk_label_set_text (GTK_LABEL (time_label), s);
diff --git a/src/gdu/gdu-ata-smart-attribute.c b/src/gdu/gdu-ata-smart-attribute.c
index 0990e13..652b996 100644
--- a/src/gdu/gdu-ata-smart-attribute.c
+++ b/src/gdu/gdu-ata-smart-attribute.c
@@ -179,79 +179,151 @@ attribute_get_details (GduAtaSmartAttribute *attr,
warn = FALSE;
switch (attr->priv->id) {
case 1:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Read Error Rate");
d = _("Frequency of errors while reading raw data from the disk. "
"A non-zero value indicates a problem with "
"either the disk surface or read/write heads.");
break;
case 2:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Throughput Performance");
d = _("Average efficiency of the disk.");
break;
case 3:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Spinup Time");
d = _("Time needed to spin up the disk.");
break;
case 4:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Start/Stop Count");
d = _("Number of spindle start/stop cycles.");
break;
case 5:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Reallocated Sector Count");
d = _("Count of remapped sectors. "
"When the hard drive finds a read/write/verification error, it mark the sector "
"as \"reallocated\" and transfers data to a special reserved area (spare area).");
break;
case 7:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Seek Error Rate");
d = _("Frequency of errors while positioning.");
break;
case 8:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Seek Timer Performance");
d = _("Average efficiency of operatings while positioning");
break;
case 9:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Power-On Hours");
d = _("Number of hours elapsed in the power-on state.");
break;
case 10:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Spinup Retry Count");
d = _("Number of retry attempts to spin up.");
break;
case 11:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Calibration Retry Count");
d = _("Number of attempts to calibrate the device.");
break;
case 12:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Power Cycle Count");
d = _("Number of power-on events.");
break;
case 13:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Soft read error rate");
d = _("Frequency of 'program' errors while reading from the disk.");
break;
case 191:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("G-sense Error Rate");
d = _("Frequency of mistakes as a result of impact loads.");
break;
case 192:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Power-off Retract Count");
d = _("Number of power-off or emergency retract cycles.");
break;
case 193:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Load/Unload Cycle Count");
d = _("Number of cycles into landing zone position.");
break;
case 194:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Temperature");
d = _("Current internal temperature in degrees Celsius.");
break;
case 195:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Hardware ECC Recovered");
d = _("Number of ECC on-the-fly errors.");
break;
case 196:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Reallocation Count");
d = _("Number of remapping operations. "
"The raw value of this attribute shows the total number of (successful "
@@ -259,6 +331,10 @@ attribute_get_details (GduAtaSmartAttribute *attr,
"to a spare area.");
break;
case 197:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Current Pending Sector Count");
d = _("Number of sectors waiting to be remapped. "
"If the sector waiting to be remapped is subsequently written or read "
@@ -269,109 +345,209 @@ attribute_get_details (GduAtaSmartAttribute *attr,
warn = TRUE;
break;
case 198:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Uncorrectable Sector Count");
d = _("The total number of uncorrectable errors when reading/writing a sector. "
"A rise in the value of this attribute indicates defects of the "
"disk surface and/or problems in the mechanical subsystem.");
break;
case 199:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("UDMA CRC Error Rate");
d = _("Number of CRC errors during UDMA mode.");
break;
case 200:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Write Error Rate");
d = _("Number of errors while writing to disk (or) multi-zone error rate (or) flying-height.");
break;
case 201:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Soft Read Error Rate");
d = _("Number of off-track errors.");
break;
case 202:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Data Address Mark Errors");
d = _("Number of Data Address Mark (DAM) errors (or) vendor-specific.");
break;
case 203:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Run Out Cancel");
d = _("Number of ECC errors.");
break;
case 204:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Soft ECC correction");
d = _("Number of errors corrected by software ECC.");
break;
case 205:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Thermal Asperity Rate");
d = _("Number of Thermal Asperity Rate errors.");
break;
case 206:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Flying Height");
d = _("Height of heads above the disk surface.");
break;
case 207:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Spin High Current");
d = _("Amount of high current used to spin up the drive.");
break;
case 208:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Spin Buzz");
d = _("Number of buzz routines to spin up the drive.");
break;
case 209:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Offline Seek Performance");
d = _("Drive's seek performance during offline operations.");
break;
case 220:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Disk Shift");
d = _("Shift of disk is possible as a result of strong shock loading in the store, "
"as a result of falling (or) temperature.");
break;
case 221:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("G-sense Error Rate");
d = _("Number of errors as a result of impact loads as detected by a shock sensor.");
break;
case 222:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Loaded Hours");
d = _("Number of hours in general operational state.");
break;
case 223:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Load/Unload Retry Count");
d = _("Loading on drive caused by numerous recurrences of operations, like reading, "
"recording, positioning of heads, etc.");
break;
case 224:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Load Friction");
d = _("Load on drive cause by friction in mechanical parts of the store.");
break;
case 225:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Load/Unload Cycle Count");
d = _("Total number of load cycles.");
break;
case 226:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Load-in Time");
d = _("General time for loading in a drive.");
break;
case 227:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Torque Amplification Count");
d = _("Quantity efforts of the rotating moment of a drive.");
break;
case 228:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Power-off Retract Count");
d = _("Number of power-off retract events.");
break;
case 230:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("GMR Head Amplitude");
d = _("Amplitude of heads trembling (GMR-head) in running mode.");
break;
case 231:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Temperature");
d = _("Temperature of the drive.");
break;
case 240:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Head Flying Hours");
d = _("Time while head is positioning.");
break;
case 250:
+ /* Translators: S.M.A.R.T attribute, see
+ * http://ata_smartmontools.sourceforge.net/doc.html
+ * or the next string for a longer explanation.
+ */
n = _("Read Error Retry Rate");
d = _("Number of errors while reading from a disk.");
break;
diff --git a/src/gdu/gdu-linux-md-drive.c b/src/gdu/gdu-linux-md-drive.c
index e4ff99e..614ac9d 100644
--- a/src/gdu/gdu-linux-md-drive.c
+++ b/src/gdu/gdu-linux-md-drive.c
@@ -494,14 +494,21 @@ gdu_linux_md_drive_get_name (GduPresentable *presentable)
level_str = gdu_linux_md_get_raid_level_for_display (level);
if (name == NULL || strlen (name) == 0) {
+ /* Translators: %s is a RAID level, e.g. 'RAID-5' */
ret = g_strdup_printf (_("%s Drive"), level_str);
} else {
+ /* Translators: First %s is a RAID level, e.g. 'RAID-5'
+ * second %s is a drive name
+ */
ret = g_strdup_printf (_("%s (%s)"), name, level_str);
}
g_free (level_str);
} else if (drive->priv->device != NULL) {
+ /* Translators: First %s is a device file such as /dev/sda4
+ * second %s is the state of the device
+ */
ret = g_strdup_printf (_("RAID device %s (%s)"),
gdu_device_get_device_file (drive->priv->device),
gdu_device_linux_md_get_state (drive->priv->device));
@@ -509,6 +516,7 @@ gdu_linux_md_drive_get_name (GduPresentable *presentable)
} else {
g_warn_if_fail (drive->priv->device_file != NULL);
+ /* Translators: %s is a device file such as /dev/sda4 */
ret = g_strdup_printf (_("RAID device %s"), drive->priv->device_file);
}
diff --git a/src/gdu/gdu-util.c b/src/gdu/gdu-util.c
index 8935df3..c0c1925 100644
--- a/src/gdu/gdu-util.c
+++ b/src/gdu/gdu-util.c
@@ -62,7 +62,7 @@ get_pow2_size (guint64 size)
else
digits = 0;
- str = g_strdup_printf (_("%.*f %s"), digits, displayed_size, unit);
+ str = g_strdup_printf ("%.*f %s", digits, displayed_size, unit);
return str;
}
@@ -91,7 +91,7 @@ get_pow10_size (guint64 size)
else
digits = 0;
- str = g_strdup_printf (_("%.*f %s"), digits, displayed_size, unit);
+ str = g_strdup_printf ("%.*f %s", digits, displayed_size, unit);
return str;
}
@@ -105,12 +105,19 @@ gdu_util_get_size_for_display (guint64 size, gboolean long_string)
if (long_string) {
char *pow2_str;
char *pow10_str;
+ char *size_str;
pow2_str = get_pow2_size (size);
pow10_str = get_pow10_size (size);
+ size_str = g_strdup_printf ("%'" G_GINT64_FORMAT, size);
- str = g_strdup_printf (_("%s / %s / %'" G_GINT64_FORMAT " bytes"), pow10_str, pow2_str, size);
+ /* Translators: The first %s is the size in power-of-10 units, e.g. 100 KB
+ * the second %s is the size in power-of-2 units, e.g. 20 MiB
+ * the third %s is the size as a number
+ */
+ str = g_strdup_printf (_("%s / %s / %s bytes"), pow10_str, pow2_str, size_str);
+ g_free (size_str);
g_free (pow10_str);
g_free (pow2_str);
} else {
@@ -138,18 +145,22 @@ gdu_util_get_fstype_for_display (const char *fstype, const char *fsversion, gboo
if (strcmp (fsversion, "FAT12") == 0) {
if (long_string) {
+ /* Translators: FAT is a filesystem type */
s = g_strdup (_("FAT (12-bit version)"));
} else {
+ /* Translators: FAT is a filesystem type */
s = g_strdup (_("FAT"));
}
} else if (strcmp (fsversion, "FAT16") == 0) {
if (long_string) {
+ /* Translators: FAT is a filesystem type */
s = g_strdup (_("FAT (16-bit version)"));
} else {
s = g_strdup (_("FAT"));
}
} else if (strcmp (fsversion, "FAT32") == 0) {
if (long_string) {
+ /* Translators: FAT is a filesystem type */
s = g_strdup (_("FAT (32-bit version)"));
} else {
s = g_strdup (_("FAT"));
@@ -164,20 +175,24 @@ gdu_util_get_fstype_for_display (const char *fstype, const char *fsversion, gboo
} else if (strcmp (fstype, "ntfs") == 0) {
if (long_string) {
if (strlen (fsversion) > 0)
+ /* Translators: NTFS is a filesystem type */
s = g_strdup_printf (_("NTFS (version %s)"), fsversion);
else
+ /* Translators: NTFS is a filesystem type */
s = g_strdup_printf (_("NTFS"));
} else {
s = g_strdup (_("NTFS"));
}
} else if (strcmp (fstype, "hfs") == 0) {
if (long_string) {
+ /* Translators: HFS is a filesystem type */
s = g_strdup (_("HFS"));
} else {
s = g_strdup (_("HFS"));
}
} else if (strcmp (fstype, "hfsplus") == 0) {
if (long_string) {
+ /* Translators: HFS+ is a filesystem type */
s = g_strdup (_("HFS+"));
} else {
s = g_strdup (_("HFS+"));
@@ -186,69 +201,90 @@ gdu_util_get_fstype_for_display (const char *fstype, const char *fsversion, gboo
if (long_string) {
s = g_strdup (_("Linux Unified Key Setup"));
} else {
+ /* Translators: LUKS is 'Linux Unified Key Setup', a disk encryption format */
s = g_strdup (_("LUKS"));
}
} else if (strcmp (fstype, "ext2") == 0) {
if (long_string) {
if (strlen (fsversion) > 0)
+ /* Translators: Ext2 is a filesystem type */
s = g_strdup_printf (_("Linux Ext2 (version %s)"), fsversion);
else
+ /* Translators: Ext2 is a filesystem type */
s = g_strdup_printf (_("Linux Ext2"));
} else {
+ /* Translators: Ext2 is a filesystem type */
s = g_strdup (_("ext2"));
}
} else if (strcmp (fstype, "ext3") == 0) {
if (long_string) {
if (strlen (fsversion) > 0)
+ /* Translators: Ext3 is a filesystem type */
s = g_strdup_printf (_("Linux Ext3 (version %s)"), fsversion);
else
+ /* Translators: Ext3 is a filesystem type */
s = g_strdup_printf (_("Linux Ext3"));
} else {
+ /* Translators: Ext3 is a filesystem type */
s = g_strdup (_("ext3"));
}
} else if (strcmp (fstype, "jbd") == 0) {
if (long_string) {
if (strlen (fsversion) > 0)
+ /* Translators: 'Journal' refers to a filesystem technology here, see 'journaling filesystems' */
s = g_strdup_printf (_("Journal for Linux ext3 (version %s)"), fsversion);
else
+ /* Translators: 'Journal' refers to a filesystem technology here, see 'journaling filesystems' */
s = g_strdup_printf (_("Journal for Linux ext3"));
} else {
+ /* Translators: jbd is a filesystem type */
s = g_strdup (_("jbd"));
}
} else if (strcmp (fstype, "ext4") == 0) {
if (long_string) {
if (strlen (fsversion) > 0)
+ /* Translators: ext4 is a filesystem type */
s = g_strdup_printf (_("Linux Ext4 (version %s)"), fsversion);
else
+ /* Translators: ext4 is a filesystem type */
s = g_strdup_printf (_("Linux Ext4"));
} else {
+ /* Translators: Ext4 is a filesystem type */
s = g_strdup (_("ext4"));
}
} else if (strcmp (fstype, "xfs") == 0) {
if (long_string) {
if (strlen (fsversion) > 0)
+ /* Translators: xfs is a filesystem type */
s = g_strdup_printf (_("Linux XFS (version %s)"), fsversion);
else
+ /* Translators: xfs is a filesystem type */
s = g_strdup_printf (_("Linux XFS"));
} else {
+ /* Translators: xfs is a filesystem type */
s = g_strdup (_("xfs"));
}
} else if (strcmp (fstype, "iso9660") == 0) {
if (long_string) {
+ /* Translators: iso9660 is a filesystem type */
s = g_strdup (_("ISO 9660"));
} else {
+ /* Translators: iso9660 is a filesystem type */
s = g_strdup (_("iso9660"));
}
} else if (strcmp (fstype, "udf") == 0) {
if (long_string) {
+ /* Translators: udf is a filesystem type */
s = g_strdup (_("Universal Disk Format"));
} else {
+ /* Translators: udf is a filesystem type */
s = g_strdup (_("udf"));
}
} else if (strcmp (fstype, "swap") == 0) {
if (long_string) {
s = g_strdup (_("Swap Space"));
} else {
+ /* Translators: filesystem type for swap space */
s = g_strdup (_("swap"));
}
} else if (strcmp (fstype, "LVM2_member") == 0) {
@@ -258,6 +294,7 @@ gdu_util_get_fstype_for_display (const char *fstype, const char *fsversion, gboo
else
s = g_strdup_printf (_("LVM2 Physical Volume"));
} else {
+ /* Translators: short name for LVM2 Physical Volume */
s = g_strdup (_("lvm2_pv"));
}
@@ -268,6 +305,7 @@ gdu_util_get_fstype_for_display (const char *fstype, const char *fsversion, gboo
else
s = g_strdup_printf (_("RAID Component"));
} else {
+ /* Translators: short name for 'RAID Component' */
s = g_strdup (_("raid"));
}
} else {
@@ -439,6 +477,9 @@ gdu_util_get_desc_for_part_type (const char *scheme, const char *type)
return g_strdup (part_type[n].name);
}
+ /* Translators: Shown for unknown partition types.
+ * %s is the partition type name
+ */
return g_strdup_printf (_("Unknown (%s)"), type);
}
@@ -733,34 +774,48 @@ gdu_util_get_connection_for_display (const char *connection_interface, guint64 c
name = NULL;
if (connection_interface != NULL) {
if (strcmp (connection_interface, "ata_serial") == 0) {
+ /* Translators: interface name for serial ATA disks */
name = _("SATA");
} else if (strcmp (connection_interface, "ata_serial_esata") == 0) {
+ /* Translators: interface name for serial ATA disks */
name = _("eSATA");
} else if (strcmp (connection_interface, "ata_parallel") == 0) {
+ /* Translators: interface name for parallel ATA disks */
name = _("PATA");
} else if (g_str_has_prefix (connection_interface, "ata")) {
+ /* Translators: interface name for ATA disks */
name = _("ATA");
} else if (g_str_has_prefix (connection_interface, "scsi")) {
+ /* Translators: interface name for SCSI disks */
name = _("SCSI");
} else if (strcmp (connection_interface, "usb") == 0) {
+ /* Translators: interface name for USB disks */
name = _("USB");
} else if (strcmp (connection_interface, "firewire") == 0) {
+ /* Translators: interface name for firewire disks */
name = _("Firewire");
} else if (strcmp (connection_interface, "sdio") == 0) {
+ /* Translators: interface name for SDIO disks */
name = _("SDIO");
} else if (strcmp (connection_interface, "virtual") == 0) {
+ /* Translators: interface name for virtual disks */
name = _("Virtual");
}
}
if (name == NULL)
- name = _("Unknown");
+ /* Translators: name shown for unknown disk connection interfaces */
+ name = C_("connection name", "Unknown");
if (connection_speed > 0) {
char *speed;
speed = gdu_util_get_speed_for_display (connection_speed);
- result = g_strdup_printf ("%s at %s", name, speed);
+ /* Translators: Connection with speed information.
+ * First %s is the connection name, like 'SATA' or 'USB'
+ * second %s is the speed, like '2 Mbit/s'
+ */
+ result = g_strdup_printf (_("%s at %s"), name, speed);
g_free (speed);
} else {
result = g_strdup (name);
@@ -777,19 +832,19 @@ gdu_linux_md_get_raid_level_for_display (const gchar *linux_md_raid_level)
gchar *ret;
if (strcmp (linux_md_raid_level, "raid0") == 0) {
- ret = g_strdup (_("RAID-0"));
+ ret = g_strdup (C_("RAID level", "RAID-0"));
} else if (strcmp (linux_md_raid_level, "raid1") == 0) {
- ret = g_strdup (_("RAID-1"));
+ ret = g_strdup (C_("RAID level", "RAID-1"));
} else if (strcmp (linux_md_raid_level, "raid4") == 0) {
- ret = g_strdup (_("RAID-4"));
+ ret = g_strdup (C_("RAID level", "RAID-4"));
} else if (strcmp (linux_md_raid_level, "raid5") == 0) {
- ret = g_strdup (_("RAID-5"));
+ ret = g_strdup (C_("RAID level", "RAID-5"));
} else if (strcmp (linux_md_raid_level, "raid6") == 0) {
- ret = g_strdup (_("RAID-6"));
+ ret = g_strdup (C_("RAID level", "RAID-6"));
} else if (strcmp (linux_md_raid_level, "raid10") == 0) {
- ret = g_strdup (_("RAID-10"));
+ ret = g_strdup (C_("RAID level", "RAID-10"));
} else if (strcmp (linux_md_raid_level, "linear") == 0) {
- ret = g_strdup (_("JBOD"));
+ ret = g_strdup (C_("RAID level", "JBOD"));
} else {
ret = g_strdup (linux_md_raid_level);
}
diff --git a/src/gdu/gdu-volume-hole.c b/src/gdu/gdu-volume-hole.c
index 6d77fca..d94db02 100644
--- a/src/gdu/gdu-volume-hole.c
+++ b/src/gdu/gdu-volume-hole.c
@@ -144,6 +144,9 @@ gdu_volume_hole_get_name (GduPresentable *presentable)
char *strsize;
strsize = gdu_util_get_size_for_display (volume_hole->priv->size, FALSE);
+ /* Translators: label for an unallocated space on a disk
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Unallocated"), strsize);
g_free (strsize);
diff --git a/src/gdu/gdu-volume.c b/src/gdu/gdu-volume.c
index 14fca87..6e91d22 100644
--- a/src/gdu/gdu-volume.c
+++ b/src/gdu/gdu-volume.c
@@ -270,12 +270,18 @@ gdu_volume_get_name (GduPresentable *presentable)
}
if (is_extended_partition) {
+ /* Translators: Label for an extended partition
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Extended"), strsize);
} else if ((usage != NULL && strcmp (usage, "filesystem") == 0) &&
(label != NULL && strlen (label) > 0)) {
result = g_strdup (label);
} else if (usage != NULL) {
if (strcmp (usage, "crypto") == 0) {
+ /* Translators: Label for an extended partition
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Encrypted"), strsize);
} else if (gdu_device_is_optical_disc (volume->priv->device)) {
for (n = 0; disc_data[n].disc_type != NULL; n++) {
@@ -289,11 +295,20 @@ gdu_volume_get_name (GduPresentable *presentable)
result = g_strdup (_("Optical Disc"));
}
} else if (strcmp (usage, "filesystem") == 0) {
+ /* Translators: Label for a partition with a filesystem
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Filesystem"), strsize);
} else if (strcmp (usage, "partitiontable") == 0) {
+ /* Translators: Label for a partition table
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Partition Table"), strsize);
} else if (strcmp (usage, "raid") == 0) {
if (strcmp (type, "LVM2_member") == 0) {
+ /* Translators: Label for a LVM volume
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s LVM2 Physical Volume"), strsize);
} else {
const gchar *array_name;
@@ -306,12 +321,21 @@ gdu_volume_get_name (GduPresentable *presentable)
if (level != NULL && strlen (level) > 0)
level_str = gdu_linux_md_get_raid_level_for_display (level);
else
- level_str = g_strdup (_("RAID"));
+ /* Translators: Used if no specific RAID level could be determined */
+ level_str = g_strdup (C_("RAID level", "RAID"));
if (array_name != NULL && strlen (array_name) > 0) {
- /* RAID component; the label is the array name */
+ /* Translators: label for a RAID component
+ * First %s is the size, formatted like '45 GB'
+ * second %s is the RAID level string, e.g 'RAID-5'
+ * third %s is the name of the array
+ */
result = g_strdup_printf (_("%s %s (%s)"), strsize, level_str, array_name);
} else {
+ /* Translators: label for a RAID component
+ * First %s is the size, formatted like '45 GB'
+ * second %s is the RAID level string, e.g 'RAID-5'
+ */
result = g_strdup_printf (_("%s %s"), strsize, level_str);
}
@@ -319,15 +343,27 @@ gdu_volume_get_name (GduPresentable *presentable)
}
} else if (strcmp (usage, "other") == 0) {
if (strcmp (type, "swap") == 0) {
+ /* Translators: label for a swap partition
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Swap Space"), strsize);
} else {
+ /* Translators: label for a data partition
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Data"), strsize);
}
} else if (strcmp (usage, "") == 0) {
+ /* Translators: label for a volume of unrecognized use
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Unrecognized"), strsize);
}
} else {
if (gdu_device_is_partition (volume->priv->device)) {
+ /* Translators: label for a partition
+ * %s is the size, formatted like '45 GB'
+ */
result = g_strdup_printf (_("%s Partition"), strsize);
} else {
result = g_strdup_printf (_("%s Partition"), strsize);
diff --git a/src/nautilus-extension/nautilus-gdu.c b/src/nautilus-extension/nautilus-gdu.c
index 09e131c..8f69bda 100644
--- a/src/nautilus-extension/nautilus-gdu.c
+++ b/src/nautilus-extension/nautilus-gdu.c
@@ -221,6 +221,7 @@ nautilus_gdu_get_file_items (NautilusMenuProvider *provider,
goto out;
item = nautilus_menu_item_new ("NautilusGdu::format",
+ /* Translators: this is a verb */
_("_Format..."),
_("Create new filesystem on the selected device"),
"nautilus-gdu");
diff --git a/src/palimpsest/gdu-section-health.c b/src/palimpsest/gdu-section-health.c
index e45410e..ad4fc0c 100644
--- a/src/palimpsest/gdu-section-health.c
+++ b/src/palimpsest/gdu-section-health.c
@@ -65,7 +65,10 @@ pretty_to_string (guint64 pretty_value, GduAtaSmartAttributeUnit pretty_unit)
} else if (pretty_value > 1000) {
ret = g_strdup_printf (_("%.3g secs"), pretty_value / 1000.0);
} else {
- ret = g_strdup_printf (_("%" G_GUINT64_FORMAT " msec"), pretty_value);
+ char *str;
+ str = g_strdup_printf ("%" G_GUINT64_FORMAT, pretty_value);
+ ret = g_strdup_printf (_("%s msec"), str);
+ g_free (str);
}
break;
@@ -294,6 +297,7 @@ smart_data_set (GduSectionHealth *section)
s = g_strconcat ("<span foreground='red'><b>",
C_("ATA SMART test result", "FAILED"),
"</b></span> ",
+ /* Translators: this is a detail that is appended to the test result, like 'FAILED (Electrical)' */
C_("ATA SMART test result", "(Electrical)"),
NULL);
break;
@@ -301,6 +305,7 @@ smart_data_set (GduSectionHealth *section)
s = g_strconcat ("<span foreground='red'><b>",
C_("ATA SMART test result", "FAILED"),
"</b></span> ",
+ /* Translators: this is a detail that is appended to the test result, like 'FAILED (Servo)' */
C_("ATA SMART test result", "(Servo)"),
NULL);
break;
@@ -308,6 +313,7 @@ smart_data_set (GduSectionHealth *section)
s = g_strconcat ("<span foreground='red'><b>",
C_("ATA SMART test result", "FAILED"),
"</b></span> ",
+ /* Translators: this is a detail that is appended to the test result, like 'FAILED (Read)' */
C_("ATA SMART test result", "(Read)"),
NULL);
break;
@@ -315,6 +321,7 @@ smart_data_set (GduSectionHealth *section)
s = g_strconcat ("<span foreground='red'><b>",
C_("ATA SMART test result", "FAILED"),
"</b></span> ",
+ /* Translators: this is a detail that is appended to the test result, like 'FAILED (Suspected of having handled damage)' */
C_("ATA SMART test result", "(Suspected of having handled damage)"),
NULL);
break;
@@ -605,6 +612,7 @@ expose_event_callback (GtkWidget *widget, GdkEventExpose *event, gpointer user_d
val = val_y_top - (val_y_top - val_y_bottom) * n / (num_y_markers - 1);
char *s;
+ /* Translators: %g is a numeric temperature value */
s = g_strdup_printf (C_("ATA SMART graph label", "%g\302\260"), ceil (val));
cairo_text_extents_t te;
@@ -678,23 +686,34 @@ expose_event_callback (GtkWidget *widget, GdkEventExpose *event, gpointer user_d
if (age == 0) {
s = g_strdup_printf (C_("ATA SMART graph label", "now"));
} else if (age < 3600) {
+ /* Translators: %d is a number of minutes */
s = g_strdup_printf (C_("ATA SMART graph label", "%dm"), age / 60);
} else if (age < 24 * 3600) {
int h = age/3600;
int m = (age%3600) / 60;
if (m == 0)
+ /* Translators: %d is a number of hours */
s = g_strdup_printf (C_("ATA SMART graph label", "%dh"), h);
else
+ /* Translators: first %d is a number of hours, second %d is a number of minutes */
s = g_strdup_printf (C_("ATA SMART graph label", "%dh %dm"), h, m);
} else {
int d = age/(24*3600);
int h = (age%(24*3600)) / 3600;
int m = (age%3600) / 60;
if (h == 0 && m == 0)
+ /* Translators: %d is a number of days */
s = g_strdup_printf (C_("ATA SMART graph label", "%dd"), d);
else if (m == 0)
+ /* Translators: first %d is a number of days,
+ * second %d is a number of hours
+ */
s = g_strdup_printf (C_("ATA SMART graph label", "%dd %dh"), d, h);
else
+ /* Translators: first %d is a number of days,
+ * second %d is a number of hours
+ * third %d is a number of minutes
+ */
s = g_strdup_printf (C_("ATA SMART graph label", "%dd %dh %dm"), d, h, m);
}
@@ -1138,17 +1157,29 @@ on_details_clicked (GtkButton *button,
}
if (gdu_ata_smart_attribute_get_online (a)) {
+ /* Translators: how often the attribute is updated
+ * 'online' means 'every time data is collected'
+ */
updates_str = _("Online");
tips_updates_str = _("Every time data is collected.");
} else {
+ /* Translators: how often the attribute is updated
+ * 'offline' means 'only when performing a self-test'
+ */
updates_str = _("Offline");
tips_updates_str = _("Only when performing a self-test.");
}
if (gdu_ata_smart_attribute_get_prefailure (a)) {
+ /* Translators: what a failure means
+ * 'pre-fail' means 'sign of imminent disk failure'
+ */
type_str = _("Pre-fail");
tips_type_str = _("Failure is a sign of imminent disk failure.");
} else {
+ /* Translators: what a failure means
+ * 'old-age' means 'sign of old age'
+ */
type_str = _("Old-age");
tips_type_str = _("Failure is a sign of old age.");
}
@@ -1156,7 +1187,9 @@ on_details_clicked (GtkButton *button,
tooltip_str = g_strdup_printf ("<b>%s</b> %s\n"
"<b>%s</b> %s\n"
"<b>%s</b> %s",
+ /* Translators: 'type' means 'type of failure' here */
_("Type:"), tips_type_str,
+ /* Translators: 'updates' refers to online/offline here */
_("Updates:"), tips_updates_str,
_("Description:"), desc_str);
@@ -1183,7 +1216,7 @@ on_details_clicked (GtkButton *button,
icon_height,
GTK_ICON_LOOKUP_GENERIC_FALLBACK,
NULL);
- status_str = g_strdup (_("N/A"));
+ status_str = g_strdup (C_("SMART Attribute status", "N/A"));
} else {
if (is_good) {
status_pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
@@ -1191,7 +1224,7 @@ on_details_clicked (GtkButton *button,
icon_height,
GTK_ICON_LOOKUP_GENERIC_FALLBACK,
NULL);
- status_str = g_strdup (_("OK"));
+ status_str = g_strdup (C_("SMART Attribute status", "OK"));
} else {
status_pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
"gdu-smart-failing",
@@ -1199,7 +1232,7 @@ on_details_clicked (GtkButton *button,
GTK_ICON_LOOKUP_GENERIC_FALLBACK,
NULL);
status_str = g_strconcat ("<span foreground='red'><b>",
- _("FAILING"),
+ C_("SMART Attribute status", "FAILING"),
"</b></span>",
NULL);
}
@@ -1456,6 +1489,7 @@ gdu_section_health_init (GduSectionHealth *section)
section->priv = G_TYPE_INSTANCE_GET_PRIVATE (section, GDU_TYPE_SECTION_HEALTH, GduSectionHealthPrivate);
label = gtk_label_new (NULL);
+ /* Translators: section heading, referring to disk health */
s = g_strconcat ("<b>", _("Health"), "</b>", NULL);
gtk_label_set_markup (GTK_LABEL (label), s);
g_free (s);
diff --git a/src/palimpsest/gdu-section-linux-md-drive.c b/src/palimpsest/gdu-section-linux-md-drive.c
index e032ea3..b85d71b 100644
--- a/src/palimpsest/gdu-section-linux-md-drive.c
+++ b/src/palimpsest/gdu-section-linux-md-drive.c
@@ -692,26 +692,30 @@ update (GduSectionLinuxMdDrive *section)
raid_size = gdu_presentable_get_size (presentable);
if (strcmp (level, "raid0") == 0) {
- level_str = g_strdup (_("Striped (RAID-0)"));
+ level_str = g_strdup (C_("RAID component type", "Striped (RAID-0)"));
} else if (strcmp (level, "raid1") == 0) {
- level_str = g_strdup (_("Mirrored (RAID-1)"));
+ level_str = g_strdup (C_("RAID component type", "Mirrored (RAID-1)"));
} else if (strcmp (level, "raid4") == 0) {
- level_str = g_strdup (_("RAID-4"));
+ level_str = g_strdup (C_("RAID component type", "RAID-4"));
} else if (strcmp (level, "raid5") == 0) {
- level_str = g_strdup (_("RAID-5"));
+ level_str = g_strdup (C_("RAID component type", "RAID-5"));
} else if (strcmp (level, "raid6") == 0) {
- level_str = g_strdup (_("RAID-6"));
+ level_str = g_strdup (C_("RAID component type", "RAID-6"));
} else if (strcmp (level, "linear") == 0) {
- level_str = g_strdup (_("Linear (Just a Bunch Of Disks)"));
+ level_str = g_strdup (C_("RAID component type", "Linear (Just a Bunch Of Disks)"));
} else {
level_str = g_strdup (level);
}
s = gdu_util_get_size_for_display (component_size, FALSE);
if (strcmp (level, "linear") == 0) {
- components_str = g_strdup_printf (_("%d Components"), num_raid_devices);
+ /* Translators: %d is the number of components in the RAID */
+ components_str = g_strdup_printf (ngettext ("%d Component", "%d Components", num_raid_devices), num_raid_devices);
} else {
- components_str = g_strdup_printf (_("%d Components (%s each)"), num_raid_devices, s);
+ /* Translators: %d is the number of components in the RAID,
+ * %s is the size of each component, formatted like '45 GB'
+ */
+ components_str = g_strdup_printf (ngettext ("%d Component (%s)", "%d Components (%s each)", num_raid_devices), num_raid_devices, s);
}
g_free (s);
@@ -1091,12 +1095,14 @@ gdu_section_linux_md_drive_init (GduSectionLinuxMdDrive *section)
gtk_widget_set_tooltip_text (button, _("Adds a new component to the running RAID array. Use this "
"when replacing a failed component or adding a hot spare."));
+ /* Translators: this is a verb, as in 'check for consistency' */
button = gtk_button_new_with_mnemonic (_("Chec_k"));
gtk_container_add (GTK_CONTAINER (button_box), button);
section->priv->add_button = button;
g_signal_connect (button, "clicked", G_CALLBACK (on_check_clicked), section);
gtk_widget_set_tooltip_text (button, _("Starts checking the RAID array for redundancy"));
+ /* Translators: this is a verb, as in 'repair this RAID array' */
button = gtk_button_new_with_mnemonic (_("_Repair"));
gtk_container_add (GTK_CONTAINER (button_box), button);
section->priv->add_button = button;
diff --git a/src/palimpsest/gdu-section-partition.c b/src/palimpsest/gdu-section-partition.c
index b8b33a1..2be2f75 100644
--- a/src/palimpsest/gdu-section-partition.c
+++ b/src/palimpsest/gdu-section-partition.c
@@ -569,6 +569,7 @@ gdu_section_partition_init (GduSectionPartition *section)
/* partition type */
label = gtk_label_new (NULL);
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+ /* Translators: 'Type' means partition type here */
gtk_label_set_markup_with_mnemonic (GTK_LABEL (label), _("Ty_pe:"));
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row + 1,
GTK_FILL, GTK_EXPAND | GTK_FILL, 2, 2);
diff --git a/src/palimpsest/gdu-section-unallocated.c b/src/palimpsest/gdu-section-unallocated.c
index 008d9f7..a924fa3 100644
--- a/src/palimpsest/gdu-section-unallocated.c
+++ b/src/palimpsest/gdu-section-unallocated.c
@@ -647,6 +647,7 @@ gdu_section_unallocated_init (GduSectionUnallocated *section)
label = gtk_label_new (NULL);
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+ /* Translators: unit label for a control that determines partition size in megabytes */
gtk_label_set_markup (GTK_LABEL (label), _("MB"));
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
@@ -658,6 +659,7 @@ gdu_section_unallocated_init (GduSectionUnallocated *section)
/* _file system_ label */
label = gtk_label_new (NULL);
gtk_misc_set_alignment (GTK_MISC (label), 1.0, 0.5);
+ /* Translators: 'label' means filesystem label here */
gtk_label_set_markup_with_mnemonic (GTK_LABEL (label), _("_Label:"));
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row + 1,
GTK_FILL, GTK_EXPAND | GTK_FILL, 2, 2);
diff --git a/src/palimpsest/gdu-shell.c b/src/palimpsest/gdu-shell.c
index 89d0047..2c782b4 100644
--- a/src/palimpsest/gdu-shell.c
+++ b/src/palimpsest/gdu-shell.c
@@ -224,10 +224,12 @@ details_update (GduShell *shell)
} else if (strcmp (scheme, "gpt") == 0) {
s = g_strdup (_("GUID Partition Table"));
} else {
+ /* Translators: 'scheme' refers to a partition table format here, like 'mbr' or 'gpt' */
s = g_strdup_printf (_("Unknown Scheme: %s"), scheme);
}
g_ptr_array_add (details,
+ /* Translators: %s is the name of the partition table format, like 'Master Boot Record' */
g_strdup_printf (_("Partitioned Media (%s)"), s));
g_free (s);
@@ -276,12 +278,14 @@ details_update (GduShell *shell)
gdu_device_drive_get_connection_interface (device),
gdu_device_drive_get_connection_speed (device));
g_ptr_array_add (details,
+ /* Translators: %s is the name of a connection, like 'USB at 2 MB/s' */
g_strdup_printf (_("Connected via %s"), s));
g_free (s);
}
if (device_file != NULL) {
if (gdu_device_is_read_only (device)) {
+ /* Translators: %s is the device file */
g_ptr_array_add (details,
g_strdup_printf (_("%s (Read Only)"), device_file));
} else {
@@ -304,6 +308,7 @@ details_update (GduShell *shell)
gdu_device_id_get_type (device),
gdu_device_id_get_version (device),
TRUE);
+ /* Translators: %s is the filesystem name */
g_ptr_array_add (details,
g_strdup_printf (_("%s File System"), fsname));
g_free (fsname);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]