changeset 822:71cdd4b2f038

Added documentation on l10n of the linux installer on how to update.
author Sascha Wilde <wilde@intevation.de>
date Fri, 18 Jul 2014 18:20:56 +0200
parents 6e300f749a6d
children b8bc812e41ee
files packaging/README.linux-installer-l10n
diffstat 1 files changed, 79 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/packaging/README.linux-installer-l10n	Fri Jul 18 18:20:56 2014 +0200
@@ -0,0 +1,79 @@
+----------------------------------------------------------------------
+               Localization of the GNU/Linux Installer
+----------------------------------------------------------------------
+
+The GNU/Linux Installer uses a simple custom i18n implementation for
+localization. Currently English (default) and German messages are
+supported:
+
+All messages in the Installer are written in English, a associative
+array L10N_DE holds a German translations for the message strings.
+
+If locale is set to any de_* localization (following the same
+semantics as GNU gettext) and a German translation for the particular
+message is available it will be printed in German, otherwise the
+original English message will be used.
+
+
+Relevant files
+--------------
+
+* linux-installer.inc.in :
+
+  Linux Installer Template, written in bash.  l10n-enabled messages
+  are printed using the function "getxt" or "fatal" (which in turn
+  uses getxt for output).  The semantics are these of printf and all
+  messages are in English.
+
+* linux-installer.l10n-de :
+
+  This file contains the associative array L10N_DE which has the
+  English messages as used in linux-installer.inc.in as keys and the
+  corresponding German strings as values.
+
+* getxt-gen-l10n-array.sh :
+
+  A tool to update the file linux-installer.l10n-de.  Detailed usage
+  is described in the commends at the head of the file.  It performs
+  the following steps:
+
+  1. collect all message strings used with "getxt" (or "fatal") in the
+     source file.
+
+  2. sort and remove any duplicates
+
+  3. merge with existing translations in the array file
+
+  4. write updated array to array file
+
+
+How to update translations
+--------------------------
+
+When any messages in "linux-installer.inc.in" were changed or added
+the array file "linux-installer.l10n-de" needs to be updated:
+
+1. Edit "linux-installer.inc.in" (obviously)
+
+2. Update the array file using getxt-gen-l10n-array.sh in the
+   packaging source directory (the directory containing this README):
+
+   $ ./getxt-gen-l10n-array.sh linux-installer.inc.in L10N_DE linux-installer.l10n-de
+
+   the associative array "L10N_DE" in "linux-installer.l10n-de" will
+   now contain entries for all new or changed messaged with empty
+   strings for the German translations.
+
+   CAVEAT: this means that if you change a message the translation
+   for the old message will be removed from "linux-installer.l10n-de"!
+   If you (slightly) change messages instead of adding or removing you
+   might want to keep a copy of the old version of
+   "linux-installer.l10n-de", so you can use the old translations as a
+   reference.
+   
+3. Edit "linux-installer.l10n-de" and add the missing translations.
+   They are best found by searching for empty strings, which are
+   denoted by two consecutive quotation marks: "" in your editor.
+
+That's all.  Don't forget to commit "linux-installer.l10n-de" along
+with your changes to "linux-installer.inc.in".

http://wald.intevation.org/projects/trustbridge/