Major localisation (translation) bug in tellico!?

Robby Stephenson robby at periapsis.org
Sun Feb 18 19:56:59 MST 2007


On Saturday 17 February 2007, Jens Seidel wrote:
> Happily I found the problem: The collection I created contains these
> strings in the embedded XML file :-))
>
> This is probably only a very minor problem but I think you agree that it
> needs to be fixed because:
>  * I got nightmares because of the current bahaviour :-)

Sorry to make you lose sleep. :)

>  * A collection cannot be shared between users which speak different
>    languages.
>  * Broken strings in the collection will not be updated once it is fixed
>    in tellico.
>  * Choosing another locale results in mixed language usage.

All very valid points. But they do all apply to working with current data 
files, not new ones. Just a minor point.

> How to solve it? I don't know, but probably these strings should be
> written untranslated into the collection file and translated on load.
> (It is always a bad idea to write translated strings to config/data/...
> files.)

It was an intentional decision, albeit maybe not a fully thought out one. I 
always wanted the data files to be stand-alone, so that if someone wanted 
to, they could parse the XML files separately from Tellico. If the 
translation happens inside Tellico, that's obviously not possible. Plus, 
since the very same XML is used for the visual formatting internal to 
Tellico as well, there'd be a heck of a lot of needless translating going 
on.

> How to process user supplied entries? Maybe it is possible to add (or
> better to include) a translation catalog into the XML file which can be
> edited by the user?

My perspective is that once a use creates a collection, the information 
about that collection should never be changed underneath them. Now, you can 
argue that translations are different, treating them as part of the UI 
rather than the data. And I can see the point.

For one, you run into the locale problem, which you pointed out in one of 
your other emails. What if a french user wants to keep his collection in 
english? Should he he have to use KDE_LANG=en everytime he starts Tellico 
so "My Books" doesn't turn into "Mes Livres"? Once he creates the 
collection in english, the next time he opens it, it's still in english. 
Perhaps that use case is less important than the user who ran Tellico 
before it was fully translated into Turkish, then would like all his 
collection information translated now. It just happens that I chose to 
support the first case rather than the second.

For the second case, there are workarounds, but they involve some hassle. 
You can create a new collection, which would use the new translations, then 
import your old file. That's not perfect, though, since values 
for "Paperback", for example, would not get translated. The other option is 
just to export to a straight XML file and do a search-replace...not 
something I would recommend to a user, but if someone needed to...

Robby



More information about the tellico-users mailing list