Discussion:
Otput for different languages
(too old to reply)
Reinhard Pagitsch
2005-08-12 08:33:56 UTC
Permalink
Hello,

I want to make my Win32 XS module ready for more than two languages. At
this time it supports german and english. To switch between these two
languages I use a function to get the language ID from the system and
then I use the correct string from a structure. But if I want to add
more languages (french, hungarian, taiwan, arabic, ... ) than I think to
use a structure would be a bad idea, isn't it?
What would be the best way to do this?

Creating include files with defines for each language? But how do I load
the correct one an runtime? Or have I to use language dll's which are
loaded at runtime? But how can I create and load this?

The structure I use:

static const struct
{
char *friendlyname_eng; //english
char *friendlyname_ger; /german
unsigned int id;
int docsummary; // 1 Document Summary 0 Summary Information
} SummaryInformation[] =
{
{ "Category", "Kategorie", PIDDSI_CATEGORY, 1 },
......
};

Thank you,
Reinhard
Jeff 'japhy' Pinyan
2005-08-12 13:56:11 UTC
Permalink
I want to make my Win32 XS module ready for more than two languages. At this
time it supports german and english. To switch between these two languages I
use a function to get the language ID from the system and then I use the
correct string from a structure. But if I want to add more languages (french,
hungarian, taiwan, arabic, ... ) than I think to use a structure would be a
bad idea, isn't it?
What would be the best way to do this?
Creating include files with defines for each language? But how do I load the
correct one an runtime? Or have I to use language dll's which are loaded at
runtime? But how can I create and load this?
Perhaps you could ask for the language of choice in the process of 'make',
and then s/#include LANGUAGE STUB/#include "$file.h"/ in your XS file?
--
Jeff "japhy" Pinyan % How can we ever be the sold short or
RPI Acacia Brother #734 % the cheated, we who for every service
http://japhy.perlmonk.org/ % have long ago been overpaid?
http://www.perlmonks.org/ % -- Meister Eckhart
Reinhard Pagitsch
2005-08-12 14:06:33 UTC
Permalink
Post by Jeff 'japhy' Pinyan
Post by Reinhard Pagitsch
I want to make my Win32 XS module ready for more than two languages.
At this time it supports german and english. To switch between these
two languages I use a function to get the language ID from the system
and then I use the correct string from a structure. But if I want to
add more languages (french, hungarian, taiwan, arabic, ... ) than I
think to use a structure would be a bad idea, isn't it?
What would be the best way to do this?
Creating include files with defines for each language? But how do I
load the correct one an runtime? Or have I to use language dll's which
are loaded at runtime? But how can I create and load this?
Perhaps you could ask for the language of choice in the process of
'make', and then s/#include LANGUAGE STUB/#include "$file.h"/ in your XS
file?
Not a good idea, because the module can be build as a ppm package. And
than all users which are downloading this having the same language as
the system where the module was build, e.g. arabic :)

regards,
Reinhard

Loading...