tkgoodstuff/INTERNATIONALIZATION

40 lines
1.3 KiB
Plaintext
Executable File

This is dated: we haven't consistently kept up with this, so most
stuff is in English. Sorry.
Experimental Internatinalization
--------------------------------
Given the value of the language variable (and the fallback default
tkg_language one) , TkGoodStuff looks first for the file
$HOME/.tkgoodstuff_$language
and eventually source it, then source the file
$TKG_source_dir/$language.tcl
file (which should use setifunset for setting translations) if it exists
and then unconditionally source
$TKG_source_dir/$tkg_language.tcl
Note that the client label is stored in the Tkg_labels array, so when
one internationalizes one of the modules, say Biff, the code to remove
the button becomes something like
set index [.tkgpopup index $Tkg_labels(Biff)]
.tkgpopup delete $index [expr $index +1]
The translations are the responsibility of the module, so one can make
full internationalized procedures if needed.
The only exception is that TkGoodStuff will install a client menu with
a label got from $Tkg_labels($client) where client is the client name
(e.g. Clock, Biff, Net, etc...)
Internationalization can also choose default values for other things,
see the Clock module for example.
See english.tcl and francais.tcl for examples.
Yves Arrouye <Yves.Arrouye@imag.fr>