Multi-language (National Languages) in muLinux
==============================================



Translators wanted
------------------

The best way to add a new Multilanguage module XY in muLinux, is to
clone the db /etc/lang/it.db as /etc/lang/XY.db, to translate the
sentences and to send it to me: m.andreoli@tin.it



Technicals
-----------

The simple idea is to substitute any "echo" and "cat" command in Setup,
wizards, boot scripts, etc, with a single command I called "tell"
(because "say" it is already used as synth command).
I developed "tell" as simple AWK command, using the hashes, i.e. array
with generalized indexing.

You can use "tell" everywhere you would use "echo".

Examples:

                tell "The month is March"

or
                tell <<END
                The month is March
                I like the penguin
                END


How it works?
--------------
It simply seach a corrispondence in a DB ( a file ), using hashes.
If no corrispondence is found, it simply output the fractured english
in input. This feature grants that every script still will works also
without translation. 


DB format
----------

Very simple: it use escape code as AWK separators. This is the
template:

	fractured-english sentence
	^A
	translated sentence
	^B
		
ad libidum, .... Multilines are allowed, because record separator in 
^B ( \002 octal) and field separator is ^A ( \001 octal)

We have here an noticeable amount of redondance, because the the
english sentence is doubled: in the original script, in the DB. 

But the advantage is insuperable: we can cooperate in translation,
starting from  a simple identical file. Sentences aren't numbered, etc. 

DBs are simple files. it, en, de, fr, etc ..., stored in /etc/lang 
(currently a symlink to /usr/wsk/lang).

