All of lore.kernel.org
 help / color / mirror / Atom feed
* Unclear gettextized strings
@ 2012-02-05 18:23 Vladimir 'φ-coder/phcoder' Serbinenko
       [not found] ` <4F2ECE45.5000201@gmail.com>
  0 siblings, 1 reply; 2+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-02-05 18:23 UTC (permalink / raw)
  To: mario.blaettermann, yurchor, The development of GRUB 2

[-- Attachment #1: Type: text/plain, Size: 1817 bytes --]

Hello, all.
First of all, I'd like to say great thanks to Mario Blättermann and Yuri 
Chornoivan who translated  the recent gettext upload into German and 
Ukrainian respectively. Especially Yuri. Few hours after I uploaded 
tarball to translation project there was already a complete translation 
into Ukrainian.
By examining these two translations and looking at errors in them, I've 
found a bunch of unclear strings in original. I've already fixed the 
most obvious ones directly. Here I attach the patch to change the 
remaining ones. Could someone well versed with words and/or native 
English speaker to check this.
I'd like to make a new upload at translation project ASAP to avoid more 
translators getting into the traps.
I've updated uk.po and it will be included in upload so it should be 
picked up by translation project. If someone wants it I can send it, not 
attached here due to size reasons.
If someone (especially translators) find more unclear messages please 
report, in preference with a patch
I'll update de.po if time permits.
Tricky points:
We use the word "key" several times to refer to the key that you press 
but the same word also means a key in catalog and both Yuri and Mario 
understood messages like "unknown key" in the second sense. I've 
rephrased those somehow, now it should be clear.
APM engaged/disengaged seem to be difficult to understand. Anybody has a 
better idea?
ACPI command contains options to put only some versions of ACPI into 
EBDA. Previously it was saying "Expose only v1 tables" in the sense of 
exposing symbols in ABI. Both translators interpreted it as "Show on the 
screen".
zfsinfo gettext was pretty bad. I've changed it to use sentences instead 
of state words but zfsinfo may still have problems.

-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko


[-- Attachment #2: gettextfix.diff --]
[-- Type: text/x-diff, Size: 55274 bytes --]

=== modified file 'grub-core/commands/acpi.c'
--- grub-core/commands/acpi.c	2011-12-26 11:58:08 +0000
+++ grub-core/commands/acpi.c	2012-02-05 13:32:04 +0000
@@ -41,8 +41,8 @@
    0, ARG_TYPE_STRING},
   {"load-only", 'n', 0,
    N_("Load only tables specified by comma-separated list."), 0, ARG_TYPE_STRING},
-  {"v1", '1', 0, N_("Expose v1 tables."), 0, ARG_TYPE_NONE},
-  {"v2", '2', 0, N_("Expose v2 and v3 tables."), 0, ARG_TYPE_NONE},
+  {"v1", '1', 0, N_("Export version 1 tables to the OS."), 0, ARG_TYPE_NONE},
+  {"v2", '2', 0, N_("Export version 2 and version 3 tables to the OS."), 0, ARG_TYPE_NONE},
   {"oemid", 'o', 0, N_("Set OEMID of RSDP, XSDT and RSDT."), 0, ARG_TYPE_STRING},
   {"oemtable", 't', 0,
    N_("Set OEMTABLE ID of RSDP, XSDT and RSDT."), 0, ARG_TYPE_STRING},
@@ -771,7 +771,7 @@
 {
   cmd = grub_register_extcmd ("acpi", grub_cmd_acpi, 0,
 			      N_("[-1|-2] [--exclude=TABLE1,TABLE2|"
-			      "--load-only=table1,table2] FILE1"
+			      "--load-only=TABLE1,TABLE2] FILE1"
 			      " [FILE2] [...]"),
 			      N_("Load host ACPI tables and tables "
 			      "specified by arguments."),

=== modified file 'grub-core/commands/cacheinfo.c'
--- grub-core/commands/cacheinfo.c	2011-11-11 20:44:56 +0000
+++ grub-core/commands/cacheinfo.c	2012-02-05 13:42:26 +0000
@@ -31,14 +31,16 @@
   unsigned long hits, misses;
 
   grub_disk_cache_get_performance (&hits, &misses);
-  grub_printf_ (N_("Disk cache: hits = %lu, misses = %lu "), hits, misses);
   if (hits + misses)
     {
       unsigned long ratio = hits * 10000 / (hits + misses);
       grub_printf ("(%lu.%lu%%)\n", ratio / 100, ratio % 100);
+      grub_printf_ (N_("Disk cache statistics: hits = %lu (%lu.%02lu%%),"
+		     " misses = %lu\n"), ratio / 100, ratio % 100,
+		    hits, misses);
     }
   else
-    grub_puts_ (N_("(N/A)"));
+    grub_printf ("%s\n", _("No disk cache statistics available\n"));    
 
  return 0;
 }

=== modified file 'grub-core/commands/efi/loadbios.c'
--- grub-core/commands/efi/loadbios.c	2011-11-11 20:44:56 +0000
+++ grub-core/commands/efi/loadbios.c	2012-02-05 12:17:09 +0000
@@ -206,7 +206,9 @@
 GRUB_MOD_INIT(loadbios)
 {
   cmd_fakebios = grub_register_command ("fakebios", grub_cmd_fakebios,
-					0, N_("Fake BIOS."));
+					0, N_("Create BIOS-like structures for"
+					      " backward compatibility with"
+					      " existing OS."));
 
   cmd_loadbios = grub_register_command ("loadbios", grub_cmd_loadbios,
 					N_("BIOS_DUMP [INT10_DUMP]"),

=== modified file 'grub-core/commands/hashsum.c'
--- grub-core/commands/hashsum.c	2012-02-05 10:23:47 +0000
+++ grub-core/commands/hashsum.c	2012-02-05 15:30:11 +0000
@@ -30,7 +30,8 @@
 
 static const struct grub_arg_option options[] = {
   {"hash", 'h', 0, N_("Specify hash to use."), N_("HASH"), ARG_TYPE_STRING},
-  {"check", 'c', 0, N_("Check hash list file."), N_("FILE"), ARG_TYPE_STRING},
+  {"check", 'c', 0, N_("Check hashes of files with hash list FILE."),
+   N_("FILE"), ARG_TYPE_STRING},
   {"prefix", 'p', 0, N_("Base directory for hash list."), N_("DIR"),
    ARG_TYPE_STRING},
   {"keep-going", 'k', 0, N_("Don't stop after first error."), 0, 0},

=== modified file 'grub-core/commands/hdparm.c'
--- grub-core/commands/hdparm.c	2011-12-13 13:57:46 +0000
+++ grub-core/commands/hdparm.c	2012-02-05 12:11:14 +0000
@@ -47,7 +47,7 @@
   {"sleep",           'Y', 0, N_("Set drive to sleep mode."), 0, ARG_TYPE_NONE},
   {"identify",        'i', 0, N_("Print drive identity and settings."),
 			      0, ARG_TYPE_NONE},
-  {"dumpid",          'I', 0, N_("Dump contents of ATA IDENTIFY sector."),
+  {"dumpid",          'I', 0, N_("Show raw contents of ATA IDENTIFY sector."),
 			       0, ARG_TYPE_NONE},
   {"smart",            -1, 0, N_("Disable/enable SMART (0/1)."), 0, ARG_TYPE_INT},
   {"quiet",           'q', 0, N_("Do not print messages."), 0, ARG_TYPE_NONE},

=== modified file 'grub-core/commands/hexdump.c'
--- grub-core/commands/hexdump.c	2011-04-11 21:01:51 +0000
+++ grub-core/commands/hexdump.c	2012-02-05 12:11:34 +0000
@@ -123,7 +123,7 @@
 {
   cmd = grub_register_extcmd ("hexdump", grub_cmd_hexdump, 0,
 			      N_("[OPTIONS] FILE_OR_DEVICE"),
-			      N_("Dump the contents of a file or memory."),
+			      N_("Show raw contents of a file or memory."),
 			      options);
 }
 

=== modified file 'grub-core/commands/ieee1275/suspend.c'
--- grub-core/commands/ieee1275/suspend.c	2011-11-11 20:44:56 +0000
+++ grub-core/commands/ieee1275/suspend.c	2012-02-05 13:53:06 +0000
@@ -42,7 +42,7 @@
 GRUB_MOD_INIT(ieee1275_suspend)
 {
   cmd = grub_register_command ("suspend", grub_cmd_suspend,
-			       0, N_("Return to Open Firmware prompt."));
+			       0, N_("Return to IEEE1275 prompt."));
 }
 
 GRUB_MOD_FINI(ieee1275_suspend)

=== modified file 'grub-core/commands/iorw.c'
--- grub-core/commands/iorw.c	2011-04-11 21:01:51 +0000
+++ grub-core/commands/iorw.c	2012-02-05 16:11:34 +0000
@@ -120,25 +120,28 @@
 {
   cmd_read_byte =
     grub_register_extcmd ("inb", grub_cmd_read, 0,
-			  N_("PORT"), N_("Read byte from PORT."), options);
+			  N_("PORT"), N_("Read 8-bit value from PORT."),
+			  options);
   cmd_read_word =
     grub_register_extcmd ("inw", grub_cmd_read, 0,
-			  N_("PORT"), N_("Read word from PORT."), options);
+			  N_("PORT"), N_("Read 16-bit value from PORT."),
+			  options);
   cmd_read_dword =
     grub_register_extcmd ("inl", grub_cmd_read, 0,
-			  N_("PORT"), N_("Read dword from PORT."), options);
+			  N_("PORT"), N_("Read 32-bit value from PORT."),
+			  options);
   cmd_write_byte =
     grub_register_command ("outb", grub_cmd_write,
 			   N_("PORT VALUE [MASK]"),
-			   N_("Write byte VALUE to PORT."));
+			   N_("Write 8-bit VALUE to PORT."));
   cmd_write_word =
     grub_register_command ("outw", grub_cmd_write,
 			   N_("PORT VALUE [MASK]"),
-			   N_("Write word VALUE to PORT."));
+			   N_("Write 16-bit VALUE to PORT."));
   cmd_write_dword =
     grub_register_command ("outl", grub_cmd_write,
 			   N_("ADDR VALUE [MASK]"),
-			   N_("Write dword VALUE to PORT."));
+			   N_("Write 32-bit VALUE to PORT."));
 }
 
 GRUB_MOD_FINI(memrw)

=== modified file 'grub-core/commands/lsmmap.c'
--- grub-core/commands/lsmmap.c	2011-11-11 23:34:14 +0000
+++ grub-core/commands/lsmmap.c	2012-02-05 15:15:55 +0000
@@ -26,13 +26,13 @@
 
 static const char *names[] =
   {
-    [GRUB_MEMORY_AVAILABLE] = N_("available"),
-    [GRUB_MEMORY_RESERVED] = N_("reserved"),
-    [GRUB_MEMORY_ACPI] = N_("ACPI reclamaible"),
-    [GRUB_MEMORY_NVS] = N_("ACPI non-volatile storage"),
-    [GRUB_MEMORY_BADRAM] = N_("BadRAM"),
-    [GRUB_MEMORY_CODE] = N_("firmware code"),
-    [GRUB_MEMORY_HOLE] = N_("hole")
+    [GRUB_MEMORY_AVAILABLE] = N_("available RAM"),
+    [GRUB_MEMORY_RESERVED] = N_("reserved RAM"),
+    [GRUB_MEMORY_ACPI] = N_("ACPI reclamaible RAM"),
+    [GRUB_MEMORY_NVS] = N_("ACPI non-volatile storage RAM"),
+    [GRUB_MEMORY_BADRAM] = N_("faulty RAM (BadRAM)"),
+    [GRUB_MEMORY_CODE] = N_("RAM holding firmware code"),
+    [GRUB_MEMORY_HOLE] = N_("Address range not associated with RAM")
   };
 
 static grub_err_t

=== modified file 'grub-core/commands/memrw.c'
--- grub-core/commands/memrw.c	2011-11-11 20:44:56 +0000
+++ grub-core/commands/memrw.c	2012-02-05 13:08:48 +0000
@@ -122,22 +122,28 @@
 {
   cmd_read_byte =
     grub_register_extcmd ("read_byte", grub_cmd_read, 0,
-			  N_("ADDR"), N_("Read byte from ADDR."), options);
+			  N_("ADDR"), N_("Read 8-bit value from ADDR."),
+			  options);
   cmd_read_word =
     grub_register_extcmd ("read_word", grub_cmd_read, 0,
-			  N_("ADDR"), N_("Read word from ADDR."), options);
+			  N_("ADDR"), N_("Read 16-bit value from ADDR."),
+			  options);
   cmd_read_dword =
     grub_register_extcmd ("read_dword", grub_cmd_read, 0,
-			  N_("ADDR"), N_("Read dword from ADDR."), options);
+			  N_("ADDR"), N_("Read 32-bit value from ADDR."),
+			  options);
   cmd_write_byte =
     grub_register_command ("write_byte", grub_cmd_write,
-			   N_("ADDR VALUE [MASK]"), N_("Write byte VALUE to ADDR."));
+			   N_("ADDR VALUE [MASK]"),
+			   N_("Write 8-bit VALUE to ADDR."));
   cmd_write_word =
     grub_register_command ("write_word", grub_cmd_write,
-			   N_("ADDR VALUE [MASK]"), N_("Write word VALUE to ADDR."));
+			   N_("ADDR VALUE [MASK]"),
+			   N_("Write 16-bit VALUE to ADDR."));
   cmd_write_dword =
     grub_register_command ("write_dword", grub_cmd_write,
-			   N_("ADDR VALUE [MASK]"), N_("Write dword VALUE to ADDR."));
+			   N_("ADDR VALUE [MASK]"),
+			   N_("Write 32-bit VALUE to ADDR."));
 }
 
 GRUB_MOD_FINI(memrw)

=== modified file 'grub-core/commands/menuentry.c'
--- grub-core/commands/menuentry.c	2012-02-05 10:23:47 +0000
+++ grub-core/commands/menuentry.c	2012-02-05 15:42:29 +0000
@@ -30,11 +30,12 @@
     {"class", 1, GRUB_ARG_OPTION_REPEATABLE,
      N_("Menu entry type."), N_("STRING"), ARG_TYPE_STRING},
     {"users", 2, 0,
-     N_("Users allowed to boot this entry."), N_("USERNAME"), ARG_TYPE_STRING},
+     N_("List of users allowed to boot this entry."), N_("USERNAME[,USERNAME]"),
+     ARG_TYPE_STRING},
     {"hotkey", 3, 0,
      N_("Keyboard key to quickly boot this entry."), N_("KEYBOARD_KEY"), ARG_TYPE_STRING},
     {"source", 4, 0,
-     N_("Menu entry definition as a string."), N_("STRING"), ARG_TYPE_STRING},
+     N_("Use STRING as menu entry body."), N_("STRING"), ARG_TYPE_STRING},
     {0, 0, 0, 0, 0, 0}
   };
 

=== modified file 'grub-core/commands/minicmd.c'
--- grub-core/commands/minicmd.c	2012-02-05 10:32:11 +0000
+++ grub-core/commands/minicmd.c	2012-02-05 11:56:24 +0000
@@ -187,7 +187,7 @@
 			   0, N_("Show this message."));
   cmd_dump =
     grub_register_command ("dump", grub_mini_cmd_dump,
-			   N_("ADDR [SIZE]"), N_("Dump memory."));
+			   N_("ADDR [SIZE]"), N_("Show memory contents."));
   cmd_rmmod =
     grub_register_command ("rmmod", grub_mini_cmd_rmmod,
 			   N_("MODULE"), N_("Remove a module."));

=== modified file 'grub-core/commands/mips/loongson/lsspd.c'
--- grub-core/commands/mips/loongson/lsspd.c	2011-11-11 23:34:14 +0000
+++ grub-core/commands/mips/loongson/lsspd.c	2012-02-05 15:11:19 +0000
@@ -49,14 +49,15 @@
   if (err)
     return err;
 
-  grub_printf_ (N_("SMB base = 0x%x\n"), smbbase);
+  grub_printf_ (N_("System management bus controller I/O space is at 0x%x\n"),
+		smbbase);
 
   for (i = GRUB_SMB_RAM_START_ADDR;
        i < GRUB_SMB_RAM_START_ADDR + GRUB_SMB_RAM_NUM_MAX; i++)
     {
       struct grub_smbus_spd spd;
       grub_memset (&spd, 0, sizeof (spd));
-      grub_printf_ (N_("Device %d\n"), i);
+      grub_printf_ (N_("RAM slot number %d\n"), i);
       err = grub_cs5536_read_spd (smbbase, i, &spd);
       if (err)
 	{

=== modified file 'grub-core/commands/regexp.c'
--- grub-core/commands/regexp.c	2011-04-11 21:01:51 +0000
+++ grub-core/commands/regexp.c	2012-02-05 14:25:35 +0000
@@ -32,7 +32,7 @@
 static const struct grub_arg_option options[] =
   {
     { "set", 's', GRUB_ARG_OPTION_REPEATABLE,
-      N_("Variable names to update with matches."),
+      N_("Store matched component NUMBER in VARNAME."),
       N_("[NUMBER:]VARNAME"), ARG_TYPE_STRING },
     { 0, 0, 0, 0, 0, 0 }
   };

=== modified file 'grub-core/commands/true.c'
--- grub-core/commands/true.c	2011-04-11 21:01:51 +0000
+++ grub-core/commands/true.c	2012-02-05 13:10:45 +0000
@@ -46,9 +46,13 @@
 {
   cmd_true =
     grub_register_command ("true", grub_cmd_true,
+			   /* TRANSLATORS: it's imperative, not
+			      infinitive.  */
 			   0, N_("Do nothing, successfully."));
   cmd_false =
     grub_register_command ("false", grub_cmd_false,
+			   /* TRANSLATORS: it's imperative, not
+			      infinitive.  */
 			   0, N_("Do nothing, unsuccessfully."));
 }
 

=== modified file 'grub-core/commands/videoinfo.c'
--- grub-core/commands/videoinfo.c	2011-11-11 20:44:56 +0000
+++ grub-core/commands/videoinfo.c	2012-02-05 15:36:56 +0000
@@ -178,7 +178,7 @@
       {
 	if (adapter->init ())
 	  {
-	    grub_puts_ (N_("  Failed"));
+	    grub_puts_ (N_("  Failed to initialize video adapter"));
 	    grub_errno = GRUB_ERR_NONE;
 	    continue;
 	  }

=== modified file 'grub-core/disk/cryptodisk.c'
--- grub-core/disk/cryptodisk.c	2012-01-29 20:49:44 +0000
+++ grub-core/disk/cryptodisk.c	2012-02-05 15:40:25 +0000
@@ -41,7 +41,7 @@
   {
     {"uuid", 'u', 0, N_("Mount by UUID."), 0, 0},
     {"all", 'a', 0, N_("Mount all."), 0, 0},
-    {"boot", 'b', 0, N_("Mount all volumes marked as boot."), 0, 0},
+    {"boot", 'b', 0, N_("Mount all volumes with `boot' flag set."), 0, 0},
     {0, 0, 0, 0, 0, 0}
   };
 

=== modified file 'grub-core/disk/diskfilter.c'
--- grub-core/disk/diskfilter.c	2012-02-05 00:22:04 +0000
+++ grub-core/disk/diskfilter.c	2012-02-05 12:41:37 +0000
@@ -249,8 +249,8 @@
     for (pv = lv->vg->pvs; pv; pv = pv->next)
       {
 	if (!pv->disk)
-	  grub_util_error (_("Couldn't find PV %s. Check your device.map"),
-			   pv->name);
+	  grub_util_error (_("Couldn't find physical volume `%s'."
+			     " Check your device.map"), pv->name);
 	tmp = grub_malloc (sizeof (*tmp));
 	tmp->disk = pv->disk;
 	tmp->next = list;

=== modified file 'grub-core/disk/i386/pc/biosdisk.c'
--- grub-core/disk/i386/pc/biosdisk.c	2011-11-12 20:12:52 +0000
+++ grub-core/disk/i386/pc/biosdisk.c	2012-02-05 15:39:16 +0000
@@ -627,7 +627,8 @@
 
   if (grub_disk_firmware_is_tainted)
     {
-      grub_puts_ (N_("Firmware is marked as tainted, refusing to initialize."));
+      grub_puts_ (N_("Native disk drivers are in use. "
+		     "Refusing to use firmware disk interface."));
       return;
     }
   grub_disk_firmware_fini = grub_disk_biosdisk_fini;

=== modified file 'grub-core/disk/loopback.c'
--- grub-core/disk/loopback.c	2011-07-07 19:46:25 +0000
+++ grub-core/disk/loopback.c	2012-02-05 15:47:36 +0000
@@ -38,7 +38,7 @@
 
 static const struct grub_arg_option options[] =
   {
-    {"delete", 'd', 0, N_("Delete the loopback device entry."), 0, 0},
+    {"delete", 'd', 0, N_("Delete the specified loopback drive."), 0, 0},
     {0, 0, 0, 0, 0, 0}
   };
 
@@ -224,7 +224,7 @@
 {
   cmd = grub_register_extcmd ("loopback", grub_cmd_loopback, 0,
 			      N_("[-d] DEVICENAME FILE."),
-			      N_("Make a device of a file."), options);
+			      N_("Make a virtual drive from a file."), options);
   grub_disk_dev_register (&grub_loopback_dev);
 }
 

=== modified file 'grub-core/fs/zfs/zfsinfo.c'
--- grub-core/fs/zfs/zfsinfo.c	2011-11-11 20:44:56 +0000
+++ grub-core/fs/zfs/zfsinfo.c	2012-02-05 15:28:37 +0000
@@ -45,31 +45,32 @@
   int isok = 1;
 
   print_tabs (tab);
-  grub_xputs (_("State: "));
 
   if (grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_REMOVED, &ival))
     {
-      grub_xputs (_("removed "));
+      grub_puts_ (N_("Virtual device is removed"));
       isok = 0;
     }
 
   if (grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_FAULTED, &ival))
     {
-      grub_xputs (_("faulted "));
+      grub_puts_ (N_("Virtual device is faulted"));
       isok = 0;
     }
 
   if (grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_OFFLINE, &ival))
     {
-      grub_xputs (_("offline "));
+      grub_puts_ (N_("Virtual device is offline"));
       isok = 0;
     }
 
   if (grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_FAULTED, &ival))
-    grub_xputs (_("degraded "));
+    /* TRANSLATORS: degraded doesn't mean broken but that some of
+       component are missing but virtual device as whole is still usable.  */
+    grub_puts_ (N_("Virtual device is degraded"));
 
   if (isok)
-    grub_xputs (_("online"));
+    grub_puts_ (N_("Virtual device is online"));
   grub_xputs ("\n");
 
   return GRUB_ERR_NONE;
@@ -85,7 +86,7 @@
   if (!type)
     {
       print_tabs (tab);
-      grub_puts_ (N_("Incorrect VDEV: no type available"));
+      grub_puts_ (N_("Incorrect virtual device: no type available"));
       return grub_errno;
     }
 
@@ -96,7 +97,7 @@
       char *devid = 0;
 
       print_tabs (tab);
-      grub_puts_ (N_("Leaf VDEV"));
+      grub_puts_ (N_("Leaf virtual device (file or disk)"));
 
       print_state (nvlist, tab);
 
@@ -137,10 +138,10 @@
       print_tabs (tab);
       if (nelm <= 0)
 	{
-	  grub_puts_ (N_("Incorrect mirror VDEV"));
+	  grub_puts_ (N_("Incorrect mirror"));
 	  return GRUB_ERR_NONE;
 	}
-      grub_printf_ (N_("Mirror VDEV with %d children\n"), nelm);
+      grub_printf_ (N_("Mirror with %d children\n"), nelm);
       print_state (nvlist, tab);
       for (i = 0; i < nelm; i++)
 	{
@@ -152,11 +153,11 @@
 	  print_tabs (tab);
 	  if (!child)
 	    {
-	      grub_printf_ (N_("Mirror VDEV element %d isn't correct\n"), i);
+	      grub_printf_ (N_("Mirror element %d isn't correct\n"), i);
 	      continue;
 	    }
 
-	  grub_printf_ (N_("Mirror VDEV element %d:\n"), i);
+	  grub_printf_ (N_("Mirror element %d:\n"), i);
 	  print_vdev_info (child, tab + 1);
 
 	  grub_free (child);
@@ -165,7 +166,7 @@
     }
 
   print_tabs (tab);
-  grub_printf_ (N_("Unknown VDEV type: %s\n"), type);
+  grub_printf_ (N_("Unknown virtual device type: %s\n"), type);
 
   return GRUB_ERR_NONE;
 }
@@ -298,7 +299,7 @@
   nv = grub_zfs_nvlist_lookup_nvlist (nvlist, ZPOOL_CONFIG_VDEV_TREE);
 
   if (!nv)
-    grub_puts_ (N_("No vdev tree available"));
+    grub_puts_ (N_("No virtual device tree available"));
   else
     print_vdev_info (nv, 1);
 

=== modified file 'grub-core/kern/emu/hostdisk.c'
--- grub-core/kern/emu/hostdisk.c	2012-02-05 10:23:47 +0000
+++ grub-core/kern/emu/hostdisk.c	2012-02-05 12:36:18 +0000
@@ -428,13 +428,19 @@
 
   error = geom_gettree (&mesh);
   if (error != 0)
+    /* TRANSLATORS: geom is the name of (k)FreeBSD device framework.
+       Usually left untranslated.
+     */
     grub_util_error (_("couldn't open geom"));
 
   LIST_FOREACH (class, &mesh.lg_class, lg_class)
     if (strcasecmp (class->lg_name, "part") == 0)
       break;
   if (!class)
-    grub_util_error (_("couldn't open geom part"));
+    /* TRANSLATORS: geom is the name of (k)FreeBSD device framework.
+       Usually left untranslated.
+     */
+    grub_util_error (_("couldn't find geom `part' class"));
 
   LIST_FOREACH (geom, &class->lg_geom, lg_geom)
     { 

=== modified file 'grub-core/kern/emu/mm.c'
--- grub-core/kern/emu/mm.c	2011-11-11 20:44:56 +0000
+++ grub-core/kern/emu/mm.c	2012-02-05 14:04:15 +0000
@@ -77,7 +77,7 @@
 #else
   (void) align;
   (void) size;
-  grub_util_error (_("grub_memalign is not supported"));
+  grub_util_error (_("grub_memalign is not supported on your system"));
 #endif
 
   if (!p)

=== modified file 'grub-core/loader/efi/appleloader.c'
--- grub-core/loader/efi/appleloader.c	2012-02-03 10:56:49 +0000
+++ grub-core/loader/efi/appleloader.c	2012-02-05 12:42:28 +0000
@@ -220,7 +220,7 @@
 GRUB_MOD_INIT(appleloader)
 {
   cmd = grub_register_command ("appleloader", grub_cmd_appleloader,
-			       N_("[OPTS]"), N_("Boot legacy system."));
+			       N_("[OPTS]"), N_("Boot BIOS-based system."));
   my_mod = mod;
 }
 

=== modified file 'grub-core/loader/i386/bsd.c'
--- grub-core/loader/i386/bsd.c	2011-12-26 11:58:08 +0000
+++ grub-core/loader/i386/bsd.c	2012-02-05 14:05:02 +0000
@@ -107,7 +107,7 @@
     {"nointr", 'n', 0, "", 0, 0},
     {"pause", 'p', 0, N_("Wait for keypress after every line of output."), 0, 0},
     {"quiet", 'q', 0, "", 0, 0},
-    {"dfltroot", 'r', 0, N_("Use compiled-in rootdev."), 0, 0},
+    {"dfltroot", 'r', 0, N_("Use compiled-in root device."), 0, 0},
     {"single", 's', 0, N_("Boot into single mode."), 0, 0},
     {"verbose", 'v', 0, N_("Boot with verbose messages."), 0, 0},
     {0, 0, 0, 0, 0, 0}
@@ -131,7 +131,11 @@
     {"kdb", 'd', 0, N_("Enter in KDB on boot."), 0, 0},
     {"root", 'r', 0, N_("Set root device."), "wdXY", ARG_TYPE_STRING},
     {"serial", 'h', GRUB_ARG_OPTION_OPTIONAL, 
-     N_("Use serial console."), N_("comUNIT[,SPEED]"), ARG_TYPE_STRING},
+     N_("Use serial console."),
+     /* TRANSLATORS: "com" is static and not to be translated. It refers to
+	serial ports e.g. com1.
+      */
+     N_("comUNIT[,SPEED]"), ARG_TYPE_STRING},
     {0, 0, 0, 0, 0, 0}
   };
 
@@ -160,7 +164,11 @@
     {"silent", 'z', 0, N_("Supress normal output (warnings remain)."), 0, 0},
     {"root", 'r', 0, N_("Set root device."), N_("DEVICE"), ARG_TYPE_STRING},
     {"serial", 'h', GRUB_ARG_OPTION_OPTIONAL, 
-     N_("Use serial console."), N_("[ADDR|comUNIT][,SPEED]"), ARG_TYPE_STRING},
+     N_("Use serial console."),
+     /* TRANSLATORS: "com" is static and not to be translated. It refers to
+	serial ports e.g. com1.
+      */
+     N_("[ADDR|comUNIT][,SPEED]"), ARG_TYPE_STRING},
     {0, 0, 0, 0, 0, 0}
   };
 

=== modified file 'grub-core/loader/i386/coreboot/chainloader.c'
--- grub-core/loader/i386/coreboot/chainloader.c	2011-06-27 12:14:11 +0000
+++ grub-core/loader/i386/coreboot/chainloader.c	2012-02-05 12:46:50 +0000
@@ -135,7 +135,12 @@
 GRUB_MOD_INIT (chain)
 {
   cmd_chain = grub_register_command ("chainloader", grub_cmd_chain,
-				     N_("FILE"), N_("Load another payload"));
+				     N_("FILE"),
+				     /* TRANSLATORS: "payload" is a term used
+					by coreboot and must be translated in
+					sync with coreboot. If unsure,
+					let it untranslated.  */
+				     N_("Load another coreboot payload"));
 }
 
 GRUB_MOD_FINI (chain)

=== modified file 'grub-core/loader/i386/xnu.c'
--- grub-core/loader/i386/xnu.c	2012-02-03 11:47:07 +0000
+++ grub-core/loader/i386/xnu.c	2012-02-05 14:12:02 +0000
@@ -1129,7 +1129,10 @@
 {
   cmd_devprop_load = grub_register_command ("xnu_devprop_load",
 					    grub_cmd_devprop_load,
-					    0, N_("Load device-properties dump."));
+					    /* TRANSLATORS: `device-properties'
+					       is a variable name,
+					       not a program.  */
+					    0, N_("Load `device-properties' dump."));
 }
 
 void

=== modified file 'grub-core/loader/ia64/efi/linux.c'
--- grub-core/loader/ia64/efi/linux.c	2012-02-05 10:23:47 +0000
+++ grub-core/loader/ia64/efi/linux.c	2012-02-05 14:23:03 +0000
@@ -104,12 +104,6 @@
 static grub_efi_uintn_t boot_param_pages;
 static struct ia64_boot_payload *last_payload = NULL;
 
-/* Can linux kernel be relocated ?  */
-#define RELOCATE_OFF   0	/* No.  */
-#define RELOCATE_ON    1	/* Yes.  */
-#define RELOCATE_FORCE 2	/* Always - used to debug.  */
-static int relocate = RELOCATE_OFF;
-
 static inline grub_size_t
 page_align (grub_size_t size)
 {
@@ -134,18 +128,19 @@
   
   bs = grub_efi_system_table->boot_services;
   status = bs->locate_handle (GRUB_EFI_BY_PROTOCOL,
-			      (void *)&fpswa_protocol,
+			      (void *) &fpswa_protocol,
 			      NULL, &size, &fpswa_image);
   if (status != GRUB_EFI_SUCCESS)
     {
-      grub_printf (_("Could not locate FPSWA driver\n"));
+      grub_printf ("%s\n", _("Could not locate FPSWA driver"));
       return;
     }
   status = bs->handle_protocol (fpswa_image,
-				(void *)&fpswa_protocol, (void *)&fpswa);
+				(void *) &fpswa_protocol, (void *) &fpswa);
   if (status != GRUB_EFI_SUCCESS)
     {
-      grub_printf (_("Fpswa protocol not able find the interface\n"));
+      grub_printf ("%s\n",
+		   _("FPSWA protocol wasn't able to find the interface"));
       return;
     } 
 }
@@ -398,6 +393,7 @@
   grub_uint64_t high_addr;
   grub_uint64_t align;
   grub_uint64_t reloc_offset;
+  const char *relocate;
 
   if (ehdr->e_ident[EI_CLASS] != ELFCLASS64)
     return grub_error (GRUB_ERR_UNKNOWN_OS, "invalid ELF class");
@@ -447,13 +443,15 @@
 
   kernel_pages = page_align (high_addr - low_addr) >> 12;
 
-  if (relocate != RELOCATE_FORCE)
+  /* Undocumented on purpose.  */
+  relocate = grub_env_get ("linux_relocate");
+  if (!relocate || grub_strcmp (relocate, "force") != 0)
     {
       kernel_mem = grub_efi_allocate_pages (low_addr, kernel_pages);
       reloc_offset = 0;
     }
   /* Try to relocate.  */
-  if (! kernel_mem && relocate != RELOCATE_OFF)
+  if (! kernel_mem && (!relocate || grub_strcmp (relocate, "off") != 0))
     {
       kernel_mem = allocate_pages (align, kernel_pages, low_addr);
       if (kernel_mem)
@@ -755,38 +753,6 @@
 }
 
 static grub_err_t
-grub_cmd_relocate (grub_command_t cmd __attribute__ ((unused)),
-		   int argc, char *argv[])
-{
-  static const char * const vals[] = { "off", "on", "force"};
-  unsigned int i;
-
-  if (argc == 0)
-    {
-      grub_printf (_("relocate is %s\n"), vals[relocate]);
-      return GRUB_ERR_NONE;
-    }
-  else if (argc == 1)
-    {
-      if (kernel_mem != NULL)
-	grub_printf (_("Warning: kernel already loaded!\n"));
-      for (i = 0; i < sizeof (vals)/sizeof(vals[0]); i++)
-	if (grub_strcmp (argv[0], vals[i]) == 0)
-	  {
-	    relocate = i;
-	    return GRUB_ERR_NONE;
-	  }
-      return grub_error (GRUB_ERR_BAD_ARGUMENT, "unknown relocate value");
-    }
-  else
-    {
-      return grub_error (GRUB_ERR_BAD_ARGUMENT, "accept 0 or 1 argument");
-    }
-  
-}
-
-
-static grub_err_t
 grub_cmd_fpswa (grub_command_t cmd __attribute__ ((unused)),
 		int argc, char *argv[] __attribute__((unused)))
 {
@@ -794,13 +760,13 @@
     return grub_error (GRUB_ERR_BAD_ARGUMENT, "Arguments not expected");
   query_fpswa ();
   if (fpswa == NULL)
-    grub_printf (_("No FPSWA loaded\n"));
+    grub_printf (_("No FPSWA found\n"));
   else
     grub_printf (_("FPSWA revision: %x\n"), fpswa->revision);
   return GRUB_ERR_NONE;
 }
 
-static grub_command_t cmd_linux, cmd_initrd, cmd_payload, cmd_relocate, cmd_fpswa;
+static grub_command_t cmd_linux, cmd_initrd, cmd_payload, cmd_fpswa;
 
 GRUB_MOD_INIT(linux)
 {
@@ -814,10 +780,6 @@
 				       N_("FILE [ARGS...]"),
 				       N_("Load an additional file."));
 
-  cmd_relocate = grub_register_command ("relocate", grub_cmd_relocate,
-					"[on|off|force]",
-					N_("Set relocate feature."));
-
   cmd_fpswa = grub_register_command ("fpswa", grub_cmd_fpswa,
 				     "", N_("Display FPSWA version."));
 
@@ -829,6 +791,5 @@
   grub_unregister_command (cmd_linux);
   grub_unregister_command (cmd_initrd);
   grub_unregister_command (cmd_payload);
-  grub_unregister_command (cmd_relocate);
   grub_unregister_command (cmd_fpswa);
 }

=== modified file 'grub-core/loader/xnu.c'
--- grub-core/loader/xnu.c	2012-02-05 10:23:47 +0000
+++ grub-core/loader/xnu.c	2012-02-05 14:19:19 +0000
@@ -1457,11 +1457,16 @@
   cmd_kext = grub_register_command ("xnu_kext", grub_cmd_xnu_kext, 0,
 				    N_("Load XNU extension."));
   cmd_kextdir = grub_register_command ("xnu_kextdir", grub_cmd_xnu_kextdir,
+				       /* TRANSLATORS: OSBundleRequired is a
+					  variable name in xnu extensions
+					  manifests. It behaves mostly like
+					  GNU/Linux runlevels.
+				       */
 				       N_("DIRECTORY [OSBundleRequired]"),
 				       N_("Load XNU extension directory."));
   cmd_ramdisk = grub_register_command ("xnu_ramdisk", grub_cmd_xnu_ramdisk, 0,
 				       N_("Load XNU ramdisk. "
-					  "It will be seen as md0."));
+					  "It will be available in OS as md0."));
   cmd_splash = grub_register_extcmd ("xnu_splash",
 				     grub_cmd_xnu_splash, 0, 0,
 				     N_("Load a splash image for XNU."),
@@ -1469,7 +1474,8 @@
 
 #ifndef GRUB_MACHINE_EMU
   cmd_resume = grub_register_command ("xnu_resume", grub_cmd_xnu_resume,
-				      0, N_("Load XNU hibernate image."));
+				      0, N_("Load an image of hibernated"
+					    " XNU image."));
 #endif
 
   grub_cpu_xnu_init ();

=== modified file 'grub-core/mmap/mmap.c'
--- grub-core/mmap/mmap.c	2011-04-11 21:01:51 +0000
+++ grub-core/mmap/mmap.c	2012-02-05 14:27:10 +0000
@@ -471,7 +471,7 @@
 {
   cmd = grub_register_command ("badram", grub_cmd_badram,
 			       N_("ADDR1,MASK1[,ADDR2,MASK2[,...]]"),
-			       N_("Declare memory regions as badram."));
+			       N_("Declare memory regions as faulty (badram)."));
   cmd_cut = grub_register_command ("cutmem", grub_cmd_cutmem,
 				   N_("FROM[K|M|G] TO[K|M|G]"),
 				   N_("Remove any memory regions in specified range."));

=== modified file 'grub-core/net/bootp.c'
--- grub-core/net/bootp.c	2011-12-16 16:37:47 +0000
+++ grub-core/net/bootp.c	2012-02-05 12:43:21 +0000
@@ -310,7 +310,7 @@
 
   if (!inter)
     return grub_error (GRUB_ERR_BAD_ARGUMENT,
-		       N_("unrecognised interface %s"), args[1]);
+		       N_("unrecognised netword interface `%s'"), args[1]);
 
   if (!inter->dhcp_ack)
     return grub_error (GRUB_ERR_IO, N_("no DHCP info found"));

=== modified file 'grub-core/net/net.c'
--- grub-core/net/net.c	2012-02-03 10:56:49 +0000
+++ grub-core/net/net.c	2012-02-05 12:44:10 +0000
@@ -563,7 +563,8 @@
 	  return GRUB_ERR_NONE;
 	}
     }
-  return grub_error (GRUB_ERR_NET_BAD_ADDRESS, N_("unrecognised address %s"),
+  return grub_error (GRUB_ERR_NET_BAD_ADDRESS,
+		     N_("unrecognised network address `%s'"),
 		     name);
 }
 
@@ -1026,7 +1027,7 @@
 
       if (!inter)
 	return grub_error (GRUB_ERR_BAD_ARGUMENT,
-			   N_("unrecognised interface %s"), args[2]);
+			   N_("unrecognised netword interface `%s'"), args[2]);
       return grub_net_add_route (args[0], target, inter);
     }
 }

=== modified file 'grub-core/normal/auth.c'
--- grub-core/normal/auth.c	2012-01-24 12:31:12 +0000
+++ grub-core/normal/auth.c	2012-02-05 15:20:51 +0000
@@ -263,7 +263,8 @@
 {
   cmd = grub_register_command ("authenticate",
 			       grub_cmd_authenticate,
-			       N_("[USERLIST]"), N_("Authenticate users"));
+			       N_("[USERLIST]"),
+			       N_("Check whether user is in USERLIST."));
 
 }
 

=== modified file 'grub-core/normal/dyncmd.c'
--- grub-core/normal/dyncmd.c	2012-02-04 20:47:29 +0000
+++ grub-core/normal/dyncmd.c	2012-02-05 18:01:52 +0000
@@ -157,8 +157,8 @@
 						   GRUB_COMMAND_FLAG_BLOCKS
 						   | GRUB_COMMAND_FLAG_EXTCMD
 						   | GRUB_COMMAND_FLAG_DYNCMD,
-						   0, N_("not loaded"), 0,
-						   prio);
+						   0, N_("module isn't loaded"),
+						   0, prio);
 		  if (! cmd)
 		    {
 		      grub_free (name);

=== modified file 'grub-core/normal/misc.c'
--- grub-core/normal/misc.c	2011-04-01 07:45:37 +0000
+++ grub-core/normal/misc.c	2012-02-05 14:24:00 +0000
@@ -109,7 +109,7 @@
 	    }
 	}
       else
-	grub_printf ("%s", _("Not a known filesystem"));
+	grub_printf ("%s", _("No known filesystem detected"));
 
       if (dev->disk->partition)
 	grub_printf (_(" - Partition start at %llu"),

=== modified file 'grub-core/parttool/msdospart.c'
--- grub-core/parttool/msdospart.c	2011-11-11 20:44:56 +0000
+++ grub-core/parttool/msdospart.c	2012-02-05 16:03:40 +0000
@@ -85,7 +85,7 @@
 static struct grub_parttool_argdesc grub_pcpart_typeargs[] =
 {
   {"type", N_("Change partition type"), GRUB_PARTTOOL_ARG_VAL},
-  {"hidden", N_("Make partition hidden"), GRUB_PARTTOOL_ARG_BOOL},
+  {"hidden", N_("Set `hidden' flag in partition type"), GRUB_PARTTOOL_ARG_BOOL},
   {0, 0, 0}
 };
 

=== modified file 'grub-core/term/terminfo.c'
--- grub-core/term/terminfo.c	2012-01-29 16:01:27 +0000
+++ grub-core/term/terminfo.c	2012-02-05 14:33:31 +0000
@@ -599,10 +599,10 @@
     [GRUB_TERM_CODE_TYPE_UTF8_LOGICAL >> GRUB_TERM_CODE_TYPE_SHIFT]
     = _("UTF-8"),
     [GRUB_TERM_CODE_TYPE_UTF8_VISUAL >> GRUB_TERM_CODE_TYPE_SHIFT]
-    = _("UTF-8 visual"),
+    = _("visually-ordered UTF-8"),
     [GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS >> GRUB_TERM_CODE_TYPE_SHIFT]
     = "Glyph descriptors",
-    _("Unknown"), _("Unknown"), _("Unknown")
+    _("Unknown encoding"), _("Unknown encoding"), _("Unknown encoding")
   };
   struct grub_term_output *cur;
 
@@ -623,7 +623,7 @@
   {"utf8",  'u', 0, N_("Terminal is logical-ordered UTF-8."), 0, ARG_TYPE_NONE},
   {"visual-utf8", 'v', 0, N_("Terminal is visually-ordered UTF-8."), 0,
    ARG_TYPE_NONE},
-  {"geometry", 'g', 0, N_("Terminal has given geometry."),
+  {"geometry", 'g', 0, N_("Terminal has specified geometry."),
    N_("WIDTHxHEIGHT."), ARG_TYPE_STRING},
   {0, 0, 0, 0, 0, 0}
 };

=== modified file 'po/POTFILES.in'
--- po/POTFILES.in	2012-02-03 21:52:23 +0000
+++ po/POTFILES.in	2012-02-05 17:46:43 +0000
@@ -421,6 +421,7 @@
 ./grub-core/loader/i386/pc/linux.c
 ./grub-core/loader/i386/pc/ntldr.c
 ./grub-core/loader/i386/pc/plan9.c
+./grub-core/loader/i386/pc/pxechainloader.c
 ./grub-core/loader/i386/xnu.c
 ./grub-core/loader/ia64/efi/linux.c
 ./grub-core/loader/macho32.c

=== modified file 'util/getroot.c'
--- util/getroot.c	2012-02-05 10:07:33 +0000
+++ util/getroot.c	2012-02-05 12:36:40 +0000
@@ -910,7 +910,7 @@
   *tree = dm_tree_create ();
   if (! *tree)
     {
-      grub_puts_ (N_("Failed to create tree"));
+      grub_puts_ (N_("Failed to create `device-mapper' tree"));
       grub_dprintf ("hostdisk", "dm_tree_create failed\n");
       return 0;
     }
@@ -1026,6 +1026,9 @@
 
   error = geom_gettree (&mesh);
   if (error != 0)
+    /* TRANSLATORS: geom is the name of (k)FreeBSD device framework.
+       Usually left untranslated.
+     */
     grub_util_error (_("couldn't open geom"));
 
   LIST_FOREACH (class, &mesh.lg_class, lg_class)
@@ -1190,6 +1193,9 @@
 
 	error = geom_gettree (&mesh);
 	if (error != 0)
+	  /* TRANSLATORS: geom is the name of (k)FreeBSD device framework.
+	     Usually left untranslated.
+	  */
 	  grub_util_error (_("couldn't open geom"));
 
 	LIST_FOREACH (class, &mesh.lg_class, lg_class)
@@ -1228,7 +1234,8 @@
 		grub_err_t err;
 		err = grub_cryptodisk_cheat_mount (grdev, os_dev);
 		if (err)
-		  grub_util_error (_("Can't mount crypto: %s"), _(grub_errmsg));
+		  grub_util_error (_("can't mount crypto volume `%s': %s"),
+				   lastsubdev, _(grub_errmsg));
 	      }
 
 	    grub_free (grdev);
@@ -1272,7 +1279,8 @@
 		grub_err_t err;
 		err = grub_cryptodisk_cheat_mount (grdev, os_dev);
 		if (err)
-		  grub_util_error (_("Can't mount crypto: %s"), _(grub_errmsg));
+		  grub_util_error (_("can't mount crypto volume `%s': %s"),
+				   lastsubdev, _(grub_errmsg));
 	      }
 	    grub_free (grdev);
 	  }
@@ -2192,6 +2200,9 @@
 
 	error = geom_gettree (&mesh);
 	if (error != 0)
+	  /* TRANSLATORS: geom is the name of (k)FreeBSD device framework.
+	     Usually left untranslated.
+	  */
 	  grub_util_error (_("couldn't open geom"));
 
 	LIST_FOREACH (class, &mesh.lg_class, lg_class)

=== modified file 'util/grub-fstest.c'
--- util/grub-fstest.c	2012-02-05 10:32:11 +0000
+++ util/grub-fstest.c	2012-02-05 14:00:10 +0000
@@ -332,7 +332,7 @@
       argv[1] = host_file;
 
       if (execute_command ("loopback", 2, argv))
-        grub_util_error (_("\`loopback' command fails: %s"), grub_errmsg);
+        grub_util_error (_("`loopback' command fails: %s"), grub_errmsg);
 
       grub_free (loop_name);
       grub_free (host_file);
@@ -343,7 +343,7 @@
     if (mount_crypt)
       {
 	if (execute_command ("cryptomount", 1, argv))
-	  grub_util_error (_("\`cryptomount' command fails: %s"), grub_errmsg);
+	  grub_util_error (_("`cryptomount' command fails: %s"), grub_errmsg);
       }
   }
 
@@ -435,7 +435,7 @@
   {N_("cp FILE LOCAL"),  0, 0, OPTION_DOC, N_("Copy FILE to local file LOCAL."), 1},
   {N_("cat FILE"), 0, 0      , OPTION_DOC, N_("Copy FILE to standard output."), 1},
   {N_("cmp FILE LOCAL"), 0, 0, OPTION_DOC, N_("Compare FILE with local file LOCAL."), 1},
-  {N_("hex FILE"), 0, 0      , OPTION_DOC, N_("Hex dump FILE."), 1},
+  {N_("hex FILE"), 0, 0      , OPTION_DOC, N_("Show contents of FILE in hex."), 1},
   {N_("crc FILE"), 0, 0     , OPTION_DOC, N_("Get crc32 checksum of FILE."), 1},
   {N_("blocklist FILE"), 0, 0, OPTION_DOC, N_("Display blocklist of FILE."), 1},
   {N_("xnu_uuid DEVICE"), 0, 0, OPTION_DOC, N_("Compute XNU UUID of the device."), 1},
@@ -443,10 +443,12 @@
   {"root",      'r', N_("DEVICE_NAME"), 0, N_("Set root device."),                 2},
   {"skip",      's', "N",           0, N_("Skip N bytes from output file."),   2},
   {"length",    'n', "N",           0, N_("Handle N bytes in output file."),   2},
-  {"diskcount", 'c', "N",           0, N_("N input files."),                   2},
+  {"diskcount", 'c', "N",           0, N_("Specify the number of input files."),                   2},
   {"debug",     'd', "S",           0, N_("Set debug environment variable."),  2},
   {"crypto",   'C', NULL, OPTION_ARG_OPTIONAL, N_("Mount crypto devices."), 2},
-  {"zfs-key",      'K', N_("FILE|prompt"), 0, N_("Load zfs crypto key."),                 2},
+  {"zfs-key",      'K',
+   /* TRANSLATORS: "prompt" is a keyword.  */
+   N_("FILE|prompt"), 0, N_("Load zfs crypto key."),                 2},
   {"verbose",   'v', NULL, OPTION_ARG_OPTIONAL, N_("print verbose messages."), 2},
   {"uncompress", 'u', NULL, OPTION_ARG_OPTIONAL, N_("Uncompress data."), 2},
   {0, 0, 0, 0, 0, 0}
@@ -489,13 +491,17 @@
 	f = fopen (arg, "rb");
 	if (!f)
 	  {
-	    printf (_("Error loading file %s: %s\n"), arg, strerror (errno));
+	    printf (_("%s: error:"), program_name);
+	    printf (_("cannot open `%s': %s"), arg, strerror (errno));
+	    printf ("\n");
 	    return 0;
 	  }
 	real_size = fread (buf, 1, 1024, f);
 	if (real_size < 0)
 	  {
-	    printf (_("Error loading file %s: %s\n"), arg, strerror (errno));
+	    printf (_("%s: error:"), program_name);
+	    printf (_("cannot read the file `%s': %s"), arg, strerror (errno));
+	    printf ("\n");
 	    fclose (f);
 	    return 0;
 	  }
@@ -528,6 +534,9 @@
 	}
       if (args_count != 0)
 	{
+	  /* TRANSLATORS: disk count is optional but if it's there it must
+	     be before disk list. So please don't imply disk count as mandatory.
+	   */
 	  fprintf (stderr, "%s", _("Disk count must precede disks list.\n"));
 	  argp_usage (state);
 	}

=== modified file 'util/grub-install.in'
--- util/grub-install.in	2012-02-05 10:23:47 +0000
+++ util/grub-install.in	2012-02-05 13:53:47 +0000
@@ -49,7 +49,6 @@
 modules=
 
 install_device=
-no_floppy=
 force_lba=
 recheck=no
 debug=no
@@ -101,7 +100,6 @@
     printf "  --grub-mkimage=%-9s%s\n" "$(gettext "FILE")" "$(gettext "use FILE as grub-mkimage")"
     printf "  --grub-mkrelpath=%-7s%s\n" "$(gettext "FILE")" "$(gettext "use FILE as grub-mkrelpath")"
     printf "  --grub-probe=%-11s%s\n" "$(gettext "FILE")" "$(gettext "use FILE as grub-probe")"
-    printf "  --no-floppy             %s\n" "$(gettext "do not probe any floppy drive")"
     printf "  --allow-floppy          %s\n" "$(gettext "Make the drive also bootable as floppy (default for fdX devices). May break on some BIOSes.")"
     printf "  --recheck               %s\n" "$(gettext "delete device map if it already exists")"
     printf "  --force                 %s\n" "$(gettext "install even if problems are detected")"
@@ -207,7 +205,7 @@
 	grub_probe="`echo "$option" | sed 's/--grub-probe=//'`" ;;
 
     --no-floppy)
-	no_floppy="--no-floppy" ;;
+	;;
     --recheck)
 	recheck=yes ;;
     --removable)
@@ -535,6 +533,8 @@
           elif [ "$disk_module" = ata ]; then
              gettext_printf "UUID needed with ata mod, but the filesystem containing %s does not support UUIDs.\n" "${grubdir}" 1>&2
           else
+	      # TRANSLATORS: cross-disk refers to /boot being on one disk
+	      # but MBR on another. 
              gettext_printf "UUID needed with cross-disk installs, but the filesystem containing %s does not support UUIDs.\n" "${grubdir}" 1>&2
           fi
              
@@ -633,7 +633,7 @@
 	dev="`echo $grub_device | sed -e 's/\/dev\///' -e 's/[0-9]\+//'`"
 	partno="`echo $grub_device | sed -e 's/.*[^0-9]\([0-9]\+\)$/\1/'`"
 	ofpath="`$ofpathname $dev`" || {
-	    gettext_printf "Couldn't find Open Firmware device tree path for %s.\nYou will have to set \`boot-device' variable manually.\n" "$dev" 1>&2
+	    gettext_printf "Couldn't find IEEE1275 device tree path for %s.\nYou will have to set \`boot-device' variable manually.\n" "$dev" 1>&2
 	    exit 1
 	}
 
@@ -668,7 +668,7 @@
 	"$nvsetenv" boot-device "$boot_device" || {
 	    # TRANSLATORS: The %s will be replaced by an external program name.
 	    gettext_printf "\`%s' failed.\n" "$nvsetenv" 1>&2
-	    gettext "You will have to set \`boot-device' variable manually.  At the Open Firmware prompt, type:" 1>&2
+	    gettext "You will have to set \`boot-device' variable manually.  At the IEEE1275 prompt, type:" 1>&2
 	    echo 1>&2
 	    echo "  setenv boot-device $boot_device" 1>&2
 	    exit 1

=== modified file 'util/grub-mkconfig.in'
--- util/grub-mkconfig.in	2012-02-03 11:15:53 +0000
+++ util/grub-mkconfig.in	2012-02-05 13:33:33 +0000
@@ -184,7 +184,7 @@
 	fi
 	if [ -z "${GRUB_FONT_PATH}" ] ; then
 	    if [ "x$termoutdefault" != "x1" ]; then
-		gettext "No font for gfxterm found." >&2; echo >&2 ; exit 1
+		gettext "No font for video terminal found." >&2; echo >&2 ; exit 1
 	    fi
 	    GRUB_TERMINAL_OUTPUT=
 	fi

=== modified file 'util/grub-mkfont.c'
--- util/grub-mkfont.c	2012-02-05 10:23:47 +0000
+++ util/grub-mkfont.c	2012-02-05 13:15:59 +0000
@@ -591,7 +591,7 @@
 	  grub_uint32_t feattag
 	    = grub_be_to_cpu32 (features->features[i].feature_tag);
 	  if (feature->params)
-	    printf (_("WARNING: unsupported feature parameters: %x\n"),
+	    printf (_("WARNING: unsupported font feature parameters: %x\n"),
 		    grub_be_to_cpu16 (feature->params));
 	  switch (feattag)
 	    {
@@ -621,7 +621,8 @@
 		for (j = 0; j < 4; j++)
 		  if (!grub_isgraph (str[j]))
 		    str[j] = '?';
-		printf (_("Unknown gsub feature 0x%x (%s)\n"), feattag, str);
+		printf (_("Unknown gsub font feature 0x%x (%s)\n"),
+			feattag, str);
 	      }
 	    }
 	}
@@ -692,8 +693,8 @@
       int x, y, xmax, xmin, ymax, ymin;
       grub_uint8_t *bitmap, mask;
 
-      printf (_("\nGlyph #%d, U+%04x\n"), num, glyph->char_code);
-      printf (_("Width %d, Height %d, X offset %d, Y offset %d, Device width %d\n"),
+      printf ("\nGlyph #%d, U+%04x\n", num, glyph->char_code);
+      printf ("Width %d, Height %d, X offset %d, Y offset %d, Device width %d\n",
 	      glyph->width, glyph->height, glyph->x_ofs, glyph->y_ofs,
 	      glyph->device_width);
 
@@ -961,7 +962,7 @@
   {"index",  'i', N_("NUM"), 0, N_("set face index"), 0},
   {"range",  'r', N_("FROM-TO[,FROM-TO]"), 0, N_("set font range"), 0},
   {"name",  'n', N_("NAME"), 0, N_("set font family name"), 0},
-  {"size",  's', N_("STR"), 0, N_("set font size"), 0},
+  {"size",  's', N_("SIZE"), 0, N_("set font size"), 0},
   {"desc",  'd', N_("NUM"), 0, N_("set font descent"), 0},
   {"asce",  'c', N_("NUM"), 0, N_("set font ascent"), 0},
   {"bold",  'b', 0, 0, N_("convert to bold font"), 0},
@@ -1128,7 +1129,7 @@
   if (arguments.file_format == ASCII_BITMAPS
       && arguments.font_info.num_range > 0)
     {
-      grub_util_error (_("Option --ascii-bitmaps doesn't accept ranges (use ASCII)."));
+      grub_util_error (_("Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)."));
       return 1;
     }
   else if (arguments.file_format == ASCII_BITMAPS)

=== modified file 'util/grub-mkimage.c'
--- util/grub-mkimage.c	2012-02-05 10:07:33 +0000
+++ util/grub-mkimage.c	2012-02-05 13:52:18 +0000
@@ -1633,10 +1633,11 @@
 
 static struct argp_option options[] = {
   {"directory",  'd', N_("DIR"), 0, N_("use images and modules under DIR [default=%s/<platform>]"), 0},
-  {"prefix",  'p', N_("DIR"), 0, N_("set grub_prefix directory [default=%s]"), 0},
+  {"prefix",  'p', N_("DIR"), 0, N_("set prefix directory [default=%s]"), 0},
   {"memdisk",  'm', N_("FILE"), 0, N_("embed FILE as a memdisk image"), 0},
-  {"config",   'c', N_("FILE"), 0, N_("embed FILE as boot config"), 0},
-  {"note",   'n', 0, 0, N_("add NOTE segment for CHRP Open Firmware"), 0},
+  {"config",   'c', N_("FILE"), 0, N_("embed FILE as an early config"), 0},
+  /* TRANSLATORS: NOTE is a name of segment.  */
+  {"note",   'n', 0, 0, N_("add NOTE segment for CHRP IEEE1275"), 0},
   {"output",  'o', N_("FILE"), 0, N_("output a generated image to FILE [default=stdout]"), 0},
   {"format",  'O', N_("FORMAT"), 0, 0, 0},
   {"compression",  'C', "(xz|none|auto)", 0, N_("choose the compression to use"), 0},

=== modified file 'util/grub-mklayout.c'
--- util/grub-mklayout.c	2012-02-05 10:23:47 +0000
+++ util/grub-mklayout.c	2012-02-05 15:57:27 +0000
@@ -289,7 +289,7 @@
     if (strcmp (code, console_grub_equivalences_common[i].layout) == 0)
       return console_grub_equivalences_common[i].grub;
 
-  fprintf (stderr, _("Unknown key %s\n"), code);
+  fprintf (stderr, _("Unknown keyboard scan identifier %s\n"), code);
 
   return '\0';
 }
@@ -385,7 +385,7 @@
 	  if (keycode_usb == 0
 	      || keycode_usb >= GRUB_KEYBOARD_LAYOUTS_ARRAY_SIZE)
 	    {
-	      fprintf (stderr, _("Unknown keycode 0x%02x\n"), keycode_linux);
+	      fprintf (stderr, _("Unknown keyboard scan code 0x%02x\n"), keycode_linux);
 	      continue;
 	    }
 	  if (keycode_usb < GRUB_KEYBOARD_LAYOUTS_ARRAY_SIZE)
@@ -403,7 +403,7 @@
 
   if (ok == 0)
     {
-      fprintf (stderr, "%s", _("ERROR: no keycodes found. Check the input.\n"));
+      fprintf (stderr, "%s", _("ERROR: no valid keyboard layout found. Check the input.\n"));
       exit (1);
     }
 

=== modified file 'util/grub-mkpasswd-pbkdf2.c'
--- util/grub-mkpasswd-pbkdf2.c	2012-02-03 20:45:43 +0000
+++ util/grub-mkpasswd-pbkdf2.c	2012-02-05 12:20:44 +0000
@@ -114,7 +114,7 @@
     .buflen = 64,
     .saltlen = 64
   };
-  char *bufhex, *salthex;
+  char *bufhex, *salthex, *result;
   gcry_err_code_t gcry_err;
   grub_uint8_t *buf, *salt;
   ssize_t nr;
@@ -243,8 +243,14 @@
   hexify (bufhex, buf, arguments.buflen);
   hexify (salthex, salt, arguments.saltlen);
 
-  printf (_("Your PBKDF2 is grub.pbkdf2.sha512.%d.%s.%s\n"),
-	  arguments.count, salthex, bufhex);
+  result = xmalloc (sizeof ("grub.pbkdf2.sha512.XXXXXXXXXXXXXXXXXXX.S.S")
+		    + arguments.buflen * 2 + arguments.saltlen * 2);
+  snprintf (result, sizeof ("grub.pbkdf2.sha512.XXXXXXXXXXXXXXXXXXX.S.S")
+	    + arguments.buflen * 2 + arguments.saltlen * 2,
+	    "grub.pbkdf2.sha512.%d.%s.%s",
+	    arguments.count, salthex, bufhex);
+
+  printf (_("PBKDF2 hash of your password is %s\n"), result);
   memset (buf, 0, arguments.buflen);
   memset (bufhex, 0, 2 * arguments.buflen);
   free (buf);

=== modified file 'util/grub-mkrelpath.c'
--- util/grub-mkrelpath.c	2012-02-03 20:45:43 +0000
+++ util/grub-mkrelpath.c	2012-02-05 16:03:42 +0000
@@ -73,7 +73,7 @@
 
 static struct argp argp = {
   options, argp_parser, N_("PATH"),
-  N_("Make a system path relative to its root."),
+  N_("Transform a sytem filename into GRUB one."),
   NULL, NULL, NULL
 };
 

=== modified file 'util/grub-mkrescue.in'
--- util/grub-mkrescue.in	2012-02-05 10:23:47 +0000
+++ util/grub-mkrescue.in	2012-02-05 13:31:37 +0000
@@ -52,7 +52,7 @@
 # Print the usage.
 usage () {
     gettext_printf "Usage: %s [OPTION] SOURCE...\n" "$self"
-    gettext "Make GRUB rescue image."; echo
+    gettext "Make GRUB CDROM, disk, pendrive and floppy bootable image."; echo
     echo
     printf "  -h, --help              %s\n" "$(gettext "print this message and exit")"
     printf "  -v, --version           %s\n" "$(gettext "print the version information and exit")"
@@ -62,7 +62,7 @@
     printf "  --xorriso=%-14s%s\n" "$(gettext "FILE")" "$(gettext "use FILE as xorriso [optional]")"
     printf "  --grub-mkimage=%-9s%s\n" "$(gettext "FILE")" "$(gettext "use FILE as grub-mkimage")"
     echo
-    gettext_printf "%s generates a bootable rescue image with specified source files, source directories, or mkisofs options listed by: %s\n" "xorriso -as mkisofs -help" "$self"
+    gettext_printf "%s generates a bootable rescue image with specified source files, source directories, or mkisofs options listed by the output of `%s'\n" "xorriso -as mkisofs -help" "$self"
     echo
     gettext "Option -- switches to native xorriso command mode."; echo
     echo

=== modified file 'util/grub-mkstandalone.in'
--- util/grub-mkstandalone.in	2012-02-05 10:23:47 +0000
+++ util/grub-mkstandalone.in	2012-02-05 13:32:52 +0000
@@ -47,6 +47,8 @@
 usage () {
     formats="i386-coreboot i386-multiboot i386-pc i386-pc-pxe i386-efi i386-ieee1275 i386-qemu x86_64-efi mipsel-yeeloong-flash mipsel-fuloong2f-flash mipsel-loongson-elf powerpc-ieee1275 sparc64-ieee1275-raw sparc64-ieee1275-aout ia64-efi mips-arc mipsel-qemu_mips-elf mips-qemu_mips-flash  mipsel-qemu_mips-flash  mips-qemu_mips-elf"
     gettext_printf "Usage: %s [OPTION] SOURCE...\n" "$self"
+    gettext "Generate a standalone image (containing all modules) in the selected format"
+    echo
     gettext "Make GRUB rescue image."; echo
     echo
     printf "  -h, --help              %s\n" "$(gettext "print this message and exit")"
@@ -62,8 +64,6 @@
     printf "  --modules=%-14s%s\n" "$(gettext "MODULES")" "$(gettext "pre-load specified modules MODULES")"
     printf "  --grub-mkimage=%-9s%s\n" "$(gettext "FILE")" "$(gettext "use FILE as grub-mkimage")"
     echo
-    gettext_printf "%s generates a standalone image (containing all modules) in the selected format" "$self"
-    echo
     gettext "Report bugs to <bug-grub@gnu.org>."; echo
 }
 

=== modified file 'util/grub-mount.c'
--- util/grub-mount.c	2012-02-05 10:23:47 +0000
+++ util/grub-mount.c	2012-02-05 14:00:21 +0000
@@ -407,7 +407,9 @@
   {"root",      'r', N_("DEVICE_NAME"), 0, N_("Set root device."),                 2},
   {"debug",     'd', "S",           0, N_("Set debug environment variable."),  2},
   {"crypto",   'C', NULL, OPTION_ARG_OPTIONAL, N_("Mount crypto devices."), 2},
-  {"zfs-key",      'K', N_("FILE|prompt"), 0, N_("Load zfs crypto key."),                 2},
+  {"zfs-key",      'K',
+   /* TRANSLATORS: "prompt" is a keyword.  */
+   N_("FILE|prompt"), 0, N_("Load zfs crypto key."),                 2},
   {"verbose",   'v', NULL, OPTION_ARG_OPTIONAL, N_("print verbose messages."), 2},
   {0, 0, 0, 0, 0, 0}
 };
@@ -449,13 +451,18 @@
 	  f = fopen (arg, "rb");
 	  if (!f)
 	    {
-	      printf (_("Error loading file %s: %s\n"), arg, strerror (errno));
+	      printf (_("%s: error:"), program_name);
+	      printf (_("cannot open `%s': %s"), arg, strerror (errno));
+	      printf ("\n");
 	      return 0;
 	    }
 	  real_size = fread (buf, 1, 1024, f);
 	  if (real_size < 0)
 	    {
-	      printf (_("Error loading file %s: %s\n"), arg, strerror (errno));
+	      printf (_("%s: error:"), program_name);
+	      printf (_("cannot read the file `%s': %s"), arg,
+		      strerror (errno));
+	      printf ("\n");
 	      fclose (f);
 	      return 0;
 	    }

=== modified file 'util/grub-probe.c'
--- util/grub-probe.c	2012-02-05 10:23:47 +0000
+++ util/grub-probe.c	2012-02-05 15:08:49 +0000
@@ -425,7 +425,8 @@
 	{
 	  char *label;
 	  if (! fs->label)
-	    grub_util_error (_("%s does not support labels"), fs->name);
+	    grub_util_error (_("filesystem `%s' does not support labels"),
+			     fs->name);
 
 	  if (fs->label (dev, &label) != GRUB_ERR_NONE)
 	    grub_util_error ("%s", _(grub_errmsg));
@@ -688,12 +689,11 @@
   {"device-map",  'm', N_("FILE"), 0,
    N_("use FILE as the device map [default=%s]"), 0},
   {"target",  't', "(fs|fs_uuid|fs_label|drive|device|partmap|abstraction|cryptodisk_uuid|msdos_parttype)", 0,
-   N_("print filesystem module, GRUB drive, system device, partition map module, abstraction module or CRYPTO UUID [default=fs]"), 0},
+   N_("print filesystem module, GRUB drive, system device, partition map module, abstraction module or cryptographic container UUID [default=fs]"), 0},
   {"verbose",     'v', 0,      0, N_("print verbose messages."), 0},
   { 0, 0, 0, 0, 0, 0 }
 };
 
-
 static char *
 help_filter (int key, const char *text, void *input __attribute__ ((unused)))
 {

=== modified file 'util/grub-setup.c'
--- util/grub-setup.c	2012-02-05 10:23:47 +0000
+++ util/grub-setup.c	2012-02-05 18:00:51 +0000
@@ -542,16 +542,17 @@
 
 unable_to_embed:
 
+  if (dest_dev->disk->dev->id != root_dev->disk->dev->id)
+    grub_util_error (_("embedding is not possible, but this is required for "
+		       "RAID and LVM install"));
+
 #ifdef GRUB_MACHINE_PCBIOS
   if (dest_dev->disk->id != root_dev->disk->id
       || dest_dev->disk->dev->id != root_dev->disk->dev->id)
-    grub_util_error (_("embedding is not possible, but this is required for "
-		       "cross-disk, RAID and LVM install"));
-#else
-  if (dest_dev->disk->dev->id != root_dev->disk->dev->id)
-    grub_util_error (_("embedding is not possible, but this is required for "
-		       "RAID and LVM install"));
-
+    /* TRANSLATORS: cross-disk refers to /boot being on one disk
+       but MBR on another.  */
+    grub_util_error (_("embedding is not possible, but this is required for "
+		       "cross-disk install"));
 #endif
 
   grub_util_warn (_("Embedding is not possible.  GRUB can only be installed in this "
@@ -740,11 +741,9 @@
   {"directory",   'd', N_("DIR"),  0,
    N_("Use GRUB files in the directory DIR [default=%s]"), 0},
   {"device-map",  'm', N_("FILE"), 0,
-   N_("Use FILE as the device map [default=%s]"), 0},
-  {"root-device", 'r', N_("DEVICE"),  0,
-   N_("Use DEV as the root device [default=guessed]"), 0},
+   N_("use FILE as the device map [default=%s]"), 0},
   {"force",       'f', 0,      0,
-   N_("Install even if problems are detected"), 0},
+   N_("install even if problems are detected"), 0},
   {"skip-fs-probe",'s',0,      0,
    N_("Do not probe for filesystems in DEVICE"), 0},
   {"verbose",     'v', 0,      0, N_("print verbose messages."), 0},

=== modified file 'util/grub.d/10_windows.in'
--- util/grub.d/10_windows.in	2012-02-03 10:42:22 +0000
+++ util/grub.d/10_windows.in	2012-02-05 13:45:46 +0000
@@ -63,18 +63,18 @@
 
   # Check for Vista bootmgr.
   if [ -f "$dir"/bootmgr -a -f "$dir"/boot/bcd ] ; then
-    OS="$(gettext_quoted "Windows Vista bootmgr")"
+    OS="$(gettext_quoted "Windows Vista/7 (loader)")"
 
   # Check for NTLDR.
   elif [ -f "$dir"/ntldr -a -f "$dir"/ntdetect.com -a -f "$dir"/boot.ini ] ; then
-    OS=`get_os_name_from_boot_ini "$dir"/boot.ini` || OS="$(gettext_quoted "Windows NT/2000/XP loader")"
+    OS=`get_os_name_from_boot_ini "$dir"/boot.ini` || OS="$(gettext_quoted "Windows NT/2000/XP (loader)")"
     needmap=t
 
   else
     continue
   fi
 
-  # Get boot /dev/ice.
+  # Get boot device.
   dev=`${grub_probe} -t device "$dir" 2>/dev/null` || continue
 
   gettext_printf "Found %s on %s (%s)\n" "$OS" "$drv" "$dev" >&2

=== modified file 'util/powerpc/ieee1275/grub-mkrescue.in'
--- util/powerpc/ieee1275/grub-mkrescue.in	2012-02-03 20:30:05 +0000
+++ util/powerpc/ieee1275/grub-mkrescue.in	2012-02-05 13:31:53 +0000
@@ -39,14 +39,14 @@
 # Print the usage.
 usage () {
     gettext_printf "Usage: %s [OPTION] SOURCE...\n" "$self"
-    gettext "Make GRUB rescue image."; echo
+    gettext "Make GRUB CDROM, disk, pendrive and floppy bootable image."; echo
     echo
     printf "  -h, --help              %s\n" "$(gettext "print this message and exit")"
     printf "  -v, --version           %s\n" "$(gettext "print the version information and exit")"
     printf "  --modules=%-14s%s\n" "$(gettext "MODULES")" "$(gettext "pre-load specified modules MODULES")"
     printf "  --grub-mkimage=%-9s%s\n" "$(gettext "FILE")" "$(gettext "use FILE as grub-mkimage")"
     echo
-    gettext_printf "%s generates a bootable rescue image with specified source files, source directories, or mkisofs options listed by: %s\n" "genisoimage -help" "$self"
+    gettext_printf "%s generates a bootable rescue image with specified source files, source directories, or mkisofs options listed by the output of `%s'\n" "genisoimage -help" "$self"
     echo
     gettext "Report bugs to <bug-grub@gnu.org>."; echo
 }


[-- Attachment #3: unlocalised.txt --]
[-- Type: text/plain, Size: 3341 bytes --]

./grub-core/loader/sparc64/ieee1275/linux.c:      grub_printf ("Cannot find /virtual-memory node.\n");
./grub-core/loader/sparc64/ieee1275/linux.c:      grub_printf ("Cannot find /virtual-memory/translations size.\n");
./grub-core/loader/sparc64/ieee1275/linux.c:      grub_printf ("Cannot allocate translations buffer.\n");
./grub-core/loader/sparc64/ieee1275/linux.c:      grub_printf ("Cannot fetch /virtual-memory/translations property.\n");
./grub-core/bus/emu/pci.c:    grub_util_error ("mapping 0x%x failed (error %d)\n", base, err);
./grub-core/bus/bonito.c:  grub_fatal ("Out of PCI windows.");
./grub-core/bus/bonito.c:  grub_fatal ("Tried to unmap not mapped region");
./grub-core/commands/keylayouts.c:    grub_printf ("Unknown key 0x%x detected\n", code);
./grub-core/commands/date.c:      grub_printf ("%d-%02d-%02d %02d:%02d:%02d %s\n",
./grub-core/hello/hello.c:  grub_printf ("Hello World\n");
./grub-core/commands/videotest.c:    grub_font_draw_string ("The quick brown fox jumped over the lazy dog.",
./grub-core/commands/videotest.c:    grub_font_draw_string ("The quick brown fox jumped over the lazy dog.",
./grub-core/commands/videotest.c:      "Unicode test: happy\xE2\x98\xBA \xC2\xA3 5.00"
./grub-core/commands/videotest.c:      " \xC2\xA1\xCF\x84\xC3\xA4u! "
./grub-core/commands/videotest.c:      " \xE2\x84\xA4\xE2\x8A\x86\xE2\x84\x9D";
./grub-core/commands/videotest.c:    grub_printf("color %d: %08x\n", i, palette[i]);
./grub-core/kern/i386/coreboot/init.c:  grub_fatal ("grub_get_rtc() is not implemented.\n");
./grub-core/mmap/efi/mmap.c:	  grub_printf ("Unknown memory type %d, considering reserved\n",
./grub-core/lib/libgcrypt_wrap/cipher_wrap.h:    grub_fatal ("Assertion failed at %s:%d\n", file, line);
./grub-core/lib/posix_wrap/assert.h:    grub_printf ("Assertion failed at %s:%d\n", file, line);
./grub-core/loader/efi/chainloader.c:  grub_printf ("file path: ");
./grub-core/kern/rescue_parser.c:      grub_printf ("Unknown command `%s'\n", name);
./grub-core/kern/rescue_parser.c:	grub_printf ("Try `help' for usage\n");
./grub-core/kern/corecmd.c:	  grub_printf ("(%s): Filesystem is %s.\n",
./grub-core/kern/corecmd.c:		       device_name, fs ? fs->name : "unknown");
./grub-core/kern/err.c:      grub_err_printf ("assert: error stack overflow detected!\n");
./grub-core/kern/main.c:      grub_fatal ("%s", grub_errmsg);
./grub-core/kern/main.c:  grub_printf ("Welcome to GRUB!\n\n");
./grub-core/kern/dl.c:    grub_fatal ("core symbols cannot be unregistered");
./grub-core/kern/rescue_reader.c:  grub_printf ((cont) ? "> " : "grub rescue> ");
./grub-core/kern/rescue_reader.c:  grub_printf ("Entering rescue mode...\n");
./grub-core/fs/reiserfs.c:    grub_printf ("Assertion failed at %s:%d\n", file, line);
Video adapter name
./grub-core/commands/acpihalt.c:		  grub_printf ("Unknown opcode in _S5: 0x%x\n", *ptr2);
./grub-core/commands/acpihalt.c:      grub_printf ("Unexpected extended opcode: 0x%x\n", *ptr);
./grub-core/commands/acpihalt.c:      grub_printf ("Unknown opcode 0x%x\n", *ptr);

./grub-core/commands/efi/lsefimmap.c
./grub-core/commands/efi/lsefisystab.c
./grub-core/commands/efi/lssal.c
./grub-core/commands/usbtest.c
./grub-core/commands/testload.c
./grub-core/commands/lspci.c
./grub-core/commands/hdparm.c
./grub-core/commands/lsacpi.c
./util/i386/efi/grub-dumpdevtree

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Unclear gettextized strings
       [not found] ` <4F2ECE45.5000201@gmail.com>
@ 2012-02-21 16:27   ` Vladimir 'φ-coder/phcoder' Serbinenko
  0 siblings, 0 replies; 2+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-02-21 16:27 UTC (permalink / raw)
  To: Mario Blättermann; +Cc: The development of GRUB 2, yurchor

On 05.02.2012 19:45, Mario Blättermann wrote:
> Am 05.02.2012 19:23, schrieb Vladimir 'φ-coder/phcoder' Serbinenko:
>> We use the word "key" several times to refer to the key that you 
>> press but the same word also means a key in catalog and both Yuri and 
>> Mario understood messages like "unknown key" in the second sense. 
>> I've rephrased those somehow, now it should be clear.
> I've translated "key" in sense of an "encryption key" and not a 
> keyboard key, which could be wrong in some (or almost all?) cases. 
> Besides your recent source code changes, you should  add some 
> translator comments and send the updated pot file to the TP Robot.
I both agree and disagree. I agree that some of the strings are too 
short. But I also think that in most cases one should make the string 
themselves clearer.
Also please don't do manual line-breaking in .po since GRUB already 
handles it and takes the real screen width into account.
I've submitted the new tgz. It contains also .po which is fixed a bit. I 
hope that TP robot will pick those de.po and uk.po
>


-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-02-21 16:27 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-05 18:23 Unclear gettextized strings Vladimir 'φ-coder/phcoder' Serbinenko
     [not found] ` <4F2ECE45.5000201@gmail.com>
2012-02-21 16:27   ` Vladimir 'φ-coder/phcoder' Serbinenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.