hans@nlgvax.UUCP (Hans Zuidam) (07/02/89)
You may want to look at the X/OPEN specification for NLS (Native Language System). X/OPEN (for those who don't know) is a European specification of an UN*X like system, including commands, system calls and library functions. In essence it defines a run-time environment for portable applications. The X/OPEN specification is backed by major European and US manufactures, Philips being one of them (couldn't resist ;-) ). X/OPEN confirms to AT&T's SVID and will (or allready does) confirm to IEEE POSIX. Now on NLS: this system provides the functions you described (date/time conversions, yes/no answers, currency symbols and respresentation). Next to these there is a library for language independent string handling (f.i. of the top of my head: 'ch' is one character in Spanish). The string functions support 16-bit characters also. The string functions use tables (located as files somewhere) to perform these functions. Next to these there are functions to output language independent strings. For this there are a number of commands to hunt down strings (printf's and the like) in your code and replace them by calls to the NLS printf functions. The original strings are stored in a file and read from there by the NLS functions. Adding another language means just ;-) to translate the original strings and creating a new file. The resolution of the actual language is done by an environment variable called LANGUAGE. The original implementation was done by HP and donated to X/OPEN. As far as I know all HP systems have the NLS system available, but it's been a few years back when I last looked at it. I do not know about source availabillity, sorry. If you want to know more, feel free to ask. Hope this helps a bit, Hans -- Hans Zuidam E-Mail: hans@pcg.philips.nl Philips Telecommunications and Data Systems, Tel: +31 40 892288 Project Centre Geldrop, Building XR Willem Alexanderlaan 7B, 5664 AN Geldrop The Netherlands