On Feb 7, 7:32 am, Yakov <
yakov.litvin.publi...@gmail.com> wrote:
> > I think themes can handle this.
>
> Sure, but it's not the point. The point is when I want to make three
> styles and two languages, I need to create 6 themes; and after this, I
> want to allow user to choose style and language separately ("choose
> style", "choose language" in the menu, ...
All core texts, are hardcoded. So if you want to switch them it needs
a translation tiddler which is tagged systemConfig. Switching language
means to disable systemConfig tag. The problem is, that most themes
also contain some tiddlers, that have language specific text with it.
Changing systemConfig won't change them.
> .. not "choose the style-language
> pair"). So I need those selectors two list only calculated set of
> themes, not all of them. Sure, this can be done with switchTheme
> macros but it's not very beatiful, I mean "links" instead of
> selectors.
===
You are right. multi-language multi-themes handling includes some
extra work and concept.
But I don't see, how your original post would solve anything of this.
Since core and plugin texts are "hardcoded" I would solve language
switching by using different URLs.
I'd do it the tiddlySpace way:
helper spaces
A) data
a) myThemes contains all the themes.
b) german
c) anyLanguage
1) myTW-en
2) myTW-ge
1) and 2) both include a)myThemes space, So it is possible to switch
themes. Even if the user downloads the space.
1) and 2) both include A)data space, which contains the initial info
tiddlers.
1) myTW-en is finished, since the core TW language is english and most
plugins come with english texts :)
2) myTW-ge needs to include the b)german space to have german language
support (core only).
===
The advantage of this structure is:
* if you change something in a)myThemes, your spaces 1)2) are updated
automatically.
* automatic update 1)2) if the langauge spaces are changed
* you can have different A)data spaces if needed.
The disadvantage is:
*increased file size
**may be this is not true. because a fileTW that contains all
supported languages, and themes will also be big.
===
There are several translation spaces [1], where you can see, how to
handle it.
[1]
http://showroom.tiddlyspace.com/#Translations